torlando-techandClaude Opus 4.6 71bc4ae82b Address Greptile review: fix use-after-free and unprotected accessors
- Defer NimBLEDevice::deleteClient() in processPendingDisconnects()
  until after releasing _conn_mutex and waiting for any active write
  operations to complete. Prevents use-after-free when write() holds
  a child NimBLERemoteCharacteristic* pointer across the mutex boundary.
- Add _conn_mutex protection to getConnectionCount(), isConnectedTo(),
  and isDeviceConnected() which read _connections without synchronization.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-04 23:05:47 -05: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
254 MiB
Languages
C++ 46.8%
C 41.8%
Python 9.8%
mupad 0.9%
JavaScript 0.6%