Project Curacao2 – Part 2 – RaspberryPi and Arduino Based Environmental Station
What is Project Curacao2?
Project Curacao2 is a redesign and rebuild of the Project Curacao environmental monitoring system that was running down on the island nation of Curacao in 2014 and 2015. It finally died after a loose wire in the solar panel assembly (not in the panels, but in the internal wiring) finally came completely loose. We could see what was happening from the extensive graphs and reporting coming from the box.
It was like looking at the Mars Rover from 3500 miles away.
Not having locktite on the screws is likely the culprit. When we had a person down on the island finally look at it 4 months later, the batteries did not come back to life and we hadn’t sent down replacements. LiPo batteries do not like being fully discharged.
- Part 1 - Introduction to Project Curacao2 and the LoRa WXLink Feeder Stations
- Part 2 - First LoRa WXLink Feeder Stations Report
- Part 3 - Testing the LoRa Range
- Part 4 – Initial LoRa Range Results
- Part 5 – Final LoRa Range Results
- Part 6 - Raspberry Pi Zero Base Unit Build
- Part 7 - Flame On! Initial Base Unit Tests
- Part 8 - Solar Power Management System
- Part 9 - Ready for Deployment and Status
- Part 10 - PC2 in the Caribbean! Repairs and Testing
- Part 11 - It Lives! Deployment and Initial Results
- Part 12 - One Month of Results from Paradise
Overall Project Curacao2 Architecture
The architecture of Project Curacao2 is much simpler than the Project Curacao 1. Because of our new Solar architecture (SunAirPlus and the USBPowerControl), we eliminated the Arduino Battery Watchdog. We still have an Arduino Uno in the base unit, but it is only used to receive information from the LoRa WXLink transmitters and then supplies it to the Raspberry Pi through an I2C interface. We are putting a lot of Solar Panels on the base unit to make sure it shuts down very rarely. We are also turning power on and off to devices (with the new GrovePower product from SwitchDoc Labs – unreleased currently) in the base box to minimize power consumption. More on the base unit design in an additional article.
We have also eliminated the wires from the base unit to the remote WeatherRack and AM2315 temperature and humidity sensors. The length of the wire running from the tower to the base unit of Project Curacao 1 caused us problems from RFI interference. After all it is right next to a world class radio transmitter. We may experience some fallouts in our transmissions during contests, but at least we won’t kill the computers.
We also have added a second remote WeatherRack and AM2315 sensor station at the ridge antenna about 2km away from the base unit. That’s the main reason we went to LoRa for this project.
Latest Status on Project Curacao2
Since our last update we have built a second LoRa WXLink feeder station, weatherproofed it and placed it out in the spring weather. Alternating clouds, rain and even snow is testing the equipment nicely. The design is proving to be versatile and reliable. No known crashes or WatchDog Events at this time. We took Station #3 (destined for the ridge antenna) down and put another battery in it because we wanted the round battery in the box in a different robotic project. We replaced it with a 6600mAh LiPo battery, which is probably overkill, but we had one on the bench fully charged. That is why the Message ID on Sensor #3 is so much lower than the Message ID from Sensor #2.
The Project Curacao2 Software running on our breadboarded Raspberry Pi Zero based unit is currently running a slightly modified version of the GroveWeatherPi latest software. Here are some of the results of reading the two LoRa WXLink sensors.
Wireless ID/Mess#=2/24577 08:22:05 - 2017/03/29 SVer = 0 BV= 3.94 SV= 4.61 SC= 6.80 Wireless ID/Mess#=2/24578 08:22:35 - 2017/03/29 SVer = 0 BV= 3.94 SV= 4.61 SC= 7.20 Wireless ID/Mess#=2/24579 08:23:15 - 2017/03/29 SVer = 0 BV= 3.94 SV= 4.61 SC= 7.20 Wireless ID/Mess#=3/4002 08:23:45 - 2017/03/29 SVer = 0 BV= 3.99 SV= 4.65 SC= 8.00 Wireless ID/Mess#=2/24580 08:23:55 - 2017/03/29 SVer = 0 BV= 3.94 SV= 4.61 SC= 7.20 Wireless ID/Mess#=3/4003 08:24:25 - 2017/03/29 SVer = 0 BV= 3.99 SV= 4.65 SC= 7.60 Wireless ID/Mess#=2/24582 08:25:05 - 2017/03/29 SVer = 0 BV= 3.94 SV= 4.60 SC= 6.80 Wireless ID/Mess#=2/24584 08:26:25 - 2017/03/29 SVer = 0 BV= 3.94 SV= 4.61 SC= 7.20 Wireless ID/Mess#=2/24585 08:27:05 - 2017/03/29 SVer = 0 BV= 3.94 SV= 4.61 SC= 7.20 Wireless ID/Mess#=3/4008 08:27:35 - 2017/03/29 SVer = 0 BV= 3.99 SV= 4.65 SC= 8.00 Wireless ID/Mess#=3/4009 08:28:15 - 2017/03/29 SVer = 0 BV= 3.99 SV= 4.65 SC= 8.00 Wireless ID/Mess#=3/4010 08:28:45 - 2017/03/29 SVer = 0 BV= 3.99 SV= 4.65 SC= 8.00------Patting The Dog------- Wireless ID/Mess#=2/24588 08:28:55 - 2017/03/29 SVer = 0 BV= 3.94 SV= 4.61 SC= 7.20 Wireless ID/Mess#=2/24589 08:29:35 - 2017/03/29 SVer = 0 BV= 3.94 SV= 4.61 SC= 6.80 Wireless ID/Mess#=2/24591 08:30:45 - 2017/03/29 SVer = 0 BV= 3.94 SV= 4.61 SC= 6.80 Wireless ID/Mess#=3/4014 08:31:15 - 2017/03/29 SVer = 0 BV= 3.99 SV= 4.65 SC= 8.00 Wireless ID/Mess#=2/24592 08:31:25 - 2017/03/29 SVer = 0 BV= 3.94 SV= 4.61 SC= 7.20 Wireless ID/Mess#=3/4015 08:31:55 - 2017/03/29 SVer = 0 BV= 3.99 SV= 4.66 SC= 8.80 Wireless ID/Mess#=2/24593 08:32:05 - 2017/03/29 SVer = 0 BV= 3.94 SV= 4.61 SC= 7.60
You can see that the sun is coming up now (although it is very cloudy) and starting to generate some solar power (SC is in milliAmps so it is not much!). “Patting The Dog” indicates that the software has gone out and reset the WatchDog timer so it doesn’t reset the power to the Mini Pro LP Arduino in the WXLink unit.
We are actually having really good results from the WXLink LoRa boxes. The reliability seems to be there. We are going to add a Grove Power devices to the transmitters to provide a power on reset function (see What is Next? below) which will even take us to the next level of reliability.
What is Next?
Here are the next steps (starting next week) in our design and verification of the whole design:
- – Running a GPS based LoRa receiver (using the WXLink design) on a Raspberry Pi to test the range of the WXLink LoRa feeder units. We will mount the equipment in a car and drive off to test.
- – Depending on the results of the range test, we may add a Yagi Directional antenna to the Ridge antenna. Note: We haven’t selected an antenna yet, so the link is just an example.
- – Adding some very clever power saving Grove devices to Project Curacao2. We have designed a small board that allows us to cut off the power to any Grove connected device, which means we can selectively cut down the power requirements (as well as being able to power on reset devices – the RFM95 LoRa transceivers have a tendency to go away sometimes based on our test – every week or so).
- – Putting together the Project Curacao2 Raspberry Pi Base Unit and starting to do weatherproofing and solar power testing.
- – Finalizing the Base Unit hardware – Especially handling low power (brownouts) and processor upsets.
- – Starting on the production Project Curacao2 Python software and control panels.