mirror of
https://github.com/torlando-tech/pyxis.git
synced 2026-07-29 06:49:43 +00:00
142ff464e8d8b061d7a528f3c409ee777fecd932
Pins microReticulum to the fork's pyxis-fixes-on-0.4.1 @ b582986 (three 0.4.1-graft regression fixes) and adds the pyxis-side pieces. microReticulum fixes (via the pin): - Identity::recall now accounts for the announce ratchet (matches validate_announce) — it read app_data 32 bytes early for ratchet-bearing announces (Sideband/Columba), garbling peer display names. - DestinationEntry caps persisted random_blobs to PERSIST_RANDOM_BLOBS (16); the set was never trimmed, growing path entries ~12B/re-announce past microStore's 1024B ceiling so put() rejected them (empty path table) — and under a raised ceiling bloated the FS until compaction crashed. - Transport mirrors learned paths into _path_table so path_table() (the UI announce list + T:PATHS) reflects them; the microStore migration stopped populating it. pyxis pieces: - -DUSTORE_DEFAULT_MAX_RECS=400 caps the live path-store record count (defense-in-depth). - AnnounceListScreen::refresh() defers to a main-loop tick(): the gather (path-table iteration + per-entry recall/app_data) runs off the LVGL lock, serialized with the main-loop path-table writes, instead of racing them on the LVGL task and blocking past the 5s lock timeout — which hung/crashed on open once the table was non-empty. Verified on device: display names correct, T:PATHS 0 -> 11, no rejections, no crashes, announce list opens cleanly. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01UWZuYkHBRqNb6BZHV8sTG5
Pyxis
An LXMF and LXST client firmware for T-Deck, built on a highly modified fork of microReticulum
Very much WIP, don't expect stability :)
Features
Reticulum transport over:
- RNode-compatible LoRa
- AutoInterface (local wifi)
- TCP Client
- BLE Interface (barely working if at all)
Other features:
- GPS-synced time
- One really annoying beep when you get a new message (user toggle)
- View the announce stream
- Choose a propagation node (and sync with it) (fixed in v0.2.1)
- Set auto announce timer
- Light up keyboard (user toggle)
Will crash in about 5 minutes of normal use (sorry)I had 5d uptime on v0.2.0 with BLE disabled- Make LXST voice calls (codec2 only, quality sounds horrible coming out the other end in Columba, needs work)
Why "Pyxis"
Pyxis, latin for "compass," is a constellation in the southern sky depicting a mariner's compass. Small but essential, the compass ensures every message finds its destination - even when the path is uncertain.
Languages
C++
50.2%
C
42.2%
Python
7.4%
Shell
0.2%