Skip to content

Releases: antricos/ELRSense

v0.3-alpha

v0.3-alpha Pre-release
Pre-release

Choose a tag to compare

@antricos antricos released this 27 Jul 20:22

Pre-release adding a second GPS sensor option, hardening GPS parsing, and reworking sensor naming/schematic access in the configurator UI — no other firmware changes since v0.2-alpha.

New features

  • GY-GPS6Mv2 GPS Module sensor: any GGA+RMC NMEA-0183 GPS module can now be used, not just the HGLRC M100-5883 — both share CRSF frame 0x02, so adding one now correctly disables the other in the UI (GPS has no source_id field, so only one GPS instance total is ever valid)
  • Sensor picker UI regrouped by category (one card per CRSF frame type, e.g. all GPS options together) instead of one card per individual sensor
  • Per-instance "Schematic" button on Voltage Divider and MF58 NTC Thermistor rows, opening their wiring diagram in a modal — replaces the old whole-card-clickable parts-list behavior

Fixes / polish

  • GPS CRSF frame is now sent every poll, even with no fix yet — the radio shows the sensor as present while waiting on satellites instead of appearing to not exist
  • NMEA sentences are now checksum-verified before parsing; a line that fails is dropped rather than parsed with garbage values (matters most on Pro Mini, where GPS runs over SoftwareSerial with no hardware receive buffering)
  • Fixed PIN_GPS_RX/GPS_BAUD sometimes generating as undeclared due to an unwanted per-instance suffix
  • Fixed GPS_SERIAL_BEGIN being stripped from generated output when only the GY-GPS6Mv2 sensor (not the M100-5883) was selected
  • Renamed Voltage Divider and MF58 NTC Thermistor display names to drop parenthetical qualifiers
  • CLAUDE.md updated to document GPS pin/checksum/no-fix behavior and the schematic-link rework

Full diff: v0.2-alpha...v0.3-alpha

v0.2-alpha

v0.2-alpha Pre-release
Pre-release

Choose a tag to compare

@antricos antricos released this 26 Jul 00:30

Follow-up pre-release covering configurator UI/UX and site polish — no changes to firmware/CRSF frame logic since v0.1-alpha.

New features

  • Live pinout visualization: colored pin markers, animated wire diagrams connecting each sensor to its pin, and a parts-list panel (configurator/app.js, catalog.js)
  • Clickable wiring diagrams for voltage-divider and MF58 NTC sensors, opening a diagram modal
  • Manual dark/light theme toggle (persisted, no flash-of-wrong-theme)

Fixes / polish

  • Voltage divider wiring diagrams corrected to specify the 3.3V rail
  • Configurator subtitle rewritten to explain what the tool actually does
  • README updated: Arduino Pro Mini support, PWM receiver note
  • SEO basics added: meta descriptions, robots.txt, sitemap.xml, OG/Twitter meta tags, favicon, canonical URL fixes

Full diff: v0.1-alpha...v0.2-alpha

v0.1-alpha

v0.1-alpha Pre-release
Pre-release

Choose a tag to compare

@antricos antricos released this 24 Jul 22:09

First alpha snapshot of ELRSense: a configurator-driven way to add custom sensor telemetry to ExpressLRS receivers via CRSF frame injection from an ESP32-C3 or Arduino Pro Mini.

Not yet verified on real hardware end-to-end — treat this as a preview for feedback, not a flashable release.

Succesfully tested so far:
Arduino Pro Mini (3.3V/8MHz)

  • Voltage Divider (plain)
  • MF58 NTC Thermistor (voltage divider)

Boards

  • ESP32-C3 Zero (fixed UART0 CRSF, GPIO0-10 pin pool)
  • Arduino Pro Mini 3.3V/8MHz (hardware UART CRSF, SoftwareSerial GPS, register-level baud workaround for the 8MHz/CRSF-baud mismatch)

Sensors

  • Hall effect RPM (0x0C)
  • HGLRC M100-5883 GPS (0x02), NMEA baud now configurable per instance
  • INA226 current/voltage (0x08)
  • BMP280 barometer (0x09)
  • MF58 NTC thermistor (0x0D)
  • Plain voltage divider (0x0E), with a derived max-voltage UI field

Configurator

  • Static, dependency-free web app (configurator/) — pick board + sensors, assign pins, download one self-contained .ino
  • Multi-instance support for sensors whose CRSF frame carries a source_id (RPM, TEMP, Voltages)
  • Per-instance calibration fields (divider resistors, thermistor nominals, GPS baud) baked into the generated USER CONFIGURATION block
  • Pin conflict detection and per-board reserved/I2C pin awareness