Skip to main content

Hotspot BLE Services

This page has not been fully updated to represent the latest state of the Helium Network following the migration to Solana on April 18, 2023.

The Helium Hotspot provides a Bluetooth Low Energy (BLE) interface for users to configure several aspects of the device. The BLE services and advertisement data are provided below.

It is generally recommended that the user first press a button on the Hotspot to activate the BLE advertising. Alternatively, enabling BLE for ~5 minutes after power up is acceptable. Maintaining BLE advertising for a prolonged period of time is not recommended.

Hotspot Makers make develop their own BLE service which complies with the specification herein. In addition, they may leverage Helium's open-source example: gateway-config

info

Data may need to be serialized or de-serialized to Protocol Buffers depending on the BLE Characteristic. The Protocol Buffers message definitions are listed below. For data that are listed as ASCII string, they can be directly interpreted as ASCII strings.

Device Name: Helium Hotspot ####

UUID: 0fda92b2-44a2-4af2-84f5-fa682baa2b8d

Device Information - Service​

UUID: 180A

Manufacture Name String - Characteristic​

UUID: 2A29

Data Type: ASCII String

Example Value: "Helium"

Serial Number String - Characteristic​

UUID: 2A25

Data Type: ASCII String

Example Value: "6081F989E7BF"

Firmware Revision String - Characteristic​

UUID: 2A26

Data Type: ASCII String

Example Value: "2020.02.18.1"

Custom Service - Service​

UUID: 0fda92b2-44a2-4af2-84f5-fa682baa2b8d

OnboardingKey - Characteristic​

UUID: d083b2bd-be16-4600-b397-61512ca2f5ad

Data Type: ASCII String

Example Value: "11TqqVzycXK5k49bXbmcUcSne91krq7v3VSQCfDXr"

PublicKey - Characteristic​

UUID: 0a852c59-50d3-4492-bfd3-22fe58a24f01

Data Type: ASCII String

Example Value: "117ei8D1Bk2kYqWNjSFuLgg3BrtTNSTi2tt14LRUFgt"

WiFiServices - Characteristic​

UUID: d7515033-7e7b-45be-803f-c8737b171a29

Data Type: Protocol Buffers

message wifi_services_v1 {
repeated string services = 1;
}

Diagnostics - Characteristic​

UUID: b833d34f-d871-422c-bf9e-8e6ec117d57e

Data Type: Protocol Buffers

message diagnostics_v1 {
map<string, string>diagnostics = 1;
}

No Descriptor Name(WiFi MAC Address) - Characteristic​

UUID: 9c4314f2-8a0c-45fd-a58d-d4a7e64c3a57

Data Type: ASCII String

Example Value: "6081F989E7BF"

Lights - Characteristic​

UUID: 180efdef-7579-4b4a-b2df-72733b7fa2fe

Data Type: ASCII String

Example Value: "on"

WiFiSSID - Characteristic​

UUID: 7731de63-bc6a-4100-8ab1-89b2356b038b

Data Type: ASCII String

Example Value: ""

AssertLocation - Characteristic​

UUID: d435f5de-01a4-4e7d-84ba-dfd347f60275

Data Type: Protocol Buffers

message assert_loc_v1 {
float lat = 1;
float lon = 2;
string owner = 3;
uint64 nonce = 4;
uint64 fee = 5;
uint64 amount = 6;
string payer = 7;
}

AddGateway - Characteristic​

UUID: df3b16ca-c985-4da2-a6d2-9b9b9abdb858

Data Type: Protocol Buffers

message add_gateway_v1 {
string owner = 1;
uint64 amount = 2;
uint64 fee = 3;
string payer = 4;
}

WiFiConnect - Characteristic​

UUID: 398168aa-0111-4ec0-b1fa-171671270608

Data Type: Protocol Buffers

message wifi_connect_v1 {
string service = 1;
string password = 2;
}

EthernetOnline - Characteristic​

UUID: e5866bd6-0288-4476-98ca-ef7da6b4d289

Data Type: ASCII String

Example Value: "true" or "false"