22 ms·
ESPHome
- stavros 3y agoI don't use this, personally, but it strikes me as a fantastic idea. I made a sensor board and wrote my own firmware for it, maybe I'll see if I can easily configure ESPhome to run on it. The only thing I'd need that my thing already has is pull-based OTA updates. Right now I just copy a firmware to a folder, and all my sensors around the house automatically update to that firmware via an HTTP server. With ESPhome, I'd have to push the update to each sensor separately, which is tedious when you have tens of them.
- NegativeLatency 3y agoMaybe fewer bugs and need to make changes with this? I have a fair number of esp devices with temp probes around the house, and I’ve been meaning to switch to esp home so I have less code to maintain
- stavros 3y agoYeah, definitely fewer bugs. Hopefully I won't mind the decreased flexibility, but the lack of HTTP updates really hurts.
- jhogendorn 3y agoThe web interface has an 'update all' button thats just as convenient. I find if theres ones i want to not update i just temp break their yaml file with an unexpected keyword and it fails to compile and then update.
- stavros 3y agoHm, I wasn't aware of this web interface. Is it some sort of management panel? Do I have to deploy it on prem?
- Nextgrid 3y agoI think he's talking about the ESPHome web app - it's a Python app you run on a server which provides a web-based IDE to manage your ESPHome devices. To be clear, it is not hosted by the ESPHome devices themselves, it's a separate component.
- lelanthran 3y ago> I don't use this, personally, but it strikes me as a fantastic idea. I made a sensor board and wrote my own firmware for it, maybe I'll see if I can easily configure ESPhome to run on it. I've done pretty much the same, but last I looked there were very few resources (other than reading the code for the ESPHome project) to help on creating custom firmware for a new board with multiple sensors. It seemed easier and faster to simply write the firmware to talk to a simple backend. I'm also curious about how they get the code for esp32 devices to fit: on a device with 4MB flash, you effectively have a 1MB program limit if you want OTA (which you do). A simple program that does nothing but make calls to the libraries for GPIO, ADC, UART, Wifi, https, https server, interrupts, FreeRTOS, mqtt, nvs, chip info, logging, OTA and functions in the standard library (scanf alone uses 30kb) already takes you over the 1MB limit. Compiling with all the logging turned off can get you a roughly 800kb program, which is still close to the limits considering that doesn't include program logic. I'll have to look at this again when I next require some remote monitoring thing.
- balloob 3y agoThis is coming in the next release.
- Havoc 3y agoYou should give it a try. ESPHome is super convenient. Especially the fact that you can flash them from a browser initially and over the air after that
- sen 3y agoI've got 20+ devices running ESPHome, about 3/4 of them are part of my Home Assistant network, and maybe 6 or so that are standalone and just using ESPHome to talk to MQTT for other stuff (cheap Chinese weather station that I replaced the insides of with an ESP32, etc). I've got my rain water tanks monitored, my soil moisture in my greenhouse, the temperature and humidity in all different parts of the house, air quality in the kitchen and kids rooms, etc etc. It's such an underrated project. In literally 5 minutes and with $10 of hardware and no programming at all, you can build your own IoT devices in your home and get real-time data on anything you want on your property.
- throwup238 3y agoSame here, plus a dozen or so random ESP32 variants just sitting in my electronics parts box because they're so cheap. It's incredibly freeing to just have all that hardware available at arms reach whenever you have an idea. They're surprisingly reliable and with modules like the sprinkler controller, they can be programmed to be independent so that they keep running as long as they have power. It took me months to realize that HomeAssistant microSD card had failed last time because all of my hydroponics gear just kept running. By far the biggest time consumer has been wiring them up to DC/DC converters to drive relays in a waterproof Sockitbox. Another really useful part to keep around are wire terminal breakout boards: https://www.amazon.com/whiteeeen-Development-Expansion-ESP-WROOM-32-ESP32-DevKitC/dp/B09VMXQTM8/ https://www.amazon.com/whiteeeen-Development-Expansion-ESP-W... Also CloudFree is great for off the shelf IoT parts that can be reprogrammed with ESPHome: https://cloudfree.shop/ https://cloudfree.shop/
- dnchdnd 3y agocan you share details of the weather station please? ive been looking into gathering wind data on the cheap...
- pzduniak 3y agoI built mine using a Hydreon Rain Gauge sensor (RG11 in my case) and combined it with an off the shelf wind sensor from AliExpress, presumably sold by Adafruit's supplier, which closes a reed switch every rotation. Everything is powered through PoE, controlled by wESP32. I spent a couple hundred bucks at most including all the mounting hardware. It all controls an aluminum "awning" in my house that's supposed to open above certain wind speed, close when it rains.
- djbusby 3y agoAnyone got this to replace their thermostat? Like sensors in zoneA signal and a device connected to the HVAC triggers ON? Maybe they're on WiFi or Ethernet connection?
- seszett 3y agoThat's what I do at home. I have little Xiaomi LYWSD002MMC and LYWSD003MMC devices (the latter with custom firmware - pvvx) and my radiators are switched on or off (via their pilot wire) by an ESP device, using a few rules to lower the temperature when nobody's there. It works much better than the radiator's own thermostat. I control my devices (I have a lot more than just for the radiators) through a kind of interface that I wrote myself (PHP and only very few, reliable dependencies) because I hate maintaining Home Assistant.
- Szpadel 3y agoI have one over complicated in floor heater that requires 2 signals to control, one for opening radiator valve and second to enable fan to blow air through it. there is only few thermostats dedicated for such setup that are extremely expensive and I decided to make my own that is also better. i have 2 temperature sensors connected, one to monitor room temperature and the second touching radiator inside, then I'm able to open valve when room temperature is below threshold and wait until radiator is hot enough and we are trying to heat for few minutes (without fan this will also work but less efficiently, but will be silent) then when temperature is reached I close valve and keep fans on until radiator cools down. I also have temperature reported to home assistant where I have pyscript automation that controls AC based on multiple temperature sensors, open window sensors, humidity, presence, time, etc to most efficiently cool down my apartment if you need to get signal on a wire, you can output it from the same device, from other esphome device or through home assistant using integration.
- oleg_tarasov 3y agoActually I did exactly that :) I use ESPHome to control a gas boiler which heats my home. It's not without problems and required a lot of tinkering, but after the initial phase it required very little maintenance throughout the winter. This year I plan on adding an ability to control AC. https://news.ycombinator.com/item?id=40017176 https://news.ycombinator.com/item?id=40017176
- allenbina 3y agoI’ve been happy with tasmota but I imagine that this would serve the same purpose.
- M95D 3y agoIt is a lot more configurable than Tasmota, but a lot harder to do it.
- reid 3y agoMade a time clock with ESPHome and a M5StickC. Clock in and out. Home Assistant sends the time to a Google Sheet. Super reliable.
- zeroping 3y agoRelated: A collection of device configurations for commercially-available hardware: https://devices.esphome.io/ https://devices.esphome.io/ A collection of Tasmota configurations for devices, many of which can also run ESPHome: https://templates.blakadder.com/ https://templates.blakadder.com/
- Mashimo 3y agoIt's so nice. Just a simple .yaml file to configure IoT devices. And it works really well.
- gnyman 3y agoAnd the best part is that it allows you to write logic in C(++) if you want. I tried Tasmota first but struggled with trying to get the rules to handle my slightly complex logic. Which was that when a water level sensor triggered, run a pump 15 seconds, wait 5 mins, run 15 sec and repeat for x times. But with the catch that if the sensor triggered before the run was done, it should ignore that. After reflashing esphome I got it done in a few minutes in C.
- eternityforest 3y agoOne of my favorite projects in all of FOSS. The only big thing missing is power management! I just wish there was a little more native hardware. I wonder if there's enough interest to do a run of PLC-like units?
- Apatheticdino 3y agoDove into this when I flashed my AirGradient device. At first I had a hard time understanding how everything integrated together (does ESPHome need a hub? how does HomeAssistant work with this?). After (mostly) figuring things out I discovered how powerful it is to have configurability ranging from OTA updates to MQTT support. My only gripe right now is the lack of documentation and confusion on the HomeAssistant side. The ESPHome addon turned out to be a red herring for getting everything set up.
- balloob 3y agoOne of the people leading ESPHome here. Let me know if there any questions. Last Saturday we announced that ESPHome is now owned by the Open Home Foundation. The Open Home Foundation fights for privacy, choice, and sustainability for smart homes. And for every person who lives in one. Learn more at https://www.openhomefoundation.org/blog/announcing-the-open-home-foundation/ https://www.openhomefoundation.org/blog/announcing-the-open-...
- Gazebra12 3y agoNo questions, only praise. This project is simply awesome, I've been astonished time and time again by the features. I had done a complete dive into the Espressif SDK trying to implement a wireless switch with temperature sensor and mqtt and had nearly finished the project when I stumbled on ESPHome obsoleting all of my work at once. It was just everything I had written so far plus many added features and obsoleted all my work at once.
- rubenbe 3y agoI agree, programming is fun, but using ESPHome to quickly have project finished and working reliably is arguably even more satisfying.
- freedomben 3y agoI both love and hate when this happens. Discoverability seems like the hardest challenge. I always do quite a bit of searching for existing stuff before rolling my own, and it can be really hard to find stuff. Most of the time I stumble on it serendipitously at some point later.
- jtwaleson 3y agoThank you! I've rarely been as impressed by how well software works. Flashing, compiling, logging and OTA updates were always a PITA and with ESPHome it's a breeze. Logging over wifi feels like it shouldn't be that simple. I've created a mini IR receiver / transmitter to control my sound system with my TV remote. It was super simple to set up, and the integration with Home Assistant is great!
- 3y ago
- Liftyee 3y agoRunning a few ESPHome projects, it's great for rescuing those which I lost motivation to write code for. The ability to do processing on-device as well as with Home Assistant is neat, but writing those procedural routines with YAML takes a little getting used to. The concepts used in the ESPHome system design are not completely intuitive.
- kiney 3y agoI'm jist getting started with home automation and have a couple of ESP32 running tasmota. How do they compare? Thr site explains how I can migrate bit not why or under which circumstances I should...
- tbyehl 3y agoTasmota is firmware you can configure on-device[0] while ESPHome is a YAML-driven construction kit for compiling firmware specific to a device's configuration. Every change to the YAML is a compile-and-flash cycle. Tasmota is only for Espressif platforms. ESPHome has expanded to support BK72xx, RTL87xx, and the Pico W, but good luck figuring out what's actually implemented on those platforms. ESPHome supports more sensors/peripherals. Some ESPHome Components[1] simplify the combination of multiple sensors and peripherals to accomplish a task to basic YAML (check out the different Cover components). Tasmota on ESP32 has an embedded scripting engine with REPL (Berry). ESPHome is... complicated[2]. Triggers, Actions, and Conditions can accomplish very simple automations in pure YAML. For more complicated tasks, you'll be writing C/C++ code. ESPHome releases frequently. If you're using it with Home Assistant, it will constantly nag you to update ESPHome and all of your ESPHome devices. Tasmota releases every few months. Tasmota suggests not upgrading a device unless you have a particular need[3]. [0] Pre-compiled Tasmota binaries work for most purposes, but there are situations where you might need to compile your own to support less common features or devices. [1] https://esphome.io/components/ https://esphome.io/components/ [2] https://esphome.io/guides/automations https://esphome.io/guides/automations [3] https://tasmota.github.io/docs/Upgrading/ https://tasmota.github.io/docs/Upgrading/
- kiney 3y agothank you!
- hendry 3y agoRequires nerves of steel to navigate Aliexpress.
- gh02t 3y agoI've had good luck buying from the Wemos and Lilygo official stores on AX. Have had no problems in many years and dozens of orders. Other sellers are a gamble.
- ThrowawayTestr 3y agoThe only problems I've had with AliExpress is the anxiety of choosing a seller where a cheaper one exists. All the hardware I've ever bought has been exactly what I ordered.
- mkoryak 3y agoI buy stuff from them all the time. They are Amazon with longer shipping times and better prices. It's harder to return stuff, sure, but just don't buy anything like that there. I've never been ripped off by them. One time I bought some stuff and it wasn't being shipped so I cancelled my order and got my money back.
- squarefoot 3y agoDoes it support some sort of mesh networking?
- deleted 3y ago[deleted]
- squarefoot 3y agoI'm baffled at how shallow some trigger happy downvoters can be. This was a legit question; I live in a reinforced concrete house surrounded by H shaped girders all around and using a star type topology with all external sensors talking to a AP would require placing one of them on each side of the house, plus the three I already have on the inside, because doing otherwise WiFi communications would be next to impossible.
- gregwebs 3y agoFor networking it says WiFi and BLE. What’s the approach to adding an ESPHome sensor outside of WiFi range?
- shifto 3y agoNot to be pedantic but it's ESPhome not ESPinthemiddleofnowhere. There are other solutions for far away sensors.
- tomashubelbauer 3y agoThere is a very real band which one could call ESPgarden where it is not worth setting up LoRa or similar because the Wi-Fi can just about make it, but not quite to be reliable. I've found success with Wi-Fi extenders which aren't very good, but are just good enough to be able to be able to let some of my garden reach the network.
- ianburrell 3y agoThere is BLE Long Range (also called Coded PHY) which is Bluetooth with range of 1km. I bet that would be perfect for outdoor sensors. Longer range and lower power than Wifi, and Bluetooth ecosystem. I couldn't find any devices that support it yet.
- blutack 3y agoThe Olimux ESP32-POE / wESP32 boards have a proper ethernet connection and PoE support. Means you don't need to worry about wifi coverage or power as long as you can get an ethernet cable to it - and those are cheap & easy to find in ludicrous lengths for outdoor use.
- vdfs 3y agoESPHome add Ethernet support for all ESP32 chips, but need an extra (and cheap) chipset https://esphome.io/components/ethernet.html https://esphome.io/components/ethernet.html
- ahaucnx 3y agoWhat I love most about ESPHome is the strong and engaged community. For our open-source hardware air quality monitors [1], a member of the community developed a sophisticated ESPHome integration [2]. His integration comes with all features that we have in our default open-source firmware. Sometimes he was even quicker implementing new features than we did! So in a way, this helped and motivated us to make our own software version better (kind of open source competition). So a big thank-you from my side to such a great community! [1] https://www.airgradient.com/ https://www.airgradient.com/ [2] https://github.com/MallocArray/airgradient_esphome https://github.com/MallocArray/airgradient_esphome
- MasterYoda 3y agoIs there something similar but for STM32?
- quickthrowman 3y agoI’ve got a question that I’ve tried to answer by googling but I’ve never been able to find anything that helps. I have a septic tank alarm system that turns on an audible and visual alarm when the float switch detects that the tank is 3/4 full. There is a pair of NO dry contacts that close when the alarm goes off. How do I monitor whether the contacts are closed or open? I assume with a GPIO pin, but I’ve never been able to google this question and find anything of use. I’m ready to give up and use a RIB01BDC [0] packaged relay to turn on a raspberry pi and email me when the septic tank contacts close. [0] https://www.functionaldevices.com/product/rib01bdc/ https://www.functionaldevices.com/product/rib01bdc/
- Majromax 3y ago> How do I monitor whether the contacts are closed or open? I assume with a GPIO pin, but I’ve never been able to google this question and find anything of use. Without making assumptions about the microcontroller used, attach ground to one of the contacts, then attach a GPIO pin, the other contact, a 10k resistor (or 100k), and VCC together in series. The microcontroller should periodically read the GPIO pin. If it reads high, the contact is open and the alarm is not sounding; if it reads low then the contact is closed and the alarm is sounding. The GPIO / contact / resistor / VCC arrangement acts to pull up that side of the circuit to the high logic level, and the resistor will limit the current that flows whenever the contacts close. If your microcontroller has an internal pull-up configuration for GPIO pins, you may be able to attach the pin directly to the contact without the extra hardware. (Conversely, if it has a pull-down configuration you can reverse things, attach VCC to the contact and the GPIO directly to the other. Read your microcontroller's documentation for available features and any current limitations.)
- wdfx 3y agoYou're assuming the tank switch is low voltage. The very first thing to do is read the manual for the installation and/or parts used. Second, approach the tank setup with a high voltage multimeter and carefully and safely take measurements of what you might be dealing with.
- p1nkpineapple 3y agoMildly off-topic: I love ESPHome, and have used it for a couple of IoT-based temperature sensors around the house, but the thing that always makes me fail the WAF (Wife Acceptance Factor) is getting all the mess of ESP32s, sensors and wires all in a nicely tucked away container. What are y'all using to hide away the electronic components?
- agsacct 3y agoIf you have a 3D printer, you can create stuff that passes my WAF. Apollo does a decent job making their stuff more innocuous. https://apolloautomation.com/products/sensor-stand?pr_prod_strat=pinned&pr_rec_id=d5c100667&pr_rec_pid=8404553007411&pr_ref_pid=8399188984115&pr_seq=uniform https://apolloautomation.com/products/sensor-stand?pr_prod_s...
- aranaur 3y agoThis is the way.
- holgerschurig 3y agoThat website is cancer. It works only with JS enabled. And when I enable it, I'm pestered with pop-ups.
- somehnguy 3y agoI 3D print enclosures for my projects. Usually I find an already designed one on Thingiverse that fits close enough. If you're using common components you're likely to find an exact match.
- icetank 3y agoI can recommend Tupperware containers. Come in all shapes and sizes and really cheap. If you get one with a glass bowl or transparent plastic you can even look inside without components getting dirty. When mounting to a wall screw your boards onto the inside of the lid and then the lid onto the wall. With this you can access it easily by removing the container from the lid. Only downside is that they can look ugly when in plain sight.
- noisy_boy 3y agoI have a pet project I have been meaning to work on: 1. Lookup the local transport API to see bus arrival timings for the stop near my home 2. Display the timings for three main buses so that can either be a bigger display or three smaller displays, one for each bus. Don't have to be high res but relatively larger and bright e.g. a 7 segment display (3 segments for bus number and 4 for showing arrival time in mins) - basically family members should be able to view it from a distance a glance. 3. I should be able to update this over wifi (or via a some low-powered device like arduino/raspberry pi etc. connected to it). If it can run via AA batteries, even better. I know how to do the first but no idea about the second - I have never even soldered anything in my life. Would be great if more knowledgeable folks can provide some pointers.
- masto 3y agoESPHome is a good start, as it provides a great framework for layering components together. For example, you could assemble what you want out of: * The display component that handles drawing into a grid of pixels (https://esphome.io/components/display/ https://esphome.io/components/display/) * The text renderer * addressable_light platform (https://esphome.io/components/display/addressable_light https://esphome.io/components/display/addressable_light) to create a display matrix on top of an addressable LED driver (https://esphome.io/components/light/neopixelbus https://esphome.io/components/light/neopixelbus) * An inexpensive 8x32 LED panel (https://www.google.com/search?q=8x32+ws2812b https://www.google.com/search?q=8x32+ws2812b) * You can make multiples of these, or chain the panels together, for more space Of course, rather than reinventing any wheels, you can follow guides like https://community.home-assistant.io/t/led-matrix-with-esphome-homeassistant/472603 https://community.home-assistant.io/t/led-matrix-with-esphom... There's not a lot of soldering needed, especially if you go the route of repurposing existing hardware like an Ulanzi. It's mostly about making the right data connections and providing the right power.
- noisy_boy 3y agoI appreciate your response. I wish there were guides for software developers like me that are also hardware noobs - ESPHome looks very powerful but I don't want to write yaml; I would rather write code for hardware that is easy to assemble and has an sdk. I feel like that will be more fun for me to setup.
- klinquist 3y agolove ESPHome. Someone made an ESPHome driver for my Rheem Water Heater via the M5Stack ESP32 w/ RS485. I primarily use Hubitat rather than HomeAssistant, so I adapted it to Hubitat. I use it to automate my water heater based on my airbnb calendar, all without needing a cloud/internet.
- hacknewslogin 3y agoIs this a good time to ask about a project I would like to do? I have two 220v heaters in my garage, one on each floor. I'd like to turn one or both of them on from my phone. I'd also love temp sensors near each of them. So far I haven't found a good FOSS option to control a 220v 40A relay. Any suggestions what to use or how to set it up would appreciated.
- jasiek 3y agoUse a solid state relay with esphome. https://en.wikipedia.org/wiki/Solid-state_relay https://en.wikipedia.org/wiki/Solid-state_relay
- alright2565 3y agoSolid state relay is probably a bad idea with all the extra heat-sinking, extra cost, and chance of getting counterfeits. I do this with ESPHome & a J115F21C12VDCS.9 relay (note only the NO side is rated for 40A resistive): https://i.imgur.com/MqqOkoY.png https://i.imgur.com/MqqOkoY.png Choose any of the temperature sensors here for air temperature sensing: https://esphome.io/ https://esphome.io/ Configuration is so easy. For the sensor, just copy the config from here, for example: https://esphome.io/components/sensor/bme280 https://esphome.io/components/sensor/bme280. Add a gpio output (https://esphome.io/components/output/gpio https://esphome.io/components/output/gpio) and a bang-bang climate controller (https://esphome.io/components/climate/bang_bang.html https://esphome.io/components/climate/bang_bang.html) Here's the kicad footprint for that relay (Relay_SPDT_CIT-J115F2.kicad_mod) if you need it: (module Relay_SPDT_CIT-J115F2 (layer F.Cu) (tedit 611825E5) (descr https://www.citrelay.com/Catalog%20Pages/RelayCatalog/J115F2.pdf) (tags "Relay CIT J115F2 SPDT") (fp_text reference REF** (at 12.1666 -15.2) (layer F.SilkS) (effects (font (size 1 1) (thickness 0.15))) ) (fp_text value Relay_SPDT_CIT-J115F2 (at 18.542 13.9 180) (layer F.Fab) (effects (font (size 1 1) (thickness 0.15))) ) (fp_line (start -3.2 -14.1) (end 27.08 -14.1) (layer F.Fab) (width 0.1)) (fp_line (start -3.96 -13.34) (end -3.96 11.94) (layer F.Fab) (width 0.1)) (fp_line (start 27.84 -13.34) (end 27.84 11.94) (layer F.Fab) (width 0.1)) (fp_line (start -3.2 12.7) (end 27.08 12.7) (layer F.Fab) (width 0.1)) (fp_line (start -4.3 -14.3) (end 28.09 -14.3) (layer F.CrtYd) (width 0.05)) (fp_line (start -4.3 -14.3) (end -4.3 12.95) (layer F.CrtYd) (width 0.05)) (fp_line (start 28.09 -14.3) (end 28.09 12.95) (layer F.CrtYd) (width 0.05)) (fp_line (start -4.3 12.95) (end 28.09 12.95) (layer F.CrtYd) (width 0.05)) (fp_line (start 17.74 1.778) (end 19.304 1.778) (layer F.SilkS) (width 0.12)) (fp_line (start 23.876 1.778) (end 25.34 1.778) (layer F.SilkS) (width 0.12)) (fp_line (start 25.34 1.778) (end 25.34 6.604) (layer F.SilkS) (width 0.12)) (fp_line (start 21.59 -8.9) (end 17.526 -8.9) (layer F.SilkS) (width 0.12)) (fp_line (start 21.59 -2.54) (end 21.59 -8.9) (layer F.SilkS) (width 0.12)) (fp_line (start 21.59 -2.54) (end 22.8092 2.032) (layer F.SilkS) (width 0.12)) (fp_line (start 17.74 6.604) (end 17.74 1.778) (layer F.SilkS) (width 0.12)) (fp_line (start 22.86 1.778) (end 23.876 1.016) (layer F.SilkS) (width 0.12)) (fp_line (start 23.876 2.54) (end 22.86 1.778) (layer F.SilkS) (width 0.12)) (fp_line (start 20.32 1.778) (end 19.304 1.016) (layer F.SilkS) (width 0.12)) (fp_line (start 19.304 2.54) (end 20.32 1.778) (layer F.SilkS) (width 0.12)) (fp_line (start 23.876 2.54) (end 23.876 1.016) (layer F.SilkS) (width 0.12)) (fp_line (start 19.304 1.016) (end 19.304 2.54) (layer F.SilkS) (width 0.12)) (fp_circle (center 21.59 -2.54) (end 21.59 -2.413) (layer F.SilkS) (width 0.12)) (fp_line (start 4.064 -5.1054) (end 5.334 -5.1054) (layer F.SilkS) (width 0.12)) (fp_line (start 5.334 5.1054) (end 4.064 5.1054) (layer F.SilkS) (width 0.12)) (fp_line (start 5.334002 5.105397) (end 5.334002 1.777997) (layer F.SilkS) (width 0.12)) (fp_line (start 5.334 -1.778) (end 5.334 -5.1054) (layer F.SilkS) (width 0.12)) (fp_line (start -3.2 12.81) (end 27.08 12.81) (layer F.SilkS) (width 0.12)) (fp_line (start 27.95 -13.34) (end 27.95 11.94) (layer F.SilkS) (width 0.12)) (fp_line (start -4.07 -13.34) (end -4.07 11.94) (layer F.SilkS) (width 0.12)) (fp_line (start -3.2 -14.21) (end 27.08 -14.21) (layer F.SilkS) (width 0.12)) (fp_arc (start 27.08 -13.34) (end 27.84 -13.34) (angle -90) (layer F.Fab) (width 0.1)) (fp_arc (start 27.08 11.94) (end 27.08 12.7) (angle -90) (layer F.Fab) (width 0.1)) (fp_arc (start -3.2 11.94) (end -3.96 11.94) (angle -90) (layer F.Fab) (width 0.1)) (fp_arc (start -3.2 -13.34) (end -3.2 -14.1) (angle -90) (layer F.Fab) (width 0.1)) (fp_arc (start 5.334001 -0.381001) (end 5.842 -0.762001) (angle -286.3) (layer F.SilkS) (width 0.12)) (fp_arc (start 5.334002 0.380998) (end 5.842001 -0.000002) (angle -286.3) (layer F.SilkS) (width 0.12)) (fp_arc (start 5.334 -1.143) (end 5.334 -1.778) (angle -233.1) (layer F.SilkS) (width 0.12)) (fp_arc (start 5.334002 1.142997) (end 5.334002 1.777997) (angle 233.1) (layer F.SilkS) (width 0.12)) (fp_text user %R (at 12.3952 0) (layer F.Fab) (effects (font (size 1 1) (thickness 0.15))) ) (fp_arc (start -3.2 -13.34) (end -3.2 -14.21) (angle -90) (layer F.SilkS) (width 0.12)) (fp_arc (start -3.2 11.94) (end -4.07 11.94) (angle -90) (layer F.SilkS) (width 0.12)) (fp_arc (start 27.08 -13.34) (end 27.95 -13.34) (angle -90) (layer F.SilkS) (width 0.12)) (fp_arc (start 27.08 11.94) (end 27.08 12.81) (angle -90) (layer F.SilkS) (width 0.12)) (pad A2 thru_hole circle (at 2.54 5.1 180) (size 2 2) (drill 1.1) (layers *.Cu *.Mask)) (pad 14 thru_hole circle (at 17.74 8.9 180) (size 4 4) (drill 2.1) (layers *.Cu *.Mask)) (pad 12 thru_hole circle (at 25.34 8.9 180) (size 4 4) (drill 2.1) (layers *.Cu *.Mask)) (pad 11 thru_hole circle (at 15.2 -8.9 180) (size 4 4) (drill 2.1) (layers *.Cu *.Mask)) (pad A1 thru_hole roundrect (at 2.54 -5.1 180) (size 2 2) (drill 1.1) (layers *.Cu *.Mask) (roundrect_rratio 0.25)) (model ${KISYS3DMOD}/Relay_THT.3dshapes/Relay_SPDT_RAYEX-L90S.wrl (at (xyz 0 0 0)) (scale (xyz 1 1 1)) (rotate (xyz 0 0 0)) ) )
- Cilvic 3y agoWhere would I start if I want to run a ESPHome voice assistant without a Homeassitant server? I understand I need some kind of server, but I'd prefer if that would be something I just run in the terminal or a cloud function or similar. I don't have hardward to run HA on at the moment.
- ku1ik 3y agoI love ESPHome! I turned my dumb standing desk into a smart desk with it (amongst dozen other things).
- utensil4778 3y agoI'll be the contrarian. I really do not like ESPHome at all. It sure is a nifty whizzbang project, and generating firmware on the fly from a json config is pretty neat, but I found it to be utterly insufferable. First, the ESP is a beast of a chip. The 32s have megabytes of flash space. Maybe I'm missing something, but it seems that it should be very possible to have one firmware image that consumes the same json config directly to set up components at runtime. The compiler for ESP is slow and the binaries are quite large. Makes far more sense to beam over a couple kb of json than a few MB image. I found the documentation to be absolutely terrible. Took me multiple hours to figure out how to use the LEDC peripheral with RGBW LEDs. I also wanted to include an IR remote transceiver, the ESP has hardware for this. There seemed to be no IR receive software available, and the IR transmit module gave you a single button. Just one. I was expecting a keypad at the very least. Also the whole process of finding a module for the functionality you want is a little ridiculous. You just scroll through this endless list of poorly categorized modules with ambiguous names and irrelevant icons. Then once you find what you want, you have to find the documentation for its json somewhere else entirely. Honestly I would enjoy this project a lot more if it were simply a light framework that you plug into your own firmware. Handle the web stuff and HA API calls for me and just expose some events so I can handle user input myself. Instead I have this gigantic binary blob. I'm sure I could go find the firmware it's generating and customize it myself, but it seemed like a lot of effort so I gave up. It's a neat project if all you want to do is plug some stuff together and never, ever think about anything. That's not how I like to work, there's far, far too much hidden from me.
- Chilko 3y agoSomething fun - the ESP32 supports capacitive touch sensing on some of it's pins, so you can turn any conductive surface into a button or input for your smart home setup. This well supported in ESPHome. https://esphome.io/components/binary_sensor/esp32_touch.html https://esphome.io/components/binary_sensor/esp32_touch.html