paul-szczepanek-arm
61b063129d
MBED_WEAK in random spot removed
2019-03-01 15:05:59 +00:00
paul-szczepanek-arm
f740985627
remove define that trips up IAR
2019-03-01 14:46:43 +00:00
paul-szczepanek-arm
34ef17370b
fix signing permissions
2019-03-01 11:58:52 +00:00
paul-szczepanek-arm
e247852043
reinstate fixes
2019-03-01 11:23:28 +00:00
paul-szczepanek-arm
0c855780d1
remove duplicate headers
2019-03-01 10:59:44 +00:00
paul-szczepanek-arm
64e70e8ca0
cordio controller change from library to source
2019-03-01 10:59:44 +00:00
paul-szczepanek-arm
a3c1345d45
these consts are not in fact const
2019-03-01 10:59:42 +00:00
paul-szczepanek-arm
fdb10908cc
fix warning of no return
2019-03-01 10:59:42 +00:00
paul-szczepanek-arm
2c10b93a12
deal with not implemented functions
2019-03-01 10:59:42 +00:00
paul-szczepanek-arm
8989e39bb1
update copyright years
2019-03-01 10:59:42 +00:00
paul-szczepanek-arm
dc66204c1b
cordio host sources updated
2019-03-01 10:59:41 +00:00
Cruz Monrreal
f8d254fc4c
Merge pull request #9790 from paul-szczepanek-arm/ble-conf
...
Ble conf
2019-02-28 22:08:41 -06:00
Cruz Monrreal
aaf3ce4741
Merge pull request #9727 from pan-/optimize-size
...
BLE API devirtualization
2019-02-28 18:20:36 -06:00
paul-szczepanek-arm
54a866c159
add broadcaster ifdef and pull headers into ifdef
2019-02-28 17:18:30 +00:00
Vincent Coubard
72e5d3f603
BLE - Filter user facing implementation based on configuration
2019-02-28 16:31:59 +00:00
Vincent Coubard
4e172ba22d
BLE - Fix conditional directive.
2019-02-28 16:31:34 +00:00
Vincent Coubard
74bc6774f9
BLE - Fix conditional directive.
2019-02-28 16:31:07 +00:00
Vincent Coubard
eeca03f952
BLE - Fix exclusion of getMaxAdvertisingSetNumber and getMaxAdvertisingDataLength
2019-02-28 16:29:21 +00:00
Vincent Coubard
3142f26def
BLE - Exclude services if GattServer is not available.
2019-02-28 16:28:15 +00:00
Vincent Coubard
5ae59fc534
BLE - Improve FEATURE_PRIVACY conditions.
2019-02-28 14:47:07 +00:00
Vincent Coubard
24f7f36f01
BLE - Return supported feature based on compile time features.
2019-02-28 14:23:19 +00:00
Vincent Coubard
04891b205c
BLE - Conditionally handle gap events.
2019-02-28 14:13:45 +00:00
Vincent Coubard
ea9554dfbc
BLE - restrict AttConnRegister to GattServer.
2019-02-28 14:12:56 +00:00
Vincent Coubard
9566af64fb
BLE - Fix initialization of extended advertising modules.
2019-02-28 13:51:50 +00:00
Vincent Coubard
6a3f3d187e
BLE - Conditionnally remove LESC and privacy event processing.
2019-02-28 13:45:05 +00:00
Vincent Coubard
20c4e4ced5
BLE - Fix call to implementation.
2019-02-28 13:40:09 +00:00
Vincent Coubard
020c5b4262
BLE - Disabling SecurityManager connection handling when security disabled.
2019-02-28 13:34:05 +00:00
Vincent Coubard
af09f7b8ab
BLE - Disable peer csrk retrieval if signing disabled.
2019-02-28 13:30:36 +00:00
Vincent Coubard
ca44ce3cd8
BLE - Conditionally expose SecurityManager::enableSigning
2019-02-28 13:27:16 +00:00
Vincent Coubard
eeb14c5ce6
BLE - Conditionally include address rotation at compile time
2019-02-28 13:26:51 +00:00
Vincent Coubard
632851e5ae
BLE - Small reordering to reduce diff.
2019-02-28 12:02:23 +00:00
Vincent Coubard
9e5e23aad6
BLE - Remove conditional directive in construction of Cordio objects.
2019-02-28 11:37:21 +00:00
Vincent Coubard
a31d1012db
BLE - Cleanup CordioPalSecurityManager conditional directives.
...
- Within constructor
- Within member declaration
- Private function declaration and definition.
2019-02-28 11:36:36 +00:00
Vincent Coubard
b0d62a7090
BLE - Fix conditional code within CordioPalGenericAccessService.
2019-02-28 11:35:34 +00:00
Vincent Coubard
dedc204daa
BLE - Cleanup CordioGattServer conditional directives.
2019-02-28 11:34:35 +00:00
Vincent Coubard
831241df12
BLE - Cleanup GenericSecurityManager conditional directives
...
- Inheritance lisr
- Within constructor
- Within member declaration
- Private function declaration and definition.
2019-02-28 11:33:49 +00:00
Vincent Coubard
e706b6cc52
BLE - Cleanup Generic GattClient conditional directives.
...
- Inherithance list
- private functions exposed
- members declaration.
2019-02-28 11:32:51 +00:00
Vincent Coubard
07f3ca2723
BLE - Cleanup GenericGap conditional directive
...
- Within constructor
- Within member declaration
- Private function declaration and definition.
2019-02-28 11:31:48 +00:00
Vincent Coubard
593cf2bd7c
BLE - Remove conditional compilation of FileSecurityDb
2019-02-28 11:30:07 +00:00
Vincent Coubard
f7df97bed7
BLE - Remove conditionnal directive within GattClient::WriteOp_t
2019-02-28 11:29:35 +00:00
Vincent Coubard
c9d719a8ca
BLE - Cleanup conditional directives in Gap.
...
- Remove conditional directives for member variables.
- Remove conditional directive for processXXX functions that are exclusively used by implementation.
- Remove conditional directives on types exported by the class.
2019-02-28 11:28:55 +00:00
Vincent Coubard
126a7a966e
BLE - Cleanup conditional directives in gap/Gap/
...
- Remove directives from event handler type
- Expose privacy default configuration unconditionally
- Fix conditional test for connect and cancelConnect.
2019-02-28 11:27:02 +00:00
Vincent Coubard
bc10a09c4e
BLE - Remove conditional directive removing functions in pal.
2019-02-28 11:24:08 +00:00
Vincent Coubard
3c9e778433
BLE - Remove conditionnal directive within services
2019-02-28 11:23:05 +00:00
Vincent Coubard
06b26d4e8a
BLE - remove conditional directive from value types
2019-02-28 11:22:37 +00:00
Vincent Coubard
ba9aa6b641
Fix rebase mistakes.
2019-02-27 22:15:06 +00:00
paul-szczepanek-arm
cd2501bb64
tab fix
2019-02-27 21:52:07 +00:00
paul-szczepanek-arm
a034bf875e
gatt server pass
...
mostly phy and security issues
2019-02-27 21:52:07 +00:00
paul-szczepanek-arm
f8c28fcbe7
privacy pass
2019-02-27 21:51:16 +00:00
paul-szczepanek-arm
aa6342b265
cordio security pass
2019-02-27 21:47:22 +00:00
paul-szczepanek-arm
bc3ff56504
partial security pass
2019-02-27 21:46:08 +00:00
paul-szczepanek-arm
a1815e31f0
correct dependencies for central and peripheral
2019-02-27 21:39:07 +00:00
paul-szczepanek-arm
c3a72073be
cordio extended peripheral pass
2019-02-27 21:39:07 +00:00
paul-szczepanek-arm
e950da11f2
extended doesn't depends on phy
2019-02-27 21:39:06 +00:00
paul-szczepanek-arm
ec6783ed77
cordio peripheral role pass
2019-02-27 21:39:06 +00:00
paul-szczepanek-arm
45eca7c373
cordio observer role pass
2019-02-27 21:36:26 +00:00
paul-szczepanek-arm
eb16fb6053
broadcaster role cordio pass
2019-02-27 21:34:00 +00:00
paul-szczepanek-arm
c198603c63
ble ifdefs
2019-02-27 21:17:15 +00:00
paul-szczepanek-arm
e44c3edede
fix gap ifdefs
2019-02-27 21:17:15 +00:00
paul-szczepanek-arm
909b78fc14
complete gap feature ifdef
2019-02-27 21:15:54 +00:00
paul-szczepanek-arm
630b2fe792
more gap ifdefs
2019-02-27 21:08:15 +00:00
paul-szczepanek-arm
1d5b7d4056
ifdef source files based on features
2019-02-27 21:00:11 +00:00
paul-szczepanek-arm
c8d8c4e159
merge failure fix
2019-02-27 21:00:10 +00:00
paul-szczepanek-arm
30ad32a465
ifdef out security features
2019-02-27 20:59:35 +00:00
paul-szczepanek-arm
9e710d4309
git review changes
2019-02-27 20:59:35 +00:00
paul-szczepanek-arm
cb3d79bf9b
update descriptions
2019-02-27 20:57:10 +00:00
paul-szczepanek-arm
7974726659
fixed conf file (tabs and order)
2019-02-27 20:57:09 +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
26cc72f191
add more feature toggles in cordio init
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
ab4e47661d
move config to ble feature
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
8e36ed4b1e
feat(ble): Guard out the CordioBLE initialisation code
2019-02-27 19:29:51 +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
73f29e7733
BLE - Fix qualification of abort and terminate.
2019-02-26 13:18:18 +00:00
Vincent Coubard
9ab284940a
BLE - Devirtualization of the NRF52 softdevice port.
2019-02-26 13:18:18 +00:00
Vincent Coubard
ddbb177e33
BLE - Devirtualization of the NRF51 port.
2019-02-26 13:18:17 +00:00
Vincent Coubard
b86049d1e7
BLE - Devirtualization of the legacy NRF51822 port.
2019-02-26 13:18:17 +00:00
Vincent Coubard
0323d91f04
BLE - Devirtualization of the Maxim port .
2019-02-26 13:18:17 +00:00
Vincent Coubard
536443b1f8
BLE - Devirtualization of the Cordio port.
2019-02-26 13:18:17 +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
fb39848481
BLE - Cleanup deprecation implementation bits in BLE.cpp
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
Desmond Chen
0143229bd0
Fix Cordio Gatts descriptor configuring write permission
2019-02-26 11:30:57 +08:00
Cruz Monrreal
d0881ad259
Merge pull request #9813 from paul-szczepanek-arm/cordio-cfg
...
BLE: Cordio build time configuration through mbed_lib.json
2019-02-25 17:28:56 -06:00
Cruz Monrreal
8ec8674e4e
Merge pull request #9833 from donatieng/remove_beetle
...
Remove Arm Beetle target for Mbed OS 5.12
2019-02-25 17:27:22 -06:00
paul-szczepanek-arm
f62217b3dd
typos
2019-02-25 15:33:52 +00:00
paul-szczepanek-arm
a7297186b5
fixed names
2019-02-25 15:30:55 +00:00
paul-szczepanek-arm
e75c534445
stray comma
2019-02-25 15:23:35 +00:00
Donatien Garnier
176e5779ce
Remove Arm Beetle target
...
Deprecation in preparation for Mbed OS 5.12 and move to IAR8 and ARMC6
2019-02-25 12:09:03 +00:00
paul-szczepanek-arm
6842c8718b
revert macros
2019-02-25 09:52:21 +00:00
paul-szczepanek-arm
6a2b6b891a
use existing macro names
2019-02-25 09:49:16 +00:00
Lei Zhang
a47b365776
PSOC6: send HCI reset after patch RAM download
...
After the patch RAM download is completed, a HCI reset should be sent in order to initialize the registers. Some of the initialization won't be called if the HCI reset is not sent after firmware download.
2019-02-22 23:43:52 -08:00
paul-szczepanek-arm
4b0296a6e1
prepared writes options
2019-02-22 13:52:21 +00:00
paul-szczepanek-arm
4470f64581
mention config in readme
2019-02-22 11:33:23 +00:00
paul-szczepanek-arm
86546440d7
put cordio cfg in mbed_lib.json
2019-02-22 11:28:28 +00:00
Volodymyr Medvid
b0a33273ff
Correctly include EventQueue.h
...
There are two EventQueue.h in mbed-os codebase:
events/EventQueue.h
features/FEATURE_BLE/ble/pal/EventQueue.h
By accident, `mbed compile` generates includes.txt with the correct
order of include search paths. This is not the case for the CMake
exporter: targets with FEATURE_BLE enables fail to compile with errors:
mbed-os/features/cellular/framework/AT/ATHandler.h:99:60: error:
'events' has not been declared
Update all places to always include either "events/EventQueue.h"
or "ble/pal/EventQueue.h": to always find the correct header.
2019-02-21 17:59:05 +02: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
Martin Kojtal
2d30d0ff99
Merge pull request #9762 from vmedcy/psoc6-target-updates
...
PSOC6: update the psoc6pdl and HAL to the latest version
2019-02-20 11:23:54 +01:00
paul-szczepanek-arm
db4aecb275
fixed initialisation order
2019-02-19 17:26:43 +00:00
Volodymyr Medvid
cefc7452c9
PSOC6: do not reconfigure BT GPIO pins in CYW43XXX HCIDriver
2019-02-19 17:59:04 +02:00
Desmond Chen
79e8bf4bc9
BLE:Cordio: ATTS setting for write cback should use bitwise or
2019-02-19 14:19:44 +08:00
paul-szczepanek-arm
d801ed340e
removed redundant qualifier tripping up GCC
2019-02-14 12:34:35 +00:00
paul-szczepanek-arm
cdd5c9f3b0
fix nrf52 mtu
2019-02-14 12:34:35 +00:00
paul-szczepanek-arm
193092f6d9
added spdx licence ident
2019-02-14 12:34:35 +00:00
paul-szczepanek-arm
f52b20c169
move cpp to sources
2019-02-14 12:34:35 +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
de60b2a56a
remove unused converter
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
02d5391cd0
fix possible truncation
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
356ec39d02
fix style
2019-02-14 12:34:32 +00:00
paul-szczepanek-arm
21ad886e9e
handle mtu and data len events for softdevice
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
Naveen Kaje
0563276466
btle: fix build warning about unused clockConfiguration
...
Fix the following build warning seen with both GCC and ARM_CC
[Warning] btle.cpp@115,0: #177-D: variable "clockConfiguration" was declared but never referenced
2019-02-13 10:42:48 -06:00
Cruz Monrreal
58cba25799
Merge pull request #9372 from pan-/fix-cryptotoolbox
...
BLE - Nordic: Release crypto cell when not in use.
2019-02-11 18:45:17 -06:00
Volodymyr Medvid
a16811532b
PSoC6: add implementation of BLE HCI driver for CYW4343W/CYW43012
...
Add Cypress HCI driver implementation in TARGET_Cypress directory.
Update targets.json to enable CORDIO stack for Cypress PSoC 6 boards
with CYW43XXX radios with compatible HCI driver implementation:
CYW4343W and CYW43012.
2019-02-07 18:24:56 +02:00
Volodymyr Medvid
a304c2216a
CYW4343X: move HCI driver to TARGET_STM
...
TARGET_CYW4343X Bluetooth HCI driver is specific to STM32 targets
derived from USI_WM_BN_BM_22. Move the driver implementation to
TARGET_STM folder to not interfere with Cypress implementation at
TARGET_Cypress/TARGET_CYW43XXX/HCIDriver.cpp that is enabled for
PSoC 6 targets which also include the CYW4343X label.
2019-02-07 18:24:55 +02:00
Senthil Ramakrishnan
2030d03590
Modified fixes with review comments
2019-02-01 17:49:49 -06:00
Senthil Ramakrishnan
ea30ed7a36
Fix for ARMc6 compiler errors
2019-02-01 17:46:50 -06:00
paul-szczepanek-arm
d9c919b7e1
review fixes
2019-01-30 12:19:04 +00:00
paul-szczepanek-arm
e1a8fb5a7a
check scanning status first
2019-01-30 11:45:26 +00:00
paul-szczepanek-arm
7f888f86bf
scan timeout for 4.2 controllers using new API
2019-01-30 11:37:17 +00:00
Cruz Monrreal
66cda8a8fe
Merge pull request #9499 from bridadan/remove_yotta_modules
...
Remove unused yotta module metadata
2019-01-28 10:37:30 -06: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
Brian Daniels
ee5281abef
Remove unused yotta module metadata
2019-01-24 15:30:20 -06:00
Martin Kojtal
4019efb21d
Merge pull request #9399 from paul-szczepanek-arm/fix-null-check
...
BLE: fix missing null checks on Gap event handler
2019-01-21 13:43:16 +01:00
Martin Kojtal
ad5bcfc1de
Merge pull request #9427 from paul-szczepanek-arm/fix-truncation
...
BLE: fix possible truncation
2019-01-21 13:42:07 +01:00
paul-szczepanek-arm
42e4290160
error when there is no handler
2019-01-18 14:55:38 +00:00
paul-szczepanek-arm
001919e81a
fix truncation
2019-01-18 12:10:30 +00:00
Cruz Monrreal
fd2a96e7ad
Merge pull request #9339 from costanic/fix_oob
...
Fix Out-Of-Band (OOB) data generation for BLE OOB pairing
2019-01-17 21:51:54 -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
Cruz Monrreal
d0665c8458
Merge pull request #9365 from lrusinowicz/cordio_ble_fix
...
Fix for asserion failing in BLE::callDispatcher with gcc debug profile.
2019-01-16 22:03:16 -06: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
Vincent Coubard
f8ef143ed7
BLE: Fix comparison expression between an integer and a SafeEnum
2019-01-16 16:06:21 +00:00
paul-szczepanek-arm
fa36ed02ee
add missing null checks
2019-01-16 14:56:54 +00:00
Vincent Coubard
a10a10a3d7
BLE - Nordic: Release crypto cell when not in use.
...
Previously, the CryptoToolbox was allocated once as part of the security manager.
This was inneficient memory wise as it is only use to prepare key at initialization
and when we need to compute shared keys.
This was also inneficient power consumption wise as the Crypto cell was kept enabled even
when it wasn't used.
This fix creates a CryptoToolbox whenever it is needed and release it once it has fulfilled its
purpose. Note that CryptoToolbox allocation happens on the heap as mbed tls data structure are huge
and there's an high risk of crushing the stack.
2019-01-14 16:56:07 +00:00
Leszek Rusinowicz
f294447c25
Moved nextTimeout variable out of critical section in BLE::callDispatcher.
...
Initialization of Timeout object contains critical section inside constructor. Initialization inside critical section caused assertion failing under "debug" profile.
2019-01-14 11:13:28 +01:00
Nic Costa
7795e30bce
Remove own_oob and peer_oob flags from Nordic PAL
...
the own_oob and peer_oob flags were not being set to 1 even though
an OOB pairing request was in progress, which therefore prevented
OOB data from being passed down to the softdevice during a OOB
pairing operation, thus causing the OOB pairing process to fail.
2019-01-11 08:54:30 -06:00
Nic Costa
24d793ce5d
Fix parameters provided to oob generator function
...
The function in the Nordic SDK for generating OOB data,
sd_ble_gap_lesc_oob_data_get, requires local LE Secure Connection
P256 Public Keys in {X,Y} format, but was being supplied with
the local secret key. This caused the generated OOB data to
fail to correspond to the Public Keys, which caused a mismatch
during the OOB pairing phase of the OOB confirmation value by
a remote peer when attempting to verify the OOB data against
the Public Keys, ultimately causing the OOB pairing request to
fail with a Confirm Value Failed (0x04) error.
2019-01-11 08:54:30 -06:00
Nic Costa
55507eaf75
Fix race condition when generating OOB data
...
The GenericSecurityManager tracks the most recent OOB data generated
by the PAL and the PAL function to generate OOB data is expected to
be asynchronous such that the OOB data is returned via a callback.
There was a race condition on the security manager's oob data variable
because it was cleared (set to all zeros) after calling PAL generate.
The expectation was that the clear operation would occur before the
callback executed, but this is proving to not be the case. Instead,
the callback is being executed as if it were syncronous with PAL
generate, then PAL generate returns and the oob data is cleared,
thereby losing the generated oob data that was set in the callback.
To fix the issue, clear the oob data variables before calling into
the PAL.
2019-01-11 08:54:30 -06: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
Martin Kojtal
0f7381d436
Merge pull request #9058 from pan-/fix-scan-timeout
...
BLE: suppress scan timeout if we disabled scanning
2019-01-04 08:41:36 +00:00
paul-szczepanek-arm
3be792a3b3
simplify for statement
2019-01-03 12:24:33 +00:00
Desmond Chen
f281e06e46
BLE: NRF52 returns tx/rx phy on phy update callback
2019-01-03 10:11:14 +08: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
Desmond Chen
30ca813f07
Fix BLE long write execution failure
2018-12-19 08:08:16 -08: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
50d1818d72
call advertising end even if stopped by us
2018-12-13 17:33:36 +00:00
Naveen Kaje
448c4d5d89
BLE: Update toolchain.h with mbed_toolchain.h
...
Fixes the following warning
[Warning] toolchain.h@24,0: #1215-D: #warning directive:
toolchain.h has been replaced by mbed_toolchain.h,
please update to mbed_toolchain.h [since mbed-os-5.3]
2018-12-10 13:57:52 -06:00
Cruz Monrreal
23022dd0f9
Merge pull request #8998 from pan-/ble-extended-advertising-fixes
...
Ble extended advertising fixes
2018-12-10 10:36:05 -06:00
paul-szczepanek-arm
13a10f3efa
suppress scan timeout if we disabled scanning
2018-12-10 16:31:34 +00:00
paul-szczepanek-arm
a545da7790
remove noreturn error function to avoid compilation issues
2018-12-10 13:54:09 +00:00
paul-szczepanek-arm
c998287170
fixed ARM compilation problem caused by noreturn
2018-12-10 13:47:14 +00:00
paul-szczepanek-arm
97df8f5ed9
working ARM lib
2018-12-10 13:46:26 +00:00
paul-szczepanek-arm
642b2dfb57
working libs for GCC and IAR
2018-12-10 09:12:03 +00:00
Donatien Garnier
6f94339aed
Replace ARMCC libs
2018-12-08 08:43:20 +00:00
Donatien Garnier
db6b09a70f
ARMCC only likes armar
2018-12-07 23:45:26 +00:00
Donatien Garnier
3f00595e62
Remove use of GPIOs (LEDs and diag pins) from Cordio LL for Nordic
2018-12-07 22:46:27 +00:00
Donatien Garnier
674ff288d6
Remove duplicate symbols in libcordio_stack.a
2018-12-07 22:04:19 +00:00
paul-szczepanek-arm
a48369691e
iar libs for cordio
2018-12-07 17:56:36 +00:00
paul-szczepanek-arm
bdabada477
added arm version of libs
2018-12-07 17:41:50 +00:00
paul-szczepanek-arm
c13dcf3387
baseband clock rate increased to 1 000 000
2018-12-07 17:12:58 +00:00
Vincent Coubard
e7f81fe7e8
BLE: Fix the number of advertising sets supported
...
The number of advertising sets supported is the minimum of advertising sets supported beween the host and the controller.
2018-12-07 13:26:35 +00:00
Vincent Coubard
4e5240b743
BLE: Set the number of the advertising sets supported by the host to 3.
2018-12-07 13:24:52 +00:00
Vincent Coubard
57b79d9659
BLE: Set the number of supported phy by the host to 3.
2018-12-07 13:24:28 +00:00
Vincent Coubard
20e0cd1b0e
BLE: Inject random static address during reset sequence.
2018-12-07 12:35:20 +00:00
Vincent Coubard
a36b04fde5
BLE: Add an option to inject the random static address during the reset sequence.
2018-12-07 12:33:31 +00:00
Vincent Coubard
0d398bc8c8
BLE: Revert changes introduced by debugging.
2018-12-07 09:33:26 +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
698447b622
BLE: Fix address type allowed to create a periodic sync.
2018-12-07 00:04:29 +00:00
Vincent Coubard
df95a1f8bd
BLE: Allow null value for periodic interval in advertising report event.
2018-12-07 00:03:50 +00:00
Amanda Butler
aa4b5a5dc7
Edit PortingGuide.md
...
Edit file for active voice.
2018-12-06 13:24:10 -06:00
Amanda Butler
61c2599587
Edit CordioHCIDriver.h
...
Edit file for active voice.
2018-12-06 13:22:20 -06:00
paul-szczepanek-arm
df443c20ca
copy periodic payload
2018-12-06 17:54:13 +00:00
paul-szczepanek-arm
22a117a6e4
always set filter policy
2018-12-06 15:43:45 +00:00
paul-szczepanek-arm
5735456487
fix swapped errors
2018-12-06 15:05:35 +00:00
paul-szczepanek-arm
58c7c3868e
check return value of DmSyncStart
2018-12-06 15:04:23 +00:00
paul-szczepanek-arm
d372f16bc4
fix return value
2018-12-06 15:04:00 +00:00
Vincent Coubard
c83dccf65c
BLE: Set advertising random address when appropriate.
2018-12-06 11:25:50 +00:00
Vincent Coubard
0543442cc3
BLE: Fix conversion of advertising type
...
Previously, we were passing the event_properties as defined by the Bluetooth spec which is not what DmAdvConfig expect as the advertising type passed to DmAdvConfig is Cordio tailored (and incomplete).
2018-12-06 11:23:45 +00:00
Vincent Coubard
d9d4a214b8
BLE: Revert change in stack setup initialisation.
...
While good this change breaks some old application that were adding GATT services before the initialisation of BLE.
This patch revert temporarily this change for now
2018-12-06 11:21:43 +00:00
Vincent Coubard
e3d8b28483
Update features/FEATURE_BLE/targets/TARGET_CORDIO/driver/CordioHCIDriver.h
...
Fix doxygen as suggested by @pan-
Co-Authored-By: donatieng <donatien.garnier@arm.com>
2018-12-06 10:19:57 +00:00
Donatien Garnier
4485531173
Update Porting Guide with memory pool changes
2018-12-05 19:24:44 +00:00
Donatien Garnier
7e6efc2571
Cordio: Update CY8C63XX Driver to use default memory pool
2018-12-05 19:24:44 +00:00
Donatien Garnier
f9b236184a
Cordio: Update CYW4343X Driver to use default memory pool
2018-12-05 19:24:44 +00:00
Donatien Garnier
218bf3f80c
Cordio: Update ODIN-W2 Driver to use default memory pool
2018-12-05 19:24:44 +00:00
Donatien Garnier
2978cd8404
Cordio: Make allocating too much memory for pool a warning, not a fatal assert
2018-12-05 19:24:44 +00:00
Donatien Garnier
101c5697e5
Cordio Nordic LL: Readjust memory pool requirements for NRF52840
2018-12-05 19:24:44 +00:00
Donatien Garnier
c99f2497c3
Cordio Nordic LL: Optimize memory for smaller targets
2018-12-05 19:24:44 +00:00
Donatien Garnier
7a33feca23
Cordio: Split get_buffer_pool_description() in pure virtual + default implementation to avoid allocating two memory pools in a static fashion
2018-12-05 19:24:44 +00:00
Donatien Garnier
b83c4fde66
Cordio: Assert if memory pool is not exactly the right size
2018-12-05 19:24:44 +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
403405c44c
Merge pull request #8953 from ARMmbed/yennster-patch-1
...
Update FEATURE_BLE README
2018-12-04 14:32:14 +01:00
Mel W
f92cc7b30b
Capitalization and punctuation
2018-12-04 12:34:48 +02: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
Jenny Plunkett
fa191259b7
Update FEATURE_BLE README
...
Remove all outdated information including supported services and old documentation links
2018-12-03 13:09:01 -06: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