

Please visit our website at zondax.ch
This project contains the Astar app (https://astar.network/) for Ledger Nano S and X.
- Ledger Nano S/X 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 |
Nesting |
Arguments |
| Remark |
|
✔️ |
✔️ |
✔️ |
Bytesremark
|
| Set heap pages |
|
|
|
|
u64pages
|
| Set code |
|
|
|
|
Vecu8code
|
| Set code without checks |
|
|
|
|
Vecu8code
|
| Set storage |
|
|
|
|
VecKeyValueitems
|
| Kill storage |
|
|
|
|
VecKeykeys
|
| Kill prefix |
|
|
|
|
Keyprefix
u32subkeys
|
| Remark with event |
|
|
|
|
Bytesremark
|
| Name |
Nano S |
Nano S XL |
Nano SP/X |
Nesting |
Arguments |
| Batch |
✔️ |
✔️ |
✔️ |
|
VecCallcalls
|
| As derivative |
|
|
|
|
u16index
Callcall
|
| Batch all |
✔️ |
✔️ |
✔️ |
|
VecCallcalls
|
| Dispatch as |
|
|
|
|
BoxPalletsOriginas_origin
Callcall
|
| Force batch |
✔️ |
✔️ |
✔️ |
|
VecCallcalls
|
| With weight |
|
✔️ |
✔️ |
|
Callcall
Weightweight
|
| Name |
Nano S |
Nano S XL |
Nano SP/X |
Nesting |
Arguments |
| Add registrar |
|
|
|
|
AccountIdLookupOfTaccount
|
| Set identity |
|
|
|
|
IdentityInfoinfo
|
| Set subs |
|
|
|
|
VecTupleAccountIdDatasubs
|
| Clear identity |
|
|
|
|
|
| Request judgement |
|
|
|
|
Compactu32reg_index
Compactu128max_fee
|
| Cancel request |
|
|
|
|
RegistrarIndexreg_index
|
| Set fee |
|
|
|
|
Compactu32index
Compactu128fee
|
| Set account id |
|
|
|
|
Compactu32index
AccountIdLookupOfTnew_
|
| Set fields |
|
|
|
|
Compactu32index
IdentityFieldsfields
|
| Provide judgement |
|
|
|
|
Compactu32reg_index
AccountIdLookupOfTtarget
JudgementBalanceOfTjudgement
Hashidentity
|
| Kill identity |
|
|
|
|
AccountIdLookupOfTtarget
|
| Add sub |
|
|
|
|
AccountIdLookupOfTsub
Datadata
|
| Rename sub |
|
|
|
|
AccountIdLookupOfTsub
Datadata
|
| Remove sub |
|
|
|
|
AccountIdLookupOfTsub
|
| Quit sub |
|
|
|
|
|
| Name |
Nano S |
Nano S XL |
Nano SP/X |
Nesting |
Arguments |
| Set |
|
|
|
|
Compactu64now
|
| Name |
Nano S |
Nano S XL |
Nano SP/X |
Nesting |
Arguments |
| As multi threshold 1 |
|
✔️ |
✔️ |
✔️ |
VecAccountIdother_signatories
Callcall
|
| As multi |
|
✔️ |
✔️ |
✔️ |
u16threshold
VecAccountIdother_signatories
OptionTimepointmaybe_timepoint
Callcall
Weightmax_weight
|
| Approve as multi |
|
✔️ |
✔️ |
✔️ |
u16threshold
VecAccountIdother_signatories
OptionTimepointmaybe_timepoint
H256call_hash
Weightmax_weight
|
| Cancel as multi |
|
✔️ |
✔️ |
✔️ |
u16threshold
VecAccountIdother_signatories
Timepointtimepoint
H256call_hash
|
| Name |
Nano S |
Nano S XL |
Nano SP/X |
Nesting |
Arguments |
| Set validation data |
|
|
|
|
ParachainInherentDatadata
|
| Sudo send upward message |
|
|
|
|
UpwardMessagemessage
|
| Authorize upgrade |
|
|
|
|
Hashcode_hash
|
| Enact authorized upgrade |
|
|
|
|
Vecu8code
|
| Name |
Nano S |
Nano S XL |
Nano SP/X |
Nesting |
Arguments |
| Name |
Nano S |
Nano S XL |
Nano SP/X |
Nesting |
Arguments |
| Transfer |
✔️ |
✔️ |
✔️ |
✔️ |
AccountIdLookupOfTdest
CompactBalanceamount
|
| Set balance |
|
✔️ |
✔️ |
✔️ |
AccountIdLookupOfTwho
CompactBalancenew_free
CompactBalancenew_reserved
|
| Force transfer |
✔️ |
✔️ |
✔️ |
✔️ |
AccountIdLookupOfTsource
AccountIdLookupOfTdest
CompactBalanceamount
|
| Transfer keep alive |
✔️ |
✔️ |
✔️ |
✔️ |
AccountIdLookupOfTdest
CompactBalanceamount
|
| Transfer all |
✔️ |
✔️ |
✔️ |
|
AccountIdLookupOfTdest
boolkeep_alive
|
| Force unreserve |
|
✔️ |
✔️ |
|
AccountIdLookupOfTwho
Balanceamount
|
| Name |
Nano S |
Nano S XL |
Nano SP/X |
Nesting |
Arguments |
| Vest |
✔️ |
✔️ |
✔️ |
✔️ |
|
| Vest other |
✔️ |
✔️ |
✔️ |
✔️ |
AccountIdLookupOfTtarget
|
| Vested transfer |
✔️ |
✔️ |
✔️ |
✔️ |
AccountIdLookupOfTtarget
VestingInfoschedule
|
| Force vested transfer |
✔️ |
✔️ |
✔️ |
✔️ |
AccountIdLookupOfTsource
AccountIdLookupOfTtarget
VestingInfoschedule
|
| Merge schedules |
✔️ |
✔️ |
✔️ |
✔️ |
u32schedule1_index
u32schedule2_index
|
| Name |
Nano S |
Nano S XL |
Nano SP/X |
Nesting |
Arguments |
| Register |
✔️ |
✔️ |
✔️ |
|
AccountIddeveloper
SmartContractcontract_id
|
| Unregister |
✔️ |
✔️ |
✔️ |
|
SmartContractcontract_id
|
| Withdraw from unregistered |
✔️ |
✔️ |
✔️ |
|
SmartContractcontract_id
|
| Bond and stake |
✔️ |
✔️ |
✔️ |
|
SmartContractcontract_id
Compactu128amount
|
| Unbond and unstake |
✔️ |
✔️ |
✔️ |
|
SmartContractcontract_id
Compactu128amount
|
| Withdraw Unbonded |
✔️ |
✔️ |
✔️ |
|
|
| Nomination transfer |
✔️ |
✔️ |
✔️ |
|
SmartContractorigin_contract_id
Compactu128amount
SmartContracttarget_contract_id
|
| Claim staker |
✔️ |
✔️ |
✔️ |
✔️ |
SmartContractcontract_id
|
| Claim dapp |
✔️ |
✔️ |
✔️ |
✔️ |
SmartContractcontract_id
Compactu32era
|
| Force new era |
|
✔️ |
✔️ |
|
|
| Maintenance mode |
|
✔️ |
✔️ |
|
boolenable_maintenance
|
| Set reward destination |
|
✔️ |
✔️ |
|
DappsRewardDestinationreward_destination
|
| Set contract stake info |
|
✔️ |
✔️ |
|
SmartContractcontract
EraIndexera
ContractStakeInfoBalanceOfTcontract_stake_info
|
| Burn stale reward |
|
✔️ |
✔️ |
|
SmartContractcontract_id
Compactu32era
|
| Name |
Nano S |
Nano S XL |
Nano SP/X |
Nesting |
Arguments |
| Set configuration |
|
|
|
|
RewardDistributionConfigreward_distro_params
|
| Name |
Nano S |
Nano S XL |
Nano SP/X |
Nesting |
Arguments |
| Create |
|
✔️ |
✔️ |
|
CompactBalanceid
AccountIdLookupOfTadmin
Balancemin_balance
|
| Force create |
|
✔️ |
✔️ |
|
CompactBalanceid
AccountIdLookupOfTowner
boolis_sufficient
CompactBalancemin_balance
|
| Start destroy |
|
✔️ |
✔️ |
|
CompactBalanceid
|
| Destroy accounts |
|
✔️ |
✔️ |
|
CompactBalanceid
|
| Destroy approvals |
|
✔️ |
✔️ |
|
CompactBalanceid
|
| Finish destroy |
|
✔️ |
✔️ |
|
CompactBalanceid
|
| Mint |
|
✔️ |
✔️ |
|
CompactBalanceid
AccountIdLookupOfTbeneficiary
CompactBalanceamount
|
| Burn |
|
✔️ |
✔️ |
|
CompactBalanceid
AccountIdLookupOfTwho
CompactBalanceamount
|
| Transfer |
|
✔️ |
✔️ |
|
CompactBalanceid
AccountIdLookupOfTtarget
CompactBalanceamount
|
| Transfer keep alive |
|
✔️ |
✔️ |
|
CompactBalanceid
AccountIdLookupOfTtarget
CompactBalanceamount
|
| Force transfer |
|
✔️ |
✔️ |
|
CompactBalanceid
AccountIdLookupOfTsource
AccountIdLookupOfTdest
CompactBalanceamount
|
| Freeze |
|
✔️ |
✔️ |
|
CompactBalanceid
AccountIdLookupOfTwho
|
| Thaw |
|
✔️ |
✔️ |
|
CompactBalanceid
AccountIdLookupOfTwho
|
| Freeze asset |
|
✔️ |
✔️ |
|
CompactBalanceid
|
| Thaw asset |
|
✔️ |
✔️ |
|
CompactBalanceid
|
| Transfer ownership |
|
✔️ |
✔️ |
|
CompactBalanceid
AccountIdLookupOfTowner
|
| Set team |
|
✔️ |
✔️ |
|
CompactBalanceid
AccountIdLookupOfTissuer
AccountIdLookupOfTadmin
AccountIdLookupOfTfreezer
|
| Set metadata |
|
✔️ |
✔️ |
|
CompactBalanceid
Vecu8name
Vecu8symbol
u8decimals
|
| Clear metadata |
|
✔️ |
✔️ |
|
CompactBalanceid
|
| Force set metadata |
|
✔️ |
✔️ |
|
CompactBalanceid
Vecu8name
Vecu8symbol
u8decimals
boolis_frozen
|
| Force clear metadata |
|
✔️ |
✔️ |
|
CompactBalanceid
|
| Force asset status |
|
✔️ |
✔️ |
|
CompactBalanceid
AccountIdLookupOfTowner
AccountIdLookupOfTissuer
AccountIdLookupOfTadmin
AccountIdLookupOfTfreezer
CompactBalancemin_balance
boolis_sufficient
boolis_frozen
|
| Approve transfer |
|
✔️ |
✔️ |
|
CompactBalanceid
AccountIdLookupOfTdelegate
CompactBalanceamount
|
| Cancel approval |
|
✔️ |
✔️ |
|
CompactBalanceid
AccountIdLookupOfTdelegate
|
| Force cancel approval |
|
✔️ |
✔️ |
|
CompactBalanceid
AccountIdLookupOfTowner
AccountIdLookupOfTdelegate
|
| Transfer approved |
|
✔️ |
✔️ |
|
CompactBalanceid
AccountIdLookupOfTowner
AccountIdLookupOfTdestination
CompactBalanceamount
|
| Touch |
|
✔️ |
✔️ |
|
CompactBalanceid
|
| Refund |
|
✔️ |
✔️ |
|
CompactBalanceid
boolallow_burn
|
| Name |
Nano S |
Nano S XL |
Nano SP/X |
Nesting |
Arguments |
| Set uncles |
|
|
|
|
VecHeadernew_uncles
|
| Name |
Nano S |
Nano S XL |
Nano SP/X |
Nesting |
Arguments |
| Set invulnerables |
|
|
|
|
VecAccountIdnew_
|
| Set desired candidates |
|
|
|
|
u32max
|
| Set candidacy bond |
|
|
|
|
Balancebond
|
| Register as candidate |
|
|
|
|
|
| Leave intent |
|
|
|
|
|
| Name |
Nano S |
Nano S XL |
Nano SP/X |
Nesting |
Arguments |
| Set keys |
|
|
|
|
Keyskeys
Bytesproof
|
| Purge keys |
|
|
|
|
|
| Name |
Nano S |
Nano S XL |
Nano SP/X |
Nesting |
Arguments |
| Service overweight |
|
|
|
|
OverweightIndexindex
XcmWeightweight_limit
|
| Suspend xcm execution |
|
|
|
|
|
| Resume xcm execution |
|
|
|
|
|
| Update suspend threshold |
|
|
|
|
u32new_
|
| Update drop threshold |
|
|
|
|
u32new_
|
| Update resume threshold |
|
|
|
|
u32new_
|
| Update threshold weight |
|
|
|
|
XcmWeightnew_
|
| Update weight restrict decay |
|
|
|
|
XcmWeightnew_
|
| Update xcmp max individual weight |
|
|
|
|
XcmWeightnew_
|
| Name |
Nano S |
Nano S XL |
Nano SP/X |
Nesting |
Arguments |
| Send |
|
|
|
|
BoxVersionedMultiLocationdest
BoxVersionedXcmTuplemessage
|
| Teleport assets |
|
|
|
|
BoxVersionedMultiLocationdest
BoxVersionedMultiLocationbeneficiary
BoxVersionedMultiAssetsassets
u32fee_asset_item
|
| Reserve transfer assets |
|
|
|
|
BoxVersionedMultiLocationdest
BoxVersionedMultiLocationbeneficiary
BoxVersionedMultiAssetsassets
u32fee_asset_item
|
| Reserve withdraw assets |
|
|
|
|
BoxVersionedMultiLocationdest
BoxVersionedMultiLocationbeneficiary
BoxVersionedMultiAssetsassets
u32fee_asset_item
|
| Execute |
|
|
|
|
BoxVersionedXcmTasSysConfigRuntimeCallmessage
Weightmax_weight
|
| Force xcm version |
|
|
|
|
BoxMultiLocationlocation
XcmVersionxcm_version
|
| Force default xcm version |
|
|
|
|
OptionXcmVersionmaybe_xcm_version
|
| Force subscribe version notify |
|
|
|
|
BoxVersionedMultiLocationlocation
|
| Force unsubscribe version notify |
|
|
|
|
BoxVersionedMultiLocationlocation
|
| Limited reserve transfer assets |
|
|
|
|
BoxVersionedMultiLocationdest
BoxVersionedMultiLocationbeneficiary
BoxVersionedMultiAssetsassets
u32fee_asset_item
WeightLimitweight_limit
|
| Limited teleport assets |
|
|
|
|
BoxVersionedMultiLocationdest
BoxVersionedMultiLocationbeneficiary
BoxVersionedMultiAssetsassets
u32fee_asset_item
WeightLimitweight_limit
|
| Limited reserve withdraw assets |
|
|
|
|
BoxVersionedMultiLocationdest
BoxVersionedMultiLocationbeneficiary
BoxVersionedMultiAssetsassets
u32fee_asset_item
WeightLimitweight_limit
|
| Name |
Nano S |
Nano S XL |
Nano SP/X |
Nesting |
Arguments |
| Name |
Nano S |
Nano S XL |
Nano SP/X |
Nesting |
Arguments |
| Service overweight |
|
|
|
|
OverweightIndexindex
XcmWeightweight_limit
|
| Name |
Nano S |
Nano S XL |
Nano SP/X |
Nesting |
Arguments |
| Register asset location |
|
|
|
|
BoxVersionedMultiLocationasset_location
Compactu128asset_id
|
| Set asset units per second |
|
|
|
|
BoxVersionedMultiLocationasset_location
Compactu128units_per_second
|
| Change existing asset location |
|
|
|
|
BoxVersionedMultiLocationnew_asset_location
Compactu128asset_id
|
| Remove payment asset |
|
|
|
|
BoxVersionedMultiLocationasset_location
|
| Remove asset |
|
|
|
|
Compactu128asset_id
|
| Name |
Nano S |
Nano S XL |
Nano SP/X |
Nesting |
Arguments |
| Withdraw |
✔️ |
✔️ |
✔️ |
✔️ |
H160address
Balanceamount
|
| Call |
|
|
|
|
H160source
H160target
Vecu8input
U256value
u64gas_limit
U256max_fee_per_gas
OptionU256max_priority_fee_per_gas
OptionU256nonce
VecTupleH160VecH256access_list
|
| Create |
|
|
|
|
H160source
Vecu8init
U256value
u64gas_limit
U256max_fee_per_gas
OptionU256max_priority_fee_per_gas
OptionU256nonce
VecTupleH160VecH256access_list
|
| Create2 |
|
|
|
|
H160source
Vecu8init
H256salt
U256value
u64gas_limit
U256max_fee_per_gas
OptionU256max_priority_fee_per_gas
OptionU256nonce
VecTupleH160VecH256access_list
|
| Name |
Nano S |
Nano S XL |
Nano SP/X |
Nesting |
Arguments |
| Transact |
|
|
|
|
Transactiontransaction
|
| Name |
Nano S |
Nano S XL |
Nano SP/X |
Nesting |
Arguments |
| Call |
|
|
|
|
Callcall
AccountIdsigner
Vecu8signature
Compactu32nonce
|
| Name |
Nano S |
Nano S XL |
Nano SP/X |
Nesting |
Arguments |
| Set base fee per gas |
|
|
|
|
U256fee
|
| Set elasticity |
|
|
|
|
Permillelasticity
|
| Name |
Nano S |
Nano S XL |
Nano SP/X |
Nesting |
Arguments |
| Call old weight |
|
|
|
|
AccountIdLookupOfTdest
CompactBalanceamount
Compactu64gas_limit
OptionCompactBalanceOfstorage_deposit_limit
Vecu8data
|
| Instantiate with code old weight |
|
|
|
|
CompactBalanceamount
Compactu64gas_limit
OptionCompactBalanceOfstorage_deposit_limit
Vecu8code
Vecu8data
Vecu8salt
|
| Instantiate old weight |
|
|
|
|
CompactBalanceamount
Compactu64gas_limit
OptionCompactBalanceOfstorage_deposit_limit
CodeHashcode_hash
Vecu8data
Vecu8salt
|
| Upload code |
|
|
|
|
Vecu8code
OptionCompactBalanceOfstorage_deposit_limit
Determinismdeterminism
|
| Remove code |
|
|
|
|
CodeHashcode_hash
|
| Set code |
|
|
|
|
AccountIdLookupOfTdest
CodeHashcode_hash
|
| Call |
|
|
|
|
AccountIdLookupOfTdest
CompactBalanceamount
Weightgas_limit
OptionCompactBalanceOfstorage_deposit_limit
Vecu8data
|
| Instantiate with code |
|
|
|
|
CompactBalanceamount
Weightgas_limit
OptionCompactBalanceOfstorage_deposit_limit
Vecu8code
Vecu8data
Vecu8salt
|
| Instantiate |
|
|
|
|
CompactBalanceamount
Weightgas_limit
OptionCompactBalanceOfstorage_deposit_limit
CodeHashcode_hash
Bytesdata
Bytessalt
|
| Name |
Nano S |
Nano S XL |
Nano SP/X |
Nesting |
Arguments |
| Sudo |
|
|
|
|
Callcall
|
| Sudo unchecked weight |
|
|
|
|
Callcall
Weightweight
|
| Set key |
|
|
|
|
AccountIdLookupOfTnew_
|
| Sudo as |
|
|
|
|
AccountIdLookupOfTwho
Callcall
|