From e836c4b9e78cc3892cdebf8126cb650f1b91ed37 Mon Sep 17 00:00:00 2001 From: Sadeep Madurange Date: Thu, 8 Jan 2026 22:28:37 +0800 Subject: Tighten prose. --- _log/etlas.md | 33 ++++++++++++++++++--------------- 1 file changed, 18 insertions(+), 15 deletions(-) (limited to '_log/etlas.md') diff --git a/_log/etlas.md b/_log/etlas.md index 7c50c72..a2458d5 100644 --- a/_log/etlas.md +++ b/_log/etlas.md @@ -6,9 +6,9 @@ project: true thumbnail: thumb_sm.jpg --- -Repurposed [e-reader prototype](../e-reader/) into something for regular use. -News, stocks, weather dashboard. ESP32 NodeMCU D1 + 7.5" Waveshare e-paper + -DHT22 sensor. +Repurposed the [e-reader](../e-reader/) into something for regular use. News, +stocks, weather dashboard. ESP32 NodeMCU D1 + 7.5" Waveshare e-paper + DHT22 +sensor. @@ -20,18 +20,21 @@ DHT22 sensor.
-Stocks: Two weeks EOD prices from Polygon.io (max possible). Flask app on VPS -relays feed; manages watchlist. Backend: httpd + htpasswd + FastCGI + Flask. +Stocks: Two weeks EOD data from Polygon.io (max possible). Flask app on VPS +manages watchlist, relays the feed. Backend: httpd + htpasswd + slowcgi + +Flask. -gui_plot_stocks() triggers watchdog; vTaskDelay() required. Stepped graph was -easier to implement (under memory constraints), but the logic is hideous. Note -to self: Refactor with Bresenham’s? +gui_plot_stocks() plots a stepped graph; was easier to implement, but the code +is hideous; triggers watchdog. vTaskDelay() prevents that. -News: Channel NewsAsia RSS. MCU parses XML directly. Character glyphs stored as -bitmaps in header files. +NOTE: Refactor. Bresenham’s? + +News: Channel NewsAsia RSS. MCU does the parsing. Didn't plan to have a backend +at the time. Now that I have one for stocks, should relay the feed for +flexibility. Weather: DHT22 single-wire protocol. 26µs/50µs/70µs pulses are too fast for -standard ESP32 APIs. Bit-banged relative pulse widths: (Ported from ESP8266): @@ -91,10 +94,10 @@ static inline int dht_get_raw_data(unsigned char buf[BUFLEN]) } ``` -Ghost in the machine: epd_init() stalls intermittently on first refresh() after -flash. Toggling delay values in refresh() resolves it. If first refresh -succeeds, it remains stable. Root cause unknown--suspected power supply issues -from powering display via MCU. +epd_init() stalls intermittently on first refresh() after flash. Toggling delay +values in refresh() resolves it. If the first refresh succeeds, it remains +stable. Root cause unknown--suspect noisy power supply due to powering display +via MCU. Uptime: August 2024 - January 2026 -- cgit v1.2.3