Beware that this post is related to an SDK in maintenance mode
More Info: Consider nRF Connect SDK for new designs
This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Precompiled ble_connectivity doesn't work with pc-ble-driver

Hi,

I successfully installed and test pc-ble-driver with connectivity_2.0.1_115k2_with_s132_5.0.hex on PCA10040.

When I download ble_connectivity_s132_uart_pca10040.hex under examples\connectivity\ble_connectivity\hex from SDK14.0.0 and SDK14.2

I always get error "Failed to open nRF BLE Driver. Error code: 0x0D". I tried both baud rate 115200 and 1M.

I also installed the patch file sdk140_connectivity.patch to sdk14.2. The error still exist. 

Is there anything wrong? Please help.

By the way,  does the project ser_s132_hci provide standard HCI interface? Can I use Bluez to control my board?   

Thank you.

Parents
  • Hi,

    pc-ble-driver for the PCA10040 uses a slightly modified version of the ser_s132_hci example from our SDK, currently based on SDK v14.0. See this patch file. It is not a standard HCI interface.

    Installing the patch on top of SDK 14.0 results in a working Keil 5 project. For SES you need to do some changes. In particular, line 149  "#if defined ( __CC_ARM)" to  line 179 "#endif" in the patch file is only included when using the ARM compiler, not when using the GCC compiler, and "__attribute__((packed))" must be translated to the GCC counterpart. Also, the memory settings and linker settings must be changed in the SES project corresponding to the changes done for Keil.

    If you want standard HCI and BlueZ, please have a look at the following blogpost which describes exactly that for our nRF5x series SoCs: nRF5x support within the Zephyr Project RTOS.

    Regards,
    Terje

Reply
  • Hi,

    pc-ble-driver for the PCA10040 uses a slightly modified version of the ser_s132_hci example from our SDK, currently based on SDK v14.0. See this patch file. It is not a standard HCI interface.

    Installing the patch on top of SDK 14.0 results in a working Keil 5 project. For SES you need to do some changes. In particular, line 149  "#if defined ( __CC_ARM)" to  line 179 "#endif" in the patch file is only included when using the ARM compiler, not when using the GCC compiler, and "__attribute__((packed))" must be translated to the GCC counterpart. Also, the memory settings and linker settings must be changed in the SES project corresponding to the changes done for Keil.

    If you want standard HCI and BlueZ, please have a look at the following blogpost which describes exactly that for our nRF5x series SoCs: nRF5x support within the Zephyr Project RTOS.

    Regards,
    Terje

Children
  • Thank you. SDK14.0 example ser_s132_hci works. 

    I also installed the patch to SDK14.2. Without changing the "StartAddress" and "ORIGIN =" in the patch. Simply turn #if defined ( __CC_ARM)" to "#if 1".  I can use pc-ble-driver to communicate now. Need more time to study how to change the memory settings and linker settings.

    Appreciate if there is a patch for SDK14.2. 

Related