Wireless Temperature & Humidity Card

A credit card size Wireless Temperature & Humidity Node power by CR2032 Coin Cell

Similar projects worth following
Using 7-seg LCD display that is capable of showing temperature & humidity,
and HDC1080 for temperature and humidity, BMP180 for pressure, OPT3002 for luminosity.

Transmit by nRF24l01 module, which sends out temp,humid,pressure,luminosity and battery voltage per minute. Linkit7688 Duo is used as gateway that upload the data to xively.

Main mcu is using MSP430FR4133 which have a low power LCD controller, by entering low power state, I can reach 15uA. With transmit per minute and update temperature and humidity per three second, I can reach 200+ days battery life using CR2032 coin cell battery.

And since MSP-EXP430FR4133 also have EnergyTrace technology, I don't need to measure power consumption by oscilloscope, EnergyTrace will measure voltage and current and calculate battery life, also show the power consumption curve in CCS, which really makes debugging/optimize power much easier.

Originally I've designed a wireless node for monitoring temperatre,humidity and pressure,

power and sized as CR2032, and a gateway using nRF24L01, then upload to Xively per minute.

But after a while, I figure out that most of the time, I'm too lazy to check out current T&H by clicking Xively website, I want to know the data straight from the device.

So I've try to build a sensor node with a display that shows the current T&H.

Most project I've seen is using tiny OLED display, which is definitely wayyyy too much power,

other might use EPD, but the cost of EPD module often quite high, also the refresh rate isn't that fast for update per one second device.

But most product that has slimier function uses traditional LCD display, which is reflective like EPD so it don't consume much power, but also cheap. 

I can see why most people didn't build one using this, because it is highly customize and high volume display, factory won't sell one unit for customize display. But there is some catch, since it is high volume product, factory will have some spare part on sell, after searching couple factory, I found a display that fit my need.

And the next step is trying to use this raw LCD display, eevblog recently produce a wonderful video about it :EEVBLOG

basically I've two choice, integrated LCD controller MCU or external LCD controller, If I gonna use GPIO to modulate LCD signal, I have no confidence that I can control the power consumption. Most LCD controller I've seen consumption quite a lot power, between couple mA to hundreds of uA, which is unacceptable, since the previous no-display node average current is 17uA only, couple hundreds uA will shorten the battery life a lot.

And I turn to integrated LCD controller MCU, there is a lot MCU that have LCD controller build-in, but Ti stands out in my view. Ti MSP430FR4133 have a excellence development board, which have a power meter on board! also the power consumption really stands out.

So I've build around MSP430FR4133, adding SHT21 as T&H sensor, BMP180 as pressure sensor, also since it will be place on somewhere I can see it, I also put a light sensor OPT3001.

And since the display is kinda thin, I decided to build a card size and make it as thin as possible. I've cut a hole on PCB to place CR2032, and using two CR2032 holder to clamp the battery.

Since MSP430FR4133 have energia support, I can easily move the original code from Arduino to MSP430, the only thing I have to do is setup LCD controller.

  • Optimize Reading Sensors

    Will Whang01/06/2018 at 14:40 0 comments

    Since every ADC needs time to sampling analog voltage, most digital sensor need some time after being request for the data somehow, normally a example for Arduino will be something like this:

    float temperature = readTemperature();
    float humidity = readHumidity();
    long pressure....

    And normally the power consumption plot will like:

    The peaks is RF transmitting and Sensor sampling data, notice that the high power consumption between these peaks, mostly these are consumption by Arduino, the problem is that most library interface to sensors using delay to wait for the data, by changing it to :

    float temperature = readTemperature();
    float humidity = readHumidity();
    long pressure....

    the power consumption can minimize a lot, power consumption will like this:

    Or in real case:

  • Original sensor node

    Will Whang01/06/2018 at 14:00 0 comments

    So recently I finally have sometime to write down some previous log.

    This is my previous version sensor node, power by Arduino Uno with HDC1000 + BMP085 and Nrf24L01

    to minimize the power, CR2032 is connected directly to system power, so I have to clock Uno down to 8Mhz, also you can see that I've added a jumper to disconnect Led after finish develop software.

    By using sleep mode and optimize reading, I can reach 27uA at idle, and average 44.6uA.

View all 2 project logs

Enjoy this project?



Danny Andreev wrote 12/06/2017 at 20:02 point

Sexy as hell! 

  Are you sure? yes | no

Zeqing wrote 12/04/2017 at 07:21 point

there is an alike module on my hand, with SHT21 and MSP chip, got it on 2013, and in 4 years only changed the CR2032 one time.... the only diffierence is my module without wireless communication.

  Are you sure? yes | no

Will Whang wrote 12/05/2017 at 15:01 point

Maybe I'll try to measure the battery life after remove RF module. That kind of battery life is what I hope to reach.

  Are you sure? yes | no

Rui Barroso wrote 12/03/2017 at 19:52 point

Where did you find this display ?

  Are you sure? yes | no

Will Whang wrote 12/05/2017 at 14:58 point

Buy from a factory on Taobao, I guess it is a spare part from some big order.

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates