github cvhviz/CAIRN cairn-v128
Cairn 128

40 minutes ago

Cairn 128 adds time zones around the world, opens a chat at its first unread message, lets the Wio Tracker L1 Pro's joystick be turned for its case, and gives the T096 a Messages page and the local time and date on its Home page. The T-Deck gets a GPS baud-rate setting and its colours back, and a Bluetooth firmware update from the Cairn app no longer hangs on an nRF52 board.

Highlights:

  • Time zones around the world (L2 Pro, Heltec V4 touch, M9, T-Deck, T-LoRa Pager): Settings › Clock › Time zone lists 31 zones by region, each with its daylight-saving rule (the EU, Australian and New Zealand rules switch on their own dates, as the US rule did), then Custom. The DAYLIGHT cell shows the next change. A saved zone keeps its meaning across the update.
  • Chats open at the first unread message (the same boards): a "New messages" rule sits above the oldest message that was unread when the chat was opened, and the chat opens scrolled to it. With nothing unread it opens on the newest, as before.
  • T096 and the other one-button boards: the time and date on Home, and a Messages page. The first Home page shows the clock large in the device's own time zone, with the date above it; Queued moved to the bottom row. The click ring gains Messages after Home: the last messages heard, three to a screen, newest first; a hold shows the next three. The Nodes page's hold pages through the heard list again, as before 127 (127's per-node page is gone: four presses to reach the third node was too many for one button, and the app does both). Settings › Blocked stays for unblocking. The Menu has one Send advert, whose hold asks Zero hop / Flood / Cancel.
  • Wio Tracker L1 Pro, DV1 and e-ink: Settings › Display › Joystick. Normal / Right 90 / Upside down / Left 90 turns the stick's four directions for a case that mounts the board another way round; any direction steps the choice while it is being picked, so a wrong map cannot trap you. Flip screen sits beside it on the OLED builds too.
  • T-Deck: Settings › GPS › Baud rate (Auto, or 9600 / 38400 / 115200 fixed) for a plain T-Deck with a module on its GPS pads, and its colours back: the Screen setting's Standard choice applied the panel's init the wrong way round since 126, so a T-Deck that looked right on 125 came up as a negative on 126 and 127.
  • Bluetooth firmware updates from the Cairn app on an nRF52 board (T096, T114, Wio Tracker L1 family): asked into its update mode on an unbonded link, such as a repeater's start ota, the board handed the bootloader the phone's address and the bootloader then advertised only to that phone, which an iPhone ignores unless bonded, so the app sat on "Restarting into update mode…". The board now hands the bootloader the phone only on a bonded link; otherwise the bootloader advertises openly and the app finds it. Cairn app 1.4 pairs with it.

Checked on a device: the T096's Home page time and date and its update over Bluetooth (over USB this build), and the T-Deck and L2 Pro builds start. Not checked yet on a device: the time zones' daylight-saving switch dates and the L1's joystick turns, so please report what you see.

Update

  • On Cairn 108 to 127 (L2 Pro, Heltec V4 touch, ThinkNode M9, T-Deck, T-Display SF32, T-LoRa Pager): Settings › System › Firmware update: Check, Download, Install. The new build starts on trial and goes back to the old one by itself if it fails to start. On the T-Display SF32, dock the core on the keyboard board first (it carries the Wi-Fi chip).
  • Heltec V4 + Expansion Kit V1: not in this release. It keeps its experimental pre-release until a kit confirms the blank-screen fix, so the online update on a kit stays on 126.
  • T-Deck started from an SD-card launcher: don't use Update on 121 or earlier (122 and later are fine). Copy MeshCore-TDeckPlus-Cairn128-2026-11-07-update.bin to the card and install it from the launcher, as you installed Cairn.
  • Over USB on an ESP32 board: the -full.bin goes at 0x0, after Erase Flash, and erases everything. The -update.bin goes at 0x10000 and keeps your data. If the board last updated over Wi-Fi, clear the boot selector first, as in the ESP32 install guide.
  • Wio Tracker L1 Pro, DV1, L1 e-ink, the room server and the T096: double-tap Reset and copy the board's .uf2 onto the drive that appears (UF2 guide), or use the Cairn app's Firmware Update over Bluetooth. Updating keeps your identity, contacts, channels and settings.
  • Compact repeaters: write the -repeater-update.bin at 0x10000, or copy the -repeater.uf2. They don't update over Wi-Fi.
  • Going back to 127: 128 only adds the time zone, joystick and GPS baud settings. 127 ignores them and keeps everything else; a zone other than the US ones reads as Custom there.
  • T-LoRa Pager: pick the file for your radio (it's on the box and the back label). SX1262 units take TLoraPager, LR1121 units take TLoraPagerLR1121; the wrong one runs but has no radio. The online update keeps to the radio you installed.
  • A board without Cairn: write the board's -full.bin (ESP32 install guide), copy the .uf2 (UF2 guide), or run the SF32 installer (SF32 install guide).

Downloads

Board File Use
Seeed Wio Tracker L2 Pro MeshCore-WioL2Pro-Cairn128-2026-11-07-full.bin first install or recovery over USB, at 0x0 (erases everything)
MeshCore-WioL2Pro-Cairn128-2026-11-07-update.bin update over Wi-Fi, or over USB at 0x10000
Heltec V4-R8 + Expansion Kit V2 (touch) MeshCore-HeltecV4Touch-Cairn128-2026-11-07-full.bin first install or recovery over USB, at 0x0 (erases everything)
MeshCore-HeltecV4Touch-Cairn128-2026-11-07-update.bin update over Wi-Fi, or over USB at 0x10000
Elecrow ThinkNode M9 MeshCore-ThinkNodeM9-Cairn128-2026-11-07-full.bin first install or recovery over USB, at 0x0 (erases everything)
MeshCore-ThinkNodeM9-Cairn128-2026-11-07-update.bin update over Wi-Fi, or over USB at 0x10000
LilyGO T-Deck / T-Deck Plus MeshCore-TDeckPlus-Cairn128-2026-11-07-full.bin first install or recovery over USB, at 0x0 (erases everything, and removes a launcher)
MeshCore-TDeckPlus-Cairn128-2026-11-07-update.bin update over Wi-Fi, over USB at 0x10000, or from a launcher's SD card
LilyGO T-LoRa Pager (SX1262, most units) MeshCore-TLoraPager-Cairn128-2026-11-07-full.bin first install or recovery over USB, at 0x0 (erases everything)
MeshCore-TLoraPager-Cairn128-2026-11-07-update.bin update over Wi-Fi, or over USB at 0x10000
LilyGO T-LoRa Pager (LR1121) MeshCore-TLoraPagerLR1121-Cairn128-2026-11-07-full.bin first install or recovery over USB, at 0x0 (erases everything)
MeshCore-TLoraPagerLR1121-Cairn128-2026-11-07-update.bin update over Wi-Fi, or over USB at 0x10000
LilyGO T-Display SF32 + keypad MeshCore-TDisplaySF32-Cairn128-2026-11-07-install.zip install over USB, with the included installer
MeshCore-TDisplaySF32-Cairn128-2026-11-07-update.bin the app image (and its .sha256)
Seeed Wio Tracker L1 Pro MeshCore-WioL1Pro-Cairn128-2026-11-07.uf2 companion, SH1106 OLED
MeshCore-DV1-Cairn128-2026-11-07.uf2 companion, 2.42" SSD1309 OLED on the Grove port
MeshCore-WioL1Eink-Cairn128-2026-11-07.uf2 companion, 2.13" e-ink
MeshCore-WioL1RoomServer-Cairn128-2026-11-07.uf2 room server
Heltec Mesh Node T096 MeshCore-HeltecT096-Cairn128-2026-11-07-ble.uf2 companion (phone app over Bluetooth)
MeshCore-HeltecT096-Cairn128-2026-11-07-usb.uf2 companion (app over USB serial)

The compact repeater files (-repeater in the name) are rebuilt from the same tree: Heltec T096 and T114 (.uf2), and the Heltec Wireless Tracker, Tracker V2, V2, V3, V4 and V4-R8 (-repeater-full.bin and -repeater-update.bin). Cairn 128 runs on MeshCore 1.18.0, as 118 to 127 did. SHA256SUMS.txt covers every file: shasum -a 256 -c SHA256SUMS.txt.

Not in this release: the experimental boards (what experimental builds are) stay on their Cairn 127 pre-releases: the LilyGO T5 E-Paper S3 Pro, the SenseCAP MeshPager X2 and the Heltec V4 + Expansion Kit V1.

Added

  • Time zones (Settings › Clock › Time zone): 31 zones by region with their daylight-saving rules, then Custom.
  • Chats open at the first unread message, with a "New messages" rule above it.
  • T-Deck: Settings › GPS › Baud rate. Auto (38400, 9600, then 115200), or a fixed rate; a pick asks the receiver again at once.
  • Wio Tracker L1 family: Settings › Display › Joystick, and Flip screen on the OLED builds too.

Changed

  • One-button boards: the local time and the date on Home with Queued on the bottom row; a Messages page after Home; the Nodes page without 127's cursor; one Send advert in the Menu, whose hold asks Zero hop / Flood / Cancel.

Fixed

  • Bluetooth OTA from the Cairn app on an unbonded link (nRF52 boards): the bootloader advertises openly when the link isn't bonded, so the app finds it.
  • T-Deck: every colour shown as its negative since build 126. Standard is the panel as it comes again; Inverted is the other way, for the batches that need it.

Don't miss a new CAIRN release

NewReleases is sending notifications on new releases.