Puck.js Bluetooth 5 Support?

Posted on
  • Hi Gordon,

    Does the Puck support Bluetooth 5 currently? I saw that the nRF52832 microcontroller supports Bluetooth 5 on the Nordic site (Aside from no long range capability), but I am not sure if the current firmware provides the Bluetooth 5 functions yet.

    Many thanks for all your responses.

  • Hi,

    It doesn't yet. My understanding is that Bluetooth 5 support is added in Nordic's SoftDevice version 5.0.0, which isn't properly released yet (it still seems to be alpha).

    When it is properly released, I'll move over to using Nordic's new SDK and we should get a lot of the BT 5.0 functionality.

    The one frustrating gotcha is that Nordic have dropped support for their nRF51 series chips in the new SDKs, so in order to keep support for the BBC micro:bit I'll have to have some huge hacks in there to allow me to support both SDK versions concurrently :(

  • Hi @Gordon,

    Range is a crucial for the project I work on. My tests with PUCK in open space reached up to 30 meters visibility, but in practice I am able to scan the adverstised data if the PUCK is up to 12 meters. As Bluetooth5 provides "LE Long Range", do you plan to revisit this option a year later?

  • Puck.js firmware can be built for SDK14 which does support Bluetooth 5, but it hasn't been tested enough so far, and in this case I don't think it will help you.

    The longer range is achieved just by slowing down the transmission speed, not by boosting the power in any way - but then I believe the slower transmission is only readable by bluetooth 5 devices, and not any older ones.

    What device are you using to read the advertising data? It may be that something with a better aerial will give you significantly better range.

    Also, have you tried NRF.setTxPower(4) - which will increase the transmission power.

  • Hi @Gordon,

    All my tests are done with NRF.setTxPower(4).
    Currently my server is Raspberry Pi 3 Model B with Bluetooth 4.2, but in future plan to use mobile phones or devices with Bluetooth5, because the range is an issue.

    As nRF52832 has Bluetooth5/ANT/2.4GHz, maybe I have to wait till the default build of Puck.js firmware is done with SDK14 and tested enough ?

    Do you think in this direction ?

  • Yes, I think you would have to wait I'm afraid. Looking at https://devzone.nordicsemi.com/f/nordic-¬≠q-a/26047/s132-v5-advertising-extensions¬≠ it seems that not even the most up to date software from Nordic actually supports Bluetooth 5 long range advertising.

    In the mean time, if you need that range I would try and find a USB Bluetooth LE adaptor with an external antenna (however I'm afraid I don't have experience with those). On the Pi, if you were using WiFi then disabling it would probably increase the range for you significantly as well.

  • Hi @Gordon,

    On Pi I gather the data via the built-in bluetooth and once per hour switch on the 3G modem to send data into the cloud and then switch it off.

    Do you think that 3G modem could impact the bluetooth range ?
    Do you think an additional BLE dongle could improve gathering the data ?

  • If the 3G modem is off then it wouldn't hurt the range, but if it is trying to establish a connection while you're scanning then I wouldn't be surprised if it had some effect.

    How long are you scanning for? The longer you scan the more likely you are to pick up the beacons.

    Just adding another BLE adapter is unlikely to increase the range, but having one with an aerial as near the outside of the box as possible and away from other electrical/metal parts would really help.

    If you can find a Bluetooth LE adapter with an external aerial (they do exist, but they seem quite rare) that's likely to make a huge difference.

  • Post a reply
    • Bold
    • Italics
    • Link
    • Image
    • List
    • Quote
    • code
    • Preview

Puck.js Bluetooth 5 Support?

Posted by Avatar for intern @intern