-
11Step 11
We use RasPiConnect to build our control panels for our projects. It allows us to put graphs, controls, buttons, sliders, etc. up on our iPad/iPhone screens without having to write apps. RasPiConnect works on Raspberry Pi's and on Arduinos. We have used this software on 5 different projects, with WeatherPi being the latest.
How to build a control panel for WeatherPi is beyond the scope of this project description, but here is the tutorial we wrote for doing what we are doing for WeatherPi. We are using the same command passing mechanism in WeatherPi that we used in MouseAir. RasPiConnect comes with an excellent, comprehensive manual here.
All the RasPiConnect code that we used in WeatherPi is on github under github.com/switchdoclabs. Note that only the directory local is uploaded as that is the only places changes to the code are made as explained in the RasPiConnect manual.
-
12Step 12
Full Wiring List
Following is the complete wiring list for WeatherPi. As you wire it, check off each wire for accuracy.
Key:
Raspberry Pi A+: PiA+
I2C Bus Mux: I2CM
Dual WatchDog Timer Board: WDT
WeatherPiArduino: WPA
USB Power Control: USBPC
SunAirPlus: SAP
Raspberry Pi A+ (PiA+) GPIO Header From To Description PiA+ GPIO/Pin 1: 3.3V I2CM JP1/Pin 4:VCC Power for I2C Mux Board - Computer Interface PiA+ GPIO/Pin 2: 5.0V WDT JP1/Pin 1:VDD Power for Dual WatchDog Timer Board PiA+ GPIO/Pin 3: SDA I2CM JP1/Pin1:SDA SDA for I2C Mux Board - Computer Interface PiA+ GPIO/Pin 5: SCL I2CM JP1/Pin2:SCL SCL for I2C Mux Board - Computer Interface PiA+ GPIO/Pin 6: GND I2CM JP1/Pin3:GND GND for I2C Mux Board - Computer Interface PiA+ GPIO/Pin 11 GPIO 17 WDT JP2/Pin1:DOG1_TRIGGER Trigger Input for WatchDog 1 Timer (Pat the Dog) PiA+ GPIO/Pin 12: GPIO 18 WPA JP13/Pin1: LD-IRQ Interrupt Request from the AS3935 on Lightning Detector Board PiA+ GPIO/Pin 16: GPIO 23 WPA JP2/Pin3:Anemometer Anemometer Output from WeatherRack - Interrupt PiA+ GPIO/Pin 17: 3.3V VCC Screw Connector To provide more 3.3V Connections PiA+ GPIO/Pin 18: GPIO 24 WPA JP2/Pin 2:Rain Bucket Rain Bucket Output from WeatherRack - Interrupt PiA+ GPIO/Pin 22: GPIO 25 SAP JP13/Pin8: EXTGP0 GP0 on SunAir Board - Yellow LED display I2C Mux Board (I2CM) JP1 - Computer I2CM JP1/Pin 1:SDA PiA+ GPIO/Pin 3:SDA SDA to I2C Mux Board - Computer Interface I2CM JP1/Pin 2: SCL PiA+ GPIO/Pin 5:SDA SCL to I2C Mux Board - Computer Interface I2CM JP1/Pin 3: GND PiA+ GPIO/Pin 6:GND GND for I2C Mux Board - Computer Interface I2CM JP1/Pin 4: VCC PiA+ GPIO/Pin 1: 3.3V Power for I2C Mux Board - Computer Interface I2CM JP1/Pin 5: RESET' VCC Screw Connector 3.3V From Pi/Screw Connector JP2 - I2C Bus 0 WeatherPiArduino I2C Bus I2CM JP2/Pin 2: VD0 WPA JP1/Pin 2: VDD 3.3V from WPA Board I2CM JP2/Pin 3: GND WPA JP1/Pin 1: GND GND for WPA Board I2CM JP2/Pin 4: SC0 WPA JP4/Pin 1: SCL SCL for WPA Board I2CM JP2/Pin 5: SD0 WPA JP4/Pin 2: SDA SDA for WPA Board JP3 - I2C Bus 1 SunAirPlus I2C Bus I2CM JP3/Pin 2: VD1 SPA JP23/Pin 3: VDD 5.0V for Bus 1 for I2C Mux I2CM JP3/Pin 3: GND SAP JP13/Pin 4: GND GND for SAP Board I2CM JP3/Pin 4: SC1 SAP JP13/Pin 1: EXTSCL SCL for SAP Board I2CM JP3/Pin 5: SD1 SAP JP13/Pin 2: EXTSDA SDA for SAP Board JP4 - I2C Bus 3 Auxiliary GND for WDT Board GND for WDT Board I2CM JP4/Pin 3: GND WDT JP1/Pin 1:GND GND for WDT Board I2C Mux Board (I2CM) JP1 - Computer I2CM JP1/Pin 1:SDA PiA+ GPIO/Pin 3:SDA SDA to I2C Mux Board - Computer Interface I2CM JP1/Pin 2: SCL PiA+ GPIO/Pin 5:SDA SCL to I2C Mux Board - Computer Interface I2CM JP1/Pin 3: GND PiA+ GPIO/Pin 6:GND GND for I2C Mux Board - Computer Interface I2CM JP1/Pin 4: VCC PiA+ GPIO/Pin 1: 3.3V Power for I2C Mux Board - Computer Interface I2CM JP1/Pin 5: RESET' VCC Screw Connector 3.3V From Pi/Screw Connector JP2 - I2C Bus 0 WeatherPiArduino I2C Bus I2CM JP2/Pin 2: VD0 WPA JP1/Pin 2: VDD 3.3V from WPA Board I2CM JP2/Pin 3: GND WPA JP1/Pin 1: GND GND for WPA Board I2CM JP2/Pin 4: SC0 WPA JP4/Pin 1: SCL SCL for WPA Board I2CM JP2/Pin 5: SD0 WPA JP4/Pin 2: SDA SDA for WPA Board JP3 - I2C Bus 1 SunAirPlus I2C Bus I2CM JP3/Pin 2: VD1 SPA JP23/Pin 3: VDD 5.0V for Bus 1 for I2C Mux I2CM JP3/Pin 3: GND SAP JP13/Pin 4: GND GND for SAP Board I2CM JP3/Pin 4: SC1 SAP JP13/Pin 1: EXTSCL SCL for SAP Board I2CM JP3/Pin 5: SD1 SAP JP13/Pin 2: EXTSDA SDA for SAP Board JP4 - I2C Bus 3 Auxiliary GND for WDT Board GND for WDT Board I2CM JP4/Pin 3: GND WDT JP1/Pin 1:GND GND for WDT Board
Dual WatchDog Timer Board (WDT)JP1 WDT JP1/Pin 1: VDD PiA+ GPIO/Pin 2:VDD (5.0V) WDT JP1/Pin 2: GND I2CM JP4/Pin 3:GND GND for WDT Board JP2 WDT JP2/Pin 1: DOG1_TRIGGER PiA+ GPIO/Pin 11:GPIO 17 WDT Trigger from Raspberry Pi JP3 WDT JP3/Pin 1: DOG1_ARDUINORESET USBPC: TP7 - COUT Solder Wire to TP7 - COUT on USB PowerControl WeatherPiArduino (WPA) JP1 WPA JP1/Pin 1: GND I2CMux JP2/Pin 3: GND GND for WPA Board from I2CMux WPA JP1/Pin 2: 3V3 I2CMux JP2/Pin 2: VD0 3.3V for I2C Bus 0 from WPA JP2 WPA JP2/Pin 2: Rain Bucket PiA+ GPIO/Pin 18: GPIO 24 Rain Bucket Output from WeatherRack - Interrupt WPA JP2/Pin 3: Anemometer PiA+ GPIO/Pin 16: GPIO 23 Anemometer Output from WeatherRack - Interrupt JP4 WPA JP4/Pin 1: SCL WPA JP4/Pin 1: SCL SCL from I2C Mux Board WPA JP4/Pin 2: SDA WPA JP4/Pin 2: SDA SDA from I2C Mux Board WPA JP4/Pin 3: 3V3 VCC Screw Connector 3.3V From Pi/Screw Connector JP13 WPA JP13/Pin 1: LD-IRQ PiA+ GPIO/Pin 12: GPIO 18 Interrupt Request from the AS3935 on Lightning Detector Board USB Power Control (USBPC) USBIN: USB Connector from SAP USB A OUT on SAP USBOUT: USB Connector to PiA+ USB Power Input on PiA+ JP1 USBOUT JP1/Pin 1: LIPOBATIN SAP JP4/Pin1: LiPo Battery Out SAP Plus of LiPo Battery Out to USB PowerControl TP7 - COUT: WDT JP3/Pin 1: DOG1_ARDUINORESET Shuts USB Power Control down if Raspberry Pi has been shutdown and LIPOBATIN < ~3.9V SunAirPlus (SAP) USB A Out: USBIN on USBPC J5 Battery: To LiPo Battery Pack J6 Solar: To Solar Panels JP4 SAP JP4/Pin 1: USBPC: JP1/Pin1 LIPOBATIN SAP Plus of LiPo Battery Out to USB PowerControl JP10 SAP JP10/Pin 1: SCL SCL (5.0V) Connected to Outdoor Temp/Hum AM2315 Sensor - works better on 5.0V I2C Bus SAP JP10/Pin 2: SDA SDA (5.0V) Connected to Outdoor Temp/Hum AM2315 Sensor - works better on 5.0V I2C Bus SAP JP10/Pin 3: VDD5 VDD5 Connected to Outdoor Temp/Hum AM2315 Sensor - works better on 5.0V I2C Bus SAP JP10/Pin 4: GND GND Connected to Outdoor Temp/Hum AM2315 Sensor - works better on 5.0V I2C Bus JP13 SAP JP13/Pin 1: EXTSCL I2CMux JP3/Pin 4: SC1 SAP JP13/Pin 2: EXTSDA I2CMux JP3/Pin 5: SD1 SAP JP13/Pin 3: VDD SPA JP23/Pin2: VDD5 5V I2C Interface from SAP SAP JP13/Pin 4: GND I2CMux JP3/Pin 3: GND GND form I2CMux Board SAP JP13/Pin 8: EXTGP0 PiA+ GPIO/Pin 22: GPIO 25 Line from Raspberry Pi to flash SAP Yellow LED on GP0 JP23 SAP JP23/Pin 2: VDD5 SAP JP13/Pin 3: VDD 5.0V for SAP I2C Bus to I2CMux SAP JP23/Pin 3: VDD5 I2CM JP3/Pin 2: VD1 5.0V for I2CMux I2C Bus1 -
13Step 13
Results!
The WeatherPi has been outside for about 2 weeks now. Working perfectly. You can see the box being charged up and then going to battery power as the sun moves behind the house. We have had hot days and cold nights as we are just starting to move out of Spring into Summer. It is not quite generating enough electricity to run 24 hours at the moment (because it is in the shade until 9am and after about 3pm - not quite 8 hours of sun). This will be fixed when we move it up to the top of the house where it will have sun about 12 hours a day on average (when the sun is not behind clouds!).
What is Left To Do (as of June 4, 2015)?
We have the following issues to address:
We are working three small issues.
1) The plug for the WeatherRack Weather Sensors need to be better secured to the outside of the box. Right now it is just attached and sealed by silicon caulking. Too easily broken with small amounts of pressure. We have Gland Connector pressure cable pass throughs that we can use for this.
2) The cheap RT5370 Wireless Adapter WiFi dongle we are using is shutting itself down occasionally. The Raspberry Pi keeps running, collecting data, etc., but we are locked out of the system. When we look at the WiFi adaptor when it has shut itself down, it is no longer blinking blue, but the Raspberry Pi and all the external hardware is still running. Looking at the web shows some people having had similar problems with this dongle. We have now replaced it with a WiPi USB Dongle which works well. Interestingly enough, the WiPi USB dongle reports it is using the RT5370 also, but the WiPi works.
3) Humidity is too high inside of the box. We are going to add small vent hole at the bottom of the box to correct for this. Don't want that condensing humidity.
Improvements
We aren't building graphs for the Wind Speed, Direction and Rain yet. Just reporting the current values on the RasPiConnect control panel. All the data is being saved into MySQL, however.
The temperature and lightning displays need to be fixed and improved.
The cool thing is that all of this can be done remotely!
-
14Step 14
What Else Can You Do With This?
Here are some additional ideas for projects based on WeatherPi:
- Replacing the WiFi with a GSM data connection (or just send text messages)
- Make it tweet the weather!
- Make a custom Facebook posting with your weather
- Adding a GPS receiver and store that data. You now have a mobile weather station! When it gets back to WiFi all the stored data will be available.
- Adding additional air quality sensors, UV sensors, Dust sensors. You have a lot of I2C addressing space that you can fill
- Connect to the WeatherUnderground or similar services
Discussions
Become a Hackaday.io Member
Create an account to leave a comment. Already have an account? Log In.