Embedded Computing
  • About
  • Blog
  • Hardware
    • Which Platform?
    • Controller Platforms >
      • Adafruit Platform
      • Arduino Plaform
      • BBC micro:bit
      • Espressif Platform
      • iLabs Platform
      • Raspberry Pi Platform (MCU)
      • Seeed Platform
      • Silicon Labs Platform
      • Teensy Plaform
    • Computer Platforms >
      • BeagleBone Platform
      • Raspberry Pi Platform (SBC)
      • UDOO Platform
    • Peripherals >
      • Shields
      • Grove System
      • Sensors
      • Actuators
    • Displays >
      • E-Paper Displays
      • Reflective Displays
      • TFT Displays
      • LCD Displays
    • Legacy Platforms >
      • chipKIT Plaform
      • 4D Systems Platform
      • Intel Platform
      • LaunchPad Plaform
      • BoosterPacks for LaunchPads
      • LightBlue Bean
      • Maple Plaform
      • Mediatek Platform
      • Microsoft Azure IoT DevKit
      • Particle Platform
  • Software
    • Exploring RTOS with Galaxia >
      • Event Library
      • Semaphore Library
      • Mailbox Library
      • Timer Library
      • Clock Library
      • SWI Library
      • Task Library
    • Ultra-Low Power with EnergyTrace >
      • Ultra-Low Power with MSP430
      • Ultra-Low Power with Energia MT and Galaxia
    • Using Integers Instead of Reals
    • Going Python?
  • IoT
    • IoT Platforms: Which Hardware? >
      • Matter with Silicon Labs MG24
    • IoT Services: Which Solution? >
      • Recommended IoT Solutions
      • Platform-Specific IoT Solutions
      • Other IoT Solutions
      • Not tested IoT Solutions
      • Notification Solutions
    • Get Date and Time from Internet with NTP
    • Fast and Easy WiFi Connection with QR-Code
  • Tools
    • How to Start?
    • Reference >
      • Asking for Help
      • Boards Pins Maps
      • Ruler
      • Boards and Plugs
      • I²C Logic Level Converter
      • Standards for Connectors
    • Training >
      • Texas Instruments Workshops
      • Embedded Systems: Shape The World — MOOC edX UTAustinX UT.6.02x
      • Embedded Systems - Shape The World: Microcontroller Input/Output — MOOC edX UTAustinX UT.6.10x
      • Embedded Systems - Shape The World: Multi-Threaded Interfacing — MOOC edX UTAustinX UT.6.20x
      • Real-Time Bluetooth Networks: Shape the World — MOOC edX UTAustinX UT.RTBN.12.01x
      • Systems Thinking with Texas Instruments Robotics System Learning Kit
    • Books >
      • Getting Started with the MSP430 LaunchPad
      • Getting Started with Arduino
      • Arduino Cookbook
    • IDE >
      • The Battle of IDEs
      • More Options
      • Assessing the Next Generation of IDEs
      • Tools for Documentation
    • Equipment >
      • Saleae Logic Analyser
      • Rigol DS1102E Oscilloscope
      • XDS110 Debug Probe with EnergyTrace​
      • Segger J-Link Programmer-Debugger
      • Nordic Power Profiler Kit II
  • Projects
    • Libraries >
      • Master I²C Software Library
      • Date and Time Library
      • highView Library Suite
      • Others Libraries
    • smartDevices >
      • I²C smartColours Smart Sensor
      • I²C smartRFID Smart Sensor
      • I²C smartLED Display
      • I²C smartControls Smart Device
      • I²C smartWiFi Smart Device
      • I²C smartBLE Smart Device
      • I²C smartNode Smart Device
    • IoT Projects >
      • Remote E-Paper Weather and Message Board
      • Typie-Walkie with LoRa and E-Paper Screen
      • Typie-Walkie with E-Paper Screen
      • Remote e-Paper Pictures Panel
      • Remote e-Paper Messages Panel
      • Industrial IoT Project
      • Remote Contactless Temperature Monitor
      • Using Node-RED for IIoT
      • Low Power Home Network Weather Monitoring
      • Updated Low Power Home Network Weather Monitoring
      • Weather and Security Station with Blynk
      • SensorTag to Blynk Using Node-RED
      • Pervasive Reporting
    • AI Projects >
      • Colour Recognition with Neural Network
    • Other Projects >
      • Air Quality Monitoring
      • Driving a Large E-Paper Display with a Compact Xiao RP2040
      • Low-Power E-Paper Weather Station
      • Portable Particulate​ Matter Monitor
      • FRAM-based E-Paper Screen Controller
      • General Purpose 3.5" Screen
      • Colour Recognition with Neural Network
      • A Low Power Weather Station
      • Digital Volt-Amp-Watt Meter
      • Mobile Measurement with LCD Display
      • Screen with SRAM for GUI
      • Volt-Amp-Watt-Meter for Grove
      • Multi-Touch Project with CapTIvate

Low-Power E-Paper Weather Station

How to build a low-power weather station with off-the-shelf components? E-paper panels only require power to change the display and keep the display unchanged even powered-off.
  • On the hardware side, the project combines the Pervasive Displays E-Paper Display Pico Kit (or EPDK) and a Bosch BME680-based CJMCU680 breakout board.
  • On the software side, the project relies on the Arduino SDK with dedicated libraries for the screen and the sensor.

​The EPDK kit was sampled by Pervasive Displays.
Picture

Hardware

The project is built around the ​Pervasive Displays E-Paper Display Pico Kit (or EPDK). It includes:
  • A Raspberry Pi Pico RP2040
  • A Pervasive Displays e-Paper EPD Extension Kit Gen 3 (or EXT3)
  • A Pervasive Displays 2.66" monochrome e-paper display.

​The low-cost CJMCU680 breakout board features the Bosch BME680 sensor. Compared the other members of the environmental sensors family like the BME280 (temperature and relative humidity) or the BMP280 (temperature, relative humidity and barometric pressure), the Bosch BME680 sensor features temperature, relative humidity, barometric pressure and gas, actually volatile organic compounds (or VOC) .

The measure of VOC is performed by a metal-oxide (or MOX) sensor and works like this: the higher the concentration of VOC, the lower the internal resistor; and the lower the concentration of VOC, the higher the internal resistor

I used a breadboard for easier configuration, and a second ​Raspberry Pi Pico RP2040 as programmer-debugger.
Picture

Software

The project uses the Arduino SDK and dedicated libraries.

The Pervasive Displays Library Suite (or PDLS) provides all the graphic, text, configuration and update functions.

There are different libraries for the BME680. I tested the Zanduino BME680 and the Adafruit BME680 libraries. Unfortunately, the measure of gas seems to impact the measure of temperature, as the MOX sensor is heated to measure the level of VOC. As a solution, temperature offset could be calibrated.

Bosch also provides the Bosch Sensortec Environmental Cluster (or BSEC) library, albeit with pre-compiled archives. The version for the Cortex-M0+ works fine against the Arduino Zero but not against the Raspberry Pi Pico RP2040.
Picture

Conclusion

Off-the-shelf solutions make this project fast and easy to develop. 

​The Pervasive Displays E-Paper Display Pico Kit includes all the resources for the controller and the screen. The project reads the measures and updates the screen every 10 minutes, a good compromise between power consumption and up-to-date information.

The management of the screen is performed by the PDLS EXT3 Basic library for initialisation, font selection, text formatting, rectangle drawing, and panel update.

More advanced algorithms are required to take the most of the BME680 sensor, especially combining VOC level, temperature and humidity to calculate a more reliable air index.

A good alternative is the Bosch BMP280 without the VOC measure but with calibrated temperature, relative humidity and pressure.
Picture

Links

  • Raspberry Pi Pico RP2040 product page
  • Pervasive Displays EPDK product page
  • PDLS_EXT3_Standard library
  • Bosch BME680 sensor
Picture
Picture
Posted: 06 Dec 2021
Edited:

Powered by Create your own unique website with customizable templates.