Several months ago, I explained my concerns with Parrot’s Flower Power. One day, my sensor had decided to stop working, just like that. And I saved him.
Small summary: the Flower Power is an object connected in Bluetooth LE, and – one day – mine was not being detected anymore by my iOS devices. I contacted the Customer Service (several times) with, each time, the same answer: “This is a hardware problem, we cannot fix it, it is good for the trash” (I simplify). But I struggled, for a good reason: the tools able to read the data in BLE could detect the Flower Power. For example, with a Raspberry Pi, I managed to read its data.
Looking a little deeper, I realized one thing: the device had no name. No idea of the reason, but I suspected pretty quickly that it was the source of my problems. So I looked for tools to update the firmware (and they are impossible to find), others to try to change the name, without real success. Then I spotted (recently) a tool able to hack the connected objects that use Bluetooth LE, Bleah.
Once the tool installed (it is explained on the deposit), it was quite simple.
• Detection of the BLE devices nearby (I’ll skip the long list).
sudo bleah -t0
• Connection to Flower Power. This command lists all the data sent with (especially) those that can be modified.
sudo bleah -b "90:03:b7:e7:e9:30" -e -f
• This line made me freak out a bit (in fact, it requires a little knowledge of BLE to understand).
│ 0003 │ Device Name ( 00002a00-0000-1000-8000-00805f9b34fb ) │ READ WRITE NO RESPONSE WRITE │ ''
• The next line just lets you write what you want.
sudo bleah -b "90:03:b7:e7:e9:30" -u "00002a00-0000-1000-8000-00805f9b34fb" -d "Parrot" -f -t 20
Magic, Flower Power becomes visible again in the iOS application. And it works perfectly. While Parrot told me it was Out of Service…
Well, it does not solve the concerns of the application, which is a bit messy, but at least it is working and I’m pretty proud of myself. Even though it took me a while to figure out how to do it.