changed low freq. clock source to IRC
Dependencies: BLE_API mbed nRF51822_IRC
Fork of BLE_ANCS_SDAPI by
README.txt
- Committer:
- ytsuboi
- Date:
- 2014-07-06
- Revision:
- 2:6d0f581488b6
- Parent:
- 1:f0edc06f2d29
File content as of revision 2:6d0f581488b6:
INTRODUCTION ============ This is a POC (Proof of Concept) for implementing ANCS (Apple Notification Center Service)with mbed HRM1017 platform. The code is not meant to be use for implementation, whatsoever. I'm not intent to further enhancing this code. The sole purpose is to show that we can use SoftDevice client api for doing ANCS with NRF51822-mkit. (At this time, BLE API doesn't expose Gatt Client API) This program code are bypassing mbed BLE API and use Soft Device (S110) Gatt Client API directly. If you want to explore the code, S110 API Reference will be handy. I know, there are many bugs, and things not implemented correctly. But again, the purpose of this code is just to show thant Gatt Client API is indeed doable. WHAT NEXT? ========== Since with this code, ANCS with mbed (NRF51822-mkit) is doable, the next step is to implement GATT CLIENT API on mbed BLE API. That should make programming more understandable (and perhaps portable to other platform) than using SD API directly. HOW TO TEST THIS OUT? ===================== You gonna need: 1. iOS7 (iPhone/iPad) *recomended: iPush Test, free app to generate test notification. but if you can generate notification by yourself anything will be sufficient. 2. mbed HRM1017, connected to PC (9,600bps) (debug log and the notification itself will be print out via usb com port). *teraterm etc is needed to access com port. (depend on your platform) Ready for the action! 1. Compile the code, transfer the hex file to mbed. 2. Use teraterm etc, to connect to mbed com port. 3. It will automatically reset. LED1(advertise) should turn on. You should see Appendix 1 Log. 4. On iOS7, select "Settings", "Bluetooth". You should see "ANCC" on the devices list. Click it to connect. LED2(connected) should turn on. 5. A Dialog will appear: "Bluetooth Pairing Request" Press "Pair" You should see Appendix 2 Log. That's it you ready to receive notification. There's a free app on app store for generating push notification. Search "push test" on app store. 6. Run iPush Test app 7. Click "Local Push Test" 8. You will receive notification in about 1 minute. Appendix 1 (Program Start Log) ============================== Program started timers_init() ble_stack_init() gap_params_init() set_128_uuid() advertising_init() conn_params_init() sec_params_init() advertising_start() Appendix 2 (iOS Connect and Pairing) ==================================== Event: BLE_GAP_EVT_CONNECTED (Connection established.) Event: BLE_GATTC_EVT_PRIM_SRVC_DISC_RSP (Primary Service Discovery Response event.) Found ANCS service, start handle: 15, end handle: 24 Event: BLE_GATTC_EVT_CHAR_DISC_RSP (Characteristic Discovery Response event.) Found char: Control PointEvent: BLE_GATTS_EVT_WRITE (Write operation performed.) Event: BLE_GATTC_EVT_CHAR_DISC_RSP (Characteristic Discovery Response event.) Found char: Notification SourceEvent: BLE_GATTC_EVT_CHAR_DISC_RSP (Characteristic Discovery Response event.) Found char: Data SourceEvent: BLE_GATTC_EVT_CHAR_DISC_RSP (Characteristic Discovery Response event.) Event: BLE_GATTC_EVT_DESC_DISC_RSP (Descriptor Discovery Response event.) Found NS CCC Event: BLE_GATTC_EVT_DESC_DISC_RSP (Descriptor Discovery Response event.) Found DS CCC Event: BLE_GAP_EVT_SEC_PARAMS_REQUEST (Request to provide security parameters.) Event: BLE_GAP_EVT_AUTH_STATUS (Authentication procedure completed with status.) Event: BLE_GAP_EVT_CONN_SEC_UPDATE (Connection security updated.) Event: BLE_GATTC_EVT_WRITE_RSP (Write Response event.) NS subscribe success. Event: BLE_GATTC_EVT_WRITE_RSP (Write Response event.) DS subscribe success. Appendix 3 (Receiving Notification) =================================== Event: BLE_GATTC_EVT_HVX (Handle Value Notification or Indication event.) Event ID: 0 (Notification Added) Event Flags: 0 ((no flags)) Category ID: 0 (Other) Category Count: 1 Notification ID: 6 0 0 0 Event: BLE_GATTC_EVT_WRITE_RSP (Write Response event.) CP write success. Event: BLE_GATTC_EVT_HVX (Handle Value Notification or Indication event.) Title:(10)iPush Test Link ==== 1. ANCS https://developer.apple.com/library/ios/documentation/CoreBluetooth/Reference/AppleNotificationCenterServiceSpecification/Introduction/Introduction.html