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_