• I assume that I'll need a (tiny) Android app to advertise the data

    Yes, I think so... You might be able to use DroidScript but I'm not sure how much Bluetooth support it has - probably using Android directly will be easier in this case.

    In terms of power usage, it'd use less power to have a connection - the most power consuming part of Bluetooth is receiving data, and when there's a connection the devices arrange that they're only listening for data at certain times. When you're listening for Advertising data you can't be sure when it'll be, so you have to listen all the time which takes a bunch of power.

    However it's less of a deal on the Bangle - realistically you could listen for Bluetooth data for a full 24 hours before the battery ran out. In reality I imagine you'll end up listening maybe every 30 seconds for just enough time to get advertising data (~0.5 sec?) so the impact to battery will go right down.

    All you need is something like:

    function doScan() {
      NRF.requestDevice({ filters: [{ name: 'My_phones_BT_name' }] }).then(function(device) {
       // the data should be in the 'device' object 
      });
    }
    setInterval(doScan, 30*1000); // 30 secs
    

    I'll at least update this thread with my findings in case anyone else comes looking.

    That would be great! Getting data onto the Bangle is something a lot of people would be interested in.

About

Avatar for Gordon @Gordon started