I want to write Windows PC software that listens to BLE advertising using preferrably a USB dongle. What do you recommend?
I want to write Windows PC software that listens to BLE advertising using preferrably a USB dongle. What do you recommend?
Hi,
The python bindings seems to be exactly what I need. I have downloaded the package from github, but when I run "python setup.py install" as instructed in the README file I encounter the error "ModuleNotFoundError: No module named 'skbuild' on execution of line "from skbuild import setup" in the setup.py script. Please advise me how to get further.
//Klas
You can install requirements using this command:
pip install -r requirements-dev.txt
But it would be simpler to just install pc-ble-driver-py from PyPi in the first place:
pip install pc-ble-driver-py
Hi, and thank you for your answer. Though, these solutions seems to be mostly aimed at development. The product that I am looking for is rather an enabler for a simple system that can be distributed as a product that can be installed by customers themselves on standard PC:s, so that they can see the nearby Bluetooth advertising devices. I can use a specified dongle with my own software, but it must not require technical skills to install. Segger, J-link and such is not of interest, rather plain serial communication or similar.
It is mainly intended for development, but I know that we have some customers using this solution in their end products.
The C/C++ version may be a simpler approach to build an executable application directly, but it may require some more effort to get the environment up and running. It may also be possible to build executable program of the Python bindings, using PyInstaller or similar.
The nRF52840 Dongle uses USB CDC ACM protocol to communicate between the connectivity firmware on the nRF52840 chip and the pc-ble-driver application, which is natively supported in most OSes. There is no need for additional tools like J-Link, etc.
Hi,
I have now a nRF52840 dongle that works fine with the Bluetooth Low Energy app in nRF Connect, and I can see that it scans and detect BLE devices. I can open the serial port that appears in Windows as the corresponding USB serial device (USB ACM if I understand it correctly, which is supported in Visual Studio as serial ports). Though, I do not have any protocol specification on what data to send and recieive data over the serial port. I assume that it should look like AT commands or similar. Is this correctly understood? If not, do you have any documentation on how to communicate with the device from a Visual Studio C# application, like needed plug-ins, dll:s etc?
Hi,
I have now a nRF52840 dongle that works fine with the Bluetooth Low Energy app in nRF Connect, and I can see that it scans and detect BLE devices. I can open the serial port that appears in Windows as the corresponding USB serial device (USB ACM if I understand it correctly, which is supported in Visual Studio as serial ports). Though, I do not have any protocol specification on what data to send and recieive data over the serial port. I assume that it should look like AT commands or similar. Is this correctly understood? If not, do you have any documentation on how to communicate with the device from a Visual Studio C# application, like needed plug-ins, dll:s etc?
Hi,
The BLE application in nRF Connect for Desktop is based on pc-ble-driver-js bindings, and use our serialization solution, which is a full serialization API for the softdevice (Bluetooth stack).
If you do not want to build pc-ble-driver from sources, you can use the instructions in this post to create a Visual Studio project from scratch and include the DLL from the release ZIP file.
If you are looking for a simpler solution more similar to AT commands, you can have a look at the BLE Interactive Command Line Interface Example. This does not currently support communication over USB, but that should be possible to add (support for USB CDC ACM are already available in the CLI library, it is just a matter of configuring/enabling it in the application).
Best regards,
Jørgen