5 ms·
Building an IoT Notification Device from Scratch
- bertwagner 1y agoAuthor here. Thanks for reading. This was a massive learning project for me, I'm happy to answer questions or feedback.
- sleepybrett 1y agoAlmost Name Twin here (brett wagner) just saying hey.
- cstuder 1y agoFYI: A couple of the images down in the article are not loading (And later some seem to be incorrectly formatted). I'm especially looking forward to the exploded button.
- bertwagner 1y agoD'oh. Thank you for letting me know. All fixed now. Hopefully "exploded button" wasn't too misleading (more of an exploded view of the design).
- auspiv 1y agobro your images are giant. every load of the page is transferring 40ish MB. back_panel_back_render.png is 11.3 MB. replace those with smaller versions and click to link to the larger.. but I do see both cloudfront and cloudflare headers so not sure why these aren't being cached by them
- 01HNNWZ0MV43FF 1y agoThey probably need the origin server to set the right cache headers, otherwise the cdn would get blamed for stale images
- bertwagner 1y agoThanks for letting me know, I will have to fix this soon. This was the first post as part of a new blogging setup I'm using and clearly I'm missing some of my old processes (like image resizing).
- hnuser123456 1y agoThey are photographic images saved as PNG, which is lossless and intended for digitally created images with large areas of pixels with the exact same value. Please use a format intended for photographic images. Splashflag.png is 4.5 MB, it's 10.5 MB as an uncompressed BMP file, but only 600 KB as a JPEG with indistinguishable quality loss.
- mxuribe 1y agoThis is wonderful! Thanks for sharing!!
- Havoc 1y agoThe entire ESP ecosystem is quite accessible for people of modest technical ability. HomeAssistant+ ESPHome + ESP32 in particular is a good stack because it takes away most of the complexity. Common sensors have ESPHome code available with a quick google so just need to connect the wires right basically
- mlhpdx 1y agoIndeed about ESP32 being approachable. I particularly enjoyed finding and messing about with the Cheap Yellow Display. It’s a fun little platform and with LVGL making it pretty is a joy. Would have been a nicer fit (smaller bevel) than the LCD in this project at about the same cost.
- NoiseBert69 1y agoProblem is that ESP32s are super power hungry once you start using BLE or Wifi. For BLE you can use STM32s and Nordics. But Wifi-on-Chip is ESP32-only.
- aksss 1y agoBLE and WiFi are power hungry on any platform. LoRaWAN or zigbee are better for low power, low bw comms. Kinda sacrifice simplicity & ubiquity of support in that you need a gateway/router of some sort, but they are solid solutions with long range and high penetration.
- mlhpdx 1y agoIf you want to avoid “long polling” then MQTT isn’t the answer (it’s still a long held TCP connection waiting for messages). UDP would be the way to go, and with WireGuard as a carrier you don’t have to worry about NAT traversal issues (and get privacy as a bonus). Love the project - would have been great when my kiddos were that age.
- bertwagner 1y agoThank you and I'm glad you enjoy the project. I'll have to look more into UDP for this type of solution.
- jkscm 1y agoMQTT is not the same as long polling
- petesoper 1y agoWhen I got to auto[ssid, etc in main.c it became clear the sophistication/excursion from the typical Esp32 code centerline is at many levels. Thanks for sharing!
- 9029 1y agoVery cool project, I feel inspired to try something like this myself! I noticed there seems to be a use-after-return with the creds returned from CredentialManager::retrieveCredentials (C-arrays can't be passed/returned by value). One solution could be to return Arduino Strings instead