Summary of Make your own remote temperature/humidity sensor
This article details a DIY wireless temperature and humidity sensor that replicates the Oregon Protocol V2.1 for under $9. By utilizing an Atmega328p running at 1 MHz with direct port manipulation, the project achieves ultra-low power consumption of 5 micro Amps, allowing it to run on two AA batteries for over six months. The system combines a SI7020 sensor, a 433 MHz transmitter, and a custom voltage regulator to create a cost-effective alternative to commercial sensors.
Parts used in Wireless Temperature/Humidity Sensor:
You can buy a remote Oregon sensor THGN123N for about $20 or you can build your own temperature/humidity wireless sensor that implements Oregon protocol V2.1 for about $9 and have fun!
First of all, we need accurate temperature/humidity sensor to check the weather outside. In my previous project the sensor si7021 has shown perfect results, so I recommend this sensor one more time: it has great accuracy, small form-factor and low power consumption.
Second, we need mobile platform with low power requirements that can run on the batteries for a long time. Again, in the previous project such a platform has been successfully built. We can use atmega328p-pu chip, running at 1 MHz. The power consumption of this system is about 5 micro Amps!
Third, we need the software library for sending the signals using appropriate protocol. This library is based on the software created by Domonique Pierre, the author of software, emulated Oregon V2.1 protocol.
The power-efficient Arduino
There are several articles in the Internet about running Arduino controller on the batteries. For example, this article describes how to run the Arduino pro mini on batteries for long time. You need to cut-off the green power led that consumes about 10 mA. Unfortunately, you can destroy your Arduino board while trying to cut the desired wire, like I did. I believe it is better to build own Arduino from the scratch without any lLED at all. In this case, you can also decrease the power consumption by slowing down the controller CPU. Please, read the very detailed tutorial about creating own Arduino board running at 1 MHz and consuming as low as 5 micro Amps.
The software library
At the beginning, I tried to use pure library written by Domonique Pierre. Unfortunately, the controller speed is not sufficient to send the data in the time limits required by the protocol. To make the library faster, direct port manipulation was implemented in the new version of the library. In the Atmega 328 controller there are two output ports, B and D. In the library you can see two different classes for each port, directPortB and directPortD. The constructor for OregonSensor class automatically selects appropriate port based on the transmission pin number. There are direct port manipulation functions to send “one” and “zero” signal according by the Oregon protocol that allows to speed-up the signal transmission.
Conclusion
There are two interesting components in the project:
power-efficient Arduino controller that can run over a half-year on two AA batteries.
the software library that supports Oregon V2.1 protocol with advanced direct port manipulation functions.
I hope, you enjoy investigating both components or you can use the library. As to a budget of the project, you can evaluate the price of all components:
Quick Solutions to Questions related to Wireless Temperature/Humidity Sensor:
How can you reduce power consumption in this Arduino project? You can decrease power consumption by slowing down the controller CPU to 1 MHz and building your own board without a green power LED.
What is the estimated power usage of the system?
The power consumption of this system is about 5 micro Amps when running at 1 MHz.
Why was the original software library modified?
The controller speed was not sufficient to send data within the time limits required by the protocol, so direct port manipulation was implemented.
Which output ports are used for signal transmission in the library?
The library uses output ports B and D from the Atmega 328 controller to send signals according to the Oregon protocol.
How long can the device run on two AA batteries?
The power-efficient Arduino controller can run for over half a year on two AA batteries.
What is the total estimated budget for all components?
The total cost for all components including chips, sensors, and battery holders is approximately $8.22.
Does the library support the Oregon V2.1 protocol?
Yes, the software library supports the Oregon V2.1 protocol using advanced direct port manipulation functions.
What specific sensor is recommended for accurate weather checking?
The SI7020 sensor is recommended because it has great accuracy, small form-factor, and low power consumption.
I am an experienced technical writer holding a Master's degree in computer science from BZU Multan, Pakistan University. With a background spanning various industries, particularly in home automation and engineering, I have honed my skills in crafting clear and concise content. Proficient in leveraging infographics and diagrams, I strive to simplify complex concepts for readers. My strength lies in thorough research and presenting information in a structured and logical format.
This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish.ACCEPTPrivacy Policy
Manage consent
Privacy Overview
This website uses cookies to improve your experience while you navigate through the website. Out of these, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may affect your browsing experience.
Necessary cookies are absolutely essential for the website to function properly. This category only includes cookies that ensures basic functionalities and security features of the website. These cookies do not store any personal information.
Any cookies that may not be particularly necessary for the website to function and is used specifically to collect user personal data via analytics, ads, other embedded contents are termed as non-necessary cookies. It is mandatory to procure user consent prior to running these cookies on your website.