paul-szczepanek-arm
c8d8c4e159
merge failure fix
2019-02-27 21:00:10 +00:00
paul-szczepanek-arm
9e710d4309
git review changes
2019-02-27 20:59:35 +00:00
paul-szczepanek-arm
208eb200f1
gatt client signing
2019-02-27 20:57:09 +00:00
paul-szczepanek-arm
3e03c11832
guard class fields with ifs
2019-02-27 20:55:58 +00:00
paul-szczepanek-arm
33e8826361
whitelist feature
2019-02-27 19:46:43 +00:00
paul-szczepanek-arm
bc69e15638
revert accidental changes
2019-02-27 19:46:42 +00:00
paul-szczepanek-arm
dc3aba181e
fix BLE_CONNECTABLE_FEATURE macro
2019-02-27 19:46:12 +00:00
paul-szczepanek-arm
5a97706aab
added #if guards to cordio ble
2019-02-27 19:46:12 +00:00
paul-szczepanek-arm
bed567825f
connectable is a feature not role
2019-02-27 19:31:47 +00:00
paul-szczepanek-arm
b60eaf14a2
require macros to be defined
2019-02-27 19:31:47 +00:00
paul-szczepanek-arm
9a22db0e96
implied features
2019-02-27 19:31:46 +00:00
paul-szczepanek-arm
212e9477d3
require at least one role observer or broadcaster
2019-02-27 19:31:46 +00:00
paul-szczepanek-arm
aefab05e5a
add all the features and rename existing non-roles to features
2019-02-27 19:31:46 +00:00
Steve Cartmell
72d28d920a
feat(ble): Guard out Observer code when role is disabled
2019-02-27 19:29:51 +00:00
Steve Cartmell
5d73a03a64
feat(ble): Guard out SecurityManager code when role is disabled
2019-02-27 19:24:40 +00:00
Steve Cartmell
73f7ffb124
feat(ble): Guard out GattServer code when role is disabled
2019-02-27 19:24:39 +00:00
Steve Cartmell
6e301ce148
feat(ble): Guard out GattClient code when role is disabled
2019-02-27 19:23:31 +00:00
Steve Cartmell
9806f91ecf
feat(ble): Add preprocessor check to determine enabled roles are valid
...
A number of BLE roles depend on each other, checking within the target
configuration file for a valid configuration is infeasible. Move the
validation to the preprocessor and fail to compile if some required
roles are not enabled.
2019-02-27 19:00:08 +00:00
Vincent Coubard
04d26f7ab5
BLE - Devirtualize ::ble::generic::GenericSecurityManager
...
Two parameters are expected by the template:
- TPalSecurityManager a template class of the security manager of the form TPalSecurityManager<EventHandler>. The GenericSecurityManager is the event handler.
- SigningMonitor a template in the form SigningMonitor<Handler>.
2019-02-26 13:18:17 +00:00
Vincent Coubard
b135074821
BLE - Devirtualize ble::generic::GattClient
...
GenericGattClient is parametized by two types:
- The template of the PalGattClient
- The SigningMonitorEventHandler
Note that the PalGattClient template must be of the form PalGattClient<EventHandler>. The event handler being the GenericGattClient.
2019-02-26 13:18:17 +00:00
Vincent Coubard
39e938bf8e
BLE - Devirtualize ble::generic::GenericGap
...
Expected types are similar to the type expected by the constructor:
- PalGap
- PalSecurityManager
- ConnectionEventMonitorEventHandler
Note that for the PalGap we expect a **template** of the form PalGap<EventHandler>
2019-02-26 13:18:17 +00:00
Vincent Coubard
e70fb27d55
BLE - cleanup includes.
2019-02-26 13:18:17 +00:00
Vincent Coubard
7796e733ad
BLE - Devirtualize ::SecurityManager
...
The interface now lives in ::ble::interface::SecurityManager. The implementation type is expectected to exported as ble ::ble::impl::SecurityManager by the implementation.
2019-02-26 13:18:17 +00:00
Vincent Coubard
6d2592a137
BLE - Devirtualize ::GattServer.
...
The interface is defined in ::ble::interface::GattServer and an implementation must export the implementation type ::ble::impl::GattServer.
2019-02-26 13:18:17 +00:00
Vincent Coubard
e56fd682a1
BLE - Devirtualize ::GattClient
...
Interface definition now lives in ble::interface::GattClient. An implementation must export the implementation type in ::ble::impl::GattClient.
2019-02-26 13:18:17 +00:00
Vincent Coubard
43e87fb04d
BLE - Devirtualize ::ble::Gap
...
The interface definition now lives in ::ble::interface::Gap.
The implementation must export the implementation types as ::ble::impl::Gap.
2019-02-26 13:18:17 +00:00
Vincent Coubard
1ad726322f
BLE - Devirtualization of ::Gap
...
The interface definition now lives in ::ble::interface::LegacyGap. Implementation must export the implementation type as ble::impl::LegacyGap.
2019-02-26 13:18:17 +00:00
Vincent Coubard
2d007eee42
BLE - Devirtualize pal::SigningEventMonitor
...
The event handler has been extracted out of SigningEventMonitor declaration and SigningEventMonitor instantion requires the implementation and event handler type.
2019-02-26 13:18:17 +00:00
Vincent Coubard
50de4c8a44
BLE - Devirtualize pal::SecurityManager
...
The event handler has been extracted out of SecurityManager declaration and instantion of the interface requires the implementation and event handler type.
2019-02-26 13:18:17 +00:00
Vincent Coubard
e1371f8149
BLE - Devirtualize pal::GattClient
...
The event handler has been taken out of GattClient declaration and an instantiation requires the actual implementation and the type that handle events.
2019-02-26 13:18:17 +00:00
Vincent Coubard
0749100676
BLE - Devirtualize pal::Gap
...
The event handler has been taken out of Gap declaration and the instantiation must provide an implementation and the type that plays the event handler role.
2019-02-26 13:18:17 +00:00
Vincent Coubard
6514bbd1f0
BLE - Devirtualize pal::ConnectionEventMonitor
...
The event handler has been extracted out of the monitor declaration.
2019-02-26 13:18:17 +00:00
Vincent Coubard
71b8d8a2f3
BLE - devirtualize pal::AttClientToGattClientAdapter
2019-02-26 13:18:17 +00:00
Vincent Coubard
333a31507b
BLE - devirtualize pal::AttClient
2019-02-26 13:18:17 +00:00
Vincent Coubard
7e78433cec
BLE - replace some usages of Gap::Handle_t by ble::connection_handle_t
2019-02-26 13:18:17 +00:00
Vincent Coubard
bc098d0272
BLE - add static interface helper.
2019-02-26 13:18:17 +00:00
Cruz Monrreal
b1d0d9e95c
Merge pull request #9776 from ConradBraam/adv_builder
...
adv builder helper now returns an object
2019-02-20 12:04:51 -06:00
Conrad Braam
57033ee91a
adv builder helper now returns an object
2019-02-20 13:54:38 +00:00
paul-szczepanek-arm
db4aecb275
fixed initialisation order
2019-02-19 17:26:43 +00:00
paul-szczepanek-arm
1cea53b6a7
use grandfathered convention for class members names and initialise them
2019-02-14 12:34:34 +00:00
paul-szczepanek-arm
3808db90b2
require pal event handler to be complete
2019-02-14 12:34:34 +00:00
paul-szczepanek-arm
03b747a6f6
Get the pal event handler from pal gattclient
2019-02-14 12:34:34 +00:00
paul-szczepanek-arm
b628285254
route mtu changed events to server and client instead of gap
2019-02-14 12:34:33 +00:00
paul-szczepanek-arm
a3f635eb88
fix type name
2019-02-14 12:34:33 +00:00
paul-szczepanek-arm
c10fc2eb8e
add API to trigger MTU negotiation
2019-02-14 12:34:33 +00:00
paul-szczepanek-arm
b6df6d54a1
change event names
2019-02-14 12:34:32 +00:00
paul-szczepanek-arm
06a2a403e9
fix typos
2019-02-14 12:34:31 +00:00
paul-szczepanek-arm
108d6908be
route ble events to gap
2019-02-14 12:34:31 +00:00
paul-szczepanek-arm
c452d8ff0e
add mtu events
2019-02-14 12:34:31 +00:00
Cruz Monrreal
b49d949b50
Merge pull request #9393 from pan-/fix-safe-enum-type-safety
...
BLE: Fix SafeEnum type safety
2019-01-28 10:31:52 -06:00
Cruz Monrreal
3b43a2d976
Merge pull request #9333 from offirko/offir_doxygen
...
Minor Doxygen fixes for BufferedBlockDevice and iBeacon
2019-01-17 21:51:14 -06:00
Martin Kojtal
284781a565
Merge pull request #9096 from pan-/fix-enforce-size-limits
...
BLE: Enforce advertising data payload limits
2019-01-17 12:41:57 +01:00
Vincent Coubard
79bd3ea982
BLE: Fix relationnal operator of SafeEnum
...
The relationnal operators were targeting the base class which defines an implicit constructor to an integral value. This is wrong as it allows SafeEnum instances to be compared against integers.
The fix is simple: define relationnal operators for the derived class. The derived class is known as it is passed as a template parameter of the base class.
For extra safety the SafeEnum constructor is now explicit and protected.
2019-01-16 16:06:21 +00:00
Guy Wild
9b3adc2795
Update iBeacon.h
...
Technical author review
2019-01-10 17:04:23 +02:00
Jarno Lamsa
d9e24b25e4
Update and cleanup BLE.h doxygen
2019-01-10 16:12:56 +02:00
offirko
b21576c8cf
Review updates
2019-01-10 15:42:28 +02:00
offirko
61926092a2
Minor Doxygen fixes for BufferedBlockDevice and iBeacon
2019-01-10 14:35:09 +02:00
Cruz Monrreal
54f759176b
Merge pull request #9210 from AnttiKauppila/mbed_h_fix
...
mbed.h includes removed
2019-01-04 10:27:30 -06:00
Donatien Garnier
9dae672ac0
Fixes for features/FEATURE_BLE/ble/services/EddystoneConfigService.h
2019-01-04 09:54:14 +00:00
Donatien Garnier
bc2bd89f83
Fixes for features/FEATURE_BLE/ble/services/EddystoneService.h
2019-01-04 09:50:24 +00:00
paul-szczepanek-arm
dd1d473375
future proof return size
2019-01-02 15:42:14 +00:00
paul-szczepanek-arm
a66ffa34be
add constructor suggested by Vincent
2019-01-02 15:34:50 +00:00
paul-szczepanek-arm
8b39071cd8
make function name longer
2019-01-02 14:29:30 +00:00
Antti Kauppila
02b0f79e15
mbed.h includes removed
2018-12-28 14:36:10 +02:00
paul-szczepanek-arm
67db321500
check illegal adv params combimnation
2018-12-13 17:52:18 +00:00
paul-szczepanek-arm
ff0a2a907e
check connectible sizes
2018-12-13 17:52:00 +00:00
paul-szczepanek-arm
c5bad804e2
add asserts for illegal compinations of adv params
2018-12-13 17:51:45 +00:00
paul-szczepanek-arm
7dd90e1810
Docuement active set length and add informative call for querying the limit
2018-12-13 17:51:10 +00:00
paul-szczepanek-arm
e1cf516100
fix max payload and hci length values
2018-12-13 17:50:53 +00:00
paul-szczepanek-arm
13a10f3efa
suppress scan timeout if we disabled scanning
2018-12-10 16:31:34 +00:00
Vincent Coubard
1c71713e1b
BLE: Fix recursion in ble::advertising_data_status_t raw constructor.
2018-12-07 00:05:02 +00:00
Vincent Coubard
df95a1f8bd
BLE: Allow null value for periodic interval in advertising report event.
2018-12-07 00:03:50 +00:00
Cruz Monrreal
b3b050170e
Merge pull request #8879 from pan-/ble-extended-advertising-doc-fixes
...
Ble extended advertising doc fixes
2018-12-04 11:51:44 -06:00
Martin Kojtal
c1c94c83c5
Merge pull request #8904 from pan-/ble-extended-advertising-fixes
...
Ble extended advertising fixes
2018-12-04 09:50:36 +01:00
Vincent Coubard
472c57205b
BLE: Fix doxygen parameter declaration order.
2018-12-03 18:03:30 +00:00
Vincent Coubard
d1b0642ad2
BLE: rename AdvertisingReportEvent::getAdvertisingData into getPayload.
...
This change makes it consistent with PeriodicAdvertisingReportEvent.
2018-12-03 17:56:54 +00:00
Vincent Coubard
ed426c5b45
BLE: rename ConnectionParameters::getFilterPolicy into getFilter for consistency.
2018-12-03 17:11:28 +00:00
Vincent Coubard
5abf2f08fa
BLE: Reintroduce refactored type identifier in privacy configuration structures.
2018-12-03 17:04:38 +00:00
Vincent Coubard
dc3ff6a5e0
BLE: Rename ConnectionParameters::setFilterPolicy into setFilter for consistency.
2018-12-03 16:56:20 +00:00
Vincent Coubard
e026bce881
BLE: Change parameter order of ble::Gap::startScan
2018-12-03 16:50:10 +00:00
Vincent Coubard
8c4a1a7b7a
BLE: Improve scan response process explanation.
2018-11-29 13:52:04 +00:00
Vincent Coubard
da3720138e
BLE: Fix common/Duration.h doc.
2018-11-29 13:52:04 +00:00
Vincent Coubard
e8972a72a4
BLE: provide better default connection parameters.
2018-11-29 12:32:36 +00:00
Vincent Coubard
4ed3f5620f
BLE: Fix name of DisconnectionEvent into DisconnectionCompleteEvent for consistency.
2018-11-29 12:28:38 +00:00
Vincent Coubard
3ddcdf24a3
BLE: Fix ble::Gap::getMaxAdvertisingDataLength return type.
2018-11-29 12:26:40 +00:00
Vincent Coubard
78468fb6e3
BLE: Use RANDOM address per default for Advertising, Scan and Connection parameter.
...
Unlike the public address, the RANDOM address is guaranteed to exist.
If privacy is enabled, it means the controller will generates random resolvable addresses or non resolvable addresses depending on the config.
If privacy is not enabled then the device will use the device's random static address that doesn't change between radio processes.
2018-11-29 12:18:11 +00:00
Vincent Coubard
c23911e3d8
BLE: Fix extraction of advertising element type.
2018-11-28 17:15:54 +00:00
Steve Cartmell
815d0d5efc
feat(pan-cordio): Add cordio-ll libraries and NORDIC implementation
2018-11-28 10:19:08 +00:00
Amanda Butler
bbb67a69c8
Edit Types.h
...
Edit file.
2018-11-26 19:35:43 -06:00
Amanda Butler
d00ad8bc96
Edit ScanParameters.h
...
Edit file, mostly to fix typos.
2018-11-26 19:18:24 -06:00
Amanda Butler
fa784c2aff
Edit URIBeaconCOnfigService.h
...
Edit file for active voice and comma use.
2018-11-26 19:15:31 -06:00
Amanda Butler
08ef3f7209
Edit iBeacon.h
...
Add commas between two independent clauses joined by a coordinating conjunction.
2018-11-26 19:14:14 -06:00
Amanda Butler
431402c14d
Edit Gap.h
...
Edit most of file, mostly for U.S. spelling and typos.
2018-11-26 19:08:41 -06:00
Amanda Butler
b4c34557d9
Edit Events.h
...
Edit file for person, capitalization and to fix typos.
2018-11-26 18:47:49 -06:00
Amanda Butler
2e02869173
Edit ConnectionParameters.h
...
Edit file, mostly for agreement.
2018-11-26 18:40:55 -06:00
Amanda Butler
c904ac898a
Edit AdvertisingParameters.h
...
Edit file, mostly for active voice and U.S. spelling.
2018-11-26 18:32:35 -06:00
Amanda Butler
31a73fc007
Edit AdvertisitngDataSimpleBuilder.h
...
Edit file, mostly for consistent tense and typos.
2018-11-26 18:17:22 -06:00
Donatien Garnier
5347a8ae4a
Update Duration.h in consistent casing
2018-11-27 00:16:33 +00:00
Amanda Butler
7df90ba3bc
Edit AdvertisingDataBuilder.h
...
Edit file, mostly to fix typos and standardize hyphen use.
2018-11-26 18:12:56 -06:00
Amanda Butler
451f9aad12
Edit Bounded.h
...
Edit file, mostly for consistent capitalization and active voice.
2018-11-26 18:01:30 -06:00