torlando-techandClaude Opus 4.7 f5d9e6a480 feat(lxst): T:LXSTDEST + T:ANNLXST hooks for callee interop tests
Adds two harness hooks for testing pyxis as the LXST callee:

- T:LXSTDEST: returns pyxis's lxst.telephony destination hash. The
  caller-side bot (real LXST.Telephony.Telephone in this case) needs
  this to dial pyxis. Backed by a new test_lxst_dest_hex() accessor on
  UIManager that reads _lxst_destination and returns hex (or empty if
  the destination isn't registered yet).

- T:ANNLXST: forces a fresh announce of the lxst.telephony destination.
  The TCP-reconnect handler in main.cpp:963 only announces LXMF, so on
  a fresh boot the lxst.telephony destination is missing from rnsd's
  cache and link requests addressed to it get dropped with "no known
  path to final destination" (rnsd debug log). The harness pings this
  before each callee test to ensure rnsd has a fresh path.

Also adds INFO logging to announce_lxst() mirroring the LXMF announce
log (Announcing destination: <hash> ... announce sent), so it's
visible in tdeck-side traces when an announce actually went out vs.
silently no-oped.

Validated: bot dials, pyxis transitions IDLE -> INCOMING_RINGING (UI
shows incoming-call screen), harness sends T:CALL_ANSWER, state
becomes ACTIVE. (Audio path crashes shortly after via the same
Ed25519 announce-validation bug — fix landed in microReticulum
f4bad06, but PIO's libdeps cache had been holding a stale copy; a
manual rm -rf .pio/libdeps/tdeck/microReticulum was needed to pick it
up. Tracked in #73.)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-08 21:29:05 -04:00
2026-02-07 11:49:21 -05:00
2026-03-04 14:12:36 -05:00

Pyxis logo

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.

S
Description
No description provided
Readme GPL-3.0
311 MiB
0 Stars 1 Watchers 0 Forks
Languages
C++ 47%
C 40.3%
Python 10.7%
JavaScript 1%
mupad 0.7%
Other 0.2%