The ATOM Lite

A limited functionality KISS TNC Bridge can run on custom firmware built for the M5Stack ATOM Lite. This device is the size of 5 stacked US quarters, with a USB-C plug for power and a button and LED on top. The firmware can bridge Bluetooth Classic TNCs like the one in the Kenwood TH-D75 to Bluetooth Low Energy used by Apple devices. This device is a direct replacement for the beloved but now discontinued Island Magic B.B. Link.

The M5Stack ATOM Lite
Buy from M5Stack Install the firmware

With one USB-C port for power, a button, and an LED, the ATOM lite is the smallest KISS TNC bridge you can build.

An ATOM Lite is less than $10 plus shipping, from M5Stack or Amazon, though prices and availability vary.

What can it do?

The custom KISS TNC Bridge firmware for an ATOM Lite turns it into the lightest, smallest, and lowest power bridge there is. One you have the firmware installed, it starts up in a couple of seconds and automatically reconnects to devices it was previously connected to. Take it with your radio and it's ready to use in less time than it takes you to get your radio on the right frequency.

The tiny size and power consumption limit the functionality of this device. It doesn't do TCP (yet, maybe I will be able to cram it into the firmware), and it can't run multiple TNCs at the same time. But it can solve the problem of connecting to radios with non-ideal TNCs, like the TIDRADIO H9 or the Kenwood TM-D750, and bridging them to a standard BLE KISS TNC that will work with anything. You can connect multiple apps to the bridge so they can share the TNC.

The custom firmware for this devices enables it to be managed using the same tools as any other bridge device in this project. When we build the iOS bridge manager app, it will be able to manage and configure bridges running on the ATOM Lite.

Why the ATOM Lite

  • Both kinds of Bluetooth The Kenwood TH-D75 and TM-D750 offer KISS over Bluetooth Classic. Phone apps use Bluetooth LE. The ATOM Lite's ESP32 chip does both at the same time. The newer ESP32 chips (S3, C3, C6) have only LE, so they can't reach these radios.
  • Small and cheap At 24 mm square and 5.5 grams it's the same footprint as a US quarter and weighs as much as a sheet of paper. It easily fits in a pocket, a go-kit, or a bag. Buy it for $8 plus shipping.
  • A button and a lightUse the button to pair a radio, and the light tells you what's going on. It reconnects to everything when it powers on. Set it up at home and take it into the field and it works with no app and no computer. The light shows what's happening.
  • USB-C powerThis ATOM Lite will run for days from an average phone battery bank. It uses 15% of the power of a Raspberry Pi 4. Any USB-C power source will work: a phone charger, a computer, a USB power bank, your iPhone USB-C port, or the Tail Bat.
Chip ESP32-PICO-D4, two cores at 240 MHz
Flash 4 MB
Bluetooth Classic and LE
USB USB-C, for power and for installing firmware
Controls A button on top, a restart button on the side, one RGB light
Size 24 x 24 x 9.5 mm, 5.5 g
Not used Wi-Fi, the infrared LED, the Grove port and the pins

The Tail Bat

An ATOM Lite on its Tail Bat beside a quarter and a AA battery
The ATOM Lite on its Tail Bat, with a quarter and AA battery for scale.

M5Stack's Tail Bat is a small battery the ATOM Lite plugs into. The Tail Bat is a bit larger than a AA battery and can power the Atom Lite for an hour or two. It has two USB-C ports, one male port which plugs into the ATOM lite, and a female port used to charge it. The Tail Bat charges while the ATOM Lite is consuming power on the other side, and it passes data through, so you can plug the Tail Bat into your computer and still install firmware via USB-C. It's $10 plus shipping from M5Stack.

The buttons

The ATOM Lite from above and to the left: the top button, the side button on the left, the USB-C port facing you
The top button, the side button on the left, the USB-C port facing you.

The top button

Covers most of the top of the ATOM Lite, with the LED in the center of it. There is a physical and audible click when you press it. The custom bridge firmware uses this button to pair a radio, authorize a new management app, and reset the settings. When this page says "the button", it means this one.

The side button

The small button on the left side. It restarts the device. Use it with the top button to reset.

The top button

Press once Stop pairing, leave authorization mode, or wake from dark modeA single press never starts anything, so a bump in your bag or pocket is harmless.
Press twice Pair a Bluetooth Classic radioA fast blue blink while it's scanning.
Hold 3 seconds Authorize a new management appLet go when it turns magenta.
Hold on startup Reset the settingsHold it while you press the side button or plug it in, and release it after three white flashes.

The side button

Press RestartAll settings are preserved. You see the power-on color sequence.

The light

Bridge status

The LED on the top of the ATOM Lite shows what the bridge is doing. In some cases things can be happening at the same time. The LED shows the most important status. This table lists more important statuses towards the bottom.

  • Starting up
  • Power onred, yellow, cyan, green

    The firmware has started. Then the light shows the bridge's status.

  • All is well
  • Greensteady

    Bridging: the radio is connected and a phone's KISS app is using it.

  • Cyansteady

    Ready: the radio is connected, and no app is connected yet.

  • Waiting for the radio
  • Yellowslow blink

    The radio is paired but not connected: it's off, out of range, or the device has just started. It tries again every 15 seconds.

  • Yellow and bluetaking turns

    No radio is paired yet, as after installing or a reset. Pair one.

  • Busy
  • Bluefast blink

    Looking for your radio to pair with, for up to a minute. Press the button once to stop.

  • Magentaslow blink

    In authorization mode: one management app can be authorized with the authorization code, for up to 5 minutes. Press the button once to stop.

  • Whitefast blink

    Installing a firmware update over Bluetooth, about 30 seconds. Don't unplug it.

  • Problem
  • Reda repeating sequence of three fast blinks and a pause

    An error has occurred. See below for how to fix it.

If you're color blind

The light colors and patterns have been carefully selected to work well even if you are color blind. For example, an error blinks red three times and pauses, unlike pairing's steady blue blink. The yellow states blink slowly, one of them with blue. Green and cyan are both steady. If you can't distinguish the colors, you can check whether your app is connected, which corresponds to steady green.

Feedback

The LED can also provide feedback about an event that has occurred on the bridge.

  • Three green flashes

    A radio paired, or a management app was authorized.

  • Three yellow flashes

    Pairing didn't work, or you stopped it. The device goes back to the radio it had.

  • A white flick

    A packet from a phone, which the radio will transmit.

  • A short dip

    A packet from the radio to a phone.

  • Magenta, blue, white, three times

    A management app asked the device to identify itself, so you can tell which one it's talking to.

  • Three white flashes

    The reset is complete and the device will now restart.

Light settings

The LED on the ATOM Lite is very bright, which can be awesome, but can also be very annoying. The firmware has a setting which controls how the LED behaves when everything is working normally. You set it when you install the firmware. In the future you'll be able to change it from a management app.

Bright The default

ready bridging

The LED at its full brightness. Easy to read across the room or in direct sunlight.

Dim

ready bridging

The LED at half brightness. Better for your desk or other indoor use, where full brightness burns your eyeballs.

Breathe

ready bridging

A long, slow pulse, one breath every 8 seconds. Shows it's working without a steady glow.

Dark

ready bridging

Off. Press the button once to see the state for 30 seconds. While it's dark, pressing the button only wakes it. To pair a radio you press once to wake, then press twice to initiate pairing.

After power-on it stays lit for 30 seconds, so you see it connect.

These light settings only apply to the All is well statuses. Feedback for packet receive and transmit events are shown unless you are in Dark mode.

Pairing a radio

After installing the KISS TNC Bridge firmware, you'll need to pair the bridge with your radio.

  1. Put the radio in pairing mode. On a TH-D75 or TH-D74: Menu > Bluetooth > Pairing Mode.
  2. Press the top button twice. Blue, fast blink: it's looking for the radio, for up to a minute.
  3. The radio shows a six-digit number. Accept it on the radio.
  4. Three green flashes, then cyan: paired and connected.

The ATOM Lite bridge can only pair with one radio at a time. Pairing a new one replaces the old one. If the pairing fails or you stop it, your previous radio remains paired.

Authorize a management app

You can configure and view the status of your ATOM Lite using several of the management apps in the KISS TNC Bridge project. For this device, you need an app that can manage via Bluetooth. You authorize a management app once, with the authorization code shown when you installed the firmware. The bridge only accepts the authorization code when it's in authorization mode.

  1. Hold the button for 3 seconds. It turns magenta: let go.
  2. Magenta, slow blink: it's in authorization mode for 5 minutes.
  3. Authorize the management app, for example ktbctl, by typing the authorization code.

Authorization mode ends after one management app is authorized, after three wrong codes, or when you press the button. Lost the code? A clean install makes a new one.

Reset

Reset clears every setting, the radio pairing and every authorized management app, and puts the device back the way it was just after installing. It keeps the firmware, and it keeps the authorization code. To get a new authorization code, do a clean install instead.

Start with the top button held down, then:

Plugged in? Press the side button.
  1. Press and hold the top button.
  2. Press and let go of the side button, still holding the top one.
The easier way, especially on a Tail Bat.
Unplugged? Plug it in.
  1. Press and hold the top button.
  2. Plug it in, or put it on its Tail Bat, still holding.

While still holding the top button:

  1. The power-on colors.
  2. Steady white for 3 seconds. Let go now if you've changed your mind. The reset is cancelled and no changes are made.
  3. Three white flashes: reset. Now you can release the button.
  4. Yellow and blue: no radio. Pair one.

When the light blinks red

Red means something the device can't fix by retrying.

Try these in order:

  1. Restart it: press the side button, or unplug it and plug it in again. Some problems are a one-off.
  2. Connect it to a computer and run ktbctl device info, which says what's wrong.
  3. Install the firmware again with Update, which keeps your settings.
  4. Still red: install with Clean install. It starts the device fresh, with a new authorization code.