WiFi solar-powered weather station

Industruino PROTO as wireless data logger

Tom

In early 2015 I used a first generation Industruino to build a wireless data logger for my home monitoring system. I recently upgraded it to the current PROTO platform with the standard Arduino Leonardo 32u4 topboard. The system consists of:

  • Industruino PROTO 32u4
  • ESP8266 WiFi module over Hardware Serial and external antenna
  • AM2315 temp/hum sensor over I2C (grey sensor on the left)
  • DHT22 temp/hum sensor built in
  • DHT22 temp/hum sensor external (not in picture, outdoor)
  • Anemometer wind speed sensor with pulse signal (not in picture, outdoor)
  • LiPo Rider Pro solar charger board
  • LiPo cell of 2500mAh

The advantage of the PROTO is that the green screw connectors can be reconfigured to match the requirements of any external sensors. The connections to the standard I/O as on the casing labels can simply be cut by removing the 0 ohm resistors, and wiring any other signal/power pin to the screw connector. 

The sketch on the left shows the result:

  • 4 pins for the AM2315 I2C sensor
  • 3 pins for the external DHT22
  • 3 pins for the external anemometer
This makes it a lot easier to keep the wiring organised.

The data is posted to a cloud server at emoncms.org and an example dashboard is shown on the left. The outdoor DHT22 is obviously faulty, with the humidity jumping between 5% and 100%, but its temperature seems still correct. Interesting to observe that the internal DHT22 and AM2315 do not give exactly the same results.

The below graph shows the LiPo battery voltage and the solar voltage, taken from the charger board.

The sketch is quite simple, with standard libraries for the DHT22 and AM2315 sensors. The only challenge is the use of an interrupt to count the pulses from the wind speed sensor, on D7.

Below pictures show the components soldered on the PROTO baseboard:

  • DHT22
  • ESP8266 module with uFL connector for antenna
  • 3.3V voltage regulator for ESP8266 (needs to be LDO because the system runs straight of the LiPo battery voltage, nominal 3.7V)
  • 2 voltage dividers to half the battery and solar voltages for analog readings