ATtiny Wireless Weather Station Remote Outdoor Unit

The Experiment: ATtiny Based Wireless Weather Station. Build a 433Mhz wireless weather station remote outdoor unit around an Atmel ATtiny85 micro-controller, with the following sensors, Anemometer, Wind vane, Temperature, Rain gauge plus Solar battery charger.

The challenge, the ATtiny85 only has 8-pins, 8KB ISP flash memory and pin1-4-8 are dedicated to Reset-GND-VCC. So the first thing to do, assign the available pins for each sensor.

ATtiny85-sensor-pinout

433Mhz Wireless Transmitter Module:

433-mhz-rf-wireless-transmitter-module

Schematic:

Outdoor Unit1 With LM35 Temperature Sensor
ATtiny85-Wireless-Weather-Station-Schematic-LM35-Revised-5
U1 Pin2 = A3 Analog Input

Outdoor Unit2 With DHT11 Humidity / Temperature Sensor
ATtiny85-Wireless-Weather-Station-Schematic-DHT11-Revised-5
U1 Pin2 = D3 Input/Output

Prototype:

ATtiny85-wireless-weather-station-board-rev5

Notes:

ATtiny85 Power Consumption
——————————- 1Mhz BOD disabled
5.5v 2.67mA
3.3v 1.05mA
——————————- 8Mhz BOD disabled
5.5v 8.94mA
3.3v 4.20mA
——————————- 8Mhz BOD disabled – Programed
5.5v 9.00mA
3.3v 4.44mA
——————————- 16Mhz internal BOD enabled
5.5v 17mA
3.3v 8.1mA
LM1117 Quiescent Current
5.5v 5.78mA

Mar 13, 2014: A lot of updates today Software and Hardware. Hardware reworked the Wind vane circuit installed a Vane CAL potentiometer to calibrate the wind vane.

Steps to calibrate the Wind vane:

  1. Find the Wind vane potentiometer dead spot that’s (N) North 0 degrees
  2. Rotate the Wind vane 180 degrees (S) South adjust the Vane CAL potentiometer for 180 degree (S)
  3. Rotate the Wind vane to (E) East should read 90 degrees and then (W) West should read 270 degrees.

That’s it for the Wind vane calibration.

Notes: The above Vane CAL update tested with 3.3v Vcc with 1.1v (INTERNAL1V1) Ref, not been tested with 2.56v (INTERNAL2V56) Ref.  The 15k resistor / 10k potentiometer not needed with 3.3v Vcc and Vcc (Default) Ref .

Required Libraries:

  1. #include <TinyDebugSerial> (only for debugging “TX out pin changed to D2”)
  2. #include <PinChangeInterrupt.h>
  3. #include <VirtualWire.h>
  4. #include <TinyDHT.h> (Only For Outdoor Unit2)

Required Function:

  1. readVcc()

Part List:

  1. One(1) ATtiny85
  2. One(1) 433Mhz Transmitter Module
  3. One(1) LM1117 3.3v LDO Voltage Regulator
  4. One(1) LM35 Temperature Sensor (Outdoor Unit1)
  5. One(1) DHT11 Humidity / Temperature Sensor (Outdoor Unit2)
  6. One(1) .o1 uf Capacitor
  7. One(1) 100 uf 16v Electrolytic Capacitor
  8. One(1) 1K Resistor
  9. One(1) 10K Resistor
  10. One(1) 10K Miniature Trimmer Potentiometer
  11. One(1) 10K 360 Degree NO Stop Precession Potentiometer (for Wind vane)
  12. One(1) 15K Resistor
  13. One(1) 8pin IC Socket
  14. One(1) General Purpose PC Board
  15. One(1) 6v 1.5w Solar Panel
  16. Two(2) Miniature Reed Switch (for Anemometer / Rain gauge)
  17. Three(3) 1N8517 Schlocky Diode
  18. Four(4) AA 1800Mah NiMh Batteries
  19. Six(6) PC Board Terminals
Advertisements