We're working on a (giant) new door for our house, and I'm exploring HomeKey locks, because I have CarKey on my cars and I love it - but unfortunately, due to Apple and their demands to have the lock and the reader all in a single hardware piece, door locks in Europe with HomeKey are few - and the few available are after market solutions, so not aesthetically WAF-approved. And then, I wondered, how cool could it be to open the garage door with the same HomeKey?
So I went down thru a rabbit hole and then found this:
ESP32 HomeKit Lock with support for Apple Home Key - rednblkx/HomeKey-ESP32
I ordered a couple of things, and started tinkering. After a couple of hours, I had it implemented under Reactor via MQTT and on my desk, turning ON a light when the key is recognized. It costed about 20 bucks per entry, so not bad at all.
We only have iPhones at home, because of CarKeys and CarPlay - but we're not really using Home, so I had to buy an HomeHub in order to share the key - I got an Apple TV 4k that's basically just doing the HomeHub part. I'll eventually expose other things to Siri via Homebridge or HomeAssistant - or maybe not. HomeKey is the feature, for me.
Using Express mode, you just pass your watch/device on the reader and the key is recognized. You get the same key, but different device ID for a different watch/phone.
The logic is MQTT-based, so every time you pass a tag (MiFare is supported, but it's less secure because easily duplicable), you get a message at a given endpoint. You grab the keys via your virtual device, and check if they're valid in your own logic. I have a tag capability mapped to represent the key id, the device id, and a very easy logic to determine if the data is valid and the entry should be open. Remember, Key ID will be the same, Device ID will be unique across your devices (watches, phones) per person (the key is easily shareable in your family). See this screenshot:
e36899f0-2bf2-45b0-9c80-4e7593a0f7ba-image.png
You need to map the virtual lock in Reactor to the real status of the entry it's representing - but that's done using the lock capability of the device mapped via MQTT. See my template for it https://github.com/dbochicchio/reactor-mqtt-contrib
Setup is very easy.
Since the reader itself isn't doing anything special, it's the same security as a ZWave door lock: if they open the case, no contacts is exposed, since this is just a reader, where the security is inside your phone/watch. You have -of course - to use it to drive your real lock. Easy job for the garage, doable for the new proprietary lock for the door, with 12v input to unlock - via ZWave or whatever - and auto-lock feature.
A couple of photos of the various steps - and the final case I found for 5 bucks on Ali, to mount it securely outside (it had the original electronics and I took it apart to insert mine - I recommend a smaller ESP32 if you have better soldering skills than mine).
15b12d35-028e-4e90-8490-21e3eea82dbb-image.png
b9b9d242-211b-40bb-b8f1-6b2181c659b0-image.png
8a5975eb-479d-4937-8b16-53d058023dc1-image.png
cccfacf5-fc85-445a-89a7-70ba0db7cc9f-image.png
I'll mount it with the Garage Door outside - very handy during pool season, since this is the easiest way to the bathroom after some time chilling. It's powered by a 3,3 converter housed inside the house, eliminating the need for the bulky USB connector. The reader is completely covered, so the fact that is not really IP-6x is not a problem: it will not get splashes at all.
Feel free to ask me anything, if you want to embark into a new adventure.
A recent thread on supporting the ZRC-90 Z-Wave scene controller got me to wonder, what does everybody use and like?
I'll start... oh, and no dashboards. I want to hear from you all about dedicated scene controller devices. Dashboards and apps are great to a point, but my experience is that higher WAF is achieved with (a) a dedicated device (b) in a known location (c) with predictable functions and (d) no extra steps to operate (just walk up to it and push a button -- same effort as a light switch/dimmer). She's not wrong. It's a pain to unlock the phone, find the app, open the app, find the device, tap the device, when you can just walk across the room and push a button. Bonus points for something that can be labeled readably (low WAF for stuck-on tape/thermal labels).
I have a ZRC-90 and it's great, but it was temperamental to get working on Vera, and wasn't smooth sailing when it made the move to Z-Wave JS either. A couple of include/exclude cycles were needed to get it fully working on both. Since then, I've done a battery change, and while the buttons work as reliably as ever, the device continues to report the old battery level despite having a measurably fresh battery for over a year now. But I would still recommend it.
I have a Hank 4-button that is probably the best and most reliable battery-operated scene controller I have ever used. It's small and unobtrusive, so it lives on a lamp base in our living room and controls the room's mood lighting. I'm not sure they're still available. RIP.
I just ran across the Minoston MR40Z on Amazon, and I may try one of those. It looks like an installed (in-wall) Decora switch, but the buttons are actually a removable remote that you can pull off the wall and take to the couch. No line power required. Kinda cool. Maybe a good Hank replacement. But, I've never heard of this manufacturer before, and the concern is always "will I be able to buy more/replacements in one/two/five years?"
Among the wired controllers, the Zooz ZEN32 seems to be the most popular modern unit. I like it, but the LEDs are too small for my aging eyes to discern their color in daylight -- they are pin-head sized. Four of the five buttons are too small to label, so low WAF.
When I started my Z-Wave network, I used the Leviton four-button scene/zone controllers (VRCS4 and VRCZ4), and these are still all over my house. They're glitchy first-gen Z-Wave stuff (Vizia RF+ actually, so compatible but with proprietary features that aren't usable). They're now discontinued for Z-Wave. Leviton's newer units are WiFi, so if I go that route, it's HomeKit via Home Assistant for those.
During the pandemic lock-downs, I built a touch-screen scene controller using an Adafruit PyPortal. It had screens with 1 to 8 labeled, colorable soft buttons that could either perform a device function (i.e. publish to MQTT) or take you to another screen, so it was the love-child of scene controller and dashboard. Wife found it agreeable. But it was just a prototype. Memory limitation of the device was an issue because the PyPortal is really an inexpensive teaching device with a big load of Circuit Python overhead, and the graphic display needs a lot of RAM, so it was severely limited. I'm sure it could work out with the right micro and programming closer to the bare metal. Packaging and powering would also need to be addressed. And, at the end of the day, while "cute," it doesn't seem like something I would want to sell with the house if we ended up moving some day.
So, I'm interested in what others are doing and using, or more specifically, what your significant others are comfortable with and willing to use.
20 amp smart physical switch (to control Infratech heater) - preferable to be outdoor rated, but any
Hi all, I'm looking for a 20 amp (minimum) smart switch (physical, so as to either tap switch or remote/Alexa/HomeKit/etc) so that I can control several outdoor Infratech heaters (220V). If they're outdoor rated, even better. Thanks.
I have Wyze cameras and they’re mostly great but would like to find an IP camera that allows scrubbing on playback.
Any recommendations?
Welcome to our HE users! This new Q&A section is for you...
Hi.
I have a ton of different Ledvance bulbs, pluggs sensors and lights.
So far everything works fine.
Bot there is one thing I want too figure out.
I can link lights with the sensor so the light turns on when I enter the room.
But I want to put a timer on it.
Like 5 min without movement and the light turns of. I just can't figure out how..
I use LVD app.
Hello - I'm building a new home with zwave throughout. I want to install a flow detection shutoff, and flow meter for three different areas - a pool autofiller, irrigation system, and the home usage. I'd like to be able to detect any leaks in the system, as well as see the flow/usage by each area. What would you recommend?
hello
i am searching for a universal hub that takes my 433 remotes signals and repeats them 433mhz or converts them into bluetooth, wifi, IR, z-wave etc…basically into all the other signals. so my 433mhz remote becomes a universal remote.
it should have an app to configurate, maybe a learning function as well
i belive the homey pro can do that but it costs like 400$ …right?
so is there a cheap “china” product that works like that for at least 433 into IR, bluetooth, wifi
there are so many chinaproducts and i cant figure out which can do which trick !/ this for example https://de.trck.one/redir/clickGate.php?u=Ha2Rd3xX&m=1&p=9yUI69TI8b&t=kLf5673Z&st=&s=&url=https%3A%2F%2Fwww.techpunt.nl%2Fde%2Fhomey-bridge.html%3Fgclid%3DCj0KCQiA9YugBhCZARIsAACXxeJvViv59ieDen9zOXTP1jhc_OisKQxPlCZOJsPGX20nWo7UROROuJcaAix5EALw_wcB&r=https%3A%2F%2Fwww.hardwareluxx.de%2Fcommunity%2Fthreads%2Fbillige-chinaversion-von-homey-pro-gesucht.1333803%2F
i am working with 433mhz intertechno protokoll remotes .
please help
thanks, christoph
Looking for a simple solution that doesn't require running wire (replacing a switch receptacle is fine)
The problem: the only light switch in my garage is not near a door. So have to walk into the garage to turn the lights on.
Ideal Solution: physical remote I can stick on the wall next to the door to toggle a switch. Is there a product that is a toggle switch to replace the basic switch in the receptacle that I can also operate with a remote?
Is anyone actively developing anything on these IoT chips?
In particular, using NodeMCU for Lua programmability?
Just got a development board to play with myself...
After a fruitless search for WiFI pulse utility meter readers (can't believe I couldn't find anything suitable) and also having resolved a while ago not to include any homebrew hardware in my HA configuration, I've decided in the end to try this out, after all.
Having cut my teeth on Lua, thanks to Vera, it seems promising to use it for development, rather than Arduino programming, and the hardware is SO much cheaper, smaller, and neater than a RPi or the like.
Any experiences welcomed!
AK
Shelly i3 is an unbelievably cheap (9,99 EUR/USD) WiFi device that’s part of the fantastic Shelly family. It supports REST API, MQTT and much more.
https://shelly.cloud/knowledge-base/devices/shelly-i3/ 10
It’s just L,N and 3 inputs. No relays, so it’s a scene controller with bonus point to the fact that you can use your own buttons and keep the aesthetics of your house. Bonus points for WAF. It’s very small, so it will fit in your standard wall box easily.
While I built my own Scene Controller Virtual Device and I’m using MQTT for other devices of the family, Shelly can call your HTTP endpoints on button presses and in this case is more than enough.
The buttons support different actions (press, long press, double/triple press) and you can just call a service endpoint, or update a variable:
f3e509c0-f2a7-4f40-a099-af765e87c9fe-image.png
Go get it if you need a very cheap, very reliable scene controller for your home.
Finally, I’ve found an adequate replacement for my beloved MiniMote four-button remotes (I’ve had nine of them for the last 10 years or so!). I should have realised this earlier, but with four buttons and approximately the same form factor, the Philips Hue remotes are viable replacements…
…however, they are, of course, Zigbee and not Zwave, but this doesn’t matter in my HA environment, which has now completely ditched Zwave and Vera for all lighting and control functions, and replaced them with Hue and Shelly devices. These are all brought together with a Homebridge installation running under Docker on Synology NAS with the Apple Home app as the UI. This gives, of course, both secure remote access and voice control.
The MiniMote buttons I had configured as scene triggers to do whatever I needed, most usually toggling lights. The same functionality is easily achieved within the Home app by appropriate shortcuts.
I’m still using openLuup as a secondary hub which mimics all the various devices using MQTT and the ALTHUE plug-in and logs all device and sensor data using the built-in Historian and viewed through Grafana.
Works for me!
AK
After a long wait for an updated version of the rather crude and unfinished Z-Way integration to HASS, i'm now looking (reluctantly) in to replacing Z-Way with Z-wave JS..
Mind you this is a big existing network, not a new controller stick..
I threw up a docker for z-wave JS UI, and tried to connect it to the UZB stick.. It loads the whole network from the stick, but the driver keeps restarting?
Looking at the logs, I see a lot of Dropping message because the driver is not ready to handle it yet.
It seems like the stick just keeps talking like z-way was still listening? This ends up in the driver crashing repeatedly.. Any ideas to how I can get them talking?
In the code snippet below, you see the driver restarting with the graphic letters, seemingly while the stick is mid-sentence, or because of ACK timeout...
2022-10-02T19:19:59.664Z CNTRLR received additional controller information: Z-Wave API version: 6 (legacy) Z-Wave chip type: ZW050x node type Controller controller role: primary controller is the SIS: true controller supports timers: false nodes in the network: 1, 5, 6, 10, 11, 12, 13, 14, 17, 18, 21, 22, 23, 24, 25, 26, 27, 28, 29, 32, 33, 34, 36, 37, 38, 39, 41, 42, 43, 44, 45, 46, 4 7, 48, 52, 55, 69, 70, 71, 73, 74, 75, 77, 78, 79, 81, 82, 83 2022-10-02T19:19:59.765Z CNTRLR [Node 001] [Manufacturer Specific] manufacturerId: metadata updated 2022-10-02T19:19:59.766Z CNTRLR [Node 001] [Manufacturer Specific] productType: metadata updated 2022-10-02T19:19:59.767Z CNTRLR [Node 001] [Manufacturer Specific] productId: metadata updated 2022-10-02T19:19:59.768Z CNTRLR [Node 001] [+] [Manufacturer Specific] manufacturerId: 277 2022-10-02T19:19:59.769Z CNTRLR [Node 001] [+] [Manufacturer Specific] productType: 1024 2022-10-02T19:19:59.770Z CNTRLR [Node 001] [+] [Manufacturer Specific] productId: 1 2022-10-02T19:19:59.770Z CNTRLR [Node 001] [Version] firmwareVersions: metadata updated 2022-10-02T19:19:59.771Z CNTRLR [Node 001] [+] [Version] firmwareVersions: 5.39 2022-10-02T19:19:59.772Z CNTRLR [Node 001] [Version] sdkVersion: metadata updated 2022-10-02T19:19:59.772Z CNTRLR [Node 001] [+] [Version] sdkVersion: "6.9.0" 2022-10-02T19:19:59.772Z CNTRLR setting serial API timeouts: ack = 1000 ms, byte = 150 ms 2022-10-02T19:19:59.792Z SERIAL » 0x01050006640f97 (7 bytes) 2022-10-02T19:19:59.792Z DRIVER » [REQ] [SetSerialApiTimeouts] payload: 0x640f 2022-10-02T19:19:59.815Z SERIAL « [ACK] (0x06) 2022-10-02T19:19:59.816Z SERIAL « 0x01050106640f96 (7 bytes) 2022-10-02T19:19:59.817Z SERIAL » [ACK] (0x06) 2022-10-02T19:21:03.177Z DRIVER ███████╗ ██╗ ██╗ █████╗ ██╗ ██╗ ███████╗ ██╗ ███████╗ ╚══███╔╝ ██║ ██║ ██╔══██╗ ██║ ██║ ██╔════╝ ██║ ██╔════╝ ███╔╝ ██║ █╗ ██║ ███████║ ██║ ██║ █████╗ █████╗ ██║ ███████╗ ███╔╝ ██║███╗██║ ██╔══██║ ╚██╗ ██╔╝ ██╔══╝ ╚════╝ ██ ██║ ╚════██║ ███████╗ ╚███╔███╔╝ ██║ ██║ ╚████╔╝ ███████╗ ╚█████╔╝ ███████║ ╚══════╝ ╚══╝╚══╝ ╚═╝ ╚═╝ ╚═══╝ ╚══════╝ ╚════╝ ╚══════╝ 2022-10-02T19:21:03.178Z DRIVER version 10.2.0 2022-10-02T19:21:03.179Z DRIVER 2022-10-02T19:21:03.179Z DRIVER starting driver... 2022-10-02T19:21:03.199Z DRIVER opening serial port /dev/zwave 2022-10-02T19:21:03.212Z DRIVER serial port opened 2022-10-02T19:21:03.213Z SERIAL » [NAK] (0x15) 2022-10-02T19:21:03.229Z SERIAL « 0x01090141d39601020201f3 (11 bytes) 2022-10-02T19:21:03.232Z SERIAL » [ACK] (0x06) 2022-10-02T19:21:03.233Z SERIAL « 0x01090141d39601020201f3 (11 bytes) 2022-10-02T19:21:03.234Z SERIAL » [ACK] (0x06) 2022-10-02T19:21:03.234Z SERIAL « 0x01090141d39601020201f3 (11 bytes) 2022-10-02T19:21:03.234Z SERIAL » [ACK] (0x06) 2022-10-02T19:21:03.261Z DRIVER « [RES] [GetNodeProtocolInfo] payload: 0xd39601020201 2022-10-02T19:21:03.268Z DRIVER « [RES] [GetNodeProtocolInfo] [unexpected] payload: 0xd39601020201 2022-10-02T19:21:03.268Z DRIVER unexpected response, discarding... 2022-10-02T19:21:03.268Z DRIVER « [RES] [GetNodeProtocolInfo] payload: 0xd39601020201 2022-10-02T19:21:03.271Z DRIVER « [RES] [GetNodeProtocolInfo] [unexpected] payload: 0xd39601020201 2022-10-02T19:21:03.271Z DRIVER unexpected response, discarding... 2022-10-02T19:21:03.271Z DRIVER « [RES] [GetNodeProtocolInfo] payload: 0xd39601020201 2022-10-02T19:21:03.273Z DRIVER « [RES] [GetNodeProtocolInfo] [unexpected] payload: 0xd39601020201 2022-10-02T19:21:03.274Z DRIVER unexpected response, discarding... 2022-10-02T19:21:03.274Z DRIVER loading configuration... 2022-10-02T19:21:03.298Z CONFIG Using external configuration dir /usr/src/app/store/.config-db 2022-10-02T19:21:03.298Z CONFIG version 10.2.0 2022-10-02T19:21:04.284Z DRIVER beginning interview... 2022-10-02T19:21:04.286Z DRIVER added request handler for AddNodeToNetwork (0x4a)... 1 registered 2022-10-02T19:21:04.286Z DRIVER added request handler for RemoveNodeFromNetwork (0x4b)... 1 registered 2022-10-02T19:21:04.286Z DRIVER added request handler for ReplaceFailedNode (0x63)... 1 registered 2022-10-02T19:21:04.287Z CNTRLR querying controller IDs... 2022-10-02T19:21:04.484Z SERIAL » 0x01030020dc (5 bytes) 2022-10-02T19:21:04.485Z DRIVER » [REQ] [GetControllerId] 2022-10-02T19:21:04.487Z SERIAL « 0x0123000400511a9f039900b834787d066515a4b79c45bb3af55ea7f6203006010 (37 bytes) 80120c84d 2022-10-02T19:21:04.489Z SERIAL « [DISCARDED] invalid data 0x9ef4 (2 bytes) 2022-10-02T19:21:04.490Z DRIVER Dropping message because it contains invalid data 2022-10-02T19:21:04.490Z SERIAL » [NAK] (0x15) 2022-10-02T19:21:05.488Z CNTRLR Failed to execute controller command after 1/3 attempts. Scheduling next try i n 100 ms. 2022-10-02T19:21:05.591Z SERIAL » 0x01030020dc (5 bytes) 2022-10-02T19:21:05.592Z DRIVER » [REQ] [GetControllerId] 2022-10-02T19:21:06.596Z CNTRLR Failed to execute controller command after 2/3 attempts. Scheduling next try i n 1100 ms. 2022-10-02T19:21:07.698Z SERIAL » 0x01030020dc (5 bytes) 2022-10-02T19:21:07.699Z DRIVER » [REQ] [GetControllerId] 2022-10-02T19:21:08.717Z DRIVER Failed to initialize the driver: ZWaveError: Timeout while waiting for an ACK from the controller (ZW0200) at Driver.sendMessage (/usr/src/app/node_modules/zwave-js/src/lib/driver/D river.ts:3980:23) at ZWaveController.identify (/usr/src/app/node_modules/zwave-js/src/lib/co ntroller/Controller.ts:713:33) at Driver.initializeControllerAndNodes (/usr/src/app/node_modules/zwave-js /src/lib/driver/Driver.ts:1207:26) at Immediate.<anonymous> (/usr/src/app/node_modules/zwave-js/src/lib/drive r/Driver.ts:1014:16) 2022-10-02T19:21:08.723Z DRIVER destroying driver instance... 2022-10-02T19:21:08.728Z DRIVER driver instance destroyed 2022-10-02T19:21:08.739Z DRIVER ███████╗ ██╗ ██╗ █████╗ ██╗ ██╗ ███████╗ ██╗ ███████╗ ╚══███╔╝ ██║ ██║ ██╔══██╗ ██║ ██║ ██╔════╝ ██║ ██╔════╝ ███╔╝ ██║ █╗ ██║ ███████║ ██║ ██║ █████╗ █████╗ ██║ ███████╗ ███╔╝ ██║███╗██║ ██╔══██║ ╚██╗ ██╔╝ ██╔══╝ ╚════╝ ██ ██║ ╚════██║ ███████╗ ╚███╔███╔╝ ██║ ██║ ╚████╔╝ ███████╗ ╚█████╔╝ ███████║ ╚══════╝ ╚══╝╚══╝ ╚═╝ ╚═╝ ╚═══╝ ╚══════╝ ╚════╝ ╚══════╝ 2022-10-02T19:21:08.740Z DRIVER version 10.2.0 2022-10-02T19:21:08.740Z DRIVER 2022-10-02T19:21:08.740Z DRIVER starting driver... 2022-10-02T19:21:08.745Z DRIVER opening serial port /dev/zwave 2022-10-02T19:21:08.751Z DRIVER serial port opened 2022-10-02T19:21:08.752Z SERIAL » [NAK] (0x15) 2022-10-02T19:21:08.754Z DRIVER loading configuration... 2022-10-02T19:21:08.755Z SERIAL « 0x01080120c84d9ef40138 (10 bytes) 2022-10-02T19:21:08.757Z SERIAL » [ACK] (0x06) 2022-10-02T19:21:08.758Z DRIVER « [RES] [GetControllerId]Hi,
I have an old analog intercom (Golmar) that has this horrible buzz sound when someone rings my apartment from the buildings front gate. This becomes very annoying at night so I need to make this buzz silent from 10:00pm till 7:00am
I have a "Shelly Plus 1" connected to the intercom. (wire #0 and wire #3 are responsible for closing the circuit for the buzzer).
I have set Webhooks and Scenes, but my wiring does not work. Can anyone tell me what i have done wrong?
Cheers!
Wiring Shelly 1 plus v12.1.png Golmar intercom current wiring.png
Well with all that has been going on with Vera/eZlo, many people are abandoning the Vera hubs and moving on to other solutions, such as Hubitat (my case), HASS, HA, and many other controllers.
In the past, I had already been informed that when the migration was over, my Vera would go to the incinerator, or under the wheel of my car, and of course, I did not comply.
So I wanted to open a debate, for those who have not yet sold their Vera on eBay, are with the equipment idle, what destination could be given?
I see many saying that it has become a laboratory, I don't see much sense, since it is becoming obsolete and without a drive. But it can be a destiny. Has anyone thought about whether it is feasible to change the hub's SO so that it becomes a host for MSR, for example? Or even Home Assistance? I have no knowledge, but it seems to me that processor and memory have to do something like that, already has embedded wifi and network.
Does anyone have any idea if it is possible to give this equipment a destination other than a box?
I just started [uncloud] forum to gather in one central place all smart devices working without the cloud, since this is not information easily available on the Internet.
I thought this might interest some users of this forum and any feedback are welcome.
And let me know if you know more devices that I should add to the list!
- Marco
Good afternoon. Due to the new ezlo not being available in europe yet, I wanted to change the z-wave getway that works with the reactor to add to the home assistant. What advises?
Thanks
I didn't see an existing Topic for heating-ventilation-air conditioning, so here goes...
Is anyone successfully controlling a "mini split" (i.e. ductless) A/C or heat pump system at home? I will be adding such a system soon to new construction, and wondered if certain brands/models interface better via Z-Wave or WiFi than others in a HA setting.
I know a bunch of these "splits" come with handheld remotes, but having robust Home Automation control (preferably without a dedicated plug-in needed on the Vera side) would be idea.
Happy to hear suggestions. Thanks!
LibraTinkering with Tasmota sensors
-
@archers said in Tinkering with Tasmota sensors:
One possible upside with Tasmota is that it does not suffer from the lock-in problems that I have understood that e.g. Broadlink does from time to time when the manufacturers want to keep the users in their cloud
Yes - it's a problem and your solution is a good Broadlink replacement for IR. Tosmota also has a very capable IR send library, including some excellent Aircon drivers. The library that's being used, can send Pronto as well, so I'm unsure why it's not made available. May be it is but just not documented. It can also do Global Caché. Would be good to ask the question on that forum.
void sendPronto(uint16_t data[], uint16_t len, uint16_t repeat = kNoRepeat); void sendGC(uint16_t buf[], uint16_t len); void sendRaw(const uint16_t buf[], const uint16_t len, const uint16_t hz);
If you post some pronto codes that you know definitely work on your AV device/s (NOT aircons) and you say what they do and what manufacturer and type of device eg TV, DVD, etc than I could have a look supporting Tasmota IR. Assuming you are in position to test the result.
Learned codes are OK but you need to learn every single one of interest, which is a pain. If the codes are generated you can use what's already known.
It's just a matter of identifying the correct code set and using the associated pronto codes. Hope this makes some sense.
-
Some time ago I stumbled on some rather nice looking temperature and humidity sensors from Xiaomi and how to get them to communicate with a Tasmota ESP32 with BLE.
I ordered an ESP32 on Ebay and a three-pack of the sensors from Bangood. The sensors are quite cheap, you can find them for €4-5 in the usual sites.
The sensors are quite small, approx 4.5cm and run on a CR2032 battery. Time will tell how long the batteries will last. With the custom firmware you can change the reporting interval.
I have now been running this for little over two months and it works surprisingly well, bringing the temperature and humidity data into OpenLuup.
In short what you do is the following:
-
Download the beta Tasmota for ESP32, flashing is a bit different from the regular Tasmota but pretty straight forward
-
Enable bluetooth with
setoption115 1
-
The Xiaomi sensors can used both with stock firmware and flashed with a custom firmware that removes the encryption from the transmit of data, I flashed them with a Win10 laptop and it was super easy. You can even roll back the original firmware if you want.
The Xiaomi sensors will then be included by the ESP32 Tasmota device and can be sent to OpenLuup with rules, brought in with Sitesensor or now via MQTT.
-
-
@buxton yes it opens up new possibilities. On the Tasmota bluetooth webpage some other devices are listed, e.g. a soil humidity meter.
So far it has been quite stable for more than two months.
The Tasmota ESP32 is still beta, I assume it will get better over time.I will also make the ESP32 to report over Mqtt now that OpenLuup has support for it, hopefully that will make the setup even more stable.
-
@archers i didn't want to use a development kit for this, as in my environment they tend to get broken. So went searching and found the Sonoff Dual R3 with an ESP32 chip. Fits nicely in a switch box and runs on mains power. Can't wait to see what kind distance I get as soil sensors are next up after temp sensors.
-
@buxton yes I saw the Sonoff Dual R3, looks like a nice solution for getting an ESP32 into the house. The one downside is that some soldering is needed to get Tasmota onboard. I saw a good clip on this on youtube, should not be too complicated.
The distance for me is quite ok 7-8 meters with some walls inbetween, but it probably varies depending on what walls you have etc.
-
I have now completed two more CO2 meters. I used a similar enclosure as for the IR tranceiver, but this time 80 x 80 mm. I got it from Conrad, but you can get it from e.g. Farnell also. The enclosure is available in black and grey also.
The sensor contains a D1 Mini ESP8266, a MH-Z19B CO2 sensor and a BME280 temp/humidity/air pressure sensor. I have found the BME280 to be pretty good.
The temp reading from the MH-Z19B is however completely off so a separate sensor is required.A tip is to add a switch for the power to the MH-Z19B, this is needed for switching the MH-Z19B off when (re)flashing the ESP.
I think the MH-Z19B requires too much power from the PC USB when flashing.Another tip is that in Tasmota it is possible to adjust the sensor offset with TempOffset and HumOffset.
There are a few options for the MH-Z19B with the Sensor15 command. I have turned off auto calibration.
The plan is to push the data into OpenLuup from the sensors with Mqtt when I get this fully up and running.
-
@therealdb I have not found any really good enclosure for that either.
For my outdoor sensor above I had to DIY a bit, I took the dome from an old PIR sensor I had laying around (similar to this one), drilled a hole in the enclosure and then hot glued the dome and the sensor in place.
It is possible to buy just the domes also e.g. here.
-
@sender I discovered that the ESP does not flash with Tasmotizer when the MH-Z19B is connected. Why I do not know, usually it is no problem to flash ESPs with sensors attached.
I think it could be that the MH-Z19B draws too much power or something.The solution I chose (since I soldered the MH-Z19B to the ESP) was to add a simple on/off switch to the 5V VCC connection. That way when flashing I can put the switch in "off" position and then when done I turn it bach to the "on" position.
When using Dupont cables you can simply disconnect the MH-Z19B instead.
Btw this is normally only an issue when re-flashing, I usually do the initial flash before attaching any sensors.
-
-
@akbooer yes. I usually use both /tele/devicename/sensor, and stat/devicename/status8 to get sensors data. It's useful to get both telemetry message and stats pushed via automations/console/UI. and cmnd/ to send/get commands.
EDIT: and tele/devicename/LWT to handle disconnections as well.
-
@akbooer You can't really change the default prefixes through the Tasmota UI, just the topic itself.
It can be done through Console CLI along with hundreds of other minor variations to the standard Tasmota defaults, however, I don't know why anyone would given the overall flexibility in sending data with the MQTT standard.
-
@archers This is perfect for our greenhouse I'm building right now!
I ordered a Sonoff Dual R3 for heating/cooling fan and lightning control, temp/humidity sensor for visual display and automation/remote readings and a couple of Mi Flora to feed info in to the irrigation system, thanks for sharing!