Aries
New Member
This project dates back to 2019 when a new water meter was installed outside the house. It was difficult to read because of a large lump on top which all but obscured the numbers. This turned out to be the EverBlu Cyble transceiver. I found a very useful explanation of the setup here ...
and C-code for Arduino here ...
and so I started trying to get a CC1101 to work. With a great deal of help from Hippy, I managed to communicate with the CC1101, but not with the water meter. The project was then put on hold until the end of 2023, when the meter display misted up to the point where it was no longer readable. I started again – this time including buying a brand new water meter on eBay. I also had an RTL SDR so it was easy to set up the correct frequency, and see whether the meter would respond. A lot of messing about, before I got a response (visible on the SDR) and was left with reading it back via the CC1101 into the Picaxe.
The return message is sent as 2400 baud with 1.5 or 2 stop bits. The original C code read everything at double speed, and then tried to interpret it back into 2400. I discovered that the Picaxe serin command in a loop could keep up with an incoming raw data stream and was not worried about multiple stop bits. This dramatically simplified the code for receiving.
The result is displayed on a Nokia 5110 LCD matrix screen using two fonts – a 5x7 for mainly text, and 8x12 seven-segment for the numeric fields (meter ID and reading).
Each operation (reading and displaying) uses most of a slot on a Picaxe 28X2/40X2. I used a 40X2 largely because they are cheaper in bulk than the 28X2. The pictures show the unit with (a) the meter ID and (b) the reading from the meter. The unit also transmits the result via an NRF24L01 to a data logger which stores the result on a microSD card.
Attached is the code for communicating with the CC1101, which may be of use to somebody.
maison2:compteur_d_eau:compteur_d_eau [Le WIKI de la Maison Simon]
www.lamaisonsimon.fr
GitHub - neutrinus/everblu-meters: Fetch water usage data from Cyble meters
Fetch water usage data from Cyble meters. Contribute to neutrinus/everblu-meters development by creating an account on GitHub.
github.com
and so I started trying to get a CC1101 to work. With a great deal of help from Hippy, I managed to communicate with the CC1101, but not with the water meter. The project was then put on hold until the end of 2023, when the meter display misted up to the point where it was no longer readable. I started again – this time including buying a brand new water meter on eBay. I also had an RTL SDR so it was easy to set up the correct frequency, and see whether the meter would respond. A lot of messing about, before I got a response (visible on the SDR) and was left with reading it back via the CC1101 into the Picaxe.
The return message is sent as 2400 baud with 1.5 or 2 stop bits. The original C code read everything at double speed, and then tried to interpret it back into 2400. I discovered that the Picaxe serin command in a loop could keep up with an incoming raw data stream and was not worried about multiple stop bits. This dramatically simplified the code for receiving.
The result is displayed on a Nokia 5110 LCD matrix screen using two fonts – a 5x7 for mainly text, and 8x12 seven-segment for the numeric fields (meter ID and reading).
Each operation (reading and displaying) uses most of a slot on a Picaxe 28X2/40X2. I used a 40X2 largely because they are cheaper in bulk than the 28X2. The pictures show the unit with (a) the meter ID and (b) the reading from the meter. The unit also transmits the result via an NRF24L01 to a data logger which stores the result on a microSD card.
Attached is the code for communicating with the CC1101, which may be of use to somebody.
Attachments
-
6.7 KB Views: 6
-
4.8 KB Views: 7
-
16.1 KB Views: 9