Commit Graph

1248 Commits

Author SHA1 Message Date
Will Greenberg ed6d2dc078 Add LL1 Serving Cell Timing messages
This log should provide constant feedback about the serving cell's LTE
timing advance value.
2026-07-08 17:23:28 -07:00
Will Greenberg e3535af670 run cargo fmt 2026-07-08 17:23:28 -07:00
Will Greenberg 2b70c83220 Remove Mac UL/DL message support
These weren't parsing correctly despite the parser seemingly matching
SCATs, so disable these for now. They weren't being used for anything
yet, anyway.
2026-07-08 17:23:28 -07:00
Will Greenberg 44b4fb67db If a Message isn't convertable to GSMTAP, don't try
This also removes the pseudo GSMTAP packets added for measurement
results, since they add a ton of noise to PCAPs. Eventually, we should
keep track of the latest signal for a given PCI, and annotate actual
packets with that value.
2026-07-08 17:23:28 -07:00
Will Greenberg f1fddf0c93 hardcode build_log_mask_request() unit test input
Instead of having to change the expected value every time we add a log
type to our list, let's just hardcode it to a known value.
2026-07-08 17:23:28 -07:00
Will Greenberg 650a30782c rm unimplemented diag message format 2026-07-08 17:23:28 -07:00
Will Greenberg b21cfed0e3 run cargo fmt 2026-07-08 17:23:27 -07:00
Will Greenberg 5227939b1e appease clippy 2026-07-08 17:23:27 -07:00
Will Greenberg 99ba6147a2 add more comments 2026-07-08 17:23:27 -07:00
Will Greenberg e7c578b229 cleanups from rebase 2026-07-08 17:23:27 -07:00
Will Greenberg cd7322e4e8 refactors/tweaks 2026-07-08 17:23:27 -07:00
Will Greenberg c51ce797f0 run cargo fmt 2026-07-08 17:23:27 -07:00
Will Greenberg aa37f3530b lib: serialize MAC RACH attempts to GSMTAP
This also refactors the gsmtap code into a neater module, and adds MAC
UL & DL logs to our diag capture.
2026-07-08 17:23:27 -07:00
Will Greenberg 8f8b035b24 run cargo fmt 2026-07-08 17:23:27 -07:00
Will Greenberg 7e4a7a2589 lib/diag/diaglog: add MAC parsing for RACH attempts
This adds a deku parser for MAC RACH packets, along with some unit tests
adapted from SCAT's parser.
2026-07-08 17:23:27 -07:00
Will Greenberg d80654a84a Update diag log mask for new messages 2026-07-08 17:23:27 -07:00
Will Greenberg ea93088999 trim test case
These measurement packets are of a fixed length, and the SCAT test case
had excess data
2026-07-08 17:23:27 -07:00
Will Greenberg 3cac12f990 lib/gsmtap_parser: downgrade unsupported log to debug msg
Previously this was an error message to help underscore when a device
was sending unexpected messages, but now that we're receiving
measurement logs which have no place in GSMTAP frames, it's expected to
skip some log messages.
2026-07-08 17:23:27 -07:00
Will Greenberg 8691ef38df lib/diag: add ML1 Neighbor cell measurement
This adds support for Neighboring Cells Measurements, and makes some
minor changes to Serving Cell Measurements.
2026-07-08 17:23:27 -07:00
Carlos Guerra b203300558 format fixes for linters to be happy 2026-07-08 17:23:27 -07:00
Carlos Guerra 250e14afc0 addressing review comments: minor refactor for optimization, and correction of rrc_rel size 2026-07-08 17:23:27 -07:00
Carlos Guerra f7b0ef665a linting and polishing for PR 2026-07-08 17:23:27 -07:00
Carlos Guerra 1ab99acd76 Collect signal strength and timing advances. LTE serving cell measurements (0xb17f) and RACH Timing Advance (0xb062) 2026-07-08 17:23:27 -07:00
Brad Warren a3cf7ac1ee add note about powershell vs cmd 2026-07-08 11:18:21 -07:00
sawft99 e8d4a489de Update faq.md 2026-07-08 11:18:21 -07:00
David Brungardt 97e7e7c3d0 Change Wording Slightly 2026-07-06 11:13:55 -07:00
David Brungardt 39c183d67f Update FAQ w/ Question About SIM Cards Outside US 2026-07-06 11:13:55 -07:00
Will Greenberg cd28354bec run cargo fmt 2026-06-25 15:45:59 -07:00
Will Greenberg 1e4b812273 lib: refactor gsmtap/gsmtap_parser into a single module
This'll allow us to break out more specific GSMTAP parsing into
submodules more easily.
2026-06-25 15:45:59 -07:00
Will Greenberg 04cf2cbd67 lib/diag.rs refactor
This splits diag.rs, which was growing way too big for my taste, into a
number of submodules. This should help us compartmentalize tests better,
as well as use mod namespaces to shorten our struct/enum names.
2026-06-25 15:45:59 -07:00
Will Greenberg 9627cec737 Refactors in response to review comments
A few minor refactors, and a more major one that renames
RecordingStore's update_entry_qmdl_size to
update_current_entry_qmdl_size, since the only time we're ever updating
an entry's QMDL size is when it's the current one.
2026-06-22 19:40:54 -07:00
Will Greenberg 10f560b5e4 more clippy appeasement 2026-06-22 19:40:54 -07:00
Will Greenberg 88d2725427 fix clippy 2026-06-22 19:40:54 -07:00
Will Greenberg 76ae8fccd9 run cargo fmt 2026-06-22 19:40:54 -07:00
Will Greenberg 94b989c3c0 Add support for compressed QMDL
Major changes:
* QmdlWriter now outputs gzipped QMDL files by default
* QmdlReader renamed to QmdlMessageReader, and reads both compressed and
  uncompressed QMDL. It no longer requires bounding to avoid reading
  partially written files.
2026-06-22 19:40:54 -07:00
Brad Warren f5a0cddc88 improve basic logging 2026-06-18 15:25:12 -07:00
Brad Warren 2702ee0828 add basic logging
Co-authored-by: Will Greenberg <ifnspifn@gmail.com>
2026-06-18 15:25:12 -07:00
Brad Warren 58338850dd move comment to better location 2026-06-18 15:25:12 -07:00
Brad Warren d122ce6e6d convert introspect::Argument::new to ::try_new 2026-06-18 15:25:12 -07:00
Brad Warren 9280067e31 better document the effect of arg_modifiers order 2026-06-18 15:25:12 -07:00
Brad Warren 3b3532d3fd add modifiers.rs 2026-06-18 15:25:12 -07:00
Brad Warren 30c4cb0e0c add basic rayhunter_options endpoint 2026-06-18 15:25:12 -07:00
Deven Ducommun 17a9dfe0ff fix(parsing): mask EARFCN to 14 bits to prevent GSMTAP serialization panic
LTE EARFCNs can exceed the 14-bit GSMTAP ARFCN field maximum (16383),
causing Deku to panic with "bit size of input is larger than bit
requested size: 16 exceeds 14". This broke pcap generation for
international captures (e.g. UK, Switzerland).

Mask the value to 14 bits per the GSMTAP spec instead of panicking.

Fixes #1012, fixes #945

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-06-17 11:28:23 -07:00
dependabot[bot] b3f63864ad Bump vite in /daemon/web in the security group across 1 directory
Bumps the security group with 1 update in the /daemon/web directory: [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite).


Updates `vite` from 8.0.10 to 8.0.16
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v8.0.16/packages/vite)

---
updated-dependencies:
- dependency-name: vite
  dependency-version: 8.0.16
  dependency-type: direct:development
  dependency-group: security
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-06-16 10:29:37 -07:00
dependabot[bot] cfefa3c901 Bump vite in /installer-gui in the security group across 1 directory
Bumps the security group with 1 update in the /installer-gui directory: [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite).


Updates `vite` from 8.0.9 to 8.0.16
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v8.0.16/packages/vite)

---
updated-dependencies:
- dependency-name: vite
  dependency-version: 8.0.16
  dependency-type: direct:development
  dependency-group: security
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-06-16 10:29:11 -07:00
Brad Warren ce821b825f add set_versions.sh 2026-06-12 15:52:01 -07:00
Brad Warren 772dac681e run everything on tag pushes 2026-06-12 15:50:17 -07:00
Brad Warren 2df331a0bc run the release when the tag is pushed 2026-06-12 15:50:17 -07:00
Deven Ducommun 0a1dce3215 fix(daemon): drain UI channel in headless mode to prevent panic
On PinePhone (headless display), the UI update receiver was dropped
immediately, causing sends from diag.rs to fail with SendError and
panic. Spawn a task that drains the channel until shutdown.

Fixes #657

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-06-10 11:06:34 -07:00
KAI Maintainer 2df31300e3 fix(installer): improve error message when port 4000 is already in use
Replace .unwrap() on TcpListener::bind with .with_context() so users
see a clear message about the port conflict instead of a panic.

Fixes #906
2026-06-10 00:11:43 +02:00