new version for central test two peripherals

Dependencies:   BLE_API mbed nRF51822

Fork of BLE_Nano_Central_Type3 by Francesco Pavoni

Revision:
6:d37a6e3c17c4
Parent:
5:68a31613f28a
--- a/main.cpp	Thu Jun 02 10:17:33 2016 +0000
+++ b/main.cpp	Thu Jun 02 15:42:04 2016 +0000
@@ -130,10 +130,12 @@
    * @return   BLE_ERROR_NONE if service discovery is launched successfully; else an appropriate error.
    */
    pc.printf("start discovery \r\n");
-  if(device_is_hrm)
-    ble.gattClient().launchServiceDiscovery(handle, discoveredServiceCallBack, discoveredCharacteristicCallBack, service_uuid, chars_uuid1);
-  if(device_is_simple_peripheral)
-    ble.gattClient().launchServiceDiscovery(handle, discoveredServiceCallBack, discoveredCharacteristicCallBack);
+  if(device_is_hrm) {
+     pc.printf("device_is_hrm \r\n");
+    ble.gattClient().launchServiceDiscovery(handle, discoveredServiceCallBack, discoveredCharacteristicCallBack, service_uuid, chars_uuid1);}
+  if(device_is_simple_peripheral){
+    pc.printf("device_is_simple_peripheral \r\n");
+    ble.gattClient().launchServiceDiscovery(handle, discoveredServiceCallBack, discoveredCharacteristicCallBack);}
 }
 
 /**
@@ -158,27 +160,39 @@
     if( NRF_SUCCESS == ble_advdata_parser(BLE_GAP_AD_TYPE_COMPLETE_LOCAL_NAME,
                              params->advertisingDataLen,
                             (uint8_t *)params->advertisingData, &len, adv_name)){
+            pc.printf("NRF_Success \r\n");
 
 // Cycle fo rconnect two peripheral 
         for(uint8_t i=0; i<2; i++){
+            pc.printf("Cycle go connect \r\n");
             if(gs_peripheral[i].connected == false){
+                pc.printf("If connect == false -> Connect \r\n");
                 memcpy(gs_peripheral[i].address, params->peerAddr, sizeof(params->peerAddr)); 
                 gs_peripheral[i].deviceName = adv_name;
                 ble.connect(params->peerAddr, BLEProtocol::AddressType::RANDOM_STATIC, NULL, NULL);
+                // (5) forsatura da eliminare
+                device_is_simple_peripheral = 1;
+
+                
                 // new edit add FP
                 // (2) Make set name peripheral with button
                 if( memcmp("TXRX", adv_name, 4) == 0x00 ) {
+                          pc.printf("peripheral type simpleControl \r\n");
                           device_is_simple_peripheral = 1;
+                          // On Led 4
                     }
                     // (3) make set name peripheral with sensor 
                     if(memcmp("Nordic_HRM", adv_name, 10) == 0x00) {
+                              pc.printf("peripheral type Nordic_HRM \r\n");
                               device_is_hrm = 1;
+                              // On led 5
                         }
                         // end
                     
                 break;
             }
         }
+        pc.printf("Stop Scan \r\n");
         ble.stopScan();
     }
 }
@@ -305,16 +319,20 @@
     // (4) change serial.print -> println how make ?
     // New edit FP
     if(characteristicP->getUUID().shortOrLong() == UUID::UUID_TYPE_SHORT) {
+        pc.printf("characteristicDiscoveryCallback -1- \r\n");
     //Serial.println(chars->getUUID().getShortUUID(), HEX);
     if(characteristicP->getUUID().getShortUUID() == 0x2A37) {
+        pc.printf("characteristicDiscoveryCallback -2- \r\n");
       //Serial.println("Found HRM characteristic ");
       characteristic_is_fond = 1;
       chars_hrm = *characteristicP;
     }
   } else {
+    pc.printf("characteristicDiscoveryCallback -3- \r\n");
     uint8_t index;
     const uint8_t *uuid = characteristicP->getUUID().getBaseUUID();
     for(index=0; index<16; index++) {
+     pc.printf("characteristicDiscoveryCallback -4- \r\n");
      // Serial.print(uuid[index], HEX);
       //Serial.print(" ");
     }
@@ -324,7 +342,9 @@
    
    
     for(uint8_t i=0; i<2; i++){
+         pc.printf("characteristicDiscoveryCallback -5- \r\n");
         if(gs_peripheral[i].connected){
+            pc.printf("characteristicDiscoveryCallback -6- \r\n");
             ble.gattClient().read(characteristicP->getConnectionHandle(), characteristicP->getValueHandle(), 0);
         }
     }