Please visit our website at zondax.ch
This project contains the xx network app (https://xx.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
Light
XL
Nesting
Arguments
Fill block
✔️
✔️
Perbill ratio
Remark
✔️
✔️
Vecu8 remark
Set heap pages
✔️
✔️
u64 pages
Set code
✔️
✔️
Vecu8 code
Set code without checks
✔️
✔️
Vecu8 code
Set storage
VecKeyValue items
Kill storage
VecKey keys
Kill prefix
Key prefix u32 subkeys
Remark with event
✔️
✔️
Vecu8 remark
Name
Light
XL
Nesting
Arguments
Schedule
BlockNumber when OptionschedulePeriodBlockNumber maybe_periodic schedulePriority priority Call call
Cancel
BlockNumber when u32 index
Schedule named
Vecu8 id BlockNumber when OptionschedulePeriodBlockNumber maybe_periodic schedulePriority priority Call call
Cancel named
Vecu8 id
Schedule after
BlockNumber after OptionschedulePeriodBlockNumber maybe_periodic schedulePriority priority Call call
Schedule named after
Vecu8 id BlockNumber after OptionschedulePeriodBlockNumber maybe_periodic schedulePriority priority Call call
Name
Light
XL
Nesting
Arguments
Report equivocation
BoxEquivocationProofHeader equivocation_proof KeyOwnerProof key_owner_proof
Report equivocation unsigned
BoxEquivocationProofHeader equivocation_proof KeyOwnerProof key_owner_proof
Plan config change
NextConfigDescriptor config
Name
Light
XL
Nesting
Arguments
Set
✔️
Compactu64 now
Name
Light
XL
Nesting
Arguments
Transfer
✔️
✔️
✔️
LookupasStaticLookupSource dest CompactBalance amount
Set balance
✔️
✔️
LookupasStaticLookupSource who CompactBalance new_free CompactBalance new_reserved
Force transfer
✔️
✔️
✔️
LookupasStaticLookupSource source LookupasStaticLookupSource dest CompactBalance amount
Transfer keep alive
✔️
✔️
✔️
LookupasStaticLookupSource dest CompactBalance amount
Transfer all
✔️
✔️
LookupasStaticLookupSource dest bool keep_alive
Force unreserve
✔️
LookupasStaticLookupSource who Balance amount
Name
Light
XL
Nesting
Arguments
Set uncles
VecHeader new_uncles
Name
Light
XL
Nesting
Arguments
Bond
✔️
✔️
LookupasStaticLookupSource controller CompactBalance amount OptionHash cmix_id
Bond extra
✔️
✔️
CompactBalance amount
Unbond
✔️
✔️
CompactBalance amount
Withdraw Unbonded
✔️
✔️
u32 num_slashing_spans
Validate
✔️
✔️
ValidatorPrefs prefs
Nominate
✔️
✔️
VecLookupasStaticLookupSource targets
Chill
✔️
✔️
Set controller
✔️
✔️
LookupasStaticLookupSource controller
Set validator count
✔️
Compactu32 new_
Increase validator count
✔️
Compactu32 additional
Scale validator count
Percent factor
Force no eras
✔️
Force new era
✔️
Set invulnerables
✔️
VecAccountId invulnerables
Force unstake
✔️
AccountId stash u32 num_slashing_spans
Force new era always
✔️
Cancel deferred slash
✔️
EraIndex era Vecu32 slash_indices
Payout stakers
✔️
✔️
AccountId validator_stash EraIndex era
Rebond
✔️
✔️
CompactBalance amount
Set history depth
✔️
Compactu32 new_history_depth Compactu32 era_items_deleted
Reap stash
✔️
AccountId stash u32 num_slashing_spans
Kick
✔️
VecLookupasStaticLookupSource who
Set staking limits
Balance min_nominator_bond Balance min_validator_bond Optionu32 max_nominator_count Optionu32 max_validator_count OptionPercent threshold Perbill min_commission
Chill other
✔️
AccountId controller
Set cmix id
✔️
Hash cmix_id
Transfer cmix id
✔️
AccountId dest
ElectionProviderMultiPhase
Name
Light
XL
Nesting
Arguments
Submit unsigned
BoxRawSolutionSolutionOfT raw_solution SolutionOrSnapshotSize witness
Set minimum untrusted score
OptionElectionScore maybe_next_score
Set emergency election result
SupportsAccountId supports
Submit
BoxRawSolutionSolutionOfT raw_solution u32 num_signed_submissions
Name
Light
XL
Nesting
Arguments
Set keys
✔️
✔️
Keys keys Bytes proof
Purge keys
✔️
✔️
Name
Light
XL
Nesting
Arguments
Report equivocation
BoxEquivocationProofHashBlockNumber equivocation_proof KeyOwnerProof key_owner_proof
Report equivocation unsigned
BoxEquivocationProofHashBlockNumber equivocation_proof KeyOwnerProof key_owner_proof
Note stalled
✔️
BlockNumber delay BlockNumber best_finalized_block_number
Name
Light
XL
Nesting
Arguments
Heartbeat
HeartbeatBlockNumber heartbeat AuthorityIdasRuntimeAppPublicSignature signature
Name
Light
XL
Nesting
Arguments
Propose
Hash proposal_hash CompactBalance amount
Second
Compactu32 proposal Compactu32 seconds_upper_bound
Vote
Compactu32 ref_index AccountVote vote
Emergency cancel
ReferendumIndex ref_index
External propose
Hash proposal_hash
External propose majority
Hash proposal_hash
External propose default
Hash proposal_hash
Fast track
Hash proposal_hash BlockNumber voting_period BlockNumber delay
Veto external
Hash proposal_hash
Cancel referendum
Compactu32 ref_index
Cancel queued
ReferendumIndex which
Delegate
AccountId to Conviction conviction Balance balance
Undelegate
Clear public proposals
Note preimage
Bytes encoded_proposal
Note preimage operational
Bytes encoded_proposal
Note imminent preimage
Bytes encoded_proposal
Note imminent preimage operational
Bytes encoded_proposal
Reap preimage
Hash proposal_hash Compactu32 proposal_len_upper_bound
Unlock
AccountId target
Remove vote
ReferendumIndex index
Remove other vote
AccountId target ReferendumIndex index
Enact proposal
Hash proposal_hash ReferendumIndex index
Blacklist
Hash proposal_hash OptionReferendumIndex maybe_ref_index
Cancel proposal
Compactu32 prop_index
Name
Light
XL
Nesting
Arguments
Set members
✔️
VecAccountId new_members OptionAccountId prime MemberCount old_count
Execute
Proposal proposal Compactu32 length_bound
Propose
Compactu32 threshold Proposal proposal Compactu32 length_bound
Vote
✔️
Hash proposal Compactu32 index bool approve
Close
✔️
Hash proposal_hash Compactu32 index Compactu64 proposal_weight_bound Compactu32 length_bound
Disapprove proposal
✔️
Hash proposal_hash
Name
Light
XL
Nesting
Arguments
Set members
✔️
VecAccountId new_members OptionAccountId prime MemberCount old_count
Execute
Proposal proposal Compactu32 length_bound
Propose
Compactu32 threshold Proposal proposal Compactu32 length_bound
Vote
✔️
Hash proposal Compactu32 index bool approve
Close
✔️
Hash proposal_hash Compactu32 index Compactu64 proposal_weight_bound Compactu32 length_bound
Disapprove proposal
✔️
Hash proposal_hash
Name
Light
XL
Nesting
Arguments
Vote
✔️
VecAccountId votes Compactu128 amount
Remove voter
✔️
Submit candidacy
✔️
Compactu32 candidate_count
Renounce candidacy
Renouncing renouncing
Remove member
✔️
LookupasStaticLookupSource who bool has_replacement
Clean defunct voters
✔️
u32 num_voters u32 num_defunct
Name
Light
XL
Nesting
Arguments
Add member
✔️
AccountId who
Remove member
✔️
AccountId who
Swap member
✔️
AccountId remove AccountId add
Reset members
✔️
VecAccountId members
Change key
✔️
AccountId new_
Set prime
✔️
AccountId who
Clear prime
✔️
Name
Light
XL
Nesting
Arguments
Propose spend
✔️
CompactBalance amount LookupasStaticLookupSource beneficiary
Reject proposal
✔️
Compactu32 proposal_id
Approve proposal
✔️
Compactu32 proposal_id
Name
Light
XL
Nesting
Arguments
Claim
✔️
AccountId dest EcdsaSignature ethereum_signature
Mint claim
EthereumAddress who Balance amount OptionVecTupleBalanceOfTBalanceOfTBlockNumber vesting_schedules OptionStatementKind statement
Claim attest
✔️
AccountId dest EcdsaSignature ethereum_signature Bytes statement
Attest
✔️
Bytes statement
Move claim
✔️
EthereumAddress old EthereumAddress new_ OptionAccountId maybe_preclaim
Name
Light
XL
Nesting
Arguments
Vest
✔️
Vest other
✔️
LookupasStaticLookupSource target
Vested transfer
LookupasStaticLookupSource target VestingInfo schedule
Force vested transfer
LookupasStaticLookupSource source LookupasStaticLookupSource target VestingInfo schedule
Merge schedules
✔️
u32 schedule1_index u32 schedule2_index
Name
Light
XL
Nesting
Arguments
Batch
✔️
✔️
VecCall calls
As derivative
u16 index Call call
Batch all
✔️
✔️
VecCall calls
Dispatch as
BoxPalletsOrigin as_origin Call call
Name
Light
XL
Nesting
Arguments
Add registrar
✔️
AccountId account
Set identity
BoxIdentityInfoMaxAdditionalFields info
Set subs
VecTupleAccountIdData subs
Clear identity
✔️
Request judgement
✔️
Compactu32 reg_index Compactu128 max_fee
Cancel request
✔️
RegistrarIndex reg_index
Set fee
✔️
Compactu32 index Compactu128 fee
Set account id
✔️
Compactu32 index AccountId new_
Set fields
Compactu32 index IdentityFields fields
Provide judgement
Compactu32 reg_index LookupasStaticLookupSource target JudgementBalanceOfT judgement
Kill identity
✔️
LookupasStaticLookupSource target
Add sub
LookupasStaticLookupSource sub Data data
Rename sub
LookupasStaticLookupSource sub Data data
Remove sub
✔️
LookupasStaticLookupSource sub
Quit sub
✔️
Name
Light
XL
Nesting
Arguments
Proxy
✔️
✔️
AccountId real OptionProxyType force_proxy_type Call call
Add proxy
✔️
AccountId delegate ProxyType proxy_type BlockNumber delay
Remove proxy
✔️
AccountId delegate ProxyType proxy_type BlockNumber delay
Remove proxies
✔️
Anonymous
✔️
ProxyType proxy_type BlockNumber delay u16 index
Kill anonymous
✔️
AccountId spawner ProxyType proxy_type u16 index Compactu32 height Compactu32 ext_index
Announce
✔️
AccountId real CallHashOf call_hash
Remove announcement
✔️
AccountId real CallHashOf call_hash
Reject announcement
✔️
AccountId delegate CallHashOf call_hash
Proxy announced
✔️
AccountId delegate AccountId real OptionProxyType force_proxy_type Call call
Name
Light
XL
Nesting
Arguments
Propose bounty
✔️
CompactBalance amount Bytes description
Approve bounty
✔️
Compactu32 bounty_id
Propose curator
✔️
Compactu32 bounty_id LookupasStaticLookupSource curator CompactBalance fee
Unassign curator
✔️
Compactu32 bounty_id
Accept curator
✔️
Compactu32 bounty_id
Award bounty
✔️
Compactu32 bounty_id LookupasStaticLookupSource beneficiary
Claim bounty
✔️
Compactu32 bounty_id
Close bounty
✔️
Compactu32 bounty_id
Extend bounty expiry
✔️
Compactu32 bounty_id Bytes remark
Name
Light
XL
Nesting
Arguments
Report awesome
✔️
Bytes reason AccountId who
Retract tip
✔️
Hash hash
Tip new
✔️
Bytes reason AccountId who Compactu128 tip_value
Tip
✔️
Hash hash Compactu128 tip_value
Close tip
✔️
Hash hash
Slash tip
✔️
Hash hash
Name
Light
XL
Nesting
Arguments
Set threshold
✔️
u32 threshold
Set resource
H256 id Vecu8 method
Remove resource
✔️
H256 id
Whitelist chain
ChainId id
Add relayer
✔️
AccountId v
Remove relayer
✔️
AccountId v
Acknowledge proposal
DepositNonce nonce ChainId src_id H256 r_id BoxTasConfigProposal call
Reject proposal
DepositNonce nonce ChainId src_id H256 r_id BoxTasConfigProposal call
Eval vote state
DepositNonce nonce ChainId src_id BoxTasConfigProposal prop
Name
Light
XL
Nesting
Arguments
Transfer native
Balance amount Vecu8 recipient chainbridgeChainId dest_id
Transfer
✔️
AccountId to Balance amount
Set swap fee
✔️
Compactu128 fee
Set fee destination
✔️
AccountId dest
Name
Light
XL
Nesting
Arguments
Set cmix hashes
cmixSoftwareHashesHash hashes
Set scheduling account
✔️
AccountId who
Set next cmix variables
cmixVariables variables
Submit cmix points
VecTupleAccountIdu32 data
Submit cmix deductions
VecTupleAccountIdu32 data
Set cmix address space
✔️
u8 size
Set admin permission
✔️
BlockNumber permission
Name
Light
XL
Nesting
Arguments
Set inflation params
inflationInflationFixedParams params
Set interest points
VecinflationIdealInterestPointBlockNumber points
Set liquidity rewards stake
✔️
Compactu128 amount
Set liquidity rewards balance
✔️
Compactu128 amount
Name
Light
XL
Nesting
Arguments
Payout
✔️
AccountId who
Custody bond
✔️
AccountId custody AccountId controller Compactu128 amount
Custody bond extra
✔️
AccountId custody Compactu128 amount
Custody set controller
✔️
AccountId custody AccountId controller
Custody set proxy
✔️
AccountId custody AccountId proxy
Team custody set proxy
✔️
AccountId proxy
Add custodian
✔️
AccountId custodian
Remove custodian
✔️
AccountId custodian
Replace team member
✔️
AccountId who AccountId new_
Name
Light
XL
Nesting
Arguments
Select option
RewardOption option
Approve
✔️
Name
Light
XL
Nesting
Arguments
Set testnet manager account
✔️
AccountId who
Set sale manager account
AccountId who
Testnet distribute
VecTransferDataAccountIdBalanceOfTBlockNumber data
Sale distribute
VecTransferDataAccountIdBalanceOfTBlockNumber data
Name
Light
XL
Nesting
Arguments
As multi threshold 1
✔️
✔️
VecAccountId other_signatories Call call
As multi
✔️
✔️
u16 threshold VecAccountId other_signatories OptionTimepoint maybe_timepoint OpaqueCall call bool store_call Weight max_weight
Approve as multi
✔️
✔️
u16 threshold VecAccountId other_signatories OptionTimepoint maybe_timepoint H256 call_hash Weight max_weight
Cancel as multi
✔️
✔️
u16 threshold VecAccountId other_signatories Timepoint timepoint H256 call_hash
Name
Light
XL
Nesting
Arguments
As recovered
AccountId account Call call
Set recovered
✔️
AccountId lost AccountId rescuer
Create recovery
VecAccountId friends u16 threshold BlockNumber delay_period
Initiate recovery
✔️
AccountId account
Vouch recovery
✔️
AccountId lost AccountId rescuer
Claim recovery
✔️
AccountId account
Close recovery
✔️
AccountId rescuer
Remove recovery
✔️
Cancel recovered
✔️
AccountId account
Name
Light
XL
Nesting
Arguments
Create
Compactu32 id LookupasStaticLookupSource admin Balance min_balance
Force create
✔️
Compactu32 id LookupasStaticLookupSource owner bool is_sufficient Compactu64 min_balance
Destroy
Compactu32 id DestroyWitness witness
Mint
✔️
Compactu32 id LookupasStaticLookupSource beneficiary Compactu64 amount
Burn
✔️
Compactu32 id LookupasStaticLookupSource who Compactu64 amount
Transfer
✔️
Compactu32 id LookupasStaticLookupSource target Compactu64 amount
Transfer keep alive
✔️
Compactu32 id LookupasStaticLookupSource target Compactu64 amount
Force transfer
✔️
Compactu32 id LookupasStaticLookupSource source LookupasStaticLookupSource dest Compactu64 amount
Freeze
✔️
Compactu32 id LookupasStaticLookupSource who
Thaw
✔️
Compactu32 id LookupasStaticLookupSource who
Freeze asset
✔️
Compactu32 id
Thaw asset
✔️
Compactu32 id
Transfer ownership
✔️
Compactu32 id LookupasStaticLookupSource owner
Set team
✔️
Compactu32 id LookupasStaticLookupSource issuer LookupasStaticLookupSource admin LookupasStaticLookupSource freezer
Set metadata
✔️
Compactu32 id Vecu8 name Vecu8 symbol u8 decimals
Clear metadata
✔️
Compactu32 id
Force set metadata
✔️
Compactu32 id Vecu8 name Vecu8 symbol u8 decimals bool is_frozen
Force clear metadata
✔️
Compactu32 id
Force asset status
✔️
Compactu32 id LookupasStaticLookupSource owner LookupasStaticLookupSource issuer LookupasStaticLookupSource admin LookupasStaticLookupSource freezer Compactu64 min_balance bool is_sufficient bool is_frozen
Approve transfer
✔️
Compactu32 id LookupasStaticLookupSource delegate Compactu64 amount
Cancel approval
✔️
Compactu32 id LookupasStaticLookupSource delegate
Force cancel approval
✔️
Compactu32 id LookupasStaticLookupSource owner LookupasStaticLookupSource delegate
Transfer approved
✔️
Compactu32 id LookupasStaticLookupSource owner LookupasStaticLookupSource destination Compactu64 amount
Name
Light
XL
Nesting
Arguments
Create
✔️
Compactu32 class_ LookupasStaticLookupSource admin
Force create
✔️
Compactu32 class_ LookupasStaticLookupSource owner bool free_holding
Destroy
Compactu32 class_ DestroyWitness witness
Mint
✔️
Compactu32 class_ Compactu32 instance LookupasStaticLookupSource owner
Burn
Compactu32 class_ Compactu32 instance OptionLookupasStaticLookupSource check_owner
Transfer
✔️
Compactu32 class_ Compactu32 instance LookupasStaticLookupSource dest
Redeposit
Compactu32 class_ VecInstanceId instances
Freeze
✔️
Compactu32 class_ Compactu32 instance
Thaw
✔️
Compactu32 class_ Compactu32 instance
Freeze class
✔️
Compactu32 class_
Thaw class
✔️
Compactu32 class_
Transfer ownership
✔️
Compactu32 class_ LookupasStaticLookupSource owner
Set team
✔️
Compactu32 class_ LookupasStaticLookupSource issuer LookupasStaticLookupSource admin LookupasStaticLookupSource freezer
Approve transfer
✔️
Compactu32 class_ Compactu32 instance LookupasStaticLookupSource delegate
Cancel approval
Compactu32 class_ Compactu32 instance OptionLookupasStaticLookupSource maybe_check_delegate
Force asset status
✔️
Compactu32 class_ LookupasStaticLookupSource owner LookupasStaticLookupSource issuer LookupasStaticLookupSource admin LookupasStaticLookupSource freezer bool free_holding bool is_frozen
Set attribute
Compactu32 class_ OptionInstanceId maybe_instance BoundedVecu8 key BoundedVecu8 value
Clear attribute
Compactu32 class_ OptionInstanceId maybe_instance BoundedVecu8 key
Set metadata
Compactu32 class_ Compactu32 instance BoundedVecu8 data bool is_frozen
Clear metadata
✔️
Compactu32 class_ Compactu32 instance
Set class metadata
Compactu32 class_ BoundedVecu8 data bool is_frozen
Clear class metadata
✔️
Compactu32 class_