Merge pull request #38 from jpbrucker/s110_compat

Disable GattClient features when using S110 SoftDevice
master
Rohit Grover 2015-08-11 14:21:33 +01:00
commit 2c01109786
5 changed files with 17 additions and 0 deletions

View File

@ -107,7 +107,9 @@ static void btle_handler(ble_evt_t *p_ble_evt)
dm_ble_evt_handler(p_ble_evt);
#if !defined(MCU_NORDIC_16K_S110) && !defined(MCU_NORDIC_32K_S110)
bleGattcEventHandler(p_ble_evt);
#endif
/* Custom event handler */
switch (p_ble_evt->header.evt_id) {

View File

@ -17,6 +17,7 @@
#include "nRF5xServiceDiscovery.h"
#include "nRF5xGattClient.h"
#if !defined(MCU_NORDIC_16K_S110) && !defined(MCU_NORDIC_32K_S110)
void bleGattcEventHandler(const ble_evt_t *p_ble_evt)
{
nRF5xServiceDiscovery &sdSingleton = nRF5xGattClient::getInstance().discovery;
@ -95,4 +96,5 @@ void bleGattcEventHandler(const ble_evt_t *p_ble_evt)
sdSingleton.progressCharacteristicDiscovery();
sdSingleton.progressServiceDiscovery();
}
#endif

View File

@ -80,6 +80,8 @@ public:
return BLE_ERROR_UNSPECIFIED;
}
/* Observer role is not supported by S110, return BLE_ERROR_NOT_IMPLEMENTED */
#if !defined(MCU_NORDIC_16K_S110) && !defined(MCU_NORDIC_32K_S110)
virtual ble_error_t startRadioScan(const GapScanningParams &scanningParams) {
ble_gap_scan_params_t scanParams = {
.active = scanningParams.getActiveScanning(), /**< If 1, perform active scanning (scan requests). */
@ -104,6 +106,7 @@ public:
return BLE_STACK_BUSY;
}
#endif
private:
/**

View File

@ -22,6 +22,7 @@ nRF5xGattClient::getInstance(void) {
return nRFGattClientSingleton;
}
#if !defined(MCU_NORDIC_16K_S110) && !defined(MCU_NORDIC_32K_S110)
ble_error_t
nRF5xGattClient::launchServiceDiscovery(Gap::Handle_t connectionHandle,
ServiceDiscovery::ServiceCallback_t sc,
@ -31,3 +32,4 @@ nRF5xGattClient::launchServiceDiscovery(Gap::Handle_t
{
return discovery.launch(connectionHandle, sc, cc, matchingServiceUUIDIn, matchingCharacteristicUUIDIn);
}
#endif

View File

@ -25,6 +25,12 @@ class nRF5xGattClient : public GattClient
public:
static nRF5xGattClient &getInstance();
/**
* When using S110, all Gatt client features will return
* BLE_ERROR_NOT_IMPLEMENTED
*/
#if !defined(MCU_NORDIC_16K_S110) && !defined(MCU_NORDIC_32K_S110)
/**
* Launch service discovery. Once launched, service discovery will remain
* active with callbacks being issued back into the application for matching
@ -152,6 +158,8 @@ private:
private:
nRF5xServiceDiscovery discovery;
#endif // if !S110
};
#endif // ifndef __NRF51822_GATT_CLIENT_H__