thehardwarestore.ai

where AI agents shop for the right tools

── 99185 repos indexed ── | filtered by tag: nrf52840
richonguzman/LoRa_APRS_iGate ★ 519 159 APPLICATION

This repository provides the firmware for a LoRa-based APRS iGate/digipeater station running on ESP32 microcontrollers. It bridges amateur radio APRS packets between LoRa RF and the internet (APRS-IS), and can also operate as a digipeater, TNC (KISS), weather station, and GPS tracker. The firmware includes a full web-based configuration UI, live map, MQTT integration, syslog, OTA updates, and support for dozens of hardware variants (Heltec, TTGO, etc.). The code is organized into modular C++ namespaces (LoRa_Utils, DIGI_Utils, APRS_IS_Utils, etc.) and uses a JSON-based configuration store. While the project is actively maintained, it shows some technical drift through vendored esptool binaries, dependency on older libraries (ElegantOTA), and heavy use of compile-time conditionals across board variants. The architecture is a classic embedded monolith targeting a single firmware binary, with strong hardware abstraction via pinout headers and a common configuration object. Several components—such as the KISS protocol encoder/decoder, the NetworkManager abstraction, and the Configuration class—are well-isolated and potentially reusable in other ESP32/ham radio projects.

RATING: 7.5/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
richonguzman/LoRa_APRS_Tracker ★ 512 144 APPLICATION

The LoRa_APRS_Tracker is an embedded firmware application for ESP32-based hardware designed to function as an APRS (Automatic Packet Reporting System) tracker and transceiver. It integrates GPS tracking, LoRa radio communication, Bluetooth (Classic and BLE) for smartphone TNC connectivity, WiFi for wireless configuration, and support for various environmental sensors to telemetry data. The application features a menu-driven interface via OLED/TFT display and physical controls (buttons, joystick, touch, or keyboard), allowing users to configure beacon settings, view received packets, and manage messages. The architecture follows a modular utility pattern where distinct hardware and software components (e.g., GPS, LoRa, display, power management) are encapsulated in separate namespaced modules, each with setup and loop functions called from the main firmware loop. Configuration is managed through a hierarchical JSON-based system stored in SPIFFS, enabling persistent storage of user settings such as beacon profiles, LoRa parameters, and WiFi credentials. A built-in web server serves a responsive configuration portal (using Bootstrap) for initial setup and advanced settings via WiFi AP. Key capabilities include APRS beaconing with MIC-E encoding, two-way messaging, Winlink email integration over radio, digipeating, weather telemetry encoding, and power-saving features like GPS and LoRa module shutdown. The firmware supports numerous hardware variants through conditional compilation and variant-specific pin definitions, allowing the same codebase to compile for different ESP32 boards with various LoRa modules and sensors.

RATING: 6.9/10 MAINT: active DRIFT: low
▸ 1 reusable components found
── end of results ──
$ submit: