mirror of
https://github.com/torlando-tech/pyxis.git
synced 2026-09-17 10:14:20 +00:00
14f937cf8a2762ef0ae0c103bb3c08f6a962d4b3
Standalone C++ tests of pyxis-unique code (BLE fragmenter/reassembler, peer manager, GATT op queue, LXST ring buffers, audio filters, HDLC framing) plus Python tests of the patch_nimble.py build script. Each C++ test is compiled directly by clang++/g++ with shims in tests/native/ (Bytes.h, Log.h, Utilities/OS.h) so pyxis sources can build without microReticulum's full Arduino/MsgPack dep tree. A pytest wrapper per test compiles, runs, and parses the summary line — the whole suite is one command: `pytest tests/build_scripts tests/native -v`. Total: 13 pytest tests, ~72 underlying C++ assertions, 3.4s. Surfaced an HPF-formula bug in lxst_audio (mirrored upstream in LXST-kt/native_audio_filters.cpp) — filed as LXST-kt#13 and tracked in the corresponding test with a TODO link. CI workflow runs the pyxis pytest suite plus the clean-passing microReticulum native17 unit tests (94/114 of the existing fork test/* suites) on push and PR.
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.7%
C
35.1%
Python
12%
JavaScript
1.1%
mupad
0.8%
Other
0.2%