Please refer to this GitHub Repository for the code for all Arduinos.
Repository Sections
master-arduino
The master Arduino measures the battery voltage with a voltage divider circuit. For precise voltage measurements, it is recommended to use (analogRead(pin) + 0.5) * 5.0 / 1024.0
1.
backporch-arduino
anemometer
We are using a Vortex wind sensor. One revolution per second equals 2.5 mph. Since our anemometer has a relay (a mechanical switch), it creates a switch bounce. Therefore, we need a debounce circuit.
_A bug with the current code seems to be related to saving the dateTime string. The dateTime string is saved incorrectly when there should be a trailing 0 in front of the minute reading. I believe that the current code does not include an additional 0 to save minute readings below 10.
Wireless communication codes
Opportunities to improve the system
- We are currently supplying power to the Arduinos via USB. If we used DC converters from the batteries to the Arduinos, we might save some electricity.
Useful Guides
Real Time Clock Setup for SD3231
Download DS3231 library on GitHub
Data logging on SD-card
this randomnerdtutorial.com leads you through SD-card usage with an arduino.
Wireless communication with NRF24L01
We have long-run antennas for wireless communication (NRF24L01 Tutorial).
You should solder a 10uf electrolytic capacitor between the power leads.
How to connect several SPI devices to Arduino.
Non-invasive AC Current Sensor ANSANE SCT-013-030
Outputs approximately 1 V for every 30 A.
LoRa Overview on Digikey
https://www.digikey.com/en/maker/blogs/introduction-to-lora-technology