ble nano hid over gatt

Dependencies:   BLE_API mbed-dev nRF51822

Revision:
29:ec548c473d50
Parent:
28:1f843a3daab0
Child:
30:f9ebc769118d
--- a/HIDController_BLE.cpp	Tue Aug 23 15:25:30 2016 +0000
+++ b/HIDController_BLE.cpp	Wed Aug 24 01:27:46 2016 +0000
@@ -32,7 +32,6 @@
 
 static BLEProtocol::Address_t peerAddress;
 
-
 static volatile Status_t controllerStatus;
 
 static void updateBatteryLevel() {
@@ -87,7 +86,7 @@
 	
     peerAddress.type = params->peerAddrType;
     memcpy(peerAddress.address, params->peerAddr, Gap::ADDR_LEN);
-    controllerStatus = CONNECTING;
+	controllerStatus = CONNECTED;
 }
 
 static void onDisconnect(const Gap::DisconnectionCallbackParams_t *params) {
@@ -103,36 +102,38 @@
 }
 
 static void passkeyDisplayCallback(Gap::Handle_t handle, const SecurityManager::Passkey_t passkey) {
+	/*
 	printf("Input passKey: ");
 	for (unsigned i = 0; i < Gap::ADDR_LEN; i++) {
 		printf("%c", passkey[i]);
 	}
 	printf("\r\n");
+	*/
 }
 
 static void securitySetupCompletedCallback(Gap::Handle_t handle, SecurityManager::SecurityCompletionStatus_t status) {
 	if (status == SecurityManager::SEC_STATUS_SUCCESS) {
+		/*
 		printf("Security success %d\r\n", status);
-		
 		printf("Set whitelist\r\n");
+		*/
 		Gap::Whitelist_t whitelist;
 		whitelist.size = 1;
 		whitelist.capacity = 1;
 		whitelist.addresses = &peerAddress;
 
 		BLE::Instance(BLE::DEFAULT_INSTANCE).gap().setWhitelist(whitelist);
-		printf("Set Advertising Policy Mode\r\n");
+		//printf("Set Advertising Policy Mode\r\n");
 		// BLE::Instance(BLE::DEFAULT_INSTANCE).gap().setAdvertisingPolicyMode(Gap::ADV_POLICY_FILTER_SCAN_REQS);
 		// BLE::Instance(BLE::DEFAULT_INSTANCE).gap().setAdvertisingPolicyMode(Gap::ADV_POLICY_FILTER_CONN_REQS);
 		BLE::Instance(BLE::DEFAULT_INSTANCE).gap().setAdvertisingPolicyMode(Gap::ADV_POLICY_FILTER_ALL_REQS);
-		controllerStatus = CONNECTED;
 	} else {
-		printf("Security failed %d\r\n", status);
+		//printf("Security failed %d\r\n", status);
 	}
 }
 
 static void securitySetupInitiatedCallback(Gap::Handle_t, bool allowBonding, bool requireMITM, SecurityManager::SecurityIOCapabilities_t iocaps) {
-	printf("Security setup initiated\r\n");
+	// printf("Security setup initiated\r\n");
 }
 
 static void bleInitComplete(BLE::InitializationCompleteCallbackContext *params) {
@@ -143,11 +144,11 @@
 	controllerStatus = DISCONNECTED;
 
 	/**< Minimum Connection Interval in 1.25 ms units, see BLE_GAP_CP_LIMITS.*/
-    uint16_t minConnectionInterval = Gap::MSEC_TO_GAP_DURATION_UNITS(24);
+    uint16_t minConnectionInterval = Gap::MSEC_TO_GAP_DURATION_UNITS(20);
     /**< Maximum Connection Interval in 1.25 ms units, see BLE_GAP_CP_LIMITS.*/
-    uint16_t maxConnectionInterval = Gap::MSEC_TO_GAP_DURATION_UNITS(44);
+    uint16_t maxConnectionInterval = Gap::MSEC_TO_GAP_DURATION_UNITS(40);
     /**< Slave Latency in number of connection events, see BLE_GAP_CP_LIMITS.*/
-    uint16_t slaveLatency = 4;               
+    uint16_t slaveLatency = 4;
     /**< Connection Supervision Timeout in 10 ms units, see BLE_GAP_CP_LIMITS.*/ 
     uint16_t connectionSupervisionTimeout = 32 * 100;
     Gap::ConnectionParams_t connectionParams = {
@@ -298,7 +299,7 @@
 }
 
 void HIDController::queueCurrentReportData() {
-	if (!connected) return;
+	if (!connected()) return;
 	if (keyboardService) {
 		printf("queueCurrentReportData\r\n");
 		keyboardService->queueCurrentReportData();