Hi, I am exploring the BLE interface with my Mira Activate (which I believe is pretty much the same as the Mode, but with a flow meter) to see if I can add support for it. I was secretly hopeful that it would just work and that only the flow meter stuff would need to be discovered. But no, I will need to investigate further.
Current progress:
With untouched code it found the shower address.
But, during pairing it failed to find the characteristics:
DEBUG:miramode:Found service: "267f0001-eb15-43f5-94c3-67d2221188f7", characteristic: "267f0002-eb15-43f5-94c3-67d2221188f7"
DEBUG:miramode:Found service: "267f0001-eb15-43f5-94c3-67d2221188f7", characteristic: "267f0003-eb15-43f5-94c3-67d2221188f7"
DEBUG:miramode:Found service: "0000fe59-0000-1000-8000-00805f9b34fb", characteristic: "8ec90003-f315-4f60-9fb8-838830daea50"
...
Exception: Characteristic not found: bccb0003-ca66-11e5-88a4-0002a5d5c51b
Looking at Nigel Hannam's research, it looks like my equivalents of these are the following:
| Service / Characteristic |
Mode UUID |
Activate UUID |
| SERVICE_DEVICE_MIRA |
bccb0001-ca66-11e5-88a4-0002a5d5c51b |
267f0001-eb15-43f5-94c3-67d2221188f7 |
| CHARACTERISTIC_WRITE |
bccb0002-ca66-11e5-88a4-0002a5d5c51b |
267f0002-eb15-43f5-94c3-67d2221188f7 |
| CHARACTERISTIC_NOTIFICATIONS |
bccb0003-ca66-11e5-88a4-0002a5d5c51b |
267f0003-eb15-43f5-94c3-67d2221188f7 |
I swapped out the values and (once paring mode enabled on the screen) it moved to the writing data stage, at which point it just stalls (waiting for the "pair" event to complete?)
I think I now need to do some BLE sniffing to work out what the Mira app is doing. I've ordered a nordic dongle to do this with.
I suspect I'll need to see if I have a different "MAGIC_ID", but I'll need to sniff out the app's data
Hi, I am exploring the BLE interface with my Mira Activate (which I believe is pretty much the same as the Mode, but with a flow meter) to see if I can add support for it. I was secretly hopeful that it would just work and that only the flow meter stuff would need to be discovered. But no, I will need to investigate further.
Current progress:
With untouched code it found the shower address.
But, during pairing it failed to find the characteristics:
Looking at Nigel Hannam's research, it looks like my equivalents of these are the following:
I swapped out the values and (once paring mode enabled on the screen) it moved to the writing data stage, at which point it just stalls (waiting for the "pair" event to complete?)
I think I now need to do some BLE sniffing to work out what the Mira app is doing. I've ordered a nordic dongle to do this with.
I suspect I'll need to see if I have a different "MAGIC_ID", but I'll need to sniff out the app's data