| OTA |
Over‑The‑Air update package containing the backend binary, the compiled front‑end www/ assets and the FRPC client. Packaged as udx710-ota-{VERSION}.tar.gz with a meta.json manifest (version, commit, checksums, architecture). |
| FRPC |
Fast Reverse Proxy client (v0.70.1) bundled with the OTA. Used to expose services from the device to a remote server. Managed by backend/src/state.rs (install, config render, start/stop, log rotation). |
| DBus / ofono |
Linux D‑Bus interface to the modem stack, provided by the ofono daemon. The project communicates via the zbus crate, wrapping interfaces such as MessageManager, VoiceCallManager, etc. |
| Serial AT lock |
Global mutex (DBUS_LOCK) that serialises all AT commands and DBus calls to avoid org.ofono.Error.InProgress. Implemented in backend/src/serial.rs and used via with_serial. |
| USB Gadget Hot‑Switch |
Runtime re‑configuration of the USB‑OTG gadget (NCM, ECM, RNDIS) using configfs. Implemented in backend/src/usb_switch.rs. Persistent mode stored in /mnt/data/mode.cfg. |
| Band‑mask |
Bit‑mask representation of LTE/NR carrier bands. Mapping is hardware‑specific (Rockchip/Unisoc) and handled by utility functions in backend/src/utils.rs. |
| Vite |
Front‑end build tool (v7) used to compile the React 19 source into a static dist/ directory. |
| MUI |
Material‑UI React component library (v7) providing theming and UI widgets. |
| TanStack Query |
Data‑fetching library (@tanstack/react-query v5) used for API calls with caching and background refetch. |
| Vaultwarden |
Self‑hosted Bitwarden compatible password manager; the sole source of stored secrets for this project. |
| UPX |
Optional executable compressor used in the CI pipeline to shrink the backend binary size. |
| CORS |
Cross‑Origin Resource Sharing configuration; currently set to allow any origin (*). |
| CI pipeline |
GitHub Actions workflow (.github/workflows/build-ota.yml) that builds backend and frontend, optionally compresses binaries, creates OTA tarball, verifies checksums, and uploads artifacts. |
| Refresh interval |
UI polling frequency controlled via RefreshContext; default 5 s, adjustable through the Top‑Bar menu. |
| InitScript |
Device initialization shell script (init.sh) editable via the UI; static analysis warns about syntax issues and potentially dangerous commands. |