nRF51 SDK - S110 SoftDevice
 All Data Structures Functions Variables Typedefs Enumerations Enumerator Groups Pages
Multiprotocol Application

Multiprotocol Application

The Multiprotocol Application is a firmware example that implements the Heart Rate profile in Bluetooth mode and the Gazell 'device' mode.

The source code and project file can be found in the <InstallFolder>\Nordic\nrf51822\Board\nrf6310\s110\ble_app_gzll folder.

When the application starts, it is in Bluetooth mode and behaves as the Heart Rate Application application. If button 1 is pressed, the application switches to Gazell device mode. In this mode, it attempts to send packets to a host. If the packets are successfully sent, LED2 is lit. If it fails, LED3 is lit. If button 0 is pressed, the application switches back to Bluetooth mode.

Note
This application is not power optimised!
In Bluetooth mode, the application goes to system-off after 3 minutes of advertising if no connections is initiated. Press button 0 to restart in Bluetooth mode or button 1 to restart in Gazell mode.
This application uses a local copy of Application Timer using SWI1 instead of SWI0.

Setup

Instructions on how to set up the nRFgo Motherboard: nRFgo Motherboard Setup (nRF6310).

LED assignments:

  • LED 0: Bluetooth Advertising
  • LED 1: Bluetooth Connected
  • LED 2: Successful Gazell transmit
  • LED 3: Failed Gazell transmit
  • LED 7: Asserted (i.e. an assert check in the application has failed)

Buttons assignments:

  • Button 0: Wake-up from system-off, switches to Bluetooth mode
  • Button 1: Wake-up from system-off, switches to Gazell mode

Testing

The Multiprotocol Application Bluetooth part can be tested using the "nRF Toolbox" app, available on both iOS (Apple Store) and Android (Google Play).

It can also be tested using the Master Control Panel as follows:

  1. Compile and program the application. Observe that the Advertising LED is lit.
  2. Connect to the device from Master Control Panel (the device will be advertising as 'Nordic_BLE_GZL'), then perform service discovery. Observe that the Connected LED is lit, and the Advertising LED is off.
  3. Click the 'Enable services' button on the Master Control Panel. Observe that Heart Rate notifications are received every second, and Battery Level notifications are received every two seconds.
  4. Click on the Disconnect button on the Master Control Panel. Observe that the Advertising LED is on and that the Connected LED is off.
  5. Press the Gazell button (Button 1) and observe LED3 is lit (if a Gazell host device is running, then you should observe that the LED2 is lit and that the LEDs on the host device are lit in a running sequence).