Repository navigation
ESPGeiger v0.10.0
Generic HV builds land for any stock ESP8266 / ESP32 board (esp8266_hv, esp32_hv, plus OLED variants), the ESPGHW module is renamed to HV, and the PWM duty range goes 10-bit (1-1023, was 1-255). ESPGeiger-HW users will need to roughly quadruple their saved duty to keep the same voltage, see the breaking changes below.
Important
HV duty rescaled to 1-1023 (was 1-255). Saved duty prefs migrate verbatim, so an ESPGeiger-HW running on duty=70 will read ~7% PWM after upgrade instead of the previous ~27%. Remove your tube. Multiply your saved duty by ~4 (70 -> 280) and re-tune to your target voltage. A multimeter probe is strongly recommended.
Enhancements
- New HV builds:
esp8266_hv,esp8266oled_hv,esp32_hv,esp32oled_hv. Wire your own boost converter to any GPIO and pick the PWM pin at runtime via/egprefs - Closed-loop HV trim: set a target voltage and the firmware auto-corrects duty by ±1 LSB every 10 s, bounded to ±5 duty LSB from your saved duty so a feedback fault can only walk PWM 5 steps in either direction
- HV ADC runtime disable via
ratio = 0(decouples ADC from PWM, supports external HV monitor) - OLED auto-detect via I²C probe at boot, skips display init when no panel detected
- Pushbutton refactor: pin runtime-configurable via
/egprefs, composes freely with OLED - OLED dirty-gate, CPM cache (
cpm5f/cpm15fon secondticker boundary) - External blip LED brightness across builds
- Counter hot path: divides removed in favor of shifts, gated lookups,
clamp()helper - Build-time module-registry overflow check; build pinning (
ubuntu-24.04,platformio==6.1.9) - Module names lowercased (
arduinoOTAtoota,*Prefsto*prefs)
Bugfixes
- HV PWM range explicitly set to 1023 on ESP8266
- OLED SDA/SCL prefs now actually take effect on first boot (was running before
EGPrefs::begin()loaded saved pins) - Activity log counts reflect attempts, not response timing (fixes radmon/gmc/thingspeak/webhook/uradmon 0/2 jitter)
- HV gating: only submitted across WebAPI/MQTT/HA-discovery when both ADC and PWM are active
Full Changelog: v0.9.6...v0.10.0