Rightup
d780afa56a
Add support for RAK6421 with RAK13300x radios and enhance configuration options
...
- Introduced `en_pin` and `en_pins` parameters in radio configuration.
- Updated `get_radio_for_board` to handle new configuration options.
- Added unit tests to verify correct handling of `en_pins`.
2026-04-26 15:52:27 +01:00
Yellowcooln
b1a5621a0a
Revert "Honor seeded Buildroot setup config"
...
This reverts commit aba0f5bd09 .
2026-04-23 21:46:13 -04:00
Yellowcooln
aba0f5bd09
Honor seeded Buildroot setup config
2026-04-23 21:44:06 -04:00
Yellowcooln
25e55bdca8
Merge remote-tracking branch 'origin/dev' into buildroot
2026-04-23 20:28:19 -04:00
Yellowcooln
e5c7632700
Handle Buildroot service restarts
2026-04-23 11:05:59 -04:00
Lloyd
1626b3f307
feat: add max flood hops configuration to repeater settings
2026-04-22 13:52:40 +01:00
Lloyd
0a77fe67ce
feat: reapply ui changes from PR
2026-04-22 08:39:15 +01:00
Rigear
f50919858d
fix: Force merged web assets from fix-perform-speed branch to fix bad merge of the files
2026-04-21 21:22:02 -07:00
Rigear
d318334288
Merge remote-tracking branch 'origin/fix-perform-speed' into feat/mqtt_merge
2026-04-21 20:59:42 -07:00
Lloyd
c82f0cfce6
feat:add ui websockets teardown.
2026-04-21 14:47:18 +01:00
Lloyd
be56e919fd
feat: add server-side airtime bucket aggregation for optimized chart rendering
2026-04-21 14:46:30 +01:00
Lloyd
81a3b70415
feat: implement graceful shutdown handling and version cache optimizations
2026-04-21 12:07:08 +01:00
Lloyd
b26ebeb807
fix: optimize memory tracing by reducing overhead and filtering snapshots
2026-04-20 16:04:19 +01:00
Lloyd
68a461b965
feat: add memory debug to gui
2026-04-20 15:41:27 +01:00
Lloyd
5eb1fc47ca
feat: add memory_debug endpoint for memory leak diagnostics and improve SSL context handling for GitHub requests
2026-04-20 14:51:48 +01:00
Rigear
093ebc2873
feat: Web assets build after rebasing from dev
2026-04-18 20:53:39 -07:00
Rigear
2e1d19ab80
Merge remote-tracking branch 'origin/dev' into feat/mqtt_merge
...
# Conflicts:
# config.yaml.example
# repeater/data_acquisition/__init__.py
# repeater/data_acquisition/storage_collector.py
# repeater/web/html/assets/CADCalibration-319vQEzv.js
# repeater/web/html/assets/CADCalibration-Cwr0Kq49.js
# repeater/web/html/assets/CADCalibration-DWusgblB.js
# repeater/web/html/assets/Companions-DU19yZyB.js
# repeater/web/html/assets/Companions-cufpceKN.js
# repeater/web/html/assets/Companions-zmTexa6a.js
# repeater/web/html/assets/Configuration-BmDpq7bV.js
# repeater/web/html/assets/ConfirmDialog-BafURQpE.js
# repeater/web/html/assets/ConfirmDialog-C9Yf394V.js
# repeater/web/html/assets/ConfirmDialog-h2bJ_WKJ.js
# repeater/web/html/assets/Dashboard-CnQfG826.js
# repeater/web/html/assets/Login-BDsVY-me.js
# repeater/web/html/assets/Logs-BpG7T8_d.js
# repeater/web/html/assets/Logs-CVZ1ZqH8.js
# repeater/web/html/assets/Logs-sxcWuUjs.js
# repeater/web/html/assets/MessageDialog-B-qWtO0z.js
# repeater/web/html/assets/MessageDialog-Cp4W1enq.js
# repeater/web/html/assets/MessageDialog-D2OlpbZ7.js
# repeater/web/html/assets/Neighbors-BAwKrJdF.js
# repeater/web/html/assets/Neighbors-BamkiPcU.js
# repeater/web/html/assets/Neighbors-WHAK_7hU.js
# repeater/web/html/assets/RoomServers-DbCgmJ6x.js
# repeater/web/html/assets/RoomServers-i32N0iwv.js
# repeater/web/html/assets/RoomServers-o3kDed-S.js
# repeater/web/html/assets/Sessions-B8ZVRIGt.js
# repeater/web/html/assets/Sessions-B9uqWGaO.js
# repeater/web/html/assets/Sessions-O3vBapMM.js
# repeater/web/html/assets/Setup-DyJMgh0L.js
# repeater/web/html/assets/Statistics-BbiQtXdu.js
# repeater/web/html/assets/Statistics-CeTg6NYy.js
# repeater/web/html/assets/Statistics-QSH8GjMX.js
# repeater/web/html/assets/SystemStats-B7qxcRYp.js
# repeater/web/html/assets/SystemStats-BmXJQonl.js
# repeater/web/html/assets/SystemStats-DVaA1ybj.js
# repeater/web/html/assets/Terminal-CUqcF84y.js
# repeater/web/html/assets/Terminal-D1kRkrmc.js
# repeater/web/html/assets/Terminal-Dq6FyjMj.js
# repeater/web/html/assets/api-CiSov_eM.js
# repeater/web/html/assets/api-DegLD39Y.js
# repeater/web/html/assets/api-DjLVJkR1.js
# repeater/web/html/assets/index-cutq4vvY.js
# repeater/web/html/assets/packets-Bg0pkGLO.js
# repeater/web/html/assets/packets-CPLd89q8.js
# repeater/web/html/assets/packets-DmoWuBlc.js
# repeater/web/html/assets/system-Bocs8bSU.js
# repeater/web/html/assets/system-CsY7_jKa.js
# repeater/web/html/assets/system-qCwV23PE.js
# repeater/web/html/assets/useSignalQuality-DQTATYAm.js
# repeater/web/html/assets/useSignalQuality-DlXA7j0p.js
# repeater/web/html/assets/useSignalQuality-u0_rDpC6.js
# repeater/web/html/index.html
2026-04-18 20:25:30 -07:00
Rigear
92f9fe77ae
fix: user/pass nor loading from config
2026-04-18 20:15:58 -07:00
Rigear
d6681ab407
feat: Update UI files from fc223397df8e5681e886752b279bc25ed34938b8 hash in Rigear/pyMC-RepeaterUI
2026-04-17 21:12:15 -07:00
Rigear
3f09e910d9
fix(QOL): reordered mqtt yaml config so names are first.
2026-04-17 21:09:23 -07:00
Rightup
9442c51225
feat: update logo in ui
2026-04-17 23:51:43 +01:00
Rightup
ffaaa76ea0
feat: add glass to repeater.
2026-04-17 23:51:04 +01:00
Rigear
f641761b05
feat: UI updated from https://github.com/Rigear/pyMC-RepeaterUI/commit/4a24b6d2c7699294c9f90ea3f0d05b0456b8b3e2
2026-04-16 14:54:30 -07:00
Rigear
6d133efdbe
fix: If we're using websockets, default to tls enabled = true if we're using port 443
2026-04-16 13:23:46 -07:00
Rigear
06573d2373
Merge remote-tracking branch 'origin/dev' into feat/mqtt_merge
2026-04-15 21:22:10 -07:00
Rigear
27fa2381ea
feat:
...
* Added retain status message bool
* Added back old templates
* Added migration path from old mqtt and letsmesh configs to new mqtt_broker config
2026-04-15 21:20:11 -07:00
Lloyd
f2a72eb203
feat: migrate to virtual environment and clean up system-level packages
2026-04-15 09:37:26 +01:00
Rigear
ba942ca1b7
Merge remote-tracking branch 'origin/dev' into feat/mqtt_merge
2026-04-11 16:09:20 -07:00
Rigear
acf8079761
feat: Merge mqtt handler and letsmesh handlers
2026-04-11 16:09:14 -07:00
Lloyd
9d971d03b7
UI fix for air time
2026-04-11 21:14:39 +01:00
Lloyd
110d7c2aec
feat: add airtime data retrieval functionality with API endpoint
2026-04-11 20:42:04 +01:00
Lloyd
19e0f5d3dd
build: update bundled web UI assets
...
Rebuilt from pyMC-RepeaterUI dev branch — includes unscoped flood policy
UI changes (rename from global flood, updated API endpoint and labels).
2026-04-09 09:16:43 +01:00
Joshua Mesilane
7370cdc688
Update openapi and fix the test script
2026-04-07 16:28:49 +10:00
Joshua Mesilane
38e1fbe3f9
Changing from 'Global' Flood to 'Unscoped' flood as '*' doesn't actually mean wildcard, it means unscoped. Region keys should still only be forwaded if they're whitelisted. UI changes pending
2026-04-06 22:32:05 +10:00
Lloyd
a92708f9d5
update UI to reflect keygen changes
2026-03-27 12:36:25 +00:00
Lloyd
59c6c772d4
feat: add JSON input handling for generate_vanity_key endpoint
2026-03-27 12:21:59 +00:00
Lloyd
50c19be498
Add gen tool for repeater prefix
2026-03-27 12:17:35 +00:00
Lloyd
fdc621f64d
feat: add sanitization for bytes values to hex for JSON serialization
2026-03-27 11:24:27 +00:00
Lloyd
f5dbd83cda
feat: add backup and restore and DB man
2026-03-27 11:15:53 +00:00
Lloyd
91918e7cfc
feat: add CLI command endpoint and standalone CLI client for pyMC Repeater
2026-03-24 14:02:51 +00:00
Lloyd
7fcad04f49
feat: enhance graceful shutdown handling in RepeaterDaemon and improve stale dist-info cleanup with sudo support
2026-03-24 10:02:43 +00:00
Lloyd
7d73ca0df6
show full path hop hex and normalize case for traces and add new config observer UI
2026-03-22 22:52:16 +00:00
Lloyd
d11d957318
Merge pull request #158 from agessaman/feat/companion-traces
...
Fix multibyte trace handling for companion/repeater and exclude trace packets from _record_for_ui
2026-03-22 22:44:10 +00:00
Lloyd
55fe9feddd
feat: add useSignalQuality utility for signal strength evaluation
2026-03-22 22:26:18 +00:00
agessaman
3cb27d3310
feat: enhance trace processing and path handling in RepeaterDaemon and TraceHelper
...
- Added local_identity parameter to RepeaterDaemon for improved trace path matching.
- Refactored trace path handling in TraceHelper to support multi-byte hashes and structured hops.
- Updated methods to ensure compatibility with new trace data formats and improved logging.
- Enhanced tests to validate new trace processing logic and path handling.
2026-03-22 14:34:04 -07:00
agessaman
2e25467c5d
feat: enhance companion identity management and API documentation
...
- Added functionality to heal companion registration names with empty values.
- Improved handling of identity keys and public key derivation for companions.
- Updated API endpoints to support companion identity lookups using name, lookup_identity_key, or public_key_prefix.
- Enhanced OpenAPI documentation to clarify requirements for identity creation, updates, and deletions, including trimming whitespace from names.
2026-03-21 17:24:14 -07:00
Lloyd
ddaa62fa9e
update UI with extra modes monitor/forward/no tx
2026-03-16 10:17:07 +00:00
agessaman
7558c5604c
feat: enhance repeater TX mode functionality so companion tenants can TX while in monitor mode
...
- Modify TX modes: forward, monitor, and add no_tx, allowing for flexible packet handling.
- Updated configuration and API endpoints to support the new modes.
- Adjusted logic in RepeaterHandler to manage packet processing based on the selected mode.
- Enhanced CLI commands to reflect the new mode settings.
- Added tests for each TX mode to ensure correct behavior.
2026-03-15 13:03:18 -07:00
dmduran12
4ee2977236
feat: add /ws/companion_frame WebSocket proxy
...
Bridges browser WebSocket connections to companion TCP frame servers.
Uses configured bind_address (not hardcoded 127.0.0.1) so the proxy
works regardless of how the frame server is bound.
- JWT auth (same pattern as PacketWebSocket)
- Resolves companion by name → (host, port) from config
- Raw byte pipe: WS ↔ TCP, no protocol parsing
- Diagnostic logging throughout for troubleshooting
Co-Authored-By: Oz <oz-agent@warp.dev >
2026-03-13 08:52:08 -07:00
Lloyd
810743fbf2
fix setup race between service restart and login redirect.
2026-03-13 09:15:28 +00:00