Close
0%
0%

Low Power Environmental Sensor Board

Battery powered sensor board with e-paper display

Similar projects worth following
231 views
0 followers
"This is my environmental sensor project, there are many like it, but this one is mine..."

Yep, so, these types of projects tend to be quite prolific, but when my commercial indoor temp/humidity monitor went the way of the dodo, I just figured I'd build my own.  Although I've built similar things in the past, I had never really thought about doing so as a stand-alone unit reminiscent of a commercial desktop one.

I attempted to choose components what were high quality and highly accurate.  I also added a barometric pressure sensor as my previous one didn't include this.  Finally, one of the main requirements was to be battery powered and to last a fairly decent amount of time between battery changes.

AA batteries were chosen for this project.  Sure, lithium or other rechargeable batteries probably would have been a bit better, but with young kids in my household, I prefer to not have these things around.  At least I'd have the opportunity to see just how much I can squeeze out of these alkaline cells.

The project was also a great learning experience in regard to using ePaper and the driving circuit behind it.  I've never used this type of display prior, and as I was aiming for lower power with infrequent updates (1 min update interval), it was a natural choice.

With the project just about finished, I'd generally call it a success.  The worse part about it is the "case"; I'm terrible at this.  I don't have a 3D printer, and I honestly don't see myself getting one anytime soon.  I can build PCB's, but when it comes to cases, my brain just doesn't work in a way that allows me to make something pleasant to look at. :)

I'll have to work on this part a bit more; with the hardware nailed down and the firmware completed, I'll have to see what I can do with the enclosure before I build another unit.

Overall, however, I'm quite pleased with the project.

  • 1 × STM32L431CBT6 IC MCU 32BIT 128KB FLASH 48LQFP
  • 1 × TPS613221A 6.5-μA Quiescent current, 1.8-A switch current boost converter
  • 1 × SGP41-D-R4 SENSOR AIR QUALITY I2C OUTPUT
  • 1 × SHT45-AD1B-R3 SENSOR HUMID/TEMP HIGH ACCURACY
  • 1 × BMP390 Pressure Sensor

View all 6 components

  • An Enclosure?

    CoffeeIsLife12/16/2024 at 21:33 0 comments

    Okay, so, to be blunt, I suck at building cases/enclosures/boxes/whatever... this will be a short final entry.

    Simple, but kind of ugly.  :D

    I cut a sheet of 4"x6" acrylic (poorly at that), drilled a couple of holes, threw in a few screws, nuts and standoffs and sandwiched it all together.  Attached at the back is a 2 cell AA battery holder with a bit of VHB double-sided tape.

    Functional, but it does leave a lot to be desired in the aesthetics department...

  • Hardware is in!

    CoffeeIsLife12/12/2024 at 21:30 0 comments

    Finally...  the PCB's arrived and they look awesome.

    Everything worked straight away, much to my surprise.  I've never used ePaper prior and although the driving circuit for it was rather straight-forward, I couldn't really verify it would work until the PCB's came and were built.  Thankfully, nothing blew up or otherwise.


    Power consumption at this point (still need to do a lot with the firmware), is about 57 micro-amps during sleep.  As I anticipate only waking things up every 10 minutes or so to take measurements and update the display, two AA batteries will keep this thing running for quite some time.

    I did mess up a few things, however.  The FPC connector is too close to the edge of the board and needs to move a millimeter or two deeper; when the ePaper is folded over the board, the contacts on the cable are bending, which probably isn't great.

    Also, the gas sensor, the SGP41, may need to be reconsidered...  which is unfortunate.  Sensirion has a nice library that you can send the returned values from the sensor to and it spits out a VOC and NOx index values.  Awesome... except that the datasheet then states, "SGP41 raw signals need to be provided to the Gas Index Algorithm at a sampling rate of 1 second."  Not great...

    Seems like they really want this sensor to be operating continuously; not intermittently.  I missed this point prior to picking the SGP41 when skimming (yep, guilty) the datasheet...  and it was a rather important point.  Ah well.  I still get what appears to be valid results, but as I'm not doing it by-the-book, I don't know how much accuracy I'm throwing out the window.

    After messing around with this and nailed down the firmware a bit more, it'll be on the revision 2.

  • Updated BOM, finalized schematic

    CoffeeIsLife12/03/2024 at 22:31 0 comments

    I've spent entirely too much time finishing up the schematic and layout; real life tends to intrude entirely too often and for too long.  Wouldn't give it up for the world tho - I've a wonderful and quite understanding family. ;)

    At any rate... updates:

    • I've swapped out the TPS610994YFFR (which was a tiny BGA part) for a more sane SOT-25 part, the TPS613221A.
    • Schematic completed.
    • Layout completed.
    • Manufacturing files have been sent off as of this afternoon.

    To do:

    • Check the BOM and see what I have and what I need.
    • Order what I need from Digikey.
    • Hope and pray that I've not screwed up the schematic and layout...

    Schematic:

    Layout:

    As the ePaper display will be mounted to the "back" of the PCB and I needed mounting holes, I had quite a lot of space to work with.  In regard to the ePaper display, I still need to figure out the best way to mount it; double-sided tape perhaps?

    I attempted to keep all of the high frequency switching stuff near the top of the board and away from SPI and I2C traces.  Not entirely certain this is the best layout, but hopefully it'll be good enough for a first revision.

    Additionally, for the SHT45, I introduced cutout areas around the sensor and removed all copper below the sensor.  Hopefully, this will prevent inaccuracies (as best as I can do, at least) in temperature due to any heat generated by the SGP41's built in heater.  Then again, as I anticipate only performing sensor readings every 15-30 minutes, this may be overkill as the board will generally be cool - or at near ambient temperature - when the uC wakes up and grabs sensor values.

  • Parts ordering, datasheet scowering and initial schematic

    CoffeeIsLife11/15/2024 at 15:34 0 comments

    - Ordered 5 ePaper displays from buy-lcd.com

    - Gathered KiCad symbols/footprints from Digikey and SnapEDA

    Datasheets

    https://www.bosch-sensortec.com/media/boschsensortec/downloads/datasheets/bst-bmp390-ds002.pdf

    https://sensirion.com/media/documents/5FE8673C/61E96F50/Sensirion_Gas_Sensors_Datasheet_SGP41.pdf

    https://sensirion.com/media/documents/33FD6951/662A593A/HT_DS_Datasheet_SHT4x.pdf



    - BMP390 - Pressure Sensor (I2C)



    - SGP41 - Gas Sensor


    - SHT45 - Temperature Sensor

  • Initial Reference Materials​

    CoffeeIsLife11/13/2024 at 23:53 0 comments

    This is a very early thought-dump for a dual-AA battery powered indoor sensor with E-Paper display.

    Specifications:

    - Preferably AA battery powered - Why no lithium?  Kids... and their propensity to play with things that they probably shouldn't.

    - Low power - Keep the uC in sleep for as long as possible.  Thinking about grabbing sensor values and updating the display every 10-15 minutes or so.

    - E-Paper Display - Good power efficiency when compared to LCD's and OLED's.  Just not sure what the best way is to attach the panel to the PCB?  Double sided tape?  Nails through the display?

    Components:

    - STM32L431CBT6

    - TPS610994YFFR (Low Iq 3.3v Boost)

    - SGP41-D-R4 (Gas)

    - SHT45-AD1B-R3 (Temp/Humidity)

    - BME280 (Pressure)

    - Good Display E-Paper Panel GDEY0213B74

    Briefly checking around for STM32, CubeMX code examples, found some Arduino code fromSensirion AG for their sensors.  Should be easy enough to port over with the official datasheets:

    Sites - Code Examples

    Good Display / Buy-LCD E-Paper Display GDEY0213B74 -- from their datasheet, a reference circuit for driving the display.  Seems simple enough:



    Another example schematic that may prove useful:
    https://www.crystalfontz.com/products/document/3991/CFA-10084AdapterBoardDatasheet.pdf


    Panel dimensions are approximately 60 mm x 30 mm (2.4" x 1.2"), so a PCB a bit larger to accommodate mounting holes on each corner should fit all of the electronics without any issue... and slapping the E-Paper panel on the back of the PCB seems like it would work nicely.


    Headers
    - SWD Header (5 pin - 3.3v, SWCLK, SWDIO, NRST, GND)
    - UART Header(3 pin - TX, RX, GND)

View all 5 project logs

Enjoy this project?

Share

Discussions

Similar Projects

Does this project spark your interest?

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