Experimental: first build for the LilyGO T-Display K230 Kit (LR2021 main unit). Tested on one kit. For people comfortable with a Linux console. Please send a log.
What experimental builds are. Use MeshCore-TDisplayK230-Cairn126-2026-11-01-cairn-bin and, to start it at boot, MeshCore-TDisplayK230-Cairn126-2026-11-01-S99zz_cairn.
Cairn 126 for the LilyGO T-Display K230 Kit (LR2021 main unit) -- first test build (2026-11-01)
Cairn's own interface and MeshCore as one Linux program on the K230 kit's 568x1232 AMOLED. It has run on one
kit on the bench, in portrait and landscape, with touch, LoRa send and receive, Wi-Fi joining, and the
Spectrum page with its Live view. Its radio is the LR2021: this build is not for other K230 boards.
Files: MeshCore-TDisplayK230-Cairn126-2026-11-01-cairn-bin (the program), MeshCore-TDisplayK230-Cairn126-2026-11-01-S99zz_cairn (the boot script)
BEFORE YOU START
- There is no Bluetooth on this board, and the phone app over Wi-Fi hasn't been tried with a real phone.
- It needs a Linux shell on the board: the kit's USB console (first CH342 port, 115200 baud, user root).
The Mac and PC tools we use for this aren't part of the release.
- Set the radio preset for your region on first start, before you send anything.
- Your LilyGO launcher isn't removed, and comes back after a reboot unless you do the last step below.
INSTALL IT
The kit's root filesystem is on its microSD card (ext4).
1. Copy MeshCore-TDisplayK230-Cairn126-2026-11-01-cairn-bin to /root/cairn-bin. The simple way is to put the card in a Linux computer and copy it
there. This route hasn't been tried on the bench, so tell us how it goes.
2. On the board's console:
chmod +x /root/cairn-bin
/etc/init.d/S99zz_k230_phone_ui stop
nohup /root/cairn-bin > /tmp/cairn.log 2>&1 &
3. To stop it: killall cairn-bin. To get the launcher back: /etc/init.d/S99zz_k230_phone_ui start
To start Cairn at boot instead of the launcher, copy MeshCore-TDisplayK230-Cairn126-2026-11-01-S99zz_cairn to /etc/init.d/S99zz_cairn, chmod +x it,
then: mv /etc/init.d/S99zz_k230_phone_ui /root/S99zz_k230_phone_ui.off
To undo that: mv /root/S99zz_k230_phone_ui.off /etc/init.d/S99zz_k230_phone_ui; rm /etc/init.d/S99zz_cairn
WHAT TO TRY
1. Portrait and landscape: do taps land where you touch in both?
2. Radio: send a message to another MeshCore node, and have it send one back.
3. Wi-Fi: join your network from Settings. Does it reconnect after a restart?
4. Spectrum: try Channel, Band and Live. Does the plot look right?
5. Send /tmp/cairn.log (a GitHub issue, Bug report, with the build's tag), saying what happened at each step.
Don't use grep or cat on all of /tmp: /tmp/cairn.in is a pipe and the shell will wait on it.
NOT IN THIS BUILD
Bluetooth, online updates, audio, the camera and the keyboard base. The battery level isn't shown.