EmonTH V1.5

From OpenEnergyMonitor Wiki
Jump to: navigation, search

emonTx TH V1.5



The emonTH is an open-source, battery powered, Temperature and Humidity monitoring wireless node.

It's been designed to be an easy to deploy tool for monitoring building / room temperature and humidity.

The data from the emonTH is transmitted via wireless (433/868Mhz) to an emonBase web-connected base-station (we recommend a Raspberry Pi with an RFM69Pi) which then posts the data onto an emoncms server (e.g. http://emoncms.org) for logging, processing and graphing. The room temperature and humidity data can be used to inform a heating control system, feed into a building performance model or simply for general interest!


  • Temperature and Humidity sensing options - Using DHT22 temperature and humidity sensor, or if humidity is not required just a DS18B20 temperature sensor. Both DHT22 and DS18B20 can be used together as shown above for internal and external readings.
  • Easy to set-up - the unit comes pre-assembled and pre-loaded with Arduino compatible firmware. If desired the code can easily be changed by using an USB to UART cable and the Arduino IDE to upload a sketch of your choice onto the on-board ATmega328 microprocessor.
  • Long Battery Life - The emonTH is powered by two AA batteries through a high efficiency DC-DC boost converter circuit, taking a reading once every 60s the emonTH batteries should last for 1-3 years. We recommend rechargeable alkaline batteries for best performance and environmental impact (see blog post).
  • Expansion Options - If desired the emonTH function can easily be expanded: remote DS18B20 temperature sensors can be screwed into the terminal block for outdoor temperature monitoring, multiple DS18B20 temperature sensors can be connected at once on a digital one-wire bus.
    • An optical sensor can be added for interfacing with a pulse-output utility meter or a relay board could be connected for controlling an appliance.
    • Update: the emonTH now supports multiple DS18B20's, see blog post
  • New V1.5: Node ID select DIP switch: Set up to four unique node ID's via on-board DIP switch


  • Microcontroller: ATmega328 @ 3.3V
  • Sensors: DHT22 (temperature & Humidity) / DS18B20 (temperature) sensor options
  • Power: 2 x AA from on-board holder, LTC3525 3.3V DC-DC boost converter to extend battery life
  • RF Radio: RFM69CW (RFM12B can also be used)
  • Battery life: 1-3 years expected, see blog post
  • On-board LTC3525-3.3 DC-DC boost converter see emonTH hardware blog post

Port Map

Arduino ATmega328 Port Special Function emonTH V1.5
Analog 0 (D14) PC0
Analog 1 (D15) PC1 2x AA Battery Voltage
Analog 2 (D16) PC2
Analog 3 (D17) PC3
Analog 4 (D18) PC4 (SDA) DHT22 Data
Analog 5 (D19) PC5 (SCL) DS18B20 One-wire Data
Analog 6 (D20)
Analog 7 (D21)
Digital 0 PD0 (RXD) FTDI Tx
Digital 1 PD1 (TXD) FTDI Rx
Digital 2 PD2 (int0) PWM RFM12B IRQ
Digital 3 PD3 (int1) PWM Terminal block
Digital 4 PD4
Digital 5 PD5 PWM DS18B20 PWR
Digital 6 PD6 PWM DHT22 PWR
Digital 7 PD7 DIP 1
Digital 8 PB0 DIP 2
Digital 9 PB1 PWM LED
Digital 10 PB2 (SS) PWM RFM12B SEL
Digital 11 PB3 (MOSI) PWM RFM12 SDI
Digital 12 PB4 (MISO) RFM12 SDO
Digital 13 PB5 (SCK) RFM12 SCK


See getting started with the emonTH: Getting started with the emonTH

DIP Switch node ID

New for emonTH V1.5: On-board DIP switch enables 4 RF node IDs to be selected by changing the switch positions. This will enable up to four emonTHs to be configured for use with a single emonBase / emonPi without the need to change the firmware (as before). Up to 30 emonTHs can theoretically connect to a single emonBase / emonPi. A USB to UART cable and Arduino IDE can be used to set additional unique node IDs by changing the nodeID variable at the beginning of the sketch. Alternatively, we are happy to set the node ID for you, before shipping. (Leave us a note with your order)

DIP 1 DIP 2 RF node ID V1.x firmware RF node ID V2.x firmware
OFF OFF 19 (default) 23 (default)
ON OFF 20 24
OFF ON 21 25
ON ON 22 26


DHT22 Temperature and Humidity Sensor

  • Power supply: 3.3-6V DC
  • Output signal: digital signal via single-bus
  • Sensing element: Polymer capacitor
  • Operating range: humidity 0-100%RH; temperature -40 to ~80Celsius
  • Accuracy: humidity +-2%RH(Max +-5%RH); temperature <+-0.5Celsius
  • Resolution: humidity 0.1%RH; temperature 0.1Celsius
  • Repeatability: humidity +-1%RH; temperature +-0.2Celsius
  • Humidity hysteresis: +-0.3%RH
  • Long-term Stability: +-0.5%RH/year
  • Sensing period Average: 2s
  • Independent sensor test report

DS18B20 Temperature Sensor

  • Power supply range: 3.0V to 5.5V
  • Accuracy over the range of -10°C to +85°C: ±0.5°C.
  • Storage temperature range:-55°C to +125°C (-67°F to +257°F)

RF Connectivity


RFM69CW RF module (default 433Mhz) is used to transmit data to emonBase (Raspberry Pi + RFM12Pi) or emonPi. The JeeLabs JeeLib Arduino library is used as the driver for the RFM69CW module. In JeeLabs packet format.

External DS18B20 Temperature Sensor Connections

Only one DS18B20 sensor can be connected to an emonTH, if a DHT22 sensor is detected it's assumed the DS18B20 is external. If more than one DS18B20 is required see emonTH alternative firmware.

Black - GND

Red - Dig 5 (digital I/O used as sensor power pin to enable sensor switch off in between readings to save power)

White - ADC5 (dig 18) one-wire bus


Pulse Sensor Connection

emonTH with V2.6+ pulse firmware supports Optical Pulse counting sensor

Emonth pulse.jpg

emonTH V1.5 pulse-counting screw terminal connections
Screw terminal pin Connection
2 3.3V - Red
3 GND - Black
4 IRQ 1 / Dig3 - Blue

Electrical Characteristics

Power Consumption

See blog posts:




By default, the emonTH is shipped without an SMT mini-B USB connector since the standard case does not allow use of the USB port to power the emonTH. However, a community-contributed 3D printable case design, which does allow use of the USB connector, is available at: http://www.thingiverse.com/thing:365035


Arduino compatible, a UART to USB cable is required to upload code

EmonTH Github repository

Open-Hardware Design Files

All the Design files for the emonTH are hosted on GitHub, see: https://github.com/openenergymonitor/Hardware/tree/master/emonTH/emonTH_V1_5


Proudly open source

The hardware designs (schematics and CAD files) are licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.

The firmware is released under the GNU GPL V3 license

The documentation is subject to GNU Free Documentation License

The hardware designs follow the terms of the OSHW (Open-source hardware) Statement of Principles 1.0.

Environmental & Life Cycle

We are passionate about sustainability and are aware of the embodied energy and use of resources involved in electronic manufacture. We try our best to reduce environmental impact wherever possible:

  • We have recently been inspired by a few projects taking a lead in promoting and making steps towards Ethical and Sustainable Electronics, see our blog post we wrote on the topic .
  • The PCB's are manufactured in the UK by a manufacturer who uses lead free techniques, complies to the highest environmental industry standard and is actively investing in techniques and equipment to reduce waste and minimize environmental impact (e.g water treatment and recycling). Hot-air leveling was chosen instead of immersion gold finish to reduce environmental impact.
  • Assembly is done in the UK. All components are RoHS compliant and free of conflict materials.
  • Surface freight is used in preference to air shipping when ordering parts in bulk. This consumes 33 times less energy.
  • We have strived to optimise electrical consumption in our hardware to be as low was possible and recommend the use of green, rechargable batteries, see blog post



The OpenEnergyMonitor system is sold as a development kit to empower members of the openenergymonitor community to to get involved with the OpenEnergyMonitor open-source energy monitoring development project.

Your safety is your own responsibility, including proper use of equipment and safety gear, and determining whether you have adequate skill and experience. OpenEnergyMonitor and Megni registered partnership disclaims all responsibility for any resulting damage, injury, or expense. It is your responsibility to make sure that your activities comply with applicable laws, including copyright. Always check the webpage associated with each unit before you get started. There may be important updates or corrections! All use of the instructions, kits, projects and suggestions given both by megni.co.uk, openenergymonitor.org and shop.openenergymonitor.org are to be used at your own risk. The technology (hardware , firmware and software) are constantly changing, documentation (including build guide and instructions) may not be complete or correct.

If you feel uncomfortable with assembling or using any part of the kit, simply return it to us for a full refund.