I have a Flutter app project and I want to connect with RuuviTag.
How can I connect from a Flutter app with RuuviTag and collect all the data (Temperature, Create Date, Update At , Location …), and keep listening to it?
If you connect to RuuviTag and register to Nordic UART Service notifications you’ll get a notification with current sensor data every 2.5 seconds. More details are at Bluetooth connection - docs
I wrote a proof of concept flutter app a few years ago using flutter_blue | Flutter Package .
It did not connect to the tags tho, just listened for the bluetooth advertisements and decoded the data. But you should be able to connect and read data using that library too.
99 04 Ruuvi Mfg ID
05 is the packet format
17,46 is the temperature
69,85 is the humidity
BE,9A is the air pressure
FD,EC is the X acceleration
00,1C Y
03,20 Z
B0,36 reflects the battery voltage and TX power
C1 is the movement counter
2F,ED Seq number
C4, 58, 38… is the MAC
I’ll see if I can find the source, not sure where it is. But as @dgerman said, manufacturerData is what you are looking for. You just need to decode the data.
Hello everyone!
I read here that the interval for notification is 2.5 sec. Is there a posibility to change this to e.g. 250ms for a period of time?
Thanks a lot!
Best Regards Holgus
It’s possible to code such logic in the firmware itself, e.g. some custom firmwares transmit once per 10 seconds most of the time and switch to 10 times / s when something interesting is happening. However official Ruuvi software does not support interval changes like that