v0.5.6 #68
Closed
ilyakruchinin
announced in
Announcements
v0.5.6
#68
Replies: 1 comment
|
closing as v0.5.7 and v0.6.0 are out |
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
SomnoTrace — Changes since v0.5.5
Battery Monitoring (comprehensive rewrite)
Battery sampling
adc_cali_curve_fitting) instead of nominal scaling. Without eFuse data, falls back to nominal (reads a few percent low).No-battery detection
valid = falseandpercent = -1, causing the LCD battery indicator to be hidden. Filter state is reset so a newly installed battery is detected within one sample cycle.valid/percent/millivoltswhenok = false, preventing stale readings from persisting after battery removal.Battery API (bsp_power.h)
bsp_battery_tstruct:percent,millivolts,charging,valid,age_s.Wi-Fi — Stale Connection Fix & Failover
Stale connection bug
WIFI_EVENT_STA_DISCONNECTED. The old code lefts_connected/s_connected_ipstale, so the LCD and/api/statuskept advertising a dead connection.link_mark_down()called on disconnect, which immediately clears the published IP and SSID. Consumers read live state vianetprov_get_link()and never cache "connected".Autonomous failover
esp_wifi_connect()only retries the single SSID currently programmed into the driver. Without intervention, a permanently disappeared network strands the device even when another configured network is in range.link_supervisor_taskperforms a full scan-and-rank across all configured networks and connects to the best available candidate. Credentials are cached at initial connect so the supervisor can rescan without NVS access.Link state API (net_provision.h)
netprov_link_tstruct:up,ssid,ip,rssi,rssi_valid.netprov_get_link()— non-blocking snapshot, safe from any task.netprov_is_link_up()— convenience boolean.LCD status display
"Wi-Fi Connected"text with the actual SSID fromnetprov_get_link()in all three status display paths (boot, periodic refresh with SD OK, periodic refresh with SD error).EDF Export — Enum Mapping Fixes (
edf_gen.c)"Plus"value (does not exist in AS11 JSON). FixedOffmapping from 0 → 1 (AS11 EDF convention: raw enum + 1). OSCAR decrements by 1 for AS11, so EDF value 1 → OSCAR 0 = "Standard", EDF value 2 → OSCAR 1 = "Soft".Pillows= 2,Nasal= 4,Pediatric= 5 (was incorrectly 1/2/4).15mmNonHeatedmapping from"3m"to correct string match, value 3.spec/0002-edf-export.md §4.3.4for the enum convention.OTA Firmware Update
Backend (net_provision.c)
POST /api/otaaccepts raw binary (application/octet-stream), max 4 MB.ota_flash_task(internal RAM stack viaxTaskCreate) — reads from stream buffer, callsesp_ota_begin/esp_ota_write/esp_ota_end/esp_ota_set_boot_partition. Internal stack required becauseesp_ota_*functions freeze the SPI cache, which asserts the task stack is not in PSRAM.{"ok":true}→ reboot after 1.5 s delay.esp_ota_abort,vStreamBufferDelete). Stream buffer timeout (10 s) and flash task timeout (30 s) prevent hangs.Build (
CMakeLists.txt)app_updateto REQUIRES foresp_ota_ops.h.Frontend (
portal.html).binonly, 4 MB max).XMLHttpRequest.upload.onprogress.Documentation
spec/0002-edf-export.md: Added §4.3.4 documenting AS11 EDF enum conventions (raw + 1 for most signals, raw + 2 for S.Mask) with OSCAR decrement behavior.This discussion was created from the release v0.5.6.
All reactions