This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

NRF8001 Arduino RedBear Shiled - BLE_SET_Name not working

I tried changing the broadcast name which was not easy but after installing the nRFgoStudio and editing the XML file with it - I managed to change the name yet the UART program no longer works . I verified this issue comparing the original "ublue_setup.gen.out.txt file with the same file re-compiles and they are different . I am assuming this makes the UART Arduino program stop working properly . After the re-compilation using "run_me_compile_xml_to_nRF8001_setup.bat" I get this error: ACI Evt Pipe Error: Pipe #:4 Pipe Error Code: 0x96

I have no idea where to find the meaning of this code .

The command suggested to rename the broadcast name does not work (even in the example it is commented out and when removing the comment it fails to compile): // Set your BLE Shield name here, max. length 10 //ble_set_name("TEST";);

Chat:39: error: 'ble_set_name' was not declared in this scope

I guess these are all maturity issues with the BLE but I can't express enough the complexity of the BLE HW/SW compared to standard BT which I wish I could use with the iPhone .

Any help would be appreciated.

Parents
  • You must use the nRFgo studio, open the nRF8001 XML file used and ensure that the nRF8001 configuration -> GAP Settings -> Writeable Device name (Over the air and From application controller with pipe) are enabled.

    Then get the pipe number used for the device name from the services header file , you will see a #define called PIPE_GAP_DEVICE_NAME_SET , you can then call lib_aci_set_local_data (...) to set the device name.

    Edit: The name must be received over the air from an iOS device on a different Characteristic as the GAP Device Name Characteristic is typically not available from an iOS app.

    I hope your issue is already addressed.

Reply
  • You must use the nRFgo studio, open the nRF8001 XML file used and ensure that the nRF8001 configuration -> GAP Settings -> Writeable Device name (Over the air and From application controller with pipe) are enabled.

    Then get the pipe number used for the device name from the services header file , you will see a #define called PIPE_GAP_DEVICE_NAME_SET , you can then call lib_aci_set_local_data (...) to set the device name.

    Edit: The name must be received over the air from an iOS device on a different Characteristic as the GAP Device Name Characteristic is typically not available from an iOS app.

    I hope your issue is already addressed.

Children
No Data
Related