Changelog
What's new in AmpNexus
Release notes pulled straight from our delivery pipeline — every entry ships with verified quality and performance data.
346 releases
- stableService
Notification Service API – 1.13.0
notification-service-apiQualitytests: 80 passed1.13.0 (2026-08-28)
Features
- notify installers about learning activity (4e3ff09)
- stableService
Chargepoint API – 1.51.0
chargepoint-apiQualitytests: 342 passedFeatures
- publish installer programme events (18aebaa)
- publish canonical chargepoint readiness events (158d551)
- emit readiness on session identity changes (cb5cc27)
- expose session indicator model support (b27d829)
Bug Fixes
- use device tenant for diagnostic trace history (a811587)
- stableService
Subscription API – 1.6.0
subscription-apiQualitytests: 22 passed1.6.0 (2026-08-28)
Features
- meter AmpNexus Learn usage (8c7af84)
- stableService
Tenant API – 1.25.0
tenant-apiQualitytests: 160 passed1.25.0 (2026-08-28)
Features
- add installer learning verification (578b5a1)
- stableService
Release API – 1.11.0
release-apiQualitytests: 203 passedFeatures
- allow roadmap idea text editing (892b70d)
- roadmap: seed visible vote counts (0d1ad62)
- add customer roadmap API (5258435)
- stableService
Auth API – 1.9.0
auth-apiQualitytests: 165 passed1.9.0 (2026-08-27)
Features
- add customer vehicle self-service scopes (b00632a)
- stableService
Vehicle API – 1.2.0
vehicle-apiQualitytests: 13 passedFeatures
- add provider-neutral vehicle profiles (1c1dd3b)
- add tenant-scoped Tesla vehicle service (34930a0)
- add database migration command (f4d32eb)
Bug Fixes
- ci: configure vehicle api semantic releases (68785c3)
- keep telemetry removal off command proxy (0d76184)
- stableService
Device API – 1.17.0
device-apiQualitytests: 89 passed1.17.0 (2026-08-26)
Features
- add PlugStream session indicator model capability (6fd7be9)
- stableService
Ocpp API – 2.14.0
ocpp-apiQualitytests: 176 passedFeatures
- gate session indicator by device model (d944133)
- add PlugStream session indicator backend (8795b47)
- add two-sided vehicle Sense planning (6a8d2b5)
- stableFirmware
PlugStream Firmware 1.53.4
PlugStream 7PlugStream 22Qualitytests: 595 passedcoverage: 79% line· 79% branchBug Fixes
- ocpp: execute the offline journal CREATE TABLE instead of only preparing it (38254ab)
- security: stop logging the presigned firmware URL in full (f8f1439)
- sensor: bound journal recovery so a broken database cannot burn the CPU (5aec47d)
- sensor: detect a slow journal, not just a broken one, and say so remotely (2318d52)
- sensor: keep the journal file small - littlefs charges every commit for it (02fef3b)
- ocpp: make the boot-recovery SQL executable on the device it ships to (1a99b6a)
Features
- ble: enable BLE 5 (2M PHY) and link encryption, keep BLE always on (c8ddf29)
- ble: report commissioning stage over BLE with GET_DIAGNOSTICS (28625dd)
- diagnostics: name the top CPU tasks in platform telemetry (73ed684)
- ocpp: close interrupted transactions at boot (offline journal phase 2) (b18eea0)
- stableFirmware
PlugStream Firmware 1.51.1
PlugStream 7PlugStream 22Qualitytests: 563 passedcoverage: 78% line· 78% branchBug Fixes
- diagnostics: stop the stack watchdog crying wolf over IDLE0 (867b3df)
- ble: recover stalled physical connections (def865f)
- ble: terminate connections across stop/start - zombie made charger unconnectable (a0e818e)
- ble: make commissioning robust during the post-boot radio burst (b5d778d)
- ble: Apple-recommended steady-state advertising interval (e5eed60)
- ble: defer NimBLE host recovery off the cp_runtime watchdog loop (7b4e196)
- monitor: recalibrate MemoryExhaustion criteria to genuine danger levels (fa40039)
- ble: re-register GATT services on every NimBLE host restart (66917e9)
- ble: stop the zombie-connection probe flooding the console (70d9832)
- coredump: read the stored image instead of mmapping it (8d21a48)
- phy: report silicon revision with the RF calibration posture (2dbf725)
- ble: remove the scan-response diagnostic payload (945f02b)
- wifi: start radio for diagnostic scans (3c83873)
- certificate: move the X509 layer off wolfSSL onto mbedTLS (f1545bf)
- certificate: repair private key generation - RSA never worked (0c36e72)
- ci: build host mbedTLS from the upstream release, not ESP-IDF's copy (97c0dca)
- ci: support the CI image's CMake 3.22 and lcov 1.14 (1df90d9)
- ota: report an intermediate status before the preflight reboot (e6e7095)
- ota: size the download task stack from its measured peak (089dc25)
Features
- led: night-dim schedule and custom standby colour (f6ab28a)
- led: standby light styles - Classic, Glow, Aurora, Sparkle, Stealth (d6da977)
- sensor: runtime calibration mode via SensorConfidenceCtrlr.CalibrationMode (6b8e657)
- sensor: warm-up gate for sensor journal backlog drain (e1b1d67)
- telemetry: system-health block in ReadinessState.v1 for portal graphs (2b9cc24)
- telemetry: network-interface picture in ReadinessState.v1 (76e64d9)
- thermal: stuck-sensor detection - fail-safe derate for frozen NTC (1b35447)
- ble: add scan-response payload as a receive-path probe (2e9f60b)
- build: support ESP-IDF 6.0.2 alongside 5.5 (2feb7ae)
- diagnostics: report internal heap fragmentation once per boot (0077dd6)
- stableService
Chargepoint API – 1.48.3
chargepoint-apiQualitytests: 338 passedBug Fixes
- mode-sync: accept newer audited policy version (c1e20bc)
- telemetry: box platform event payloads (5d01e43)
- auth: allow installers to request BLE grants (c718d37)
- auth: allow consumer BLE grants (d39c8a8)
Features
- telemetry: persist device health readings (311989a)
- telemetry: ingest device health frames (51a472d)
- stableService
Sentinel API – 1.8.4
sentinel-apiQualitytests: 47 passed1.8.4 (2026-08-18)
Bug Fixes
- throttle sentinel security notifications (092031f)
- stableService
Device API – 1.16.0
device-apiQualitytests: 89 passed1.16.0 (2026-08-18)
Features
- catalog: add sensor calibration control (49179d3)
- stableFirmware
PlugStream Firmware 1.45.1
PlugStream 7PlugStream 22Qualitytests: 501 passedBug Fixes
- build: drop esp_websocket_client override_path - the lock is now portable (d2944da)
- hal: correct thermistor B value for fitted TDK NTC (4067 -> 3435) (67fe940)
- ocpp: correct malformed AuthCtrlr variable name (d4887ae)
- ocpp: harden device model transaction policies (dfe8fd8)
- ocpp: report the real WebSocketPingInterval (10s, IDF default) (cc5bcd0)
- sensor-confidence: close authority bypass and move journal writes off sys_evt (8220b5f)
- database: serialize all SQLite entry through one process-wide gate (a1555ad)
- sensor-confidence: defer journal startup from OCPP receive path (9150b5f)
- sensor-confidence: size reporter stack for journal begin (6144 -> 8192) (c729d16)
- nvs: log absent keys at debug with the key name, not as errors (55233bb)
- sensor-confidence: self-heal a corrupted journal database (b7e7e8a)
- monitor: stop counting OTA download size as network TX (5687098)
- sensor-confidence: delete SQLite sidecar files when recreating the journal (fa74bd4)
- sensor-confidence: probe sqlite_master instead of the compiled-out quick_check (f2c5082)
- crash: poison-pill the boot-time core dump parse (e9bbc6b)
- database: shared SQLite poison-pill guard for every boot-path open (5ce4727)
- database: temp_store=MEMORY on every connection - the esp32 VFS rejects temp files (be522fe)
- sensor-confidence: never probe an empty database - THAT was the crash all along (19d071b)
- sensor-confidence: poison-pill sentinel - never let SQLite reopen a file that crashed it (b0e5e43)
- sensor-confidence: rowid-only ordering - sorter temp files cannot exist on this VFS (b0a733a)
- sqlite-vfs: back anonymous temp files with the in-RAM file implementation (19ebc7c)
- sensor-confidence: delete the sqlite_master probe - the probe WAS the crash (1a29a5f)
- sensor-confidence: open the journal on the main task's stack, like every database that works (98556f1)
- sqlite: put the rollback journal on flash and make xTruncate real (c696cad)
- sqlite: restore real fsync and use the proven sqlite_master probe (10c3c17)
- system-monitor: label network stats as the app-layer WS counters they are (3df522d)
- logging: 64-deep PSRAM log queue; security lines never silently dropped (24a1b86)
- ota: let the preflight-reboot resume survive the factory stale-state guard (dc80072)
Features
- firmware: add sensor confidence control authority (0521653)
- ocpp: complete the 2.0.1 device model (missing components + variables) (331173e)
- ocpp: deauthorise on invalid idToken; TxCtrlr StopTxOnInvalidId/MaxEnergyOnInvalidId (dec5175)
- ocpp: honour TxCtrlr.EVConnectionTimeOut (writable, PSRAM-safe) [TxCtrlr 1/n] (f9951dc)
- ocpp: make OCPPCommCtrlr timing set CSMS-writable and honoured (f6e9ecc)
- ocpp: TxStartPoint/TxStopPoint ReadWrite with validated accept-supported [TxCtrlr 2/n] (c06ee7d)
- sensor-confidence: OCPP-controlled publication via SensorConfidenceCtrlr.Enabled (af1019b)
- ocpp: support vendor-scoped variables (327c8c1)
- ocpp: runtime control for readiness telemetry via ReadinessCtrlr.Enabled (d312e36)
- ble: demand policy - BLE only when it can actually be needed (1e611c8)
- sensor-confidence: baseline health tier - idle plausibility lifts Unknown to Ok (5c52ba4)
- sensor-confidence: severity-gated telemetry with CSMS-tunable summary cadence (cb44ae1)
- sensor-confidence: single-constant desk-calibration switch (936b660)
- ozev: BLE provisioning auth enforced by default (bfa4d41)
- ozev: persistent UTC security log - persist at raise, log access attempts (9b70024)
- ozev: randomised delay remotely increasable to 1,800 seconds (0ce613e)
- ozev: adoption code becomes the local credential; PLUGSTREAM fallback dies (b0e5312)
- ozev: signed OTA images - firmware authenticity without eFuses (4957bd8)
- storage: quiesce SQLite on every intentional restart (ab5add6)
Performance Improvements
- ram: sensor confidence diet + reconnect-path stack sizing (e5620bd)
- stableService
Chargepoint API – 1.46.0
chargepoint-apiQualitytests: 333 passedFeatures
- allow owners to access device claim codes (6af90ef)
- sensor-confidence: persist and expose telemetry (f08c4ff)
- device-model: persist and reconcile controls (71ca438)
Bug Fixes
- device-model: fence stale control status updates (4414aae)
- stableService
Sentinel API – 1.8.3
sentinel-apiQualitytests: 46 passed1.8.3 (2026-08-15)
Bug Fixes
- deduplicate sentinel incident notifications (730f3af)
- stableService
Device API – 1.15.0
device-apiQualitytests: 89 passedFeatures
- catalog: expand approved device model controls (597c176)
- catalog: add sensor confidence capability (b8f17a3)
- catalog: define OCPP device model controls (7d95429)
- stableService
Release API – 1.9.2
release-apiQualitytests: 183 passed1.9.2 (2026-08-15)
Bug Fixes
- reduce performance probe latency (b3447aa)
- stableService
Ocpp API – 2.12.0
ocpp-apiQualitytests: 158 passed2.12.0 (2026-08-15)
Features
- commands: preserve device model custom data (36e7d5b)
- stableFirmware
PlugStream Firmware 1.38.9
PlugStream 7PlugStream 22Qualitytests: 462 passedBug Fixes
- evse: stop Aux CT export readings forcing 5s MeterValues at idle (16c306b)
- websocket: serialise client rebuild to close reconnect race (fd2b3a6)
- evse: enforce CSMS availability on the runtime task to end state-machine race (32a2d2d)
- build: guard ESP-only telemetry includes in DataTransfer for host tests (e0a62b6)
- net: prefer public DNS resolvers over the site's local nameserver (ff1c097)
- ocpp: harden NotifyReport build + SetVariables setters against faults (fe63398)
- led: run the LED task persistently instead of create/destroy per state (b1f9e79)
- installer-diag: move charge-test monitoring off the safety loop onto its own task (32e74a9)
- installer-diag: stop per-tick snapshot build + dead 5s persist on the runtime loop (2b205c1)
- getbasereport: expire and bound undrained NotifyReport plans (54fdfd5)
- auth: recover from a never-answered Authorize instead of wedging permanently (40b8b80)
- cert: bound the write-only status maps in GetCertificateStatus and SignCertificate (69b8369)
- sqlite: allocate the mem-VFS journal cache from PSRAM, not internal RAM (db9a1e0)
- defense: harden the runtime loop and thin task stacks against the runtime_idle panics (26cabed)
- defense: update temp_case catalog entry to match the 4096-byte stack (82bd352)
- security: stop printing credentials in plaintext to the serial console (dd77502)
- defense: raise IPC task stacks 2048 -> 2560 (first stack-watchdog catch) (4f4e688)
- offline: acknowledge replayed transaction events (e897eed)
Performance Improvements
- websocket: rate-limit heap diagnostics in WS ERROR handler (b0ef295)
- offline: TRUNCATE journal mode for the offline event DB to shorten writes (057051c)
- auth: add hasTransactionId()/hasIdToken() to avoid copying a UUID to test emptiness (c51be87)
- smartcharging: share one immutable profile snapshot instead of deep-copying at 1 Hz (7677b76)
Features
- offline: add OfflineEventJournal storage engine (Phase 1, part 1) (b7ebbd6)
- offline: journal TransactionEvents and mark them acked (Phase 1, part 2a) (22ba8a2)
- offline: replay journaled TransactionEvents on reconnect (Phase 1, part 2b) (653f857)
- diag: add device-side heap + network health to ReadinessState.v1 telemetry (09b8c7e)
- diag: re-add ReadinessState.v1 health telemetry without WS-manager shadowing (164c35d)
Reverts
- Revert "feat(diag): add device-side heap + network health to ReadinessState.v1 telemetry" (397a2d9)
- Revert "fix(build): guard ESP-only telemetry includes in DataTransfer for host tests" (e994b13)
- stableService
Billing API – 1.5.2
billing-apiQualitytests: 27 passedPerformance Improvements
- paginate billing collections (5f605a8)
- paginate order invoice sync queue (10bae01)
- stableService
Release API – 1.9.1
release-apiQualitytests: 181 passed1.9.1 (2026-08-06)
Bug Fixes
- limit consolidated release notes to release week (c20fb8f)
- stableService
Chargepoint API – 1.43.0
chargepoint-apiQualitytests: 326 passedFeatures
- assets: add device ownership register (cdc09f1)
- emobility: publish EVSEs to ocpi-api as location projections (c7402fd)
- emobility: republish OCPI location on connector status change (af5c390)
- emobility: wire remaining device-assignment paths (7b6f3e2)
- add isolated demo chargepoint dataset (9b2a530)
Bug Fixes
- emobility: migrate a device's EVSEs to its new tenant (b37e4b3)
- tests: update e-mobility migration fixtures (6f7d266)
- seed demo charger tariffs (e7397ae)
- demo-data: enforce canonical connector statuses (1044d82)
Performance Improvements
- emobility: skip republishing an unchanged location snapshot (f2293c8)
- stableService
Tenant API – 1.24.0
tenant-apiQualitytests: 160 passedFeatures
- organisations: add site owner type (dbea84d)
- internal: expose location OCPI identity on internal endpoint (c4ddc99)
- expose account email for internal notifications (7aeea68)
- gate demo datasets with tenant metadata (c8b7e28)