I have a nRF52840 Dongle. When I connected it for the first time to the Bluetooth Low Energy app of nRF Connect for Desktop, it loaded automatically the firmware. My question is simple: is this firmware source code available somewhere?
I have a nRF52840 Dongle. When I connected it for the first time to the Bluetooth Low Energy app of nRF Connect for Desktop, it loaded automatically the firmware. My question is simple: is this firmware source code available somewhere?
Hello,
Yes, the hex is available in our github repository here: https://github.com/NordicSemiconductor/pc-ble-driver/blob/v4.1.4-hex/hex/sd_api_v5/connectivity_4.1.4_usb_with_s132_5.1.0.hex
Best regards,
Vidar
Hi Vidar,
thanks for your response but I mean the source code of the firmware, not the hex. I misspoke, sorry.
Hi,
The repo I linked to includes instructions on how you can build the connectivity FW from source, but note that this is an involved process in addition to the FW being based on an old SDK with a Softdevice that has not been qualified for the nrf52840. Could you say something about what you intend to acheive with this? Maybe there are better alternatives.
Could you say something about what you intend to acheive with this? Maybe there are better alternatives.
I want to develop a BLE/USB dongle to interface BLE devices to a custom software on PC. I thought that, if available, the Nordic Dongle code was a good starting point. Do you have some suggestions?
Thanks.
It would be good for production testing,etc, but not to sell as a product. Not with the Softdevice version used with this connectivity FW, at least. This Softdevice does not have a Bluetooth listing for this device: Bluetooth QDIDs. Though you may consider using API version 6 with s140 if you are OK with working directly with the C++ library and not use the Python or JS wrappers.
Have you considered other options such as using the built-in bluetooth? Or maybe just run the Bluetooth application on the dongle itself?
Have you considered other options such as using the built-in bluetooth?
If you mean the buid-in bluetooth of PC, no. I need to develop a dedicated BLE/USB dongle.
My project is composed by an inertial sensor that should send data to a PC. To avoid possible BLE compatibility issue with old OS, I think that a custom dongle is a good solution. So I need to develop a BLE central device, that communicates with my peripheral inertial sensor, with USB features and to speed up the process I was wondering if there is a good starting point around the Nordic environment.
That's it.
I agree that using the pc-ble-driver can be a good way to avoid compatibility problems across platforms. But there is another alternative which I think is easier to implement and that is if you run the Bluetooth application on the dongle itself. You can then have the application FW pass the sensor data to the PC similar to how it's done in the USBD BLE UART Example.
I agree that using the pc-ble-driver can be a good way to avoid compatibility problems across platforms. But there is another alternative which I think is easier to implement and that is if you run the Bluetooth application on the dongle itself. You can then have the application FW pass the sensor data to the PC similar to how it's done in the USBD BLE UART Example.
if you run the Bluetooth application on the dongle itself.
What do you mean? I have a BLE wireless device and it needs to comunicate with PC. So the dongle needs to have BLE as central and USB features. I think that we are talking about the same thing.
similar to how it's done in the USBD BLE UART Example
I'm using nRF Connect SDK and I can't find the example in my installation folder but I found this repository. I think it's the same concept.
Since I need a fast comunication, is the USBD the right choice? What about the guaranteed speed for USBD?
With the nRF connect ble and Dongle you are running a "Serialization" setup where the entire Bluetooth stack is being controlled by the PC (PC in this case is the same as the "Application board" illustration) So rather than writing the BLE application for the dongle using existing SDK libraries, you would have to write the Bluetooth application that interfaces with the Softdevice APIs on the PC.
I'm using nRF Connect SDK and I can't find the example in my installation folder but I found this repository. I think it's the same concept.
Yes, equivalent sample in nRF connect SDK: Bluetooth: Central UART.
Since I need a fast comunication, is the USBD the right choice? What about the guaranteed speed for USBD?
I don't have a benchmark for this and it would also depend a bit on how USB is configured. Although, it should always be faster than BLE.