Bluetooth bracelet hacked

[Jeffery] hacked the Bluetooth standard in order to use this bracelet as a custom display. He took up our challenge to hack the device when we first saw it back in February.

In order to display his own messaged he looked into how the HFP is implemented in the Bluetooth stack. The details are shared in his readme file but it goes something like this: The Bluez package needs to be compiled with a dummy backend that is not phone-specific and that will then allow external manipulation of the data being sent. This provides something of an API that a Python script can manipulate. His proof-of-concept allows for the script to be called with the message you want displayed as the command line argument. This should be simple enough to incorporate for just about any purpose that suits your fancy. Unfortunately, messing with the Bluetooth package in this way makes it impossible to use other devices with your phone, but that’s a hack for another day.

Comments

  1. nanomonkey says:

    I’d love to see a smart phone navigation program that used two of these (one for each arm) which vibrated the direction and possibly told you the street name as you came to your turn.

  2. h_2_o says:

    this would also be very nice for google voice with their voice mail to txt conversion you could have this thing just running almost anywhere.

  3. SPARCS says:

    or damn good for deaf kids in a crowd

  4. Urza9814 says:

    Hmm. I have a similar bluetooth bracelet that I’ve never used because it didn’t work with my phone – it has no display, it just vibrates, but when it’s paired to my phone I can’t answer or make calls and it doesn’t vibrate when I receive them either. Entirely useless. I’ve been wondering for a while if there was something I could hack it to do.

  5. clinton says:

    i like this. finally, a jumpstart for my spy career.

    i didn’t check, but does the wristband know what devices it connects to? like, could a remote user send messages to multiple bands (even if they have to cycle through them because of bluetooth pairing) without the wristband needing to confirm each connection?

  6. Urza9814 says:

    clinton: The wristband I had I _believe_ required you to push a button on the band to connect. (though I haven’t seen the thing in almost a year, so I could be mistaken) So, you could cycle through several bands, but you’d have to press (or hack) that button on each connection. They also have a security code that needs to be entered on the connecting device, but that is hardwired into the band and I’m 99% sure that it’s the same for all of them.

  7. The Ffejery says:

    Urza9814:
    I don’t have the screen-less band, but the one I’m working with allows you to accept or reject the call with the button, or just pick up the handset to take a call. Does yours not work that way?
    clinton:
    The bands all use the same port, and (re)connection is not instantaneous, so you’d probably need multiple radios to make it practical. Also note that the range is quite short, so anything aside from a single user wearing it may not be useful.
    – Jeffery

  8. Urza9814 says:

    The Ffejery:
    I think my phone may have been too old – I _think_ what happened was it thought the wristband was a headset, and was trying to push the phone’s audio over the bluetooth connection. I could answer the call, but I couldn’t hear anything when I did.

  9. MS3FGX says:

    According to the Readme, this hack blocks using other HFP devices, but not ALL devices. That isn’t too terrible if you are using this on a computer, but would probably be a deal breaker if you were running it on a Linux smartphone.

    Still, he says this could be fixed with a little work. It would be interesting to see this developed a little more, have it turn into a fully functional BlueZ addon.

  10. Joe Hughes says:

    Very cool! Lately I’ve been experimenting with applications for the Sony Ericsson MBW-150 watch, which is pretty easy to control from Android apps using Marcel Dopita’s OpenWatch middleware.

    I recently got a quick hack up and running to show San Francisco bus arrival times on the watch. It’s really nice to be able to check my watch instead of taking my phone out of my pocket and unlocking the screen.

  11. The Ffejery says:

    Urza9814:
    Maybe your device is different. You are completely correct about the way it works, but the bracelet I have doesn’t have that issue, IIRC.
    MS3FGX:
    As I said in the readme, the issue is that I’m currently using a backend that does not include phone integration. If someone could patch the Maemo telephony backend to allow external access to the IndicateCall and CancelCall functionality, then it should be doable. This is not something that I can work on right now, but I’d welcome help.
    I intend to work on this more to provide a useful notification service for Maemo 5 – this was just a PoC demo. Speaking of, the script needs to be tweaked a bit.

  12. blizzarddemon says:

    Twitter wrist anyone?

  13. MS3FGX says:

    @Joe Hughes:

    Very nice work. I have been looking at OpenWatch since I got my Droid, and have had my eyes on the Sony watch for awhile now. I had no idea OpenWatch included an API for developing your own apps, that is very interesting, I will have to look into that.

  14. Benny M says:

    @blizzarddemon: Don’t you DARE! :P

  15. The Ffejery says:

    Quote(SPARCS):”or damn good for deaf kids in a crowd”

    if they’re deaf, how does the crowd make a difference? XD
    That said, it’s a very good point.

  16. flyordie2 says:

    Oh, how I wish I was good at programming and hardware hacks… It would be fun to make this bluetooth bracelet work with my G1. My thoughts were to make it show a clock by default, and if I had a missed call, or new text it would display it on this screen, and for fun, I could make it display custom things.

    I’ll keep dreaming.

  17. flyordie2 says:

    Woh, I just was looking at the OpenWatch, when I saw the “prada watch.” It looks way cool, and if there was a hack for that, I would buy it.

  18. The Ffejery says:

    flyordie2:
    I’ve heard that the new model from DX has a clock built in, but I haven’t confirmed it, and I can’t afford it just to find out. :P The thing is that the clock would have to be built into the firmware of the bracelet to work properly, especially since you would run down the battery in no time otherwise. Also, you need pretty low-level access to the bluetooth stack. If you can do that on Android, that’s awesome, but I don’t have an Android phone to check.

  19. The Ffejery says:
  20. Dźwiedziu says:

    Impossible to use with your phone? It is really the time to switch to N900 :P

  21. John Johnson says:

    Hello great site

  22. The Ffejery says:

    I’ve noticed that $company has come out with one (or two?) new models, which sport a clock and a charge level indicator. They also appear to be LCD, rather than OLED. This makes me wonder how different the other hardware might be, and whether or not it’s more hackable… As I mentioned, the CSR chip in the model I was working with is a no-go as far as I’m concerned – even if I got access to the info I need, I’d be under an NDA /and/ have to fork out more than my tuition for some proprietary IDE. :/ (The ToS disallows using anything else with their sample code. Enforceable? No idea – but they know who I am, and I don’t really want to find out)
    Ideally I would like to get some bare-bones SPP firmware on something like this, so I could just bang bits at it with a rudimentary control set suited for message scrolling, and use the button as a generic input. Whether or not this is feasible on the more recent models, I have no idea. I’m not able to buy them, but if anyone is interested in them and wants me to send me one to take a poke at it, I’d be more than happy to do so. :)

  23. The Ffejery says:

    …Ah, I see that I just said the same thing as the previous post. *slaps himself with a trout* (it’s 3am :P)

  24. Paul says:

    I just got the newest one, with the clock. It displays in military time and doesn’t show how to change it.
    I have mine paired with a blackberry 8300 curve and it will vibrate with calls only. How do I get this to work with SMS/texting or aim or anything else?
    That is what I really need it for.
    So far though for $30 it’s a great product. What they don’t tell you is (I have the black one) that is it a little big, but you can unhook the silicone strap and cut them shorter and recrimp them. Took me all of 10seconds and it fits much better now. Just don’t cut it too short.

  25. The Ffejery says:

    @Paul: If you’re feeling adventurous enough to disassemble yours, I’d appreciate a summary of the hardware (even just IC part numbers or manufacturers would be useful).
    Thanks

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.

Join 96,376 other followers