Armachat CircuitPython LoRa Messenger
CircuitPython-based LoRa messenger firmware for Armachat devices, running on both ESP32-S3 and Raspberry Pi Pico with a 2.8\" IPS display, RFM95 radio, and fully open-source transparent code.
Overview
Armachat CircuitPython is an alternative firmware implementation for the Armachat communicator family, written entirely in CircuitPython for maximum readability and hackability. It runs on both ESP32-S3 and Raspberry Pi Pico hardware, providing a transparent, easy-to-modify LoRa messaging platform.
Hardware Support
The firmware is designed to run on Armachat boards featuring:
- MCU: BPI-PicoW-S3 (ESP32-S3) or Raspberry Pi Pico
- Display: 2.8" IPS Color LCD (320x240)
- Radio: RFM95 LoRa module
- Input: QWERTY keyboard matrix
Firmware Features
- Simple, readable CircuitPython code — fully open source and transparent
- Cross-platform support (ESP32-S3 and RP2040)
- Runtime-configurable LoRa radio parameters via
radioInitfunction - Persistent configuration saved to
config.txtwhen filesystem is writable - Direct message and broadcast modes
Getting Started
- Install CircuitPython on your board (ESP32-S3 or Pico)
- Clone the repository and copy the Software folder contents to your board
- Configure radio parameters for your region
- Power on and start messaging
Relationship to Meshtastic
While this firmware uses its own Armachat protocol, it was proposed as a starting point for potential Meshtastic integration on Armachat hardware. The TrackSenger variant of the hardware now runs Meshtastic firmware natively.





