Skip to main content
For the complete documentation index, see llms.txt.

Hubble Network developer documentation: integrate Bluetooth devices with terrestrial and satellite connectivity.

Dash Quick Start

Start broadcasting on Terrestrial or Satellite Network in minutes with an off-the-shelf developer kit, and view device transmissions in your Hubble Dashboard.


What is Quick Start?​

We’ve built a fast-track option to start testing Hubble’s Networks: Terrestrial and Satellite. All you need is a supported Bluetooth® developer kit, your laptop and your mobile device.

  • Start by signing up for a free Sandbox account.
  • Use the Hubble-native flow to add a device directly from your Dashboard.
  • Run the command-line tool to provision your board with a pre-compiled Terrestrial or Satellite firmware image.

Satellite Network is not accessible in Sandbox. Activate your Hubble Live free trial to unlock your organization and send your first satellite transmission. You also get the benefit of the full Terrestrial Network: 100 million gateways listening for your device.

See your transmissions:

  • For Terrestrial, download the Hubble Connect mobile app to scan for device broadcasts and see data populate in your sandbox. Hubble Connect mobile app provides closed-loop network scanning by converting your mobile device into a Terrestrial Network gateway.
  • For Satellite, validate that the device is beaconing using a software-defined radio (SDR) and the Hubble CLI — or simply place the device outside to conduct a real-world test.

Supported Platforms​

PlatformTerrestrialSatellite
Developer KitNordic nRF52840 developer kit
Nordic nRF52 developer kit
Nordic nRF21540 developer kit
Texas Instruments cc2340R53 launch pad
Texas Instruments cc2340R5 launch pad
Texas Instruments cc2755 launch pad
Nordic nRF21540 developer kit
Silicon Labs EFR32MG24 pro kit
Desktop OSMac OS
Linux
Windows (available in beta)
Mac OS
Linux
Windows (available in beta)
Mobile OSiOS
Android
Not required

Want to see a specific board or testing platform supported? Please submit feedback.

Go further: Start with a Reference Application if you don't see your board listed here.


How it Works​

The Dash Quick Start flow helps you onboard an industry-standard Bluetooth developer kit as your first device connected by Hubble.

Any commercial Bluetooth Low Energy (LE) chip is compatible with Hubble's Terrestrial Network. Satellite transmission reuses the same BLE radio but sends a custom Hubble protocol at a higher transmission power, so it additionally requires a board with a power amplifier (PA) or frontend module (FEM).

To get started, log into your Hubble Dashboard and click Add a Device. Select “Quick Start” to Provision a Device. You must have an Admin role in your organization (see Users & Roles).

1. Connect your Board​

You will use your laptop to provision a developer kit as a new device that belongs to your Hubble organization. Start by plugging your board into your machine.

  • Connect your board using a data-capable cable. If your cable is for charging only your board cannot be programmed. Look for status lights.
  • Make sure the board is turned on. Some boards do not have a power switch, such as the Texas Instruments (TI) Launch Pad. Other boards have both an “on/off” switch and a “power source” switch (Nordic). See Troubleshooting below for board-specific guidance.

2. Run the Command​

You will create a custom firmware image for your new device with the command that you copy/paste from the Dashboard. Then use the manufacturer's proprietary provisioning tool to "flash" your board.

  • Open Terminal (Mac OS) or PowerShell (Windows) on your laptop or desktop. You’ll use the terminal to program your developer kit physically connected to your machine.
  • Paste the command from the Dashboard. When you hit ENTER, hubble-installer will parse the command that you copy/paste from the Dashboard to save your shared API credentials and identify the developer kit that you selected in the Dashboard.

hubble-installer requests the board-specific binary file (compiled by Hubble using the Device SDK) from the hubble-tldm repository. Go deeper on Github to see how it works.

2.1. Install any required dependencies:​

If prompted to install any dependencies, remember to use the password for your machine (not your Hubble password).

PlatformDependency
Mac OShomebrew: standard package manager on Mac OS.
uv: required to manage the Python package and virtual environment on Mac OS.
Windowschocolatey: standard package manager on Windows.
Nordicsegger-jlink: required to flash Nordic board.
nrfutil: manages JLink, required to flash Nordic board.
TIUniFlash: required to flash your TI board.

2.2. Register your new device:​

hubble-installer registers your board as a new “device” using your API credentials (organization ID and an API token), which are encoded in the command line copied from your desktop. You have the option to give your device a name in the provisioning flow.

Devices registered on the satellite path are additionally tagged satellite: next-pass at registration. That tag is what surfaces the Next pass widget on your Device Details page. You may dismiss the widget after your first packet, or simply remove the tag.

2.3. Provision your board:​

The provisioning process differs for Nordic and SiLabs developer kits vs. the TI launch pad.

  • Nordic uses Segger J-Link application to “flash” your board, which hubble-installer will run directly from Terminal.
  • Texas Instruments uses a proprietary provisioning tool called UniFlash to actually “flash” your board. hubble-installer script will generate a binary .hex file that UniFlash uses for the device image. You will need to open UniFlash on your desktop to finish the provisioning process.

3A. Terrestrial: Using Hubble Connect​

After you successfully provision your board, it begins beaconing on Hubble's Terrestrial Network. Now, our globally distributed network composed of millions of scanning gateways can begin detecting your device — wherever you take it.

You will use Hubble Connect mobile app to detect your device in Sandbox.

If your organization is limited to Sandbox, you will only receive device data packets captured locally using the Hubble Connect mobile app.

  • Install Hubble Connect on your mobile device. On your Hubble Dashboard, scan the QR code to download Hubble Connect. The app converts your mobile device into a scanning gateway, similar to our 100 million scanning gateways on Terrestrial Network.
  • Login with your Dashboard credentials. View your device and the latest broadcast snapshot on My Devices.

Learn more about the Hubble Connect mobile app.

3B. Satellite: Test Outside​

Hubble Connect plays no part in the satellite path — your device transmits to a satellite directly, so the only thing standing between you and first data is where you put the board and when the next pass happens.

Device Placement​

The Dashboard shows placement guidance as the last step of provisioning. Where you place the device matters as much as the firmware:

TipDescription
Roof or backyardThe best placement is a rooftop or outdoor space with a clear sky view.
Lay it flatThe device should sit flat for full coverage.
Direct line of sightThe link needs an unobstructed path to the sky — it works like eyesight.
Watch for treesTrees can obstruct the signal.
Avoid tall buildingsLarge structures block the signal; more open space is better.
Weather-tolerantLight rain is fine. Heavy rain, snow, or thick humidity can affect transmission.

If you are testing more than one device, space them at least 6 in (15 cm) apart, and keep them clear of large metal objects and liquids.

Go further: Read the full Satellite Transmission Guidance.

Setting install location​

In your Dashboard, the placement screen asks your browser for your location and saves it as the device's install location, which is what upcoming passes are calculated against. If you decline the browser prompt, the Dashboard falls back to a default location and prompts you to set the install location on the Device Details page instead. Passes will not be accurate until an install location is set.

Wait for the pass​

Continuing from the placement screen takes you to Device Details, filtered to the satellite network, where a Next pass in widget counts down to the next usable pass over your install location.

Data downlink from the satellite is not instantaneous. Packets captured during a pass are typically available within about 6 hours of the pass.

4. Access your Data​

On Dashboard, navigate to the “Devices” experience and select your device to see detections on a map plus network traffic over time. The packet history widget displays the raw JSON payload that you can connect to via API and webhook.


Application Logic​

Boards provisioned with a Dash Quick Start precompiled image will have the following characteristics.

Terrestrial images​

BoardRTOSTxAdvertisement IntervalPayload Rotation
nRF52840dknRF Connect SDK (NCS) [Zephyr]0 dBm2 seconds5 minutes
nRF21540dknRF Connect SDK (NCS) [Zephyr]0 dBm2 seconds5 minutes
TI cc2340R5Zephyr RTOS on TI0 dBm2 seconds5 minutes
TI cc2340R53Zephyr RTOS on TI0 dBm2 seconds5 minutes

Go further: Access the binary source code for each board with the hubble-tldm repository on Github.

Satellite images​

BoardRTOSTxTransmission IntervalPayload
nRF21540dk (Satellite)Zephyr+20 dBm via on-board FEM10 seconds, continuous4 bytes: device uptime in seconds, big-endian
SiLabs xG24-RB4187C (Satellite)Zephyr19.5 dBm (EFR32MG24B220 PA)10 seconds, continuous4 bytes: device uptime in seconds, big-endian

Satellite Quick Start images transmit continuously, not on a pass schedule. They do not predict passes, so most transmissions occur with no satellite overhead. This is intentional for a first device: it removes any time-provisioning requirement. The encryption counter is driven by device uptime rather than UTC time, so a power cycle restarts the counter.

Production devices should use pass prediction and UTC time: learn more in the dedicated Satellite Quick Start guide.


Troubleshooting​

General​

  • If no lights turn on when you connect your developer kit to your laptop, check to confirm if the board has an “on/off” switch and that it is in the “on” position.
  • If installing any dependency for the Hubble command-line tool fails, try restarting hubble-installer by entering the command again.
  • If you cannot log in to the Dashboard or Hubble Connect mobile application, simply reset your password.

Linux​

  • In Terminal, hubble-installer will prompt you to download J-Link directly from the Segger site: https://www.segger.com/downloads/jlink/
  • The application installer will be installed into your downloads folder. In Terminal, cd into your Downloads and run the application installer.
  • Continue the Quick Start flow in Terminal to finish flashing your developer kit.

Nordic​

1. I don’t see any lights on my board.​

  • Make sure that the “on/off” switch is in the “on” position.
  • Make sure that the “power source” switch is in the “VDD” position. The board cannot be programmed if the power source is in the “USB” position
  • Make sure that the cable is plugged into the board at the base of the board, not the side. If your board also has a coin cell battery, the correct port is on the same side. When your board is correctly connected to your laptop and turned on, the power LED should be on. None of the programmable LEDs should be flashing, unless there is already an application running on the device. When you flash the board you will overwrite the existing application.
  • When using the coin cell battery, you can extend the life of the device by toggling the programmable LEDs switch from “Default” to “nRF only”.
  • It is common for SEGGER J-Link to run a firmware update prior to flashing your developer kit.
  • Try restarting the hubble-installer flow and running J-Link again. It may take a second attempt for the firmware to update, followed by a third attempt to flash your developer kit using updated firmware.

Texas Instruments​

1. I can't find the .hex file from the command line.​

  • The compiled file (.hex) is automatically saved to your user folder.
  • On Mac OS, use Finder to search your entire User folder (/Users/yourName/).
  • On Windows, use File Explorer and search your User Profile folder (C:\Users\yourName).
  • On Linux, use the find command in your terminal, starting from your Home Directory (~). Alternatively, use your file manager (like Nautilus or Dolphin).

2. I loaded the image using UniFlash, but I'm not getting any detections in Hubble Connect.​

  • Make sure the "Run Actions" box is checked in the UniFlash interface. This ensures that the device continues to run the application after it is provisioned, i.e. your board will continue to broadcast on Hubble Network.
  • A yellow and red LED light up on the launch pad when the device has been successfully provisioned.

3. I cannot run UniFlash on my Mac.​

  • On Apple-silicon Macs (M1/M2/M3), Rosetta 2 is required to run Intel-only apps like Texas Instruments UniFlash.
  • You can install Rosetta using Terminal with the command softwareupdate --install-rosetta.