One dedicated server-radio device.
A Trail-compatible LoRa device participates in the radio network and connects to the Linux server through the simulator-tested LUSR/1 USB contract. Hardware and firmware compatibility remain unproven.

Trail project / Linux server and LoRa gateway
A planned Linux server appliance with its own dedicated Trail-compatible LoRa device, a LAN administration interface, geographic storage, and bounded large-file delivery.
Overview
The accepted provisional direction reuses established server infrastructure while keeping the Trail-specific radio boundary explicit.
A Trail-compatible LoRa device participates in the radio network and connects to the Linux server through the simulator-tested LUSR/1 USB contract. Hardware and firmware compatibility remain unproven.
A minimal graphical session opens the administration interface on the server. Other authorized local-network machines can reach the same interface by IP.
The server can publish digest-bound manifests and provide separately supported downloads for firmware, map packages, or other files that do not belong on the radio network.
Roadmap
Architecture, the first host profile, and the local server-radio contract are selected; clean VM reproduction, the bounded API scaffold, and host-side contract simulation passed, while reserved-LAN and hardware acceptance remain open.
Debian 13.6.0, ASP.NET Core, PostgreSQL/PostGIS, Caddy, MapLibre/PMTiles, and one dedicated USB-connected Trail LoRa device.
Reproducible installation, persistent queues, live receive/transmit processing, LAN dashboard access, database recovery, and one exact dedicated server-radio binding.
Capabilities
The current repository provides a concrete interface direction, public architecture records, and a reproducible host-profile starting point.
Demonstration screens cover operations, people, devices, communications, locations, alerts, readiness, updates, backups, and server settings.
Established Linux, web, database, geographic, file-delivery, and map components avoid creating generic infrastructure from scratch.
The bounded service reports operational false and radio unavailable. Its LUSR/1 worker is disabled by default and has no serial or USB transport, hardware connection, persistent queue, or durable receive authority.
Components
Each reusable component has one job; Trail-specific behavior remains inside explicit project code and contracts.
Owns radio participation, packet protection, and a bounded host interface.
Processes validated radio events, schedules outbound traffic, stores history, and exposes operator workflows.
Kept separate from the LoRa link so large content and administration do not distort the radio protocol.
Technology
Option V0 is provisional and individual components may change after implementation evidence.
Development status
The verified host, API, contract, and hardware-free bridge remain limited development milestones, not an operational Trail Server or a completed deployment.
The public record captures the Linux, LAN, dedicated-radio, storage, map, and large-file boundaries plus the simulator-tested local USB contract.
Architecture, status, decisions, backlog, interface prototype, host-profile assets, and the bounded .NET 8 service scaffold are organized independently from OpenTrail firmware and Android work.
Assign the private router reservation, then prove HTTP and SSH access plus bounded blocked-port denial from a second machine on that LAN.
Documentation
The repository is the authority for Trail Server decisions and implementation status.
GitHub repository
Follow the architecture, interface prototype, decisions, validation, and future implementation.
The repository now contains architecture, interface-prototype, host-profile evidence, a bounded non-operational service scaffold, and a disabled hardware-free radio bridge. It does not contain a functional or supported server release.
Contribute
Useful early contributions focus on Linux deployment, USB recovery, geographic storage, accessibility, and bounded protocol review.
Help test the selected Debian profile, service recovery, stable device paths, and local-network access.
Review migrations, idempotency, bounded retries, backups, and restoration behavior.
Improve the administration prototype while keeping demonstration data and unavailable functions visibly labeled.