Please visit our website at zondax.ch
This project contains the Entropy app (https://entropy.xyz/ ) for Ledger Nano S, S+, X and Stax.
Ledger BOLOS app
Specs / Documentation
C++ unit tests
Zemu tests
For more information: How to build
Please:
Do not use in production
Do not use a Ledger device with funds for development purposes.
Have a separate and marked device that is used ONLY for development and testing
Name
Nano S
Nano S XL
Nano SP/X - Stax
Nesting
Arguments
Remark
✔️
✔️
✔️
Bytesremark
Set heap pages
✔️
✔️
✔️
u64pages
Set code
✔️
✔️
✔️
Bytescode
Set code without checks
✔️
✔️
✔️
Vecu8code
Set storage
VecKeyValueitems
Kill storage
VecKeykeys
Kill prefix
Keyprefixu32subkeys
Remark with event
✔️
✔️
✔️
Bytesremark
Authorize upgrade
✔️
✔️
Hashcode_hash
Authorize upgrade without checks
✔️
✔️
Hashcode_hash
Apply authorized upgrade
✔️
✔️
Vecu8code
Name
Nano S
Nano S XL
Nano SP/X - Stax
Nesting
Arguments
Batch
✔️
✔️
✔️
VecCallcalls
As derivative
u16indexCallcall
Batch all
✔️
✔️
✔️
VecCallcalls
Dispatch as
✔️
✔️
BoxPalletsOriginas_originCallcall
Force batch
✔️
✔️
✔️
VecCallcalls
With weight
✔️
✔️
CallcallWeightweight
Name
Nano S
Nano S XL
Nano SP/X - Stax
Nesting
Arguments
Report equivocation
BoxEquivocationProofHeaderequivocation_proofKeyOwnerProofkey_owner_proof
Report equivocation unsigned
BoxEquivocationProofHeaderequivocation_proofKeyOwnerProofkey_owner_proof
Plan config change
NextConfigDescriptorconfig
Name
Nano S
Nano S XL
Nano SP/X - Stax
Nesting
Arguments
Set
Compactu64now
Name
Nano S
Nano S XL
Nano SP/X - Stax
Nesting
Arguments
Claim
AccountIndexindex
Transfer
AccountIdLookupOfTnew_AccountIndexindex
Free
AccountIndexindex
Force transfer
AccountIdLookupOfTnew_AccountIndexindexboolfreeze
Freeze
AccountIndexindex
Name
Nano S
Nano S XL
Nano SP/X - Stax
Nesting
Arguments
Transfer allow death
✔️
✔️
✔️
✔️
AccountIdLookupOfTdestCompactBalanceamount
Force transfer
✔️
✔️
✔️
✔️
AccountIdLookupOfTsourceAccountIdLookupOfTdestCompactBalanceamount
Transfer keep alive
✔️
✔️
✔️
✔️
AccountIdLookupOfTdestCompactBalanceamount
Transfer all
✔️
✔️
✔️
✔️
AccountIdLookupOfTdestboolkeep_alive
Force unreserve
✔️
✔️
AccountIdLookupOfTwhoBalanceamount
Upgrade accounts
✔️
✔️
VecAccountIdwho
Force set balance
✔️
✔️
AccountIdLookupOfTwhoCompactBalancenew_free
Force adjust total issuance
✔️
✔️
AdjustmentDirectiondirectionCompactBalancedelta
ElectionProviderMultiPhase
Name
Nano S
Nano S XL
Nano SP/X - Stax
Nesting
Arguments
Submit unsigned
BoxRawSolutionSolutionOfMinerConfigraw_solutionSolutionOrSnapshotSizewitness
Set minimum untrusted score
OptionElectionScoremaybe_next_score
Set emergency election result
SupportsAccountIdsupports
Submit
BoxRawSolutionSolutionOfMinerConfigraw_solution
Governance fallback
Optionu32maybe_max_votersOptionu32maybe_max_targets
Name
Nano S
Nano S XL
Nano SP/X - Stax
Nesting
Arguments
Bond
✔️
✔️
✔️
✔️
CompactBalanceamountRewardDestinationpayee
Bond extra
✔️
✔️
✔️
✔️
CompactBalanceamount
Unbond
✔️
✔️
✔️
✔️
CompactBalanceamount
Withdraw Unbonded
✔️
✔️
✔️
✔️
u32num_slashing_spans
Validate
✔️
✔️
✔️
✔️
ValidatorPrefsprefs
Nominate
✔️
✔️
✔️
✔️
VecAccountIdLookupOfTtargets
Chill
✔️
✔️
✔️
✔️
Set payee
✔️
✔️
✔️
✔️
RewardDestinationpayee
Set controller
✔️
✔️
✔️
✔️
Set validator count
✔️
✔️
Compactu32new_
Increase validator count
✔️
✔️
Compactu32additional
Scale validator count
✔️
✔️
Percentfactor
Force no eras
✔️
✔️
Force new era
✔️
✔️
Set invulnerables
✔️
✔️
VecAccountIdinvulnerables
Force unstake
✔️
✔️
AccountIdstashu32num_slashing_spans
Force new era always
✔️
✔️
Cancel deferred slash
✔️
✔️
EraIndexeraVecu32slash_indices
Payout stakers
✔️
✔️
✔️
✔️
AccountIdvalidator_stashEraIndexera
Rebond
✔️
✔️
✔️
✔️
CompactBalanceamount
Reap stash
✔️
✔️
AccountIdstashu32num_slashing_spans
Kick
✔️
✔️
VecAccountIdLookupOfTwho
Set staking configs
✔️
✔️
ConfigOpBalanceOfTmin_nominator_bondConfigOpBalanceOfTmin_validator_bondConfigOpu32max_nominator_countConfigOpu32max_validator_countConfigOpPercentchill_thresholdConfigOpPerbillmin_commission
Chill other
✔️
✔️
AccountIdstash
Force apply min commission
✔️
✔️
AccountIdvalidator_stash
Set min commission
✔️
✔️
Perbillnew_
Payout stakers by page
✔️
✔️
AccountIdvalidator_stashEraIndexeraPagepage
Update payee
✔️
✔️
AccountIdcontroller
Deprecate controller batch
BoundedVecAccountIdMaxControllersInDeprecationBatchcontrollers
Restore ledger
✔️
✔️
AccountIdstashOptionAccountIdmaybe_controllerOptionBalancemaybe_totalOptionBoundedVecUnlockChunkBalanceOfTMaxUnlockingChunksmaybe_unlocking
Name
Nano S
Nano S XL
Nano SP/X - Stax
Nesting
Arguments
Change endpoint
✔️
✔️
Vecu8endpoint
Change threshold accounts
✔️
✔️
AccountIdtss_accountX25519PublicKeyx25519_public_key
Unbond
✔️
✔️
Compactu128amount
Chill
✔️
✔️
Withdraw Unbonded
✔️
✔️
u32num_slashing_spans
Validate
✔️
✔️
ValidatorPrefsprefsServerInfoAccountIdserver_info
Declare synced
✔️
✔️
boolsynced
Confirm key reshare
✔️
✔️
Name
Nano S
Nano S XL
Nano SP/X - Stax
Nesting
Arguments
Set keys
✔️
✔️
✔️
✔️
KeyskeysBytesproof
Purge keys
✔️
✔️
✔️
✔️
Name
Nano S
Nano S XL
Nano SP/X - Stax
Nesting
Arguments
Propose
BoundedCallOfTproposalCompactBalanceamount
Second
Compactu32proposal
Vote
Compactu32ref_indexAccountVotevote
Emergency cancel
ReferendumIndexref_index
External propose
BoundedCallOfTproposal
External propose majority
BoundedCallOfTproposal
External propose default
BoundedCallOfTproposal
Fast track
Hashproposal_hashBlockNumbervoting_periodBlockNumberdelay
Veto external
Hashproposal_hash
Cancel referendum
Compactu32ref_index
Delegate
AccountIdLookupOfTtoConvictionconvictionBalancebalance
Undelegate
Clear public proposals
Unlock
AccountIdLookupOfTtarget
Remove vote
ReferendumIndexindex
Remove other vote
AccountIdLookupOfTtargetReferendumIndexindex
Blacklist
Hashproposal_hashOptionReferendumIndexmaybe_ref_index
Cancel proposal
Compactu32prop_index
Set metadata
MetadataOwnerownerOptionHashmaybe_hash
Name
Nano S
Nano S XL
Nano SP/X - Stax
Nesting
Arguments
Set members
VecAccountIdnew_membersOptionAccountIdprimeMemberCountold_count
Execute
ProposalproposalCompactu32length_bound
Propose
Compactu32thresholdProposalproposalCompactu32length_bound
Vote
HashproposalCompactu32indexboolapprove
Disapprove proposal
Hashproposal_hash
Close
Hashproposal_hashCompactu32indexWeightproposal_weight_boundCompactu32length_bound
Name
Nano S
Nano S XL
Nano SP/X - Stax
Nesting
Arguments
Set members
VecAccountIdnew_membersOptionAccountIdprimeMemberCountold_count
Execute
ProposalproposalCompactu32length_bound
Propose
Compactu32thresholdProposalproposalCompactu32length_bound
Vote
HashproposalCompactu32indexboolapprove
Disapprove proposal
Hashproposal_hash
Close
Hashproposal_hashCompactu32indexWeightproposal_weight_boundCompactu32length_bound
Name
Nano S
Nano S XL
Nano SP/X - Stax
Nesting
Arguments
Vote
VecAccountIdvotesCompactu128amount
Remove voter
Submit candidacy
Compactu32candidate_count
Renounce candidacy
Renouncingrenouncing
Remove member
AccountIdLookupOfTwhoboolslash_bondboolrerun_election
Clean defunct voters
u32num_votersu32num_defunct
Name
Nano S
Nano S XL
Nano SP/X - Stax
Nesting
Arguments
Add member
AccountIdLookupOfTwho
Remove member
AccountIdLookupOfTwho
Swap member
AccountIdLookupOfTremoveAccountIdLookupOfTadd
Reset members
VecAccountIdmembers
Change key
AccountIdLookupOfTnew_
Set prime
AccountIdLookupOfTwho
Clear prime
Name
Nano S
Nano S XL
Nano SP/X - Stax
Nesting
Arguments
Report equivocation
BoxEquivocationProofHashBlockNumberequivocation_proofKeyOwnerProofkey_owner_proof
Report equivocation unsigned
BoxEquivocationProofHashBlockNumberequivocation_proofKeyOwnerProofkey_owner_proof
Note stalled
BlockNumberdelayBlockNumberbest_finalized_block_number
Name
Nano S
Nano S XL
Nano SP/X - Stax
Nesting
Arguments
Propose spend
CompactBalanceamountAccountIdLookupOfTbeneficiary
Reject proposal
Compactu32proposal_id
Approve proposal
Compactu32proposal_id
Spend local
CompactBalanceamountAccountIdLookupOfTbeneficiary
Remove approval
Compactu32proposal_id
Spend
BoxAssetKindasset_kindCompactBalanceamountBoxBeneficiaryLookupOfbeneficiaryOptionBlockNumbervalid_from
Payout
SpendIndexindex
Check status
SpendIndexindex
Void spend
SpendIndexindex
Name
Nano S
Nano S XL
Nano SP/X - Stax
Nesting
Arguments
Sudo
Callcall
Sudo unchecked weight
CallcallWeightweight
Set key
AccountIdLookupOfTnew_
Sudo as
AccountIdLookupOfTwhoCallcall
Remove key
Name
Nano S
Nano S XL
Nano SP/X - Stax
Nesting
Arguments
Heartbeat
HeartbeatBlockNumberheartbeatAuthorityIdasRuntimeAppPublicSignaturesignature
Name
Nano S
Nano S XL
Nano SP/X - Stax
Nesting
Arguments
Add registrar
AccountIdLookupOfTaccount
Set identity
IdentityInfoinfo
Set subs
VecTupleAccountIdDatasubs
Clear identity
Request judgement
Compactu32reg_indexCompactu128max_fee
Cancel request
RegistrarIndexreg_index
Set fee
Compactu32indexCompactu128fee
Set account id
Compactu32indexAccountIdLookupOfTnew_
Set fields
Compactu32indexIdentityInformationasIdentityInformationProviderFieldsIdentifierfields
Provide judgement
Compactu32reg_indexAccountIdLookupOfTtargetJudgementBalanceOfTjudgementHashidentity
Kill identity
AccountIdLookupOfTtarget
Add sub
AccountIdLookupOfTsubDatadata
Rename sub
AccountIdLookupOfTsubDatadata
Remove sub
AccountIdLookupOfTsub
Quit sub
Add username authority
AccountIdLookupOfTauthorityVecu8suffixu32allocation
Remove username authority
AccountIdLookupOfTauthority
Set username for
AccountIdLookupOfTwhoVecu8usernameOptionOffchainSignaturesignature
Accept username
UsernameTusername
Remove expired approval
UsernameTusername
Set primary username
UsernameTusername
Remove dangling username
UsernameTusername
Name
Nano S
Nano S XL
Nano SP/X - Stax
Nesting
Arguments
As recovered
AccountIdLookupOfTaccountCallcall
Set recovered
AccountIdLookupOfTlostAccountIdLookupOfTrescuer
Create recovery
VecAccountIdfriendsu16thresholdBlockNumberdelay_period
Initiate recovery
AccountIdLookupOfTaccount
Vouch recovery
AccountIdLookupOfTlostAccountIdLookupOfTrescuer
Claim recovery
AccountIdLookupOfTaccount
Close recovery
AccountIdLookupOfTrescuer
Remove recovery
Cancel recovered
AccountIdLookupOfTaccount
Name
Nano S
Nano S XL
Nano SP/X - Stax
Nesting
Arguments
Vest
Vest other
AccountIdLookupOfTtarget
Vested transfer
AccountIdLookupOfTtargetVestingInfoschedule
Force vested transfer
AccountIdLookupOfTsourceAccountIdLookupOfTtargetVestingInfoschedule
Merge schedules
u32schedule1_indexu32schedule2_index
Force remove vesting schedule
LookupasStaticLookupSourcetargetu32schedule_index
Name
Nano S
Nano S XL
Nano SP/X - Stax
Nesting
Arguments
Schedule
BlockNumberwhenOptionschedulePeriodBlockNumbermaybe_periodicschedulePrioritypriorityCallcall
Cancel
BlockNumberwhenu32index
Schedule named
TaskNameidBlockNumberwhenOptionschedulePeriodBlockNumbermaybe_periodicschedulePrioritypriorityCallcall
Cancel named
TaskNameid
Schedule after
BlockNumberafterOptionschedulePeriodBlockNumbermaybe_periodicschedulePrioritypriorityCallcall
Schedule named after
TaskNameidBlockNumberafterOptionschedulePeriodBlockNumbermaybe_periodicschedulePrioritypriorityCallcall
Name
Nano S
Nano S XL
Nano SP/X - Stax
Nesting
Arguments
Note preimage
Vecu8bytes
Unnote preimage
Hashhash
Request preimage
Hashhash
Unrequest preimage
Hashhash
Ensure updated
VecHashhashes
Name
Nano S
Nano S XL
Nano SP/X - Stax
Nesting
Arguments
Proxy
✔️
✔️
✔️
AccountIdLookupOfTrealOptionProxyTypeforce_proxy_typeCallcall
Add proxy
✔️
✔️
✔️
AccountIdLookupOfTdelegateProxyTypeproxy_typeBlockNumberdelay
Remove proxy
✔️
✔️
✔️
AccountIdLookupOfTdelegateProxyTypeproxy_typeBlockNumberdelay
Remove proxies
✔️
✔️
Create pure
✔️
✔️
✔️
ProxyTypeproxy_typeBlockNumberdelayu16index
Kill pure
✔️
✔️
✔️
AccountIdLookupOfTspawnerProxyTypeproxy_typeu16indexCompactu32heightCompactu32ext_index
Announce
✔️
✔️
AccountIdLookupOfTrealCallHashOfcall_hash
Remove announcement
✔️
✔️
AccountIdLookupOfTrealCallHashOfcall_hash
Reject announcement
✔️
✔️
AccountIdLookupOfTdelegateCallHashOfcall_hash
Proxy announced
✔️
✔️
AccountIdLookupOfTdelegateAccountIdLookupOfTrealOptionProxyTypeforce_proxy_typeCallcall
Name
Nano S
Nano S XL
Nano SP/X - Stax
Nesting
Arguments
As multi threshold 1
VecAccountIdother_signatoriesCallcall
As multi
u16thresholdVecAccountIdother_signatoriesOptionTimepointmaybe_timepointCallcallWeightmax_weight
Approve as multi
u16thresholdVecAccountIdother_signatoriesOptionTimepointmaybe_timepointH256call_hashWeightmax_weight
Cancel as multi
u16thresholdVecAccountIdother_signatoriesTimepointtimepointH256call_hash
Name
Nano S
Nano S XL
Nano SP/X - Stax
Nesting
Arguments
Propose bounty
CompactBalanceamountBytesdescription
Approve bounty
Compactu32bounty_id
Propose curator
Compactu32bounty_idAccountIdLookupOfTcuratorCompactBalancefee
Unassign curator
Compactu32bounty_id
Accept curator
Compactu32bounty_id
Award bounty
Compactu32bounty_idAccountIdLookupOfTbeneficiary
Claim bounty
Compactu32bounty_id
Close bounty
Compactu32bounty_id
Extend bounty expiry
Compactu32bounty_idBytesremark
Name
Nano S
Nano S XL
Nano SP/X - Stax
Nesting
Arguments
Report awesome
BytesreasonAccountIdLookupOfTwho
Retract tip
Hashhash
Tip new
BytesreasonAccountIdLookupOfTwhoCompactu128tip_value
Tip
HashhashCompactu128tip_value
Close tip
Hashhash
Slash tip
Hashhash
Name
Nano S
Nano S XL
Nano SP/X - Stax
Nesting
Arguments
Store
Vecu8data
Renew
BlockNumberblocku32index
Check proof
TransactionStorageProofproof
Name
Nano S
Nano S XL
Nano SP/X - Stax
Nesting
Arguments
Rebag
AccountIdLookupOfTdislocated
Put in front of
AccountIdLookupOfTlighter
Put in front of other
AccountIdLookupOfTheavierAccountIdLookupOfTlighter
Name
Nano S
Nano S XL
Nano SP/X - Stax
Nesting
Arguments
Join
CompactBalanceamountPoolIdpool_id
Bond extra
BondExtraBalanceOfTextra
Claim payout
Unbond
AccountIdLookupOfTmember_accountCompactBalanceunbonding_points
Pool withdraw unbonded
PoolIdpool_idu32num_slashing_spans
Withdraw Unbonded
AccountIdLookupOfTmember_accountu32num_slashing_spans
Create
CompactBalanceamountAccountIdLookupOfTrootAccountIdLookupOfTnominatorAccountIdLookupOfTbouncer
Create with pool id
CompactBalanceamountAccountIdLookupOfTrootAccountIdLookupOfTnominatorAccountIdLookupOfTbouncerPoolIdpool_id
Nominate
PoolIdpool_idVecAccountIdvalidators
Set state
PoolIdpool_idPoolStatestate
Set metadata
PoolIdpool_idVecu8metadata
Set configs
ConfigOpBalanceOfTmin_join_bondConfigOpBalanceOfTmin_create_bondConfigOpu32max_poolsConfigOpu32max_membersConfigOpu32max_members_per_poolConfigOpPerbillglobal_max_commission
Update roles
PoolIdpool_idConfigOpAccountIdnew_rootConfigOpAccountIdnew_nominatorConfigOpAccountIdnew_bouncer
Chill
PoolIdpool_id
Bond extra other
AccountIdLookupOfTmemberBondExtraBalanceOfTextra
Set claim permission
ClaimPermissionpermission
Claim payout other
AccountIdother
Set commission
PoolIdpool_idOptionTuplePerbillAccountIdnew_commission
Set commission max
PoolIdpool_idPerbillmax_commission
Set commission change rate
PoolIdpool_idCommissionChangeRateBlockNumberchange_rate
Claim commission
PoolIdpool_id
Adjust pool deposit
PoolIdpool_id
Set commission claim permission
PoolIdpool_idOptionCommissionClaimPermissionAccountIdpermission
Name
Nano S
Nano S XL
Nano SP/X - Stax
Nesting
Arguments
Jump start network
✔️
✔️
Confirm jump start
✔️
✔️
VerifyingKeyverifying_key
Register
✔️
✔️
AccountIdprogram_modification_accountBoundedVecProgramInstanceTMaxProgramHashesprograms_data
Change program instance
✔️
✔️
VerifyingKeyverifying_keyBoundedVecProgramInstanceTMaxProgramHashesnew_program_instance
Change program modification account
✔️
✔️
VerifyingKeyverifying_keyAccountIdnew_program_mod_account
Name
Nano S
Nano S XL
Nano SP/X - Stax
Nesting
Arguments
Name
Nano S
Nano S XL
Nano SP/X - Stax
Nesting
Arguments
Set program
✔️
✔️
Vecu8new_programVecu8configuration_schemaVecu8auxiliary_data_schemaVecu8oracle_data_pointeru8version_number
Remove program
✔️
✔️
Hashprogram_hash
Name
Nano S
Nano S XL
Nano SP/X - Stax
Nesting
Arguments
Pause transaction
Vecu8pallet_nameVecu8function_name
Unpause transaction
Vecu8pallet_nameVecu8function_name
Name
Nano S
Nano S XL
Nano SP/X - Stax
Nesting
Arguments
Name
Nano S
Nano S XL
Nano SP/X - Stax
Nesting
Arguments
Change request limit
u32request_limit
Change max instructions per programs
u64max_instructions_per_programs
Change signers info
u8total_signersu8threshold
Change accepted mrtd values
MrtdValuesaccepted_mrtd_values
Name
Nano S
Nano S XL
Nano SP/X - Stax
Nesting
Arguments
Name
Nano S
Nano S XL
Nano SP/X - Stax
Nesting
Arguments
Attest
Vecu8quote