Not too much progress but I said I rather blog more often this time instead of just reporting the result at the end. I am usually working about between 30 minutes to an hour in the evening on this project, a bit more during the weekend. So it is slow steps.
When I built my first station I thought about sending it commands as well. LoRaWan is a two-way protocol. To conserve power, so-called Class-A devices (like the one I am building) only receive data in a fixed interval after they have sent something. But as my station is sending every 1-4 minutes it is also ready to receive shortly afterwards. I designed a (very simple) extendable command protocol for my purpose, you can find the description here on GitHub.
And this is what I implemented yesterday. For testing purposes I wanted to have a way to drain the battery down to the point the device stops sending. The controller can read the battery voltage, but I needed to find out at what point that voltage is too low for it to continue working. Fortunately the device also contains a RGB LED. Quite useless in a weather station, but a perfect load to drain the battery.
The CubeCell board does many things right: One of them is that it also cuts off power to the LED when going into deep sleep, so I had to implement two commands:
- Switch on/off LED (since it is an RGB LED I also implemented the color it should use)
- Switch on/off deep sleep state
- Unrelated: I also implemented a command to change the time interval the station sends reports. Included one “auto” setting where the interval depends on the battery voltage.
Currently the device is sitting on my bench, happily draining the battery with the LED on in red. Current voltage is 3.5V, let’s see how long it lasts.
Part of making stuff is also failure – and yes, I had some failure yesterday. I had the great idea to 3d-print a rain detector. You know these meandering circuit boards which get connected when a raindrop falls on them? I had the idea to 3d print a structure and solder wires in. Did not work – the soldering iron melted the plastic before I could solder the wires. So I will again use a cheap circuit board for rain detection.