I needed a gateway that does not depend on a reliable WiFi connection, so Ethernet was the only option. The ESP32 processor is already designed to be used with Ethernet, using a LAN8720 interface module, which is available from Aliexpress etc. for under €3. This combination is well supported by the Arduino universe and the ETH library. To work properly, the module needs one minor modification, as described here or here. The MySensors website has instructions for how to build
Continue readingTag: MySensors
Link quality estimation for MySensors with NRF24
The NRF24 chips don’t provide a “Received Signal Strength Indicator” (RSSI) like a WiFi link does, but there is a way to get an indicator of link quality which was good enough for my application. When the NRF24 chip doesn’t receive an acknowledge for a transmitted message, it tries to send it again, up to 15 times. The number of retries needed to get the message to its destination (“automatic re-transmit count”, ARC) is held in a chip register, and that
Continue readingMyGasMeter – a low-power link between the gas meter and home automation
This sensor node is attached to the gas meter in my home. It uses a 2,4 GHz RF link to a MySensors MQTT gateway to reports natural gas consumption data to my home automation controller. The gas meter is of the type that creates magnetic pulses when the meter dial moves, so the connection is contact-less, and works without access to the inside of the “official” meter from the utility company.
Continue readingMaximize battery life of MySensors nodes
Let’s explore a couple of strategies to maximize battery life for home automation nodes based on the MySensors framework. Applying those strategies, I have built sensor nodes that run for more than 36 months on one CR2032 coin cell.
Continue readingMyMotionSensor – a MySensors based sensor for motion and ambient light level
I needed a couple of motions sensors to automate lighting in hallways and other rooms. Since the lights should only turn on when it is dark, the system also needs to know the ambient light level in the location where the motion was detected — so I added a simple brightness sensor to each node.
Continue reading