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

Developing on EVK NINA B111

Hi Nordic developers,

For my internship I’m developing a BLE application on de NINA-B111 module which does have the nRF52832. I'm using SDK 15.0.0 and Softdevice 132 v6.0.0 in Segger Embedded Studio. 

Currently I’m developing on a EVK-NINA-B111. But the BLE application is supposed to run on a different custom board.   

The data transfer on that custom board looks like this: LPC ---UART--->NINA---BLE--->UWP App.

So the NINA is supposed to be a bridge between UART and BLE. The ble_nus example is a good example to start. But I want to know what is the best way to have the nus service with security (like pairing and bonding) and the Device Information Service. 

I think I have four options:

1: Implement security parameters in the ble_nus example.

2: Implement nus service and security in ble_template example.

3: Implement nus service in an example with security already implemented (like ble_hrs example). And remove the other services.

4: Build everything from scratch  

What do you think of this?

Kind regards,

Bob Göbel

EDIT: I have chosen to use option 2. I successfully added the nus and dis to the ble_app_template. My next step will be configuring the peer manager. I have no I/O capabilities on my custom_board. I’ve read the chapter peer manager in the infocenter. When I set the different configurations as given in the Usage tab I don’t recognize any differences in connecting when using the nRF Connect app. Do you have a tutorial about this subject and is the multirole_lesc a good reference?   

http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.sdk5.v15.0.0%2Flib_peer_manager.html 

http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.sdk5.v14.0.0%2Flib_crypto.html&anchor=lib_crypto_installing    

Parents Reply
  • Hi,

    There are a couple of things you could try. 

    1) By setting the hvn_tx_queue_size, you are setting the minimum guaranteed number of Handle Value Notifications that can be queued for transmission. Try to increase this, if step 2 does not work.

    2) But, even if the application configures a large number of packets to be queued, not all of them will be sent during a single connection event if the configured event length(NRF_SDH_BLE_GAP_EVENT_LENGTH) is not large enough to send the packets. You should therefore make sure that you set the NRF_SDH_BLE_GAP_EVENT_LENGTH in sdk_config.h to a high enough number (try 320).

    3) If you still get NRF_ERROR_RESOURCES, either try again until you get NRF_SUCCESS or wait for the BLE_EVT_TX_COMPLETE event before you try again.

Children
Related