Helium Network Components
The following is a list of the primary components - hardware, software, protocols, etc. - that make up the end-to-end Helium Network. Complete documentation, code, and other resources for these are linked at the bottom of each section when available.
The Helium blockchain is a new, public, distributed ledger, designed from the ground up to provide an efficient way to run application logic core to the Helium Network. Specifically it furnishes the immutable, append-only transaction system that is verified using the Helium Consensus Protocol (described in detail below).
In addition to a new consensus protocol, the Helium blockchain uses a new, novel work algorithm known as Proof of Coverage to secure the network and cryptographically verify the location of Hotspots that are providing wireless coverage to Helium LongFi-enabled IoT devices. These Hotspots are also responsible for submitting coverage proofs that provide details about their true location in and value to the Helium Network. Hotspots that submit the best proofs are more likely to be selected to a consensus group, and are thus responsible for verifying transactions and mining blocks.
The Helium Hotspot is a combination LongFi wireless router and Helium blockchain miner built and distributed by Helium, Inc. It creates a long-range wireless network for routing packets to and from Helium LongFi-enabled devices and performs ongoing mining duties to secure the Helium Network.
It’s expected that developers and manufacturers will build other “Hotspot” variants that conform to published network specifications. “Helium Hotspot” is the name of the Hotspot designed, manufactured, and distributed by Helium, Inc.
LongFi is Helium’s open source, sub-GHz wireless protocol purpose-built for a wireless peer-to-peer network. Any device running the Helium LongFi protocol can send and receive packets over the Helium Network via any Hotspot in range. LongFi provides miles of range and optimized battery life for low-bandwidth IoT sensor applications. The protocol is designed to reduce technical friction and facilitate a fast, simple hardware product development cycle.
LongFi uses the LoRA PHY and is compatible with most certified LoRa modules such as the SX127x or SX126x from Semtech.
It is a superior alternative to LoRaWAN.
Three of the biggest improvements over LoRaWAN are:
- Packet fragmentation and reassembly - The ability to send packets of arbitrary size is a core feature of LongFi;
- Fully bi-directional - LongFi allows for over-the-air (OTA) firmware updates and sending of things like control packets.
- Roaming - Because all LongFi devices are trusted by all Hotspots on the network, and all Hotspots have the same set of capabilities, developers can take advantage of one, unified Helium Network anywhere coverage exists.
Routers are cloud-based participants in the Helium Network and are the termination point for device data. Routers are identifiable by their OUI (Organizationally Unique Identifier) and are operated by developers and enterprises deploying sensor applications on the Helium Network. Helium also operates a high-availability router that’s open to Helium Network users.
Devices on the Helium Network are able to send data to one or more routers. When a device sends a packet, the Hotspot that receives it via LongFi queries the blockchain for the router OUI (or OUIs) associated with that device. The Hotspot forwards it on, and the target router is then responsible for handling the payload and remitting payment to the Hotspot using Data Credits.
Routers are also the basis for a mechanism called “Channels”. Channels are pre-built integrations with popular cloud services like AWS, Google Cloud, and Azure; and protocols like HTTP(s) and MQTT(s). Any organization deploying a router can implement custom channels using the reference implementation published by Helium.
Console is a web application built and maintained by Helium. It’s used by developers and enterprises on the Helium network to deploy and manage devices, configure Channels, buy data credits, and more.
Organizations and developers not wanting to use Console can build similar functionality using various APIs exposed by the Helium blockchain and router.
The Helium blockchain API enables programmatic access to all data stored in the Helium blockchain. The Helium Mobile Wallet, the Network Visualizer, and the public network Dashboard all make use of this API.
- Full usage and design documentation for the Helium blockchain API is available here.
- The Blockchain API source code is on GitHub
Helium Mobile Wallet
The Helium Mobile Wallet is the officially supported iOS and Android app used to manage Helium tokens, deploy and administer Hotspots, and view network statistics and visualizations.
The Helium Mobile Wallet is the primary mechanism for deploying Helium Hotspots. A given Hotspot is tied permanently to the Mobile Wallet (and associated private key) used to deploy it.
Helium CLI Wallet
Helium maintains and develops a Command Line Interface (CLI) for creating and managing Helium wallets. Code and documentation can be found here.