Commit Graph

524 Commits (371f183a6a5d915617861c23cedcdbf0354a9072)

Author SHA1 Message Date
paul-szczepanek-arm ebe2439ff7 move deprecated funcs down, add replacement for encryption status 2018-01-19 14:58:07 +00:00
Vincent Coubard 818ec8c8ec BLE SM: Align CordioPalSecurityManager with PalSecurityManager and fill the blanks 2018-01-19 14:36:55 +00:00
Vincent Coubard 4fcb304f27 BLE SM: Fix rand end ediv length 2018-01-19 14:36:54 +00:00
paul-szczepanek-arm 49e1fc3932 moving pairing to its own group to match the other layers 2018-01-19 14:24:28 +00:00
Vincent Coubard 888a050381 BLE SM: Slight API adjustements and docs 2018-01-19 12:22:51 +00:00
paul-szczepanek-arm 4fb9593f9f removed todo 2018-01-19 12:13:09 +00:00
paul-szczepanek-arm 5fcf2a6cfb Merge branch 'palsm' of https://github.com/paul-szczepanek-arm/mbed-os into palsm 2018-01-19 11:40:29 +00:00
paul-szczepanek-arm 9e3797cb3c timeout pal funcs combined into single result on api side 2018-01-19 11:38:42 +00:00
Vincent Coubard 44a366d103 BLE SM: Fix compilation errors 2018-01-19 11:30:27 +00:00
paul-szczepanek-arm 8b36d5ed65 fixed non-matching types 2018-01-19 10:44:48 +00:00
paul-szczepanek-arm c3b434b3a2 fixed pal name of oob request 2018-01-19 10:40:59 +00:00
paul-szczepanek-arm b60a464785 constness and refs fixes 2018-01-19 10:38:27 +00:00
paul-szczepanek-arm ab056aa17e set io caps, removed redundant params from pairing request 2018-01-19 10:30:38 +00:00
paul-szczepanek-arm 081b99e80a link security reading from db to determine stats 2018-01-18 23:33:19 +00:00
paul-szczepanek-arm 2fe405a2a8 propagated changes from pal to api and generic 2018-01-18 20:14:35 +00:00
paul-szczepanek-arm 9c1444f49c dropped redundant passkey num class 2018-01-18 20:13:49 +00:00
paul-szczepanek-arm 021a1fdf76 io caps and key size now stored by stack, secured cahgned to encrypted, moved passkey classes to pal 2018-01-18 17:40:08 +00:00
paul-szczepanek-arm 82c0847ab8 missed one pointer to pointer 2018-01-18 17:24:10 +00:00
paul-szczepanek-arm b88a2700de fixed the pointers to pointers 2018-01-18 17:23:31 +00:00
paul-szczepanek-arm b63930f53f fixed refs to arrays 2018-01-18 17:21:59 +00:00
paul-szczepanek-arm 3f26435ad9 pariring typo 2018-01-18 17:20:43 +00:00
paul-szczepanek-arm 779d6eb7ae updated old key_ditribution type and fixed refs to pointers 2018-01-18 17:19:59 +00:00
paul-szczepanek-arm dee47771fd updated implementations with new classes for auth and distribution masks 2018-01-18 15:42:50 +00:00
paul-szczepanek-arm 73e5f2d655 removed old events that are now only in legacy handling 2018-01-18 14:38:25 +00:00
paul-szczepanek-arm 01cdceb97f key distribution now a class 2018-01-18 12:08:33 +00:00
Paul Szczepanek 5a056a1351
Merge pull request #7 from pan-/palsm-cordio-implementation
Palsm cordio and Nordic implementation
2018-01-18 10:20:32 +00:00
paul-szczepanek-arm 25107b1ad8 todo 2018-01-17 22:19:45 +00:00
paul-szczepanek-arm 8db6427fde use common io caps type 2018-01-17 21:40:06 +00:00
paul-szczepanek-arm b00b746aa0 removed old type 2018-01-17 21:27:06 +00:00
paul-szczepanek-arm 2f04aece23 shared types in common header, connected up the events in handlers 2018-01-17 21:22:48 +00:00
Vincent Coubard 743e57ffaa Nordic BLE: Draft SM event handler. 2018-01-17 18:37:48 +00:00
Vincent Coubard 7e37cc739f Nordic BLE: SM pal function draft (legacy pairing) 2018-01-17 18:37:48 +00:00
Vincent Coubard 5277f5a0fd BLE: Fix signature of get_secure_connections_support in implementations. 2018-01-17 18:37:48 +00:00
Vincent Coubard 527a31663c BLE - Nordic: Add Skeleton for the security manager 2018-01-17 18:37:48 +00:00
Vincent Coubard ffb59eecb8 CORDIO BLE: Add PAL SM event handling (draft). 2018-01-17 18:37:47 +00:00
paul-szczepanek-arm 2fb67d2c7d authentication mask now a class, pairing and authenticating 2018-01-17 15:39:29 +00:00
paul-szczepanek-arm 49df59ebc1 deref pointer 2018-01-17 13:26:37 +00:00
paul-szczepanek-arm 42eeacbe7c remove redundant func 2018-01-17 13:15:15 +00:00
paul-szczepanek-arm 8197f09bd5 acoid creattion of passkey object to do the conversion 2018-01-17 12:38:35 +00:00
paul-szczepanek-arm 1a7e3faa18 fixed passkey classes 2018-01-17 12:28:48 +00:00
paul-szczepanek-arm 6420465c29 fix func calls args 2018-01-17 11:40:32 +00:00
paul-szczepanek-arm a3cf83ac02 key distribution 2018-01-17 11:38:36 +00:00
Vincent Coubard e2a2582549 BLE: Fix inclusion of BLE.h (case) 2018-01-17 11:31:50 +00:00
paul-szczepanek-arm 44f2f7b9d7 expose get number to avoid implicit casts for clarity 2018-01-17 11:25:32 +00:00
paul-szczepanek-arm 1bf0d7b921 display passkey handling, added null check to passkey contructor 2018-01-17 11:09:54 +00:00
paul-szczepanek-arm 00b1b17e62 removed broken assignment operator 2018-01-17 11:04:37 +00:00
paul-szczepanek-arm f8c9fe7329 get sc support in pal to match api 2018-01-17 10:52:24 +00:00
paul-szczepanek-arm d6a3347443 default state for legeacy pairing alllowed, removed obsolete code 2018-01-17 10:49:35 +00:00
paul-szczepanek-arm 9c6f57a733 name clash fixed 2018-01-17 10:48:07 +00:00
paul-szczepanek-arm 943206dd07 db restoring, legacy pairing disallowing, removed set SC support 2018-01-17 10:46:56 +00:00
paul-szczepanek-arm 11874aac3b whitelist generations needs to be async 2018-01-17 10:30:34 +00:00
paul-szczepanek-arm dcce428c40 conversion of passkeys, uniform calls 2018-01-16 19:39:25 +00:00
paul-szczepanek-arm c03c7fc587 Merge branch 'palsm' of https://github.com/paul-szczepanek-arm/mbed-os into palsm 2018-01-16 19:38:44 +00:00
Cruz Monrreal 671c2d7e90
Merge pull request #5346 from scartmell-arm/feature-hal-spec-critical-section
Add Critical Section HAL API specification
2018-01-16 12:49:38 -06:00
paul-szczepanek-arm 53f0b6a187 keypress notification setting 2018-01-16 18:16:15 +00:00
Vincent Coubard 9bd0fa5708 BLE Cordio: Fix call to SafeEnum<>::value() 2018-01-16 18:11:38 +00:00
Vincent Coubard e4b5681563 Cordio: Add SecurityManager singleton 2018-01-16 18:09:35 +00:00
Vincent Coubard c3c24d8641 Cordio: Implementation of base functions necessary for legacy pairing. 2018-01-16 18:04:40 +00:00
Vincent Coubard 0cd4f93041 Add skeleton of the PalSecurityManager for the Cordio Stack. 2018-01-16 17:19:26 +00:00
Vincent Coubard 6aa3d35d82 Set virtual specifier to on_keys_distributed . 2018-01-16 17:18:49 +00:00
paul-szczepanek-arm 83d582827d legacy pairing support call in api 2018-01-16 14:48:08 +00:00
paul-szczepanek-arm e02ae313ac added on_ prefixes, added split key distribution 2018-01-16 12:46:59 +00:00
paul-szczepanek-arm f9ed3b2456 passkey types fixed 2018-01-16 12:43:25 +00:00
Paul Szczepanek cc41857ab6
Merge pull request #3 from pan-/palsm-interface-improvement
Palsm interface improvement
2018-01-16 12:38:27 +00:00
paul-szczepanek-arm f93ed1087d split keys dsitribution, unirm on_ prefix, docs 2018-01-16 12:22:12 +00:00
Vincent Coubard f71490b59b Merge with palsm. 2018-01-16 12:19:41 +00:00
Vincent Coubard 75c7460575 Remove setPinCode function (not needed) and oob related functions. 2018-01-16 12:13:14 +00:00
Vincent Coubard 323bae44e1 Fixe compilation errors 2018-01-16 12:12:30 +00:00
Vincent Coubard 4df41f3ee8 Add mention of function that sets a default passkey. 2018-01-16 12:11:04 +00:00
paul-szczepanek-arm f33d93345b random data request 2018-01-16 11:50:49 +00:00
Vincent Coubard 9d08b2ddb3 Fixes:
* replace invalid using statement by typedef
* replace SecurityIOCapabilities_t by io_capability_t in send_pairing_response
* fix failure type in cancel_pairing
2018-01-16 11:29:38 +00:00
paul-szczepanek-arm 8e89dfbbfd redundant types removed 2018-01-16 11:23:36 +00:00
Vincent Coubard aede2a5680 Move ::SecurityManagerEventHandler and ::LegacySecurityManagerEventHandler into ::SecurityManager .
Fixes access right and compilation error.
2018-01-16 11:23:33 +00:00
paul-szczepanek-arm 4d3a4c530d removed bredr oob 2018-01-16 11:21:45 +00:00
paul-szczepanek-arm daab0b4fe1 fix error type name and unified connection handle name 2018-01-16 11:15:39 +00:00
paul-szczepanek-arm 52669fff98 match accept pairing with request pairing 2018-01-16 11:10:03 +00:00
Vincent Coubard d3ca4a9cb3
Merge branch 'palsm' into palsm-interface-improvement 2018-01-16 10:23:45 +00:00
paul-szczepanek-arm b95943b28e added more missing implementations for generic
removed virtual keyword since this is implementation
2018-01-15 22:32:57 +00:00
paul-szczepanek-arm 4dd5e7d124 match generic sm order with the rest, added missing set secure funcs 2018-01-15 22:17:05 +00:00
paul-szczepanek-arm a5d98d9c66 rearrange security manager so it matches pal, insert missing paring funcs 2018-01-15 22:05:44 +00:00
paul-szczepanek-arm 585f60d1fc missing irk added, authorisation for pairing optional, minor cleanup of names 2018-01-15 21:46:02 +00:00
paul-szczepanek-arm c86d13a7cc removed redundant param from pair req 2018-01-15 21:44:54 +00:00
paul-szczepanek-arm b818b87965 remove redundant pal api calls 2018-01-15 20:22:13 +00:00
Vincent Coubard e78840427a Add few new types.
Remove c192, r192, c256 and r256 references.
Refactor function names
2018-01-15 19:42:32 +00:00
paul-szczepanek-arm 92a83cf526 generic security manager implements the pal handler, added first db entry handler 2018-01-15 19:02:53 +00:00
paul-szczepanek-arm f308702b1d split security entry 2018-01-15 18:14:39 +00:00
Vincent Coubard 03f07bb7ce Refactor resolving list management.
Use address type from gap rather than BLEProtocol::AddressBytes_t .
2018-01-15 15:05:50 +00:00
Vincent Coubard 81904fd867 Remove bonded list storage from the adaptation layer.
Such processing should be handled at the upper layer.

Initiating encryption of a given connection should be made with the start
encryption command. This command accepts the parameters Rand, EDIV and
LTK.

A request of encryption request generate an LTK request event that is
forwarded to the upper layer which then reply with the LTK presents in the
Security DB or reject the request.
2018-01-15 14:36:32 +00:00
Vincent Coubard be664d1c33 Remove whitelist management: already present in the gap addaptation layer. 2018-01-15 14:32:12 +00:00
Vincent Coubard 1ee56f6b83 Convert SecurityManagerEventHandler into a pure interface.
Convert most functions of SecurityManager into virtual pure functions.
Protect access to the get_event_handler function and remove function set_app_event_handler.
2018-01-15 14:25:27 +00:00
paul-szczepanek-arm 2f49b66c52 callbacks allow updates 2018-01-15 11:45:52 +00:00
paul-szczepanek-arm 145fcc5791 security db iface draft 2018-01-15 08:31:33 +00:00
Daniel Schuler 271b09cda6 Add presentation format descriptor support for NRF52 2018-01-13 15:49:40 -08:00
paul-szczepanek-arm bbe408e82b naming fix 2018-01-12 15:55:26 +00:00
paul-szczepanek-arm 5474083469 use direct params not struct for pairing 2018-01-12 15:51:24 +00:00
paul-szczepanek-arm af4bdc7562 typo 2018-01-12 15:40:15 +00:00
paul-szczepanek-arm 8a01d8fcb0 encryption funcs 2018-01-12 15:32:11 +00:00
paul-szczepanek-arm b81a2b9fdb corrected list funcs 2018-01-12 14:55:13 +00:00
paul-szczepanek-arm 749e39b175 missing error messages for paring 2018-01-12 14:50:09 +00:00
paul-szczepanek-arm ff690ee8d6 removed redundant settings funcstions from pal 2018-01-12 14:17:57 +00:00
paul-szczepanek-arm ccd1c92bfe params needs to be ref 2018-01-12 13:37:54 +00:00
paul-szczepanek-arm ce6f032970 pairing params added 2018-01-12 12:41:43 +00:00
paul-szczepanek-arm c202076d1e clear up type confusion, added key funcs to pal 2018-01-12 12:00:34 +00:00
paul-szczepanek-arm 7325ca90fd make clear which event handler it is, remove pairing result as that's covered by security complete 2018-01-12 11:36:03 +00:00
paul-szczepanek-arm 9a948b73da minor name and compilation fixes 2018-01-12 11:18:26 +00:00
paul-szczepanek-arm a45237dc51 split interfaces 2018-01-11 18:45:27 +00:00
paul-szczepanek-arm 6655b67dd6 legacy oob and pairing cancel 2018-01-11 18:27:45 +00:00
Cruz Monrreal dc87f0b1e6
Merge pull request #5313 from pan-/ble-cordio-pal-gap
Cordio: Pal Gap implementation
2018-01-11 10:35:42 -06:00
Cruz Monrreal b32828bc37
Merge pull request #5739 from pan-/nordic-new-client
BLE: Nordic pal client implementation
2018-01-11 10:26:47 -06:00
paul-szczepanek-arm 8a0aba398b boilerplate 2018-01-11 13:17:47 +00:00
paul-szczepanek-arm da3ecfc2e4 add keysize set and split up settings 2018-01-11 11:54:21 +00:00
paul-szczepanek-arm 827af85476 fixed call 2018-01-10 18:01:41 +00:00
paul-szczepanek-arm 1e3c1a96ec fixed deafult event handler init and reset 2018-01-10 15:12:59 +00:00
Vincent Coubard d33b02818a BLE: Implement Generic GattClient reset logic. 2018-01-10 14:31:52 +00:00
Vincent Coubard 29988d5265 BLE: Align naming of GattClient procedure control blocks. 2018-01-10 14:18:00 +00:00
Vincent Coubard 3061db271d BLE: Put generic gattclient procedures inside the GattClient class 2018-01-10 14:15:08 +00:00
paul-szczepanek-arm 67d1148a56 added timeout changed pointers to refs 2018-01-09 16:55:12 +00:00
Steven Cartmell 061795c489 Move in_critical_section implementation into the HAL
- Add function to HAL hal_in_critical_section()
- Wrap assert in FEATURE_UVISOR macro
2018-01-09 10:41:29 +00:00
Vincent Coubard c5bc247217 Nordic BLE: Use SD API version rather than SDK define. 2018-01-08 14:00:23 +00:00
Vincent Coubard e9ba84168b Nordic BLE: Fix PalGattClient for SDK v13. 2018-01-08 13:52:42 +00:00
paul-szczepanek-arm b1f73b4a5c file rename to match class name 2018-01-08 12:12:47 +00:00
Vincent Coubard e8bad03a1c Nordic BLE: Simplification and clarification of pal client implementation. 2018-01-08 12:04:02 +00:00
Vincent Coubard 331e8f2aed BLE: Fix include dependency in UUID.h. 2018-01-08 12:01:30 +00:00
paul-szczepanek-arm 580bfdfcb2 authorisation for pairing 2018-01-08 11:40:27 +00:00
paul-szczepanek-arm 0dcb9efb3e add missing pal funcs, deprecate misnamed get link security 2018-01-08 11:28:48 +00:00
paul-szczepanek-arm a268b6b831 decided to keep auth and sec mode and ditch ssp 2018-01-08 10:44:32 +00:00
paul-szczepanek-arm 2a05581177 no auth needed, security status for att 2018-01-07 23:18:14 +00:00
paul-szczepanek-arm 9863d71f44 requesting pair, force sc option 2018-01-07 22:22:55 +00:00
paul-szczepanek-arm e1676dc1cc added MITM to user facing security manager api 2018-01-05 17:32:49 +00:00
Steven Cartmell e14bee5209 Fix potential race condition in critical section HAL API
Call underlying HAL implementation to enter critical section/disable interrupts
before incrementing the global critical section counter.

Modify HAL implementations to track first entrances to the critical section and
only update the saved state on first enter.
2018-01-05 14:55:58 +00:00
Steven Cartmell 3c9ae7bf1c NRF51_DK: Add Critical Section HAL implementation 2018-01-05 14:55:57 +00:00
paul-szczepanek-arm e75042e3e4 handle legacy callbacks
this way you can have both old porting code and new app code and new porting code and old app code and they both work
2018-01-04 15:08:40 +00:00
paul-szczepanek-arm 69b248ae68 generic security manager using the pal 2018-01-03 18:04:22 +00:00
paul-szczepanek-arm eee2ddf709 class interface to avoid multiplying boilerplate code for the callbacks 2018-01-03 15:03:13 +00:00
paul-szczepanek-arm 6f7da0ce1d mitm callbacks 2018-01-02 17:54:22 +00:00
paul-szczepanek-arm ed405e1849 moving cbs to evt block 2017-12-22 16:41:45 +00:00
paul-szczepanek-arm 6fd1859881 draft pal 2017-12-22 16:37:28 +00:00
Vincent Coubard 70e5a14a4d BLE: Generic Gap - fix address management. 2017-12-21 17:39:25 +00:00
Vincent Coubard 65f74bf8ac BLE: Address GattClient comments
* invalid namespace name documentation
* vocabulary
* typo
* Add constants to improve readability
* Fix abort usages
2017-12-21 16:51:10 +00:00
Vincent Coubard 3fdb749a33 BLE: Remove old client implementation. 2017-12-20 16:27:12 +00:00
Vincent Coubard 865bd94fbd BLE: Enable Generic client on Nordic targets. 2017-12-20 16:26:40 +00:00
Vincent Coubard dea488b4f0 BLE: Introduce pal client adaptation layer for nordic targets. 2017-12-20 16:13:06 +00:00
Vincent Coubard b554fce00f BLE: Fix doxygen warnings. 2017-12-13 18:30:38 +00:00
Vincent Coubard c621a92a6a BLE: Put GapEvent into INVALID doxygen sections. 2017-12-13 16:15:21 +00:00
Vincent Coubard 82f669b61f BLE: Fix doxygen warnings.
Replace @important tag by @attention.
2017-12-13 16:14:16 +00:00
Martin Kojtal 5c01c3e59c
Merge pull request #5633 from paul-szczepanek-arm/master
BLE: added function converting error codes into strings
2017-12-12 17:42:10 +00:00
Martin Kojtal 484b4a29d1
Merge pull request #5311 from pan-/ble-generic-gap
BLE: Add generic GAP implementation.
2017-12-12 17:38:06 +00:00
paul-szczepanek-arm 4ac75bd7b2 added function converting error codes into strings 2017-12-01 15:25:21 +00:00
Martin Kojtal 9f8ac6523c
Merge pull request #5300 from pan-/ble-pal-event-queue
Ble pal event queue
2017-11-30 18:16:45 +00:00
Martin Kojtal 969f8af386
Merge pull request #5589 from pan-/ble-nordic-set-description-handle
Nordic: Set handle of user description descriptors.
2017-11-30 18:07:48 +00:00
Martin Kojtal 1498a807c7
Merge pull request #5592 from pan-/ble-nordic-fix-gatt-server-write
BLE: Fix GattServer::write on Nordic targets.
2017-11-30 18:05:27 +00:00
Vincent Coubard 6c015b98c9 BLE: Fix greater than or equal to comparision in GattCharacteristic. 2017-11-27 19:08:33 +00:00
Vincent Coubard 6f19dea656 BLE: Fix GattServer::write on Nordic targets.
GattServer::write on Nordic's targets use sd_ble_gatts_hvx to send an
handle value Notification or Indication; This function can fail if the
connection handle is invalid or if Updates are not enabled for this
connection.

This patch workaround those limitations.
2017-11-27 18:56:51 +00:00
Vincent Coubard a665f3e06d Nordic: Set handle of user description descriptors. 2017-11-27 14:26:05 +00:00
Jimmy Brisson 1ea4e4c446
Merge pull request #5549 from pan-/ble-gatt-server-doc-update
Ble gatt server doc update
2017-11-22 10:21:11 -06:00
Jimmy Brisson 23408e40d1
Merge pull request #5299 from pan-/ble-generic-event-filter
Ble: generic event filter
2017-11-22 10:14:13 -06:00
Amanda Butler 8e7d74c91a
Update GattService.h
Fix minor typos.
2017-11-21 16:08:30 -06:00
Amanda Butler 1da844bdf9
Update GattServer.h
Copy edit, mostly for active voice and because American English treats collective nouns as singular.
2017-11-21 16:06:12 -06:00
Amanda Butler 70041c1fdc
Update GattCharacteristic.h
Make minor copy edits, mostly for American English.
2017-11-21 15:41:06 -06:00
Amanda Butler 036ea46c8f
Update GattAttribute.h
Make minor copy edits for precise language and active voice.
2017-11-21 15:03:03 -06:00
Vincent Coubard d153af332c BLE: Update GattServer documentation. 2017-11-21 18:30:08 +00:00
Vincent Coubard c4351d31d8 BLE: Update GattAttribute documentation. 2017-11-17 14:39:39 +00:00
Martin Kojtal 2a7fcdfe48
Merge pull request #5296 from pan-/generic-access-service-abstraction-layer
BLE: Generic access service abstraction layer
2017-11-16 16:22:29 +00:00
Martin Kojtal 81dbd035ab
Merge pull request #5392 from pan-/improve-ble-docs
Improve ble docs
2017-11-16 16:21:50 +00:00
Martin Kojtal b76b3f723d
Merge pull request #5472 from pan-/doc_battery_service
BLE: Update BatteryService documentation.
2017-11-16 16:17:50 +00:00
Amanda Butler a855251cba
Copy edit HeartRateService.h
Make minor copy edits.
2017-11-13 04:12:03 -06:00
Vincent Coubard 93a4a2a87b BLE: update heart rate service definition.
This patch includes:
* Documentation update.
* Code simplification and correctness; the value overloads based on the
  size of the hrm counter has been removed in favor of runtime check which
  is more correct.
* The control point characteristic has been removed since HeartRate value
  byte does not support the accumulated energy expanded.
2017-11-10 15:38:39 +00:00
Vincent Coubard 220652ffac BLE: Fix assertion in Battery service. 2017-11-10 11:02:48 +00:00
Amanda Butler 521345307b
Copy edit BatteryService.h
Make minor copy edits, mostly for active voice and U.S. spelling.
2017-11-09 12:39:18 -06:00
Vincent Coubard 423cd23ec0 BLE: Update BatteryService documentation. 2017-11-09 18:08:32 +00:00
Martin Kojtal 82f5b58f4c
Merge pull request #5295 from pan-/GAP-platform-abstraction-layer
BLE: Gap platform abstraction layer
2017-11-09 16:54:11 +00:00
Amanda Butler 3dc28ce01b
Copy edit GattCharacteristic.h
Copy edit file.
2017-11-08 15:09:00 -06:00
Amanda Butler bdf0cbb3c9
Copy edit GapAdvertisingData.h
Copy edit file.
2017-11-08 14:58:38 -06:00
Amanda Butler 6f7f5ae57e
Copy edit GattClient.h
Make copy edits to file.
2017-11-08 14:14:04 -06:00
Amanda Butler 3a80f8b823
Copy edit Gap.h
Copy edit file.
2017-11-08 11:32:31 -06:00
Amanda Butler 6e20887724
Copy edit GattServer.h
Copy edit, mostly for consistent tense and hyphenation.
2017-11-07 17:56:44 -06:00
Amanda Butler 5178f89c8b
Copy edit GattCallbackParamTypes.h
Copy edit for active voice.
2017-11-07 17:42:40 -06:00
Amanda Butler 91fa78d980
Copy edit GapScanningParams.h
Copy edit, mostly for consistent tense across documents.
2017-11-07 17:33:16 -06:00
Amanda Butler 9052cf45c3
Copy edit GattAttribute.h
Make minor copy edits for active voice and phrasing.
2017-11-07 17:27:41 -06:00
Amanda Butler fcb50dd5c8
Copy edit ServiceDiscovery.h
Make minor copy edits, mostly for consistent tense.
2017-11-07 17:24:17 -06:00
Amanda Butler 1720a484dd
Copy edit UUID.h
Copy edit, mostly for consistent tense and consistent use of hyphens.
2017-11-07 17:00:34 -06:00
Amanda Butler 71bc3f74da
Copy edit blecommon.h
Copy edit, mostly for consistent punctuation.
2017-11-07 16:33:49 -06:00
Amanda Butler 4702ff2070
Copy edit GapAdvertisingParams.h
Make minor copy edits, mostly for active voice and comma use.
2017-11-07 16:31:09 -06:00
Amanda Butler 6e455417d3
Copy edit SafeBool.h
Make minor copy edits, mostly for nonrestrictive clauses.
2017-11-07 16:25:45 -06:00
Amanda Butler 739b59b598
Copy edit GattService.h
Change passive to active voice.
2017-11-07 16:20:36 -06:00
Amanda Butler 69a06a9f52
Copy edit GattServerEvents.h
Make minor copy edits for active voice, brevity and comma use.
2017-11-07 16:18:23 -06:00
Amanda Butler bd39a6eb75
Copy edit FunctionPointerWithContext.h
Make minor copy edits, mostly for consistent tense across documentation.
2017-11-07 16:10:29 -06:00
Amanda Butler 4bf95bc3f8
Copy edit DiscoveredService.h
Make minor copy edits, mostly for active voice and branding.
2017-11-07 15:59:37 -06:00
Amanda Butler 7a4ac93eb1
Copy edit DiscoveredCharacteristicDescriptor.h
Copy edit, mostly for active voice.
2017-11-07 15:56:05 -06:00
Amanda Butler 08ba159cf6
Copy edit DiscoveredCharacteristic.h
Make minor copy edits, mostly for active voice and American English.
2017-11-07 15:52:43 -06:00
Amanda Butler c9931f3643
Copy edit CharacteristicDescriptorDiscovery.h
Make minor copy edits, mostly for active voice.
2017-11-07 15:34:57 -06:00
Amanda Butler 0f91ea2b2a
Copy edit CallChainOfFunctionPointersWithContext.h
Make minor copy edits, mostly for typos.
2017-11-07 15:30:27 -06:00
Vincent Coubard 3cbe3918e7 BLE: Update BLE.h comments.
* processEvents: Remove reference to mbed OS 3.
* Clarify documentation of waitForEvent.
2017-11-06 14:37:58 +00:00
Vincent Coubard b0094ac0d3 BLE: Fix initialization of GattHVXCallbackParams in Nordic port. 2017-11-03 12:35:33 +00:00
Jimmy Brisson a9b594b428
Merge pull request #5410 from pan-/deprecate-gap-events
BLE: Deprecate GapEvent
2017-11-02 10:44:15 -05:00
Jimmy Brisson 7583107317
Merge pull request #5409 from pan-/fix-ibeacon-doc
BLE: Update iBeacon documentation.
2017-11-02 10:43:54 -05:00
Vincent Coubard c8747aad0f Cordio: Use GenericGap instead of CordioGap. 2017-10-31 17:40:01 +00:00
Vincent Coubard e9170e6507 BLE: Cordio fix default connection handle for GattServer write and areUpdatesEnabled 2017-10-31 17:40:00 +00:00
Vincent Coubard c30eee0f03 BLE: Cordio implementation of ble::pal::Gap. 2017-10-31 17:40:00 +00:00
Vincent Coubard 0d0cdb6f8e BLE: Cordio implementation of pal::GenericAccessService. 2017-10-31 17:40:00 +00:00
Vincent Coubard 1b7a3ffa02 BLE: Add generic GAP implementation.
Generic implementation of the GAP class. It allows porters to have a working Gap
implementation by implementing the following abstraction layer primitives:
- pal::Gap: Adaptation for GAP related primitives.
- pal::EventQueue: simple interface to the inner event queue of the stack.
  pal::SimpleEventQueue can also be used as an implementation.
- pal::GenericAccessService: Accessors to the Generic Access Service present in
  the GATT server.
2017-10-31 17:39:14 +00:00
Vincent Coubard 953739c026 BLE: Event Queue interface at the pal level.
To help generic code, an interface of an event queue at the PAL level has been
added. Implementation can either rely on the event mechanism internal to the
stack or use the SimpleEventQueue implementation provided by this patch.
2017-10-31 17:38:04 +00:00
Vincent Coubard 63668cb7d2 BLE: Add generic event filter.
This filter prevent events to be signaled multiple times to the upper layer. It
also signal events to a newly set event processor hook.
2017-10-31 17:37:05 +00:00
Vincent Coubard 0025b685ea BLE: Generic Access Service Adaptation layer
Add an abstraction which manage the state of the GAP service exposed by the GATT server.
2017-10-31 17:35:37 +00:00
Vincent Coubard 744abca8ff BLE: Adaptation interface of the GAP layer.
This interface expose the primitives needed to realize operations defined in
the GAP layer. Data types, event and function definitions follow closely HCI
commands and events defined in the Bluetooth specification.
2017-10-31 17:32:01 +00:00
Vincent Coubard 3ad3942810
BLE: Fix typos in iBeacon documentation. 2017-10-31 16:50:07 +00:00
Vincent Coubard 65bb642c81 BLE: Deprecate GapEvent
This class and its components are not used by BLE API and never been used in the
last two years.

This patch deprecate all the components in GapEvent.h and exclude its definitions
from the documentation process.
2017-10-31 16:39:24 +00:00
Amanda Butler 0042cd8751
Copy edit iBeacon.h
Make minor copy edits.
2017-10-31 11:27:23 -05:00
Vincent Coubard 5d26ea50f3 BLE: Fix conjugation and spelling of iBeacon documentation. 2017-10-31 13:19:16 +00:00
Vincent Coubard 699ad9c29c BLE: iBeacon minor edit. 2017-10-31 11:55:31 +00:00
Vincent Coubard 62e984bdb3 BLE: Update iBeacon documentation.
Provide detailled description of the purpose, general concepts and usage.
2017-10-31 11:43:16 +00:00
Amanda Butler 25ad0f3959
Copy edit BLEInstanceBase.h
Make minor copy edits.
2017-10-30 17:26:48 -05:00
Amanda Butler 96429c5212
Copy edit BLE.h
Make minor copy edits, mostly for active voice and consistent comma use across docs.
2017-10-30 14:26:55 -05:00
Amanda Butler 2038e72782
Copy edit ArrayView.h
Copy edit, mostly for active voice and agreement.
2017-10-30 11:03:15 -05:00
Vincent Coubard 3c3592a9d3 BLE: Update documentation.
Fix typos, spelling and conjugation.
2017-10-30 15:40:58 +00:00
Gabor Kertesz 0e2f5b938d Beetle BLE: Fix variable length GATT attribute
Variable length flag was lost during attribute settings,
so variable length GATT attributes should have been set
to the predefined maximum length.
This fixes issue #86.

Change-Id: Ia0cd236ecd903fdb9e62a21bffef57d1e63764b9
2017-10-30 13:53:12 +01:00
Vincent Coubard 67b47cad87 BLE: Group GattServer documented elements 2017-10-27 14:37:57 -05:00
Vincent Coubard 1c2685c2ac BLE: Improve GattClient.h documentation. 2017-10-27 14:37:02 -05:00
Vincent Coubard 075e1dbdd9 BLE: Improve Gap.h documentation. 2017-10-27 14:35:51 -05:00
Vincent Coubard e4a097f4ee BLE: Imrpove deprecated.h documentation. 2017-10-27 14:34:51 -05:00
Vincent Coubard 7f22d25018 BLE: Improve GattServerEvents.h documentation. 2017-10-27 14:33:54 -05:00
Vincent Coubard a7b4d6accd BLE: Improve GattCallbackParamTypes.h documentation. 2017-10-27 14:32:53 -05:00
Vincent Coubard e3252da515 BLE: Improve ServiceDiscovery.h documentation. 2017-10-27 14:31:43 -05:00
Vincent Coubard a03192f625 BLE: Improve UUID.h documentation. 2017-10-27 14:30:41 -05:00
Vincent Coubard 76722fe30a BLE: Improve SafeBool.h documentation. 2017-10-27 14:29:39 -05:00
Vincent Coubard 4209e88b9e BLE: Improve GapScanningParams.h documentation. 2017-10-27 14:28:37 -05:00
Vincent Coubard 282740a1c5 BLE: Improve GapAdvertisingParams.h documentation. 2017-10-27 14:27:35 -05:00
Vincent Coubard ae7a5eef62 Update GapAdvertisingData.h 2017-10-27 14:27:09 -05:00
Vincent Coubard 95950ada43 BLE: Improve FunctionPointerWithContext.h documentation. 2017-10-27 14:26:14 -05:00
Vincent Coubard d7936e1df3 BLE: Improve DiscoveredService.h documentation. 2017-10-27 14:25:21 -05:00
Vincent Coubard b163f321ad BLE: Improve DiscoveredCharacteristicDescriptor.h documentation. 2017-10-27 14:24:21 -05:00
Vincent Coubard 9577735f7a BLE: Improve CharacteristicDescriptorDiscovery.h documentation. 2017-10-27 14:23:24 -05:00
Vincent Coubard b193f9bd64 BLE: Improce DiscoveredCharacteristic.h documentation. 2017-10-27 14:21:57 -05:00
Vincent Coubard 4a21b74685 BLE: Improve CallChainOfFunctionPointersWithContext.h documentation. 2017-10-27 12:23:43 -05:00
Vincent Coubard e0b28ea583 BLE: Update BLETypes.h documentation. 2017-10-27 12:21:43 -05:00
Vincent Coubard d0b57d7628 BLE: Update BLEProtocol documentation 2017-10-27 12:20:26 -05:00
Vincent Coubard fef7bf8bae BLE: Update BLEInstanceBase documentation. 2017-10-27 12:19:12 -05:00
Vincent Coubard c49c71ce5d BLE: Update blecommon documentation. 2017-10-27 12:16:13 -05:00
Vincent Coubard 37c26a2722 BLE: Improve BLE.h documentation.
- The class has been documented with a detailed example and explanation of its
responsabilities.
- Members have been reordered and regrouped logically.
- Deprecated annotation has been added to relevant members.
- BLE::BLE, BLE::waitForEvent has been deprecated to match with their existing
description.
2017-10-27 12:13:59 -05:00
Vincent Coubard 7254ceb01b BLE: Improve ArrayView documentation.
- Improve detailed description of the class.
- Add undefined params tparams and return documentation.
- Add pre and postcondition when valuable.
- Put the elements of the file in the ble.common group.
2017-10-27 12:11:06 -05:00
Vincent Coubard a917b90e0b BLE: Add safe Enum abstraction. 2017-10-15 16:37:38 +01:00
Akos Kiss 87a2b5bd6f Fix documentation of BLE GattCharacteristic
The constructor doc incorrectly suggested that only short (16-bit)
UUIDs were accepted. The same doc also referred to properties
instead of characteristics. (And to "value length", which seemed to
be completely out of place in the context of the current code.)
2017-10-05 11:15:30 +02:00
Jimmy Brisson f0a10750d7 Merge pull request #4990 from akosthekiss/ble-uart-flush
Add flush to the BLE UART Service
2017-09-28 14:01:15 -05:00
Vincent Coubard 75c9dfce68 BLE: Add Cordio port.
It allows mbed users to enable BLE on targets with an external BLE module.
2017-09-26 15:20:17 +01:00
Vincent Coubard aa0b5d5a22 BLE: Fix space 2017-09-26 15:20:16 +01:00
Vincent Coubard 512dd8c387 BLE: Add collection of basic BLE types shared accross all layers. 2017-09-26 15:20:15 +01:00
Vincent Coubard daaa5b1977 BLE: Introduce GenericGattClient and platform abstraction over ATT/GATT.
This changes introduce a platform adaptation over ATT/GATT that can be implemented by porter.
Unlike the GattClient interface, the ATT/GATT adaptation is simple, follow closely the Bluetooth specification and won't change over time.
Implementation of the GattClient interface is realized by the class GenericGattClient which accept in input a pal::GattClient.

This change will also free design space once adopted by partners, addition to the GattClient interface won't require partner support.
2017-09-26 15:20:15 +01:00
Vincent Coubard 38bb6b4e52 BLE: Add error code management in Gatt read and write data structures.
Also fix wrong usage of designed initializer in CPP files.
2017-09-26 15:20:15 +01:00
Vincent Coubard 85e88ccb2c BLE NRF: Fix wrong usage of designed initializer in cpp code. 2017-09-26 15:20:15 +01:00
Vincent Coubard 1fd953e33c BLE: Use shared type ble_attribute_handle_t in GattAttribute. 2017-09-26 15:20:15 +01:00