Commit Graph

252 Commits

Author SHA1 Message Date
lly
4be5563fdb ble_mesh: stack: Fix recv health current status incorrectly 2020-07-17 02:53:40 +00:00
lly
b94ce120d6 ble_mesh: stack: Only keep func pointer for very common log
Currently only keep func pointer for the followings:
- Invalid parameter (mesh btc & mesh stack)
- Out of memory (mesh btc & mesh stack)
- Unknown act (mesh btc)
- Invalid model user data (mesh stack)
- BT_DBG("%s", __func__) (mesh btc & mesh stack)
- A few other specific situations (buf ref debug, send status check)
2020-07-10 14:14:01 +08:00
lly
f4846cca4b ble_mesh: stack: Make proxy server & client functions clear 2020-07-10 14:12:58 +08:00
lly
82d4bd280b ble_mesh: stack: Add proxy cfg pdu length check 2020-07-10 00:57:09 +00:00
lly
aeb44745bf ble_mesh: stack: Rework using dev flag to check scan status
Different bluetooth host has different behaviors, so it's better
to maintain a scan check mechanism of BLE Mesh itself.
Fixes an issue when only PB-GATT is enabled for node, which will
output a scan error log when the device is provisioned.
2020-07-10 00:57:09 +00:00
lly
fd6071a0fc ble_mesh: stack: Add more checks about input prov bearers 2020-07-10 00:57:09 +00:00
Island
5d970c0e8c Merge branch 'feat/ble_mesh_use_iram_for_mem_alloc' into 'master'
Feat/ble mesh use iram for mem alloc

See merge request espressif/esp-idf!9449
2020-07-09 23:06:27 +08:00
lly
8005d07e07 ble_mesh: stack: Add two application macros for TTL 2020-07-08 08:30:54 +00:00
lly
edb088e5db ble_mesh: stack: Update send_ttl in btc when recv a msg
Update send_ttl mainly for server models. When a server model
receives a message, and the status is required to be replied
by the application, we need to set send_ttl to the msg context.
If send_ttl is not updated in btc, and the applcation does not
set the TTL either, then the status will be replied with TTL=0,
which may cause the client side (e.g. the phone App) failed to
receive the status.

Closes https://github.com/espressif/esp-idf/issues/5300
2020-07-08 08:30:54 +00:00
lly
076fee8dde ble_mesh: stack: Rename mesh adv queue and relay queue 2020-07-08 01:45:01 +00:00
lly
f5fcee186f ble_mesh: stack: Use macros for adv task name & prio 2020-07-08 01:45:01 +00:00
lly
89715d7010 ble_mesh: stack: Make freertos static allocation visible 2020-07-08 01:45:01 +00:00
lly
cba3733d29 ble_mesh: stack: Add a option of using IRAM for memory allocation 2020-07-08 01:45:01 +00:00
lly
6ca4ea1a1f ble_mesh: stack: Update some fast prov functions 2020-07-01 13:26:06 +00:00
lly
64e76ee019 ble_mesh: stack: Move fast prov functions to a single file 2020-07-01 13:26:06 +00:00
Island
a97a16202e Merge branch 'bugfix/ble_mesh_compile_error' into 'master'
bugfix: ble mesh proxy compile error

See merge request espressif/esp-idf!9334
2020-07-01 11:17:26 +08:00
lly
6aef6c5f1c ble_mesh: stack: Copy recv_rssi for other received messages
Follow the commit: 2b80cb6883,
copy the recv_rssi for other mesh messages.
2020-06-29 20:07:42 +08:00
mbroek
2b80cb6883 When a generic mesh model message is received "bt_mesh_generic_server_cb_evt_to_btc" copies the
ctx values to cb_params for the mesh stack.

recv_rssi was not copied.

This means the rssi could not be read when receiving generic server messages using ble_mesh.
2020-06-29 19:54:23 +08:00
lly
c8112454c3 ble_mesh: stack: Fix compile error when only proxy enabled
Also remove some redundant CONFIG_BLE_MESH_PROXY checks, because
when the following options are satisfied, the CONFIG_BLE_MESH_PROXY
option will be selected mandatorily.
2020-06-28 23:09:47 +00:00
Island
3266511582 Merge branch 'bugfix/ble_mesh_split_tinycrypt' into 'master'
Bugfix/ble mesh split tinycrypt

See merge request espressif/esp-idf!9098
2020-06-23 19:07:31 +08:00
Island
07b15b0d36 Merge branch 'bugfix/ble_mesh_get_node_with_name' into 'master'
ble_mesh: Get node info with pre-configured node name

Closes BMCI-88

See merge request espressif/esp-idf!9089
2020-06-23 19:04:06 +08:00
Island
33282d9c94 Merge branch 'bugfix/ble_mesh_check_subnet_before_update_beacon_sent' into 'master'
ble_mesh: Check if subnet exists before updating beacon_sent

Closes BLEMESH-198

See merge request espressif/esp-idf!8709
2020-06-23 19:03:50 +08:00
Island
1420b6dd89 Merge branch 'bugfix/ble_mesh_bt_hex' into 'master'
ble_mesh: Fix wrong log output with bt_hex

See merge request espressif/esp-idf!9119
2020-06-23 19:02:58 +08:00
Island
371d590ca7 Merge branch 'bugfix/ble_mesh_not_define_bool' into 'master'
Bugfix/ble mesh not define bool

Closes IDFGH-3078 and BMCI-71

See merge request espressif/esp-idf!9135
2020-06-23 19:02:05 +08:00
lly
9e293b2e1f ble_mesh: Mark platform related default RNG as 0 2020-06-23 06:19:08 +00:00
lly
763f3ace61 ble_mesh: Remove the previously added redundant aes files 2020-06-23 06:19:08 +00:00
lly
eecf9cc595 ble_mesh: Update tinycrypt header file include guards
Add BLE_MESH in the macro to make it specific for BLE Mesh.
2020-06-23 06:19:08 +00:00
lly
eb7b2b5ae0 ble_mesh: Format source and header files of tinycrypt 2020-06-23 06:19:08 +00:00
lly
ff7f088ebb ble_mesh: Port full implementation of tinycrypt [Zephyr]
- Original code is here: https://github.com/zephyrproject-rtos/tinycrypt
- Also this fixes the compile error when NimBLE and ESP BLE Mesh
  both uses the tinycrypt.
2020-06-23 06:19:08 +00:00
lly
4ae7efb4c0 ble_mesh: Get node info with pre-configured node name
Also add a function to get the entry of the nodes table.

Closes https://github.com/espressif/esp-idf/issues/5397
2020-06-20 05:47:19 +00:00
lly
8bfccba598 ble_mesh: Check if subnet exists before updating beacon_sent
- Before updating the "beacon_sent" of a subnet, we need to check
  if the subnet still exists, especially for a Provisioner.
- Fix a bug which will cause Provisioner failed to send Secure
  Network Beacon if no device is provisioned
2020-06-20 05:32:13 +00:00
lly
ba5da8b086 ble_mesh: stack: Check model status with variable length 2020-06-19 21:30:55 +08:00
lly
d7bd5c002e ble_mesh: Fix wrong log output with bt_hex
- This issue was introduced in the commit: a788e7cd3d
  which updated the bt_hex() function incorrectly.
- And in bt_hex(), we use 2 for the two-dimensional array, because currently
  at most two bt_hex() will be used at the same time. Also this will save
  some DRAM compared with using 4.
2020-06-16 06:32:12 +00:00
lly
a0f1a43edc ble_mesh: Remove boolean type definitions 2020-06-11 16:17:49 +08:00
Nikolaos Strikos
c04cfc2545 ble_mesh: Do not #define bool when compiling in C++ 2020-06-11 16:13:26 +08:00
Island
b2a0e63ca8 Merge branch 'bugfix/ble_mesh_remove_relay_dependency' into 'master'
ble_mesh: Remove relay option dependency

See merge request espressif/esp-idf!9024
2020-06-03 15:20:24 +08:00
Island
ae2898f12e Merge branch 'bugfix/ble_mesh_rework_prov_pdu_len_check' into 'master'
ble_mesh: Rework prov pdu length check

See merge request espressif/esp-idf!8993
2020-06-03 15:10:14 +08:00
lly
5ced2206b4 ble_mesh: Remove relay option dependency
When the relay functionality of a node is not enabled, this
issue will cause the node failing to send messages to fixed
group.
2020-06-02 19:05:16 +08:00
Island
bcbf2f2275 Merge branch 'bugfix/ble_mesh_model_recv_fix' into 'master'
Bugfix/ble mesh model recv fix

See merge request espressif/esp-idf!8988
2020-06-02 11:00:07 +08:00
lly
c6e9d789b7 ble_mesh: Rework prov pdu length check 2020-06-01 20:44:52 +08:00
lly
e41eae1b07 ble_mesh: correct the return type [Zephyr] 2020-06-01 14:08:21 +08:00
lly
1e29d86dd3 ble_mesh: Add net_buf_simple_init_with_data [Zephyr] 2020-06-01 13:57:41 +08:00
lly
8a8caebf51 ble_mesh: Optimize model recv operations [Zephyr]
Previously the model recv operation is a littl fuzzy.
With the changes, the model recv operation is splitted into:
- find op
- check app_idx
- check dst
- check length
- update info & handle message
2020-06-01 13:57:33 +08:00
lly
9063821f01 ble_mesh: Config and health client btc fixes
Fix an issue which may cause no error code is returned
when sending config client or health client messages
with invalid parameters.
2020-05-29 21:10:13 +08:00
lly
409ea309f9 ble_mesh: Add more checks of net_idx & app_idx 2020-05-29 21:10:13 +08:00
lly
47609970db ble_mesh: Optimize some send & recv logs 2020-05-29 21:10:13 +08:00
lly
9aae4d3ba3 ble_mesh: Local model (un)subscribes group address 2020-05-29 09:40:19 +00:00
lly
2190c2c368 ble_mesh: Define a macro for invalid company id 2020-05-29 09:40:19 +00:00
lly
6768c2b7a1 ble_mesh: Check the result of creating timer 2020-05-27 09:30:34 +00:00
Island
3b85d4ef24 Merge branch 'bugfix/ble_mesh_sync_zephyr_fixes' into 'master'
Bugfix/ble mesh sync zephyr fixes

Closes BLEMESH-215

See merge request espressif/esp-idf!8912
2020-05-27 17:26:00 +08:00