New Setup for Home Environment Monitoring – Using NRF24L01+, Arduino Pro Mini, and BME280
-
Hi everyone!
I just wanted to share my recent MySensors project setup focused on indoor environment monitoring. I’ve been gradually building a home automation system, and MySensors has been a perfect fit for its flexibility and low power requirements.
Here’s a breakdown of my current configuration:
💡 Sensor Node Configuration:
Microcontroller: Arduino Pro Mini 3.3V 8MHz (clone from HiLetgo)Wireless Module: NRF24L01+ with 10µF capacitor for stability
Environmental Sensor: BME280 (https://www.ichome.com/product-detail/bosch-sensortec/bme280#PdfShow) for temperature, humidity, and pressure (connected via I2C)
Power: 2x AA batteries + step-up booster (using an HT7333 LDO for stable voltage)(https://mm.digikey.com/Volume0/opasdata/d220001/medias/docus/5057/HT73xx-A.pdf)
Additional Modules (planned):
BH1750 for ambient light sensing
TSL2561 as a more accurate alternative
📡 Gateway Setup:
Controller: Home Assistant (via MySensors MQTT integration)Gateway Type: MQTT Gateway
Hardware:
Arduino Nano + NRF24L01+
Connected to a Raspberry Pi 4B (4GB RAM) running Mosquitto MQTT Broker
Powering the gateway with USB + filtered 3.3V rail for NRF stability
🧠 Software:
MySensors Library Version: 2.3.2Using the MySensors BME280 example sketch with slight modifications to add battery reporting (sendBatteryLevel()).
MQTT topics structured as: mysensors-out/0/1/1/0/0 etc.
🔧 Challenges & Solutions:
Interference: Had to add a 10µF electrolytic cap close to the NRF24L01+ VCC pin to prevent random disconnects.Power Optimization: Removed voltage regulator & power LED from the Pro Mini, sleep cycles set to 10 minutes to save battery.
Signal Range: Improved range with a NRF24L01+ PA/LNA module and external antenna for the gateway.
🚀 Next Steps:
Integrating motion detection using HC-SR501(https://www.youtube.com/watch?v=QizfU7Fgmyw) PIR sensorAdding OTA update capability via MYSBootloader (still exploring)
Possibly shifting to RFM69 for better range in multi-room setup
If anyone has experience optimizing BME280 accuracy or recommendations for better battery life, I’d love to hear your thoughts!
-
Hi everyone!
I just wanted to share my recent MySensors project setup focused on indoor environment monitoring. I’ve been gradually building a home automation system, and MySensors has been a perfect fit for its flexibility and low power requirements.
Here’s a breakdown of my current configuration:
💡 Sensor Node Configuration:
Microcontroller: Arduino Pro Mini 3.3V 8MHz (clone from HiLetgo)Wireless Module: NRF24L01+ with 10µF capacitor for stability
Environmental Sensor: BME280 (https://www.ichome.com/product-detail/bosch-sensortec/bme280#PdfShow) for temperature, humidity, and pressure (connected via I2C)
Power: 2x AA batteries + step-up booster (using an HT7333 LDO for stable voltage)(https://mm.digikey.com/Volume0/opasdata/d220001/medias/docus/5057/HT73xx-A.pdf)
Additional Modules (planned):
BH1750 for ambient light sensing
TSL2561 as a more accurate alternative
📡 Gateway Setup:
Controller: Home Assistant (via MySensors MQTT integration)Gateway Type: MQTT Gateway
Hardware:
Arduino Nano + NRF24L01+
Connected to a Raspberry Pi 4B (4GB RAM) running Mosquitto MQTT Broker
Powering the gateway with USB + filtered 3.3V rail for NRF stability
🧠 Software:
MySensors Library Version: 2.3.2Using the MySensors BME280 example sketch with slight modifications to add battery reporting (sendBatteryLevel()).
MQTT topics structured as: mysensors-out/0/1/1/0/0 etc.
🔧 Challenges & Solutions:
Interference: Had to add a 10µF electrolytic cap close to the NRF24L01+ VCC pin to prevent random disconnects.Power Optimization: Removed voltage regulator & power LED from the Pro Mini, sleep cycles set to 10 minutes to save battery.
Signal Range: Improved range with a NRF24L01+ PA/LNA module and external antenna for the gateway.
🚀 Next Steps:
Integrating motion detection using HC-SR501(https://www.youtube.com/watch?v=QizfU7Fgmyw) PIR sensorAdding OTA update capability via MYSBootloader (still exploring)
Possibly shifting to RFM69 for better range in multi-room setup
If anyone has experience optimizing BME280 accuracy or recommendations for better battery life, I’d love to hear your thoughts!
@lostintheethes Sounds like a nice set up. I have had good luck with bme280's without doing anything special. I usually get about a year out of a coin cell battery. I check the temperature every 3 minutes, but I don't send unless it changes more than .1 I haven't really tested accuracy, but it seems about right.
-
@nagelc said in New Setup for Home Environment Monitoring – Using NRF24L01+, Arduino Pro Mini, and BME280:
bme280
I read somewhere that the temperature sensor on the BME280 is sort of an afterthought. I did a few experiments comparing them to the DHT11/12/22 and found them only a little better. (Take this with a grain of salt, maybe you'll want to do you're own experiments.) I did do a lot of experiments with the DHT's and they really suck. +/-2°C Which turns out to mean +/-2°C offset (component variation) and +/-2°C measurement: +/-4°C from what the temperature actually is. My experience, yours may be better.
Please post your experience with OTA. I haven't tried it on Arduino's but it's awesome on ESP8266. I hesitate with Arduino's because I had some erratic behaviour running Arduino's when pushing the memory limit.
I, too, use the MQTT data transport to Home Assistant (HA) and I find that excellent. Getting data from HA is a bit tricky, but do-able. I have a flow meter and use HA to store the last read; meaning, if there is a power failure, HA sends the last read on Arduino boot. I don't use the EEPROM because that has a spec of 100,000 writes which the meter would do in about a year, thus, necessitating a new Arduino.
I truly appreciate you sharing. Thanks!
-OSD
Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better 💗
Register Login