Solana Introduction

Major Milestones
- Available on Solana devnet for testing [Complete]
- sec3 Smart Contract Audit [Complete]
- Mainnet Launch [Soon™]
Migration Process Steps
The migration to Solana will take place on April 18, 2023 beginning at 9am PST. The team is holding a 48 hour window to complete the migration. Hotspots and LoRaWAN devices will continue to operate throughout the migration window.
- The Helium blockchain will officially halt.
- A snapshot will be taken of Helium chain state.
- Existing $HNT and $MOBILE will be mapped to Solana. Hotspots will be minted as NFTs.
- During the Migration, PoC and Data Transfer will continue to function through the offchain Oracle, rewards will be claimable after the transition phase (estimated 24-48 hours) is complete.
- Users and Exchanges can access their assets using the same private key on Solana (Solana and Helium blockchain use the same ed25519 encryption algorithm.)
- Programmatic Treasury is planned to be activated in 2023 Q2, users will be able to convert $MOBILE and $IOT into $HNT on chain at that time.
Migration Guides
As part of the Helium blockchain migration to Solana, there are some changes to existing Helium Wallets and Applications for users to be aware of.
Complete migration guides have been written for different users of Helium.
The Helium Network move to the Solana blockchain will result in all Hotspots automatically becoming Solana NFTs which, along with the Helium Network Tokens (HNT, IOT, and MOBILE), can be viewed in the Helium Wallet app.
Helium Programs on Solana
The code for all of these Programs is open source, and available in the helium-program-library repository on Github.
The Helium Programs have been audited by Sec3. The audit report was published March 20, 2023. The audit report is available from sec3 on their GitHub reports repo.
circuit_breaker
- Program ID:
circAbx64bbsscPbQzZAUvuXpHqrCe6fLMzc2uKXz9g
- Generic program wrapping sensitive mint authorities and token accounts in the Helium system to prevent large movements in the case of an exploit or bug.
data_credits
- Program ID:
credMBJhYFzfn7NxBMdU4aUqFggAjgztaCcv2Fo6fPT
- Manages the purchase, delegation, and burning of data credits.
helium_entity_manager
- Program ID:
hemjuPXBpNvggtaUnN1MwT3wrdhttKEfosTcc2P9Pg8
- Handles the issuance of NFTs representing entities that are rewardable on the Helium network, like hotspots and mappers.
helium_sub_daos
- Program ID:
hdaoVTCqhfHHo75XdAMxBKdUqvq1i5bF23sisBqVgGR
- Manages the DAO/SubDAO structure proposed in HIP-51, including the minting of tokens to subdaos,
HST holders, and the
lazy_distributor
for PoC earnings.
lazy_distributor
- Program ID:
1azyuavdMyvsivtNxPoz6SucD18eDHeXzFCUPq5XU7w
- Allows off-chain oracles to distribute PoC rewards to rewardable assets (like hotspots) that are represented as NFTs.
lazy_transactions
- Program ID:
1atrmQs3eq1N2FEYWu6tyTXbCjP4uQwExpjtnhXtS8h
- Used in the initial migration to Solana, this program allows compressing many transactions into a merkle root to be executed lazily. This guarentees all txs are executed exactly once.
treasury_management
- Program ID:
treaf4wWBBty3fHdyBpo35Mz84M8k3heKXmjmi9vFt5
- Mangages the treasury of each SubDAO as proposed in HIP-51, allowing DNT tokens to be swapped for HNT according to a formula.
voter_stake_registry
- Program ID:
hvsrNC3NKbcryqDs2DocYHZ9yPKEVzdSjQG6RVtK1s8
- Handles voting power via veHNT in Helium Governance.
Packages (JS/Typescript)
Name | Description |
---|---|
@helium/circuit-breaker-sdk | SDK to circuit breaker program |
@helium/data-credits-sdk | SDK to the data credits program |
@helium/distributor-oracle | SDK for interacting with the lazy-distributor oracles to claim rewards |
@helium/helium-entity-manager-sdk | SDK to the Helium entity manager program |
@helium/helium-sub-daos-sdk | SDK to Helium sub daos program |
@helium/idls | IDLs containing the typescript definitions for the raw anchor SDKs of our programs |
@helium/lazy-distributor-sdk | SDK to the lazy distributor program |
@helium/lazy-transactions-sdk | SDK to lazy transactions program |
@helium/spl-utils | General utils for interacting with Solana, tokens, etc |
@helium/treasury-management-sdk | SDK to the treasury management program |
@helium/voter-stake-registry-sdk | SDK to the voter stake registry program |
Important Addresses and Links
All the tokens are on the TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA
Program.
The mint IDs are as follows:
Name | ID |
---|---|
HNT | hntyVP6YFm1Hg25TN9WGLqM12b8TQmcknKrdu1oxWux |
MOBILE | mb1eu7TzEc71KxDpsmsKoucSSuuoGLv1drys1oP2jh6 |
IOT | iotEVVZLEywoTn1QdwNPddxPWszn3zFhEot3MfL9fns |
DC | dcuc8Amr83Wz27ZkQ2K9NS6r8zRpf1J6cvArEBDZDmm |