Share My Creation Simple BLE-based bulk raingauge concept

Hello All

Well, after a while now thrashing around, I've finally finished one of the projects I've been working on. This is Daddy posting his first creation. . . . .

First : acknowledgment to all those who responded to my various postings, queries and wondering tracks, those who supplied libraries, class codes, suggestions, corrections and reflections.

Second : and, to Erel for the pointers and patience and the whole B4X capability.

This APP is designed to read rainfall recorded by a specifically linked raingauge fitted with Bluno BLE capability. The project is really a simple bulk raingauge concept - doesn't record tip-by-tip records (saved it for the next development). Once retrieved, these data are stored in a phone-based file (csv format in timestamp rows).

The project presented this beginner with a number of challenges between the new hardware chosen, and, the whole BLE concept itself can be somewhat mind-bending.

The bulk of the project was getting the data pulled-down from the raingauge. Mostly, because there is no realtime clock nor SD storage on the remote unit, I had to figure out some of the intricacies of avoiding events collapsing into each other, cumulative data occurring (eg. double counting).

The raingauge unit, therefore, only captures a cumulative integer total of bucket tips. This total is stored in running memory until a user asks for a reading. When the unit receives the data request signal, it responds by sending the tip count SINCE THE LAST REQUEST (then zeros the count to avoid double-counting).

When received by the phone, the datum point triggers creation of a timestamp string - based upon the current time on the phone. This string is written/appended to a file on the phone.

An emailing facility is provided for uploading the data (.CSV file) for extraction to desktop storage (or other permanent space).

This is all fair and well for the home owner with a tipping bucket raingauge, where a simple record of rainfall is sufficient, and, which can be manually separated out into roughly monthly (whole) totals.

Now I just have to configure manufacturing tipping-bucket raingauges.