Tags: bitbarista/CaffePeso
Tags
Fix OTA: dual-partition layout + esp_http_client downloader (v2.6.1) The Arduino Update library requires two OTA app partitions to perform OTA updates. The previous huge_app.csv only had one (ota_0), causing esp_partition_erase_range() to abort when OTA tried to write to the running partition. Changes: - Add partitions-supermini.csv and partitions-xiao.csv with two OTA app partitions each. Supermini layout mirrors huge_app.csv offsets (spiffs at 0x310000/0xE0000 + coredump) for backward-compatible LittleFS OTA. XIAO uses 0x300000 app slots with spiffs at 0x610000. - Switch platformio.ini from global huge_app.csv to board-specific partition tables. - Replace WiFiClientSecure+HTTPClient OTA downloader with esp_http_client (OtaDownloader.cpp) to avoid TLS heap fragmentation and http_parser.h enum conflicts with ESPAsyncWebServer. - Defer NimBLE deinit to main loop via semaphore (checkPendingBleDeinit) to prevent InstrFetchProhibited crash when calling NimBLEDevice::deinit from a FreeRTOS task. - Bump version to 2.6.1. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Fix web Arm triggering timer immediately after arming The web arm endpoint was calling scale.tare() from the async web server task concurrently with scale.getWeight() in the main loop. The HX711 is not thread-safe, so the concurrent access corrupted the zero reference, leaving the scale reading non-zero after the tare and immediately triggering the armed auto-start. Removed the tare from the arm endpoint — users can tare via the dedicated Tare button before arming if needed. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Remove pre-infusion timing feature The feature was fundamentally unusable — it required the user to start the machine the instant the armed message appeared, making the timer offset unpredictable in practice. Removed the toggle from settings UI, the API endpoints, and all related Display/WebServer logic. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Fix CI release step: checkout wipes downloaded artifacts actions/checkout runs after download-artifact and overwrites $GITHUB_WORKSPACE, deleting the artifact directories before the cp step can use them. Fix by checking out the repo first, then downloading artifacts into an 'artifacts/' subdirectory, and updating all cp paths accordingly. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
PreviousNext