Recently, ESPHome was on the homepage (https://news.ycombinator.com/item?id=40138228) and some people shared their constructions. What else have you built yourself with electronics like these? What makes your live easier or a little bit more fun?
The on air package is so cool! I was a bit surprised to see it written in Go, but it explains the Mac/Linux portability. I just got a spare esp32 a couple days ago and thought it would take a while to find a good use for it, but I think this is it.
Is the esp board connected to a relay which toggles a regular 110V sign? I’m conflicted about running the board on a higher amperage 5V power supply and using a 5V LED matrix for indicating on-air status or just getting some off the shelf 110V type thing to toggle on or off. The matrix sounds more fun, for sure.
Edit: and thank you for sharing your work on this!
I’ve built a small scale ‘flat’ that is meant to act as a ‘living’ object that is a bed side companion for sick children that are lying in a hospital.
The idea is that you give a certain floor to family or friends so that they can control the lights (and color). The child can see if parents, grandparents or friends are home or not (based on a schedule or manual action). It gives a sense of reassurance and closeness of the relatives. Also very fun to see a living object next to your bed.
The software on the atom is micropython and the neopixel module. It connects to a webapp (through wifi) and listens to a JSON endpoint that gives the states of the leds (aka floors).
The webapp is a django app with a main user for the flat and he or she can invite others to control certain floors. All mobile friendly (no native app).
We have 4 live and deployed flats and are in the process of making more for our local hospitals.
The flat (wood) is custom made and pretty labour intensive.
A very fun project and learned a lot about hardware (and the deployment) coming from a saas background.
I built almost the same thing! Mine is a Christmas house with a tiny person living inside, you get a realistic fireplace, a TV, and the person goes around the house every so often:
I've built tons of things. Most usefully, I built presence/motion/light/temperature sensors for my home, along with IR transmitter so I can control my TV/AC. They're about the size of two matchboxes, they cost about $10 each and they're amazing for my home automation:
I've built cat toys for my blind cat, toy planes, a CNC, a cat feeder, a back-scratching robot, and more stuff that I can't remember. I love the ESP8266.
I would be interested in hearing about what kind of "programming" you considered for the "Home". I have been over-ambitiously thinking about a project like this (been calling it my "Building X" project) using an RPi and small screen in the window. I was planning to basically run a soap opera, where the system would usually run idle loops (like a screensaver[1]) but elements of plot could play occasionally when a presence detector verified someone was around to watch. I was envisioning users being able to subscribe to the type of story they wanted to see; murder mystery, rom-com, scifi, etc. Unfortunately I'm a hardware guy, not a TV producer so I never got anywhere.
Oh, it's a simple state machine with the "person" having a probability to go from a room to the next every few seconds. I also compressed the first X minutes of some Disney movie to single pixels for the "TV" colors, and a fireplace video (I think) for the "fireplace" colors.
The source is linked in the video, I'm sure, so you can have a look if you want.
I've been thinking about creating some more interesting interactive cat toys like this -- wiring the hardware and doing the programming are pretty easy, but where I'm stuck is building the actual cat toy bits that the electronics control! How have you approached this in your projects?
It depends on what you want to do. In my case, I have a blind cat and I needed a toy that she could hear. I 3d printed a simple ball, and I made a very small circuit with a bare ESP8266, a speaker, a small battery, and a vibration sensor. The sensor resets the ESP, which plays a short song on the speaker and then goes into deep sleep.
Well, for example, my (sighted) cats have a toy that spins a wand in a circle, but does so at a constant speed for a few minutes then turns off. I'd like to build one that moves in less predictable patterns, sporadically, over a longer period of time, without using much battery while not moving.
The hardware components aren't that hard to assemble, the programming is easy, but I'm at a loss with where to begin for building a simple housing where a motor can attach with a wand mounted to it. I'm sure it's very basic fabrication stuff, I just don't know where to begin.
Can you not use the existing toy and modulate its motor how you like it? That's my first option, and my second option is to design and 3D print something. The latter isn't that hard to learn either, you could make something decent in a few hours.
Sure, have a look at the source in my repo. I bitbang the pulses in a naive way. I realized later that everyone uses the same protocol and reading about it first would have been better, but it wasn't hard to bitbang anyway.
My goals to release source and docs a la https://github.com/eikehein/hyelicht got waylaid by the ultimate DIY project of having a baby in November, but I will try to get it done this year!
I have forty dutch buckets in four zones with cucumbers, tomatoes, eggplants, and peppers hooked up to two thirty gallon reservoirs and four ten gallon drainage tanks via a series of pumps and valves (using ESPhome sprinkler controller module). The first reservoir is pure RO water fed by a valve connected to the tap and the second is connected to a series of peristaltic pumps and sensors. They pump pH up and down as well as nutrients from concentrate into the reservoir and the concentrate bottles sit on DIY magnetic stirrers that run daily to prevent precipitation. Six ESP32s in waterproof Sockitboxes control all of this via a bunch of relays. The pH controller ESP32 gets mqtt messages via Atlas Scientific pH sensor while most of the other pumps are either on a schedule or respond to mqtt messages from Vegetronix water level sensors. I also have several Vegetronix liquid flow sensors that are hooked up to an ESP32 with solar and a battery that acts as a watchdog and alerts me via text message and indoor alarm if water doesnt flow for 12 or more hours.
The outdoor tap is also hooked up via valve to a drip irrigation loop that waters some roses and pots full of herbs, cabbage, etc.
The indoor setup is similar but much smaller with metal halide lamp and LEDs in a grow tent for out of season growing and seedlings. Protip: never put vining plants like cucumbers in a grow tent. Its a huge pain.
A set of cheap temperature sensors out of D1 minis that report data over MQTT. Just a simple piece of code, not using any fancy stuff like ESPHome or Tasmota as there was no need for it. In the end they are supposed to guide the gas boiler heating over OpenTherm, but haven't done that part yet.
I've also made an e-ink calendar with bin collection schedule with Inkplate (ESP32) [0] and now I'm making a Frets on Fire-compatible rhythm game based on ESP32-S3 [1] (initially made for the CCCamp's flow3r badge, now designing a simplified board for it [2][3])
Last year I built a balcony watering system using an 8x ESP32 relay system from Lilygo, paired with mini submersible pumps. To monitor plant health, I integrated MiFlora sensors over BLE. Managing minimum soil moisture and pump duration has been 'configured' by hosting a configuration files on Pastebin.
This year, I'm taking it a step further by developing a management front-end. Instead of the hacker GUI using Pastebin, I'm implementing an extra M5 Atom running MicroPython with a web GUI. This interface allows me to configure the sensors, visualize sensor data with charts, and send notifications via NTFY to my phone.
I built a little robot that props open a door when the av cabinet gets too hot. It has a temperature sensor, two fans and a linear actuator. It even has a small webui so I can manually enable/disable cooling. Been working for several years.
Ha, that's a great idea. I have a smart exhaust fan in the av closet, but it still lacks air circulation, so opening the door slightly every now and then (particularly when there's high load / heat dissipation) could be a nice extra feature.
How did you mount the linear actuator? I need to retain the ability to manually open/close the door. Maybe using a magnetic latch.
The door hinge has a spring that will self close if it’s not opened too far. I mounted the actuator so it pushes the door open just behind that point. That turned out to be simplest solution.
My first contact with ESPHome revived an old ESP32 sunrise alarm clock project of mine whose hardware was all complete but software was half-baked shoddy C++. It has adjustable color temperature (to wake me up with blue light) and can play arbitrary MP3s as an alarm.
After discovering this power I also threw together an ESP32 timelapse device that plugs into the remote shutter port on my DSLR, configurable over Home Assistant of course. Was thinking of using the camera on the ESP32-CAM to take automatic photos of planes (computer vision??), but haven't gotten round to that yet.
ESPHome really is great for replacing the code I can't be bothered to write - it's hard to do after just having put together the hardware. The next project on the list is an environmental sensor and curtain opener for my room, using an ESP8266 and RS-232 controlled servo module (what I have laying around).
I put together an esp32 + accelerometer in a little 3d printed box. Made two sets and taped one of each on my washer and dryer, now they detect the start and end of a cycle and send me a notification through home assistant. The tablet in the kitchen get a notification too and makes a special sound when the clothes are done!
Oh I like that. We have LG washer and dryer but I have 0 interest in connecting then to Wi-Fi. Right now we have a z-wave button sitting on the washing machine that starts a timer when we press it, but since the washing machine has variable run times, it's imperfect.
Someone else on HN mentioned a couple of months ago that they were using a power meter for the same purpose. There are a lot of cheap zigbee and zwave outlets that will report power, though you'd have to implement the thresholding logic on your controller.
It works pretty well, and it's nice having full control of the smarts. My washer and dryer don't have a built in buzzer for some weird reason, so it's been a nice upgrade.
I want to build a house-positioning system, but time, energy, and skill are lacking.
My wife, who has pretty extreme ADD, loses stuff like her wallet, keys, etc. We have Tiles on most stuff that gets lost, but sometimes the volume of the alert is lacking. I'd like something that uses multiple ESP32 or Pi receivers in known locations to triangulate the position of the bluetooth beacon in 3D space.
It's probably a bad idea, there might not be accurate enough timings or data to pinpoint the location. I've read somewhere that UWB will be much better at this.
EDIT: Another project idea: Sensor Light Switches. Would add sensors like occupancy, noise, pressure, temp, etc etc to the standard light switch plate/box. Then have that lovely data slurped up by something pretty to display it all.
I've put a bunch of rPI zeroes throughout the house with varying degrees of success. Works best with the home assistant beacon on my Galaxy watch, it's likely tile tags will work better.
The only downside is that the PIs require an external Bluetooth dongle hooked with a USB extender, because of wifi interference.
I used raspberry so I can use room-assistant for home assistant. You could probably hack it up with a bunch of ESPs and a central server to aggregate it all. Then trilateration should be fairly simple.
I once built an Arduino project that monitored one room to an sd card while we were on holidays. That allowed me (in principle) to know if the heating could be lowered a bit more during absence. The results were not conclusive.
Another thingy tried to determine where the mouse that sometimes came into another room came from, by using infrared distance sensors. Never caught anything.
What did work was a two op fm synth with midi in and audio out. I was satisfied when it worked, so I didn't go all the way of making a 4 or 6 op version with pots and buttons (or one of those horrible deep menu systems).
So nothing practical. Just toying around, trying to get a bit of knowledge about how things work and having fun at the same time.
How cool! I've been wanting to build the exact same thing as your RFID-MP3 player, but thinking of going with a better DAC to power an amp+speakers combo.
I really, really miss CD and cassette players too. Vinyl is not my kind of thing, and CD Players nowadays are either unavailable or just too expensive for what they are.
My other choice was to just use a RasPi and an actual DVD player as a headless player, but I think doing it with a µC might be much more fun :D
Congrats on your project, though, they both seem and look really fun! Cheers <3
Thanks! My RFID project there is probably very over-complicated compared to a "proper" audio setup like you describe. Really all you would need is a Raspberry Pi to host a MQTT server and play a stream from Spotify (or similar). You could then use ESPHome as a simple RFID-to-MQTT reader, which would be extremely simple with ESPHome and is the kind of project that ESPHome makes beautifully and laughably simple!
My idea was even simpler tbh, I'd make a bunch of m3u files, and rename them with a SHA1 hash. Then just put the hash value in RFID tags. Yes, it's not as remotely extendable, but then again, I've like 5 or 6 offline-only playlists that I keep playing on repeat according to my mood, so I'd be fine haha
Maybe throw in album hashes or something. Extremely minimal, and everything inside the box. There won't be any Wi-Fi connections at all. Of course, this does limit some things, but eh. Maybe I'll add a WebUI for controlling volume and such, but that would be it, I guess :D
This is sort of on topic, except I haven’t finished.
I’ve been working on making a magnetic stirrer with an integrated scale and heating. It isn’t specific to esp or esphome stuff, but I happen to be using an esp32 to power it.
I wanted to buy a stirrer and discovered even the most basic equipment is extremely expensive. Once you add heat, let alone heat control that’s accurate with a digital readout, or a scale, prices are in the multiple thousands.
I know the one I make isn’t going to be as precise or accurate, the build quality won’t be as good, but it’ll be good enough for my purposes.
I’ve found very cheap models online, but oddly a lot of them can’t be shipped here and not surprisingly, the reviews are reliably terrible anyways.
I’ve been having a hard time figuring out the stirring part, ironically. The heat and scale part struck me as the trickiest initially, but I’m not smart enough to know how to protect the magnets from the heat.
My intuition at this point is that maybe I can accomplish this using electromagnets since they won’t be permanently damaged by heat, but I have no idea how to program this to work with a stirrer at a distance. It might be the completely wrong path to take, too.
In any case it’ll be worth it. I’ve been wanting a proper stirrer for quite a while, and the one I’m using at the moment is a computer fan hooked up to a potentiometer and an nmos, glued into a 3d printed platform.
Not the OP, but I really like the SCD30 by Sensirion. It's the sensor used in the widely popular Aranet4, but the combo of sensor+MCU when you DIY it costs about a third of the commercially integrated product, so the feeling of thrifty hacker accomplishment is a nice bonus on top of the good HW.
The SCD30 also is a dual channel or dual beam NDIR sensor, meaning it doesn't really drift. Unlike most other ones that need the room to have outdoor-level CO2 once a day or week or so to calibrate.
Last year I wrote a blog post [1] about different CO2 sensors and how they work.
The best are NDIR (light) followed by photo acoustic sensors. Indoors they have very similar performance but outdoors, the NDIR (light) are much more accurate. In my personal opinion, the best ones are from SenseAir.
I used this one: SCD30. I don't have any experience with any other so can't comment on others. The SCD30 needs frequent recalibrations so I run it in continuous calibration mode and let the fan run on super low speed so it gets fresh air during the night as it sets its calibration based on the lowest ppm reading per day/week.
Don't have a git repo or pictures up; but I've built:
1) a fridge door monitoring system. We have a fridge in our garage that doesn't see frequent traffic, and it does NOT have an alarm on the door if it's left open too long. an esp8266 Watches 2 reed switches and transmits the status to home assistant. I 3d-Printed a case for the MCU + 2 holders for the reed switches (for the freezer + fridge)
2) A passive LIDAR based sensor for watching our oil burner's tank's gauge. I have to finish this up into home assistant, but I've been collecting the position into a log file. I 3d-printed another cylinder that fits over the transparent gauge, and positions the sensor in just the right place so it can reflect over the opaque float inside the sensor. Even though it's external, this one I have to be careful so the main ESP8266 is a bit aways from the sensor + tank, and I should add more protection to the lines going to the sensor. Electronic devices near fuel can get ... spicey if you are not careful.
I’ve done something similar with my fuel oil tank, except I’ve got an ultrasonic sensor threaded into my inspection port. It’s connected to a PoE powered ESP32. And now you’ve got me really concerned that even though I’ve got two compartments on the case (which itself is shoved inside a PVC pipe), I should probably do more to move the PoE powered ESP further away.
All that so I can be sure I have enough heat on really cold days or if the power goes out.
I wouldn't worry too much, diesel/fuel oil isn't like gasoline or other volatile flammable liquids that ignite easily from sparks. The burner 'gun' gets it to flame only by atomizing it with an intricate nozzle, lots of air, and 100 psi of pressure.
Does a raspberry zero count? I replaced the dubiously secure Chinese box that came with my solar panels with a home grown energy monitoring solution, hooked up to HomeAssistant. And I made a full color eInk photo frame that displays seasonally appropriate, generated images from a stable diffusion like-algo.
An Inky 7.3 inch, pimoroni sells them. Pretty good, but the colors are cleary muted and it aggressively dithers (only 7 different ink colors in pixel)
I made an overly greasy movie to impress hiring managers on linkedin, should actually do a writeup and make some photos of the thing in its proper wooden frame...
Also I run a fine tuned stable diffusion nowadays through Replicate ai, it now creates scenes starring my kids' pluche toys. Live view of the latest generation at the index page...
I love that! Now I am seriously tempted to hack up the control unit of my Fully and get it into Home Assistant so I can adjust the desk with a slider on the laptop for ... reasons.
I built a toilet occupancy light for the office. We had a long office with a single toilet, so built a battery powered closed-door detector on one side, and a mains-powered sign that indicated whether the toilet was free or not.
Very reliable, ESPHome was never an issue. This was circa 2018.
I have three strings of ws2812b LEDs on my kitchen controlled by two ESP8266s with PIR sensors, providing various under-cupboard lighting. It sounds over-engineered and was quite a lot of work to set up, but I chose to 'roll my own' because I couldn't find anything pre-made with the right combination of features without being too bulky. (Honestly, I'd happily have bought someone's product instead.)
A nice bonus is that I can program different patterns to suit moods or events. (For example, my partner requested scrolling red and green stripes for Christmas.)
(Tangent: pretty sure that despite having followed online guidance very closely, the power supplies I bought were vastly over-specced.)
Thank you kindly for the link (FYI, I've come across WLED in some demonstrations on YouTube) but I'm not sure how it improves things in my use-case?
I have two 8266s sitting waiting 24/7/365 for PIR triggers to then light up strings of LEDs for a (reset-able) length of time. That's it. This is achieved via (relatively simple) Arduino code using FastLED.
It's not entirely clear from the webpage, but it looks like WLED is partly a dashboard and partly a no-code environment to allow controlling LEDs, and setting them up from another device? Incorporating motion detection looks[0] quite[1] complex?
Being a bit old school and also unskilled at writing smartphone apps, wanted a universal control box for all kinds of homemade IOT things. It's just a dumb terminal that sends shaft encoder rotates/clicks to a server, and displays pixels sent to it. Based on an ESP-03 in a near ridiculous effort to use the minimum microcontroller to make this work. That also dates it. If I made this now it would have a better LCD than one of those old Nokia flip-phone ones.
There's something called a "Wandering Hour Clock" that, well, displays the current time in an interesting way. When I ran across a 3d printable version online, I knew I had to build one. A picture (or two) is worth a thousand words: https://www.printables.com/model/327198-improved-wandering-h...
Of course once you have an ESP32, you might as well put the clock on the network and get time over NTP. So the above project includes that.
I added some features, such as fractional time zones, and being able to set the time zone and DST from the web interface rather than in code. My software changes have been upstreamed, so the above project now has them. I also added a few small 3d printable covers to make the back of the clock look a little cleaner: https://www.printables.com/model/688154-mounting-plate-and-e...
I built a weather dashboard using an M5Paper from M5Stack. The M5Paper has an E-ink touch display, is the size of a small smart phone, and only needs to be charged every week or so.
I feel sheepish mentioning this project because there are so, so many weather displays like this. But this is mine, and not only was it fun to put together, but I use it every day.
Every junior I introduce to ESPs is at first afraid of soldering, green PCBs, cables going wild... Then they copy a project they like from a blog, and feel very proud when it comes to life, even if it's a very slightly modified clon. In no time they are tinkering on their own.
I have a similar weather display made from the m5paper, but it doesn't look so nice (no graphics). It only updates once an hour though, and lasts over a month on a charge.
I built a series of iot sensors and actuators for home heating. All based around the same modular firmware and hardware concept [0].
We have 3 of those boards scattered around the house and one sitting outside reporting external temperature, humidity, pressure and air quality. The 3 boards inside measure the same values as well but also control the heating system.
Finally, all the data is sent to a raspberry pi over mqtt for logging. Data is presented over a web interface which also allows to set the desired temperature.
Oh, and also a clock with date and time synchronized over NTP showing the external temperature and humidity. Super useful to get dressed in the morning ;) [1]
I tend to roll my own with rp-picos for no good reason other than they're easy.
1) Wattmeter for a toy solar installation - broadcasts a UDP packet every few seconds, which I then record into a staging JSON log that gets ingested into DuckDB.
2) Little pico-w wifi temperature sensor that feeds into the raspberry pi zero that controls my boiler.
The boiler control is the fun one but it's not entirely embedded stuff. Runs a little control loop that turns down the boiler modulation based upon the difference between target and current temperature. Improves operating efficiency by a fair bit and reduces temperature swings. Makes me wish residential HVAC systems were more sophisticated - these are things any good industrial control system can do.
3) Made an "ok to wake" light for my son -- added a controllable LED strip to his clock with a pico-w in it that changes from orange to multicolored at 6:30am as a non-intrusive "yes, you can come bug your parents" signal.)
Oh my gosh that is totally charming! The clock i repurposed for ours has a bit too much of a "this belongs in an office" vibe. Fun to see how different the same idea ends up. I had the same concern about kid-proofing, but I took the route of putting mine on the wifi and using NTP instead of an RTC. (Because it knows the date, it plays different patterns on holidays and on his birthday.)
Brought an inactive home security system onto Home Assistant using the below repository, so I can track everything from smoke alarms to motion, doors, and windows. I swear there's a niche business opportunity in retrofitting all these deactivated systems!
I setup an LED strip with an ESP8266 and ESPHome for my 3d printer enclosure. I recently took it apart and integrated it into my 3d printer itself, but planning to set it up again to light my figure collection instead.
I also built a set of inertial full body trackers for VR usage with them. Although they could use some redesigning, probably with lower power MCUs, current ones are a bit too large for my liking.
it sits in series with the regular controls, but allows me to start the fire and leave without needing to come back "after a while" to set the "turn off" temperature, it also fixes the issue of hysteresis where, after the furnace is empty of fuel, it will shut off due to cold air being drawn through, cooling the sensor enough to shut off, only to have the thermal mass of the boiler itself make the temperature rise above the turn-on threshold, which adds tens of power on/off cycles to the motor, on top of being annoying to listen to.
The wireless part is optional, but I use it to draw a temperature curve, so I can see when the right time to refuel is, if needed.
I've been working on a replacement controller for the Omlet automatic chicken coop door. They've recently released their own connected controller but given the shortcomings of the original I'm not sure I trust it to be reliable enough to leave my feathered friends unsupervised for days at a time.
Next in the queue is replacing my ATHOM garage door controller with my own that will add a second reed switch to detect that the door is fully open.
And I'm mulling over ways I could monitor the feed level in my chicken feeders. And maybe close them off at night to keep other critters out. But it's tricky because I don't want to replace what I have with a design that might be easier to automate, as they've held up well against the rain and I'm lazy.
I built an automated apparatus to convert water, yeast and starch into sanitizer in April/May of 2020.
I used ESP32s for individual sensing components (mostly temperature at various parts of the process but also a load cell for weight). I used the Tasmota firmware and tied them all together using MQTT over wifi. I drove it with node-red on a raspberry pi to build several PID loops and process controls and if I were to do anything similar again I would use the same architecture except I would add network booting for the ESP32s so I could swap them out as needed.
Screenshot from a node-red dashboard from very early in the process.
I ended up with 7 temp sensors and two load cells running on four ESP32s. By the time I had it optimized my job was to swap containers out every time it said to replace container over a speaker.
I'm monitoring and automating my solar charge controllers, battery management systems and my inverter using 3 separate esp32 boards. 3 Victron chargers, 4 Chinese BMS boards with BLE serial connections, one MPP Solar hybrid inverter and some inductive choke energy monitoring interfaces.
I'm really not proud of any of this code, and it's mostly based on other people's work so not much original here.
And I have an old Wemos D1 mini connected to my Arduino based smart garage door that helps automate things like lock/unlocking the front door or triggering other presence based actions.
I lived in an old apartment with a heater thats pilot light would regularly die. I connected a thermoprobe to an ESP8266, connected it to the heater. If it detected the pilot went out it would spam a Telegram chat that me and my roommate were in. Super cheap fix that saved me from waking up frozen.
I made a glowy box that takes up 1U in my homelab rack and represents my home internet reliability - an esp32c3 (risc-v, experimenting with the rust support) which pings 8.8.8.8 every minute and shows the past 30 minutes of results on a strip of 30 LEDs (green -> red for ping time, blue for errors)
Back during the pandemic, hardware-based contract tracers were an idea. I built one using the ESP32; see https://github.com/tbensky/npct. In a nutshell, everyone generates a (non-centralized) hash for themselves based on local entropy. This hash is set to the BLE name of the ESP32. Turn it on and throw it in your backpack as you go out. When two ESP32s pass by each other, they both log the other's BLE name (hence hash). Later on, hash logs could be inspected and uploaded to a central server so you can see who encountered who. Seems like there's still some (non-Covid) applications for this (but I can't think of any). Fun project. Learned a lot about Bluetooth.
Control my garage doors (thanks ratgdo!)
Control my front gate (already had gate controls, this just triggers open/close)
Control various appliances (ESPHome can be installed on "smart plugs")
I definitely have additional things I'd like to do, but I've a dearth of time.
I have not built anything novel — just utilizing community projects have been a wonderful improvement at home:
1. Ratgdo for the garage door
2. Esphome EcoNet for my water heater
3. Off the shelf Sonoff switches for some holiday lighting.
All of this is tied with a bow via Home Assistant.
Bluetooth repeaters - BLE to WiFI so I can use them in Home Assistant
Button Bot - SwitchBot alternative
Wifi Calling Bell - Relay control calling bell with auto shut-off
Cameras - Uses ESPEye and ESP32 Cam, low res, low latency and does NOT hang Standing Desk - Turns on and off linear actuators
Water controllers - Relays attached to solenoids to automate my plants drip-watering and turn on sprinklers
PIR Sensors - A bit noisy, still not satisfied with performance
RF Transmitter - To replay RF signals
RF Receiver - To receive RF signals
The BLE Repeater has been really useful as it has helped me make many BLE devices available in Home Assistant making automations easy. The nRF connect app has been really helpful to make this happen.
I have a very old rotary phone that you “dial” how bright to make the lights. esp8266 detects dial pulses, sends mqtt message to home assistant, home assistant sets zigbee can/recessed lights to requested setting
I made one of the prototypes of a shooting target for a wacky wheels-inspired buggy racing project with esp and a pressure sensor (bmp something) enclosed in a plastic tank. Had some fun shooting at it from a paintball gun and looking at the graphs, but real conditions were too noisy for the most mechanical prototypes. The project was abandoned. I believe I fried one esp due to the lack of electrical experience and burned few fingers. I also remember having some arduino in the loop, but can’t tell why (or if, tried few setups in process).
I have a power meter that sits in front of my kettle (that I also use as a teapot) that notifies me when the tea has finished brewing (i.e. when it finished boiling + a fixed delay).
I'm just starting a project with some other people at my local maker space to add an ESPHome monitor for our industrial air compressor to monitor leak down on the various main lines going to areas of the shop and to monitor the compressor working time for maintenance checks and such. The end result will get open sourced, hopefully along with a nice DIN mount to also be used in CNC controller enclosures and the like.
I got kind of petty and wanted to avoid the $40-50/month my wife spends on Pura scent refills. We also have multiple units in house, and I think they’re ugly (look like smoke alarms on wall). So I made a device to add scent juice in our HVAC system directly. It’s not as controllable, which hasn’t been a problem for us, but it is a more true full home experience which has been really nice actually.
Haven't done it yet but I'm making a booknook for my gf of the verandah in a particular Guatemalan hostel on the river where we stayed on our Central American holiday a few years ago. When a button is pressed it plays a looping mp3 of the jungle ambiance (ripped from a video I took on the actual holiday), together with a rippling light effect on the resin "river".
I use it to monitor my water meter in Home Assistant and have one sensor that reads various values (e.g. water temperature) from our domestic water heat pump via Modbus. The latter one could also be controlled with the ESP, however writing to Modbus makes me feel a little uneasy (that is mostly due to lacking documentation by the manufacturer, who apparently outsourced the firmware part).
I only got a proof-of-concept working, but I made a board that would allow payment for arcade games and pinball machines over wi-fi without disabling the coin slot. Free-play can be enabled by sensing the P1 and P2 start buttons. Security was an interesting puzzle because the 8266 ran out of memory when trying to host an SSL stack, so I went with HMAC signed messages.
I built my own personal weather station when Wunderground was destroyed by TWC and IBM. It has continued to grow over the last two years. With each new idea I have, I have been adding additional functionality to it. It's fun and I've learnt a lot because multiple programming languages are needed to get everything to function.
I've built a hardware monitoring screen for my main/gaming PC, that displays CPU/GPU usage and temperature, RAM/VRAM usage etc. It has been very useful for me to be able to see all those stats at a glance while in game, to see where my computer is bottlenecked. Oh and also it doubles as a desk clock. :)
My AI chat thing: https://imgur.com/a/cxR8KpM (WIP). Connects to openai transcription, completion and tts APIs. Refactoring to use assistants, to use it to feed it my fridge's manual and have it think it's my fridge.
I used an ESP8266 to build an air conditioning "remote" that I can control with my Home Assistant setup. I was pretty surprised when I moved and it still worked at the new apartment.
I also bought some LED matrix displays that I'm going to use to display information about when trains are due at my nearby station.
I'm helping our local Fablab to manage physical access with a series of ESP8266 and esp-rfid https://github.com/esprfid/esp-rfid/ (of which I became maintainer. If you want to use it as well I can help!)
I would pay real money for a system like this with actual security. The obvious starting point would be CTAP2 — the protocol is open, high quality fobs are inexpensive (not as cheap as Mifare, though) and widely available from multiple sources, and the protocol has been analyzed for real. One could probably even extract an actual production grade implementation of the NFC side from the Android sources. Apple Home Key support would be nifty, too. PIV would be another credible choice.
Extra bonus points for support for real commercial readers using OSDP’s transparent mode or whatever they call it these days. As I understand it, an early standard involved a horrible hack that was so horrible that HID managed to patent it, but the protocol was redone to avoid being a horrible hack, and the new version is also unencumbered. Although maybe the spec costs $30.
I have a Casino machine addon that connects to the cloud with json/websockets in production. And I have a vertical light controller for indoor farming. These arent with ESPHome. With ESPHome I have a water pump to recharge a big water container when gov sends water at certain times everyday.
I have one that I attached to an old antenna rotator so I can control it from the network. And another that monitors Github's status API and lights an LED when they're down.
Got a nice pair of Github socks at re:invent for showing a pic of that last one at their booth!
I built a live programmable led string using micropython on esp32. Just connect to its wireless AP, type some python code and see the result in the led string.
I want to automate some window blinds to open/close, based on time of day, and maybe sunny-ness. Anyone try this? They came with a Velux remote control.
I installed a custom firmware on my ESP32-powered smart kettle and made it respond with the HTTP status code "418 I'm a teapot". [1]
I used an ESP32 to automate my kitchen rangehood light and fan [2].
I've flashed ESPHome on few smart outlets and powerboards. A lot of WiFi enabled devices that you buy in stores are actually white-labelled "Tuya" products, and there's a big community effort to hack the ESP32 chips and run your own custom firmware, such as ESPHome and Tasmota. Most off-the-shelf WiFi products don't work without the manufacturer's cloud services and apps. ESPHome means that everything works locally and it doesn't need to make any requests to the public internet.
I have KC868-AG IR/RF hubs in every room [3]. I found an awesome supplier on AliExpress who builds products specifically for ESPHome. They're quite expensive but they work really well. I mainly use them to control our air conditioners. I use one in my workshop to control an old CRT TV. And I also use them as "Bluetooth Proxies" [4] for Home Assistant. This means that I don't have to worry about range for bluetooth devices (temp/humidity sensors, switchbot, and LPG gas tank sensor.)
I run WLED [5] to control a few LED strips. I like using QuinLED controllers [6], which have an ESP32 chip plus some extra hardware for powering LEDs. I have one behind my desk in my office, and one on a board gaming table. I use Zigbee LED controllers for most of my LED lighting, but I like all the effects and patterns you can do with WLED.
I have a lot of ESP32 boards around my house running ESPresense [7]. They track the signals from our phones and watches and try to figure out which rooms are occupied, so the timers don't automatically turn off the lights. I use the ESPresense-companion app, which works ok, but I've been wanting to experiment with AI to make it more reliable.
A snapcast client, which can play audio synchronized on multiple rooms
https://github.com/DavidVentura/esp-snapcast
An stratum-1 NTP _server_ (read: gets its time from GPS), and displays time with unreasonable precision (not necessarily accuracy!)
https://github.com/DavidVentura/esp-ntp
A few HUB75 signs which display public transport status (the public transport bits are not published anywhere yet)
https://github.com/DavidVentura/hub75-esp
An "on-air" sign that turns on/off if my wife or I join a meeting (based on camera/mic usage, for Linux and Mac)
https://github.com/DavidVentura/on-air
A purely decorative sign that looks like a pixelated fire
https://github.com/DavidVentura/matrix-fire
A kindle-controlled bedside lamp (just mqtt, but functionality is priceless - blogpost is unrelated but it's the only video I've got)
https://blog.davidv.dev/building-an-mqtt-client-for-the-kind...
An HDMI switcher (just a GPIO toggle) & a full-house blinds controller (just a relay hooked to the central, manual system)
https://blog.davidv.dev/extending-the-capabilities-of-dumb-d...