From 63d2a19925c879d337784e8a238c8525c5d6fc1a Mon Sep 17 00:00:00 2001 From: Lu Chang Jie Date: Fri, 21 Aug 2020 19:59:20 +0800 Subject: [PATCH] Test: merge ble mesh node and provioner in console --- .../esp-ble-mesh/ble-mesh-index.rst | 2 +- .../esp-ble-mesh/ble-mesh-index.rst | 2 +- .../{ble_mesh_node => }/CMakeLists.txt | 2 +- .../{ble_mesh_node => }/Makefile | 2 +- .../{ble_mesh_node => }/README.md | 0 .../ble_mesh_commands_README.md | 166 ++++++ .../ble_mesh_node/main/CMakeLists.txt | 12 - .../ble_mesh_node/main/ble_mesh_adapter.c | 165 ------ .../ble_mesh_node/main/ble_mesh_adapter.h | 97 ---- .../main/ble_mesh_reg_gen_onoff_client_cmd.c | 180 ------ .../ble_mesh_provisioner/CMakeLists.txt | 6 - .../ble_mesh_provisioner/Makefile | 10 - .../ble_mesh_provisioner/README.md | 13 - .../main/ble_mesh_cfg_srv_model.c | 205 ------- .../main/ble_mesh_cfg_srv_model.h | 107 ---- .../main/ble_mesh_console_decl.h | 38 -- .../main/ble_mesh_console_lib.c | 124 ----- .../main/ble_mesh_console_lib.h | 29 - .../main/ble_mesh_console_main.c | 126 ----- .../main/ble_mesh_console_system.c | 179 ------ .../main/ble_mesh_register_node_cmd.c | 491 ----------------- .../main/ble_mesh_register_provisioner_cmd.c | 391 -------------- .../ble_mesh_provisioner/main/component.mk | 5 - .../main/register_bluetooth.c | 45 -- .../ble_mesh_provisioner/sdkconfig.defaults | 26 - .../main/CMakeLists.txt | 6 +- .../main/ble_mesh_adapter.c | 91 +++- .../main/ble_mesh_adapter.h | 31 +- .../main/ble_mesh_cfg_srv_model.c | 21 +- .../main/ble_mesh_cfg_srv_model.h | 0 .../main/ble_mesh_console_decl.h | 8 + .../main/ble_mesh_console_lib.c | 0 .../main/ble_mesh_console_lib.h | 0 .../main/ble_mesh_console_main.c | 19 +- .../main/ble_mesh_console_system.c | 0 .../main/ble_mesh_reg_cfg_client_cmd.c | 1 - .../main/ble_mesh_reg_gen_onoff_client_cmd.c | 3 +- .../main/ble_mesh_reg_test_perf_client_cmd.c | 0 .../ble_mesh_register_cmd.c} | 511 ++++++++++++++++-- .../main/ble_mesh_register_server_cmd.c | 0 .../{ble_mesh_node => }/main/component.mk | 0 .../main/register_bluetooth.c | 0 .../main/transaction.c | 0 .../main/transaction.h | 0 .../ble_mesh_console/partitions.csv | 4 + .../{ble_mesh_node => }/sdkconfig.defaults | 8 + 46 files changed, 785 insertions(+), 2341 deletions(-) rename examples/bluetooth/esp_ble_mesh/ble_mesh_console/{ble_mesh_node => }/CMakeLists.txt (87%) rename examples/bluetooth/esp_ble_mesh/ble_mesh_console/{ble_mesh_node => }/Makefile (84%) rename examples/bluetooth/esp_ble_mesh/ble_mesh_console/{ble_mesh_node => }/README.md (100%) create mode 100644 examples/bluetooth/esp_ble_mesh/ble_mesh_console/ble_mesh_commands_README.md delete mode 100644 examples/bluetooth/esp_ble_mesh/ble_mesh_console/ble_mesh_node/main/CMakeLists.txt delete mode 100644 examples/bluetooth/esp_ble_mesh/ble_mesh_console/ble_mesh_node/main/ble_mesh_adapter.c delete mode 100644 examples/bluetooth/esp_ble_mesh/ble_mesh_console/ble_mesh_node/main/ble_mesh_adapter.h delete mode 100644 examples/bluetooth/esp_ble_mesh/ble_mesh_console/ble_mesh_node/main/ble_mesh_reg_gen_onoff_client_cmd.c delete mode 100644 examples/bluetooth/esp_ble_mesh/ble_mesh_console/ble_mesh_provisioner/CMakeLists.txt delete mode 100644 examples/bluetooth/esp_ble_mesh/ble_mesh_console/ble_mesh_provisioner/Makefile delete mode 100644 examples/bluetooth/esp_ble_mesh/ble_mesh_console/ble_mesh_provisioner/README.md delete mode 100644 examples/bluetooth/esp_ble_mesh/ble_mesh_console/ble_mesh_provisioner/main/ble_mesh_cfg_srv_model.c delete mode 100644 examples/bluetooth/esp_ble_mesh/ble_mesh_console/ble_mesh_provisioner/main/ble_mesh_cfg_srv_model.h delete mode 100644 examples/bluetooth/esp_ble_mesh/ble_mesh_console/ble_mesh_provisioner/main/ble_mesh_console_decl.h delete mode 100644 examples/bluetooth/esp_ble_mesh/ble_mesh_console/ble_mesh_provisioner/main/ble_mesh_console_lib.c delete mode 100644 examples/bluetooth/esp_ble_mesh/ble_mesh_console/ble_mesh_provisioner/main/ble_mesh_console_lib.h delete mode 100644 examples/bluetooth/esp_ble_mesh/ble_mesh_console/ble_mesh_provisioner/main/ble_mesh_console_main.c delete mode 100644 examples/bluetooth/esp_ble_mesh/ble_mesh_console/ble_mesh_provisioner/main/ble_mesh_console_system.c delete mode 100644 examples/bluetooth/esp_ble_mesh/ble_mesh_console/ble_mesh_provisioner/main/ble_mesh_register_node_cmd.c delete mode 100644 examples/bluetooth/esp_ble_mesh/ble_mesh_console/ble_mesh_provisioner/main/ble_mesh_register_provisioner_cmd.c delete mode 100644 examples/bluetooth/esp_ble_mesh/ble_mesh_console/ble_mesh_provisioner/main/component.mk delete mode 100644 examples/bluetooth/esp_ble_mesh/ble_mesh_console/ble_mesh_provisioner/main/register_bluetooth.c delete mode 100644 examples/bluetooth/esp_ble_mesh/ble_mesh_console/ble_mesh_provisioner/sdkconfig.defaults rename examples/bluetooth/esp_ble_mesh/ble_mesh_console/{ble_mesh_provisioner => }/main/CMakeLists.txt (83%) rename examples/bluetooth/esp_ble_mesh/ble_mesh_console/{ble_mesh_provisioner => }/main/ble_mesh_adapter.c (77%) rename examples/bluetooth/esp_ble_mesh/ble_mesh_console/{ble_mesh_provisioner => }/main/ble_mesh_adapter.h (77%) rename examples/bluetooth/esp_ble_mesh/ble_mesh_console/{ble_mesh_node => }/main/ble_mesh_cfg_srv_model.c (96%) rename examples/bluetooth/esp_ble_mesh/ble_mesh_console/{ble_mesh_node => }/main/ble_mesh_cfg_srv_model.h (100%) rename examples/bluetooth/esp_ble_mesh/ble_mesh_console/{ble_mesh_node => }/main/ble_mesh_console_decl.h (80%) rename examples/bluetooth/esp_ble_mesh/ble_mesh_console/{ble_mesh_node => }/main/ble_mesh_console_lib.c (100%) rename examples/bluetooth/esp_ble_mesh/ble_mesh_console/{ble_mesh_node => }/main/ble_mesh_console_lib.h (100%) rename examples/bluetooth/esp_ble_mesh/ble_mesh_console/{ble_mesh_node => }/main/ble_mesh_console_main.c (87%) rename examples/bluetooth/esp_ble_mesh/ble_mesh_console/{ble_mesh_node => }/main/ble_mesh_console_system.c (100%) rename examples/bluetooth/esp_ble_mesh/ble_mesh_console/{ble_mesh_provisioner => }/main/ble_mesh_reg_cfg_client_cmd.c (99%) rename examples/bluetooth/esp_ble_mesh/ble_mesh_console/{ble_mesh_provisioner => }/main/ble_mesh_reg_gen_onoff_client_cmd.c (98%) rename examples/bluetooth/esp_ble_mesh/ble_mesh_console/{ble_mesh_provisioner => }/main/ble_mesh_reg_test_perf_client_cmd.c (100%) rename examples/bluetooth/esp_ble_mesh/ble_mesh_console/{ble_mesh_node/main/ble_mesh_register_node_cmd.c => main/ble_mesh_register_cmd.c} (54%) rename examples/bluetooth/esp_ble_mesh/ble_mesh_console/{ble_mesh_node => }/main/ble_mesh_register_server_cmd.c (100%) rename examples/bluetooth/esp_ble_mesh/ble_mesh_console/{ble_mesh_node => }/main/component.mk (100%) rename examples/bluetooth/esp_ble_mesh/ble_mesh_console/{ble_mesh_node => }/main/register_bluetooth.c (100%) rename examples/bluetooth/esp_ble_mesh/ble_mesh_console/{ble_mesh_provisioner => }/main/transaction.c (100%) rename examples/bluetooth/esp_ble_mesh/ble_mesh_console/{ble_mesh_provisioner => }/main/transaction.h (100%) create mode 100644 examples/bluetooth/esp_ble_mesh/ble_mesh_console/partitions.csv rename examples/bluetooth/esp_ble_mesh/ble_mesh_console/{ble_mesh_node => }/sdkconfig.defaults (73%) diff --git a/docs/en/api-guides/esp-ble-mesh/ble-mesh-index.rst b/docs/en/api-guides/esp-ble-mesh/ble-mesh-index.rst index 17f94f9bd..024c619cc 100644 --- a/docs/en/api-guides/esp-ble-mesh/ble-mesh-index.rst +++ b/docs/en/api-guides/esp-ble-mesh/ble-mesh-index.rst @@ -221,7 +221,7 @@ ESP-BLE-MESH Examples * :example_file:`ESP-BLE-MESH and Wi-Fi Coexistence ` - an example that demonstrates the Wi-Fi and Bluetooth (BLE/BR/EDR) coexistence feature of {IDF_TARGET_NAME}. Simply put, users can use the Wi-Fi while operating Bluetooth, see :example:`example code `. -* ESP-BLE-MESH Node Console - an example that implements BLE Mesh node basic features. Within this example a node can be scanned and provisioned by Provisioner and reply to get/set message from Provisioner, see :example:`example node code ` and :example:`example Provisioner code `. +* ESP-BLE-MESH Node Console - an example that implements BLE Mesh node basic features. Within this example a node can be scanned and provisioned by Provisioner and reply to get/set message from Provisioner, see :example:`example node code `. .. _esp-ble-mesh-demo-videos: diff --git a/docs/zh_CN/api-guides/esp-ble-mesh/ble-mesh-index.rst b/docs/zh_CN/api-guides/esp-ble-mesh/ble-mesh-index.rst index f351ca186..623b70b1d 100644 --- a/docs/zh_CN/api-guides/esp-ble-mesh/ble-mesh-index.rst +++ b/docs/zh_CN/api-guides/esp-ble-mesh/ble-mesh-index.rst @@ -222,7 +222,7 @@ ESP-BLE-MESH 示例 * :example_file:`Wi-Fi 和 ESP-BLE-MESH 共存 ` - 该示例用于演示 Wi-Fi 和 ESP-BLE-MESH 共存的功能。简而言之,用户可在运行 ESP-BLE-MESH 时使用 Wi-Fi,示例请见 :example:`example code `。 -* ESP-BLE-MESH 节点控制台 - 该演示实现 ESP-BLE-MESH 节点的基本功能。在演示中,Provisioner 可以扫描、验证节点,节点可以回复 Provisioner 的获取/设置消息,示例请见::example:`example node code ` 和 :example:`example provisioner code `。 +* ESP-BLE-MESH 节点控制台 - 该演示实现 ESP-BLE-MESH 节点的基本功能。在演示中,node and Provisioner 可以扫描、验证节点,节点可以回复 Provisioner 的获取/设置消息,示例请见::example:`example node code `。 .. _esp-ble-mesh-demo-videos: diff --git a/examples/bluetooth/esp_ble_mesh/ble_mesh_console/ble_mesh_node/CMakeLists.txt b/examples/bluetooth/esp_ble_mesh/ble_mesh_console/CMakeLists.txt similarity index 87% rename from examples/bluetooth/esp_ble_mesh/ble_mesh_console/ble_mesh_node/CMakeLists.txt rename to examples/bluetooth/esp_ble_mesh/ble_mesh_console/CMakeLists.txt index 74361e558..ec534dfbf 100644 --- a/examples/bluetooth/esp_ble_mesh/ble_mesh_console/ble_mesh_node/CMakeLists.txt +++ b/examples/bluetooth/esp_ble_mesh/ble_mesh_console/CMakeLists.txt @@ -3,4 +3,4 @@ cmake_minimum_required(VERSION 3.5) include($ENV{IDF_PATH}/tools/cmake/project.cmake) -project(ble_mesh_console_node) +project(ble_mesh_console) diff --git a/examples/bluetooth/esp_ble_mesh/ble_mesh_console/ble_mesh_node/Makefile b/examples/bluetooth/esp_ble_mesh/ble_mesh_console/Makefile similarity index 84% rename from examples/bluetooth/esp_ble_mesh/ble_mesh_console/ble_mesh_node/Makefile rename to examples/bluetooth/esp_ble_mesh/ble_mesh_console/Makefile index 209aa2e0c..718b7922d 100644 --- a/examples/bluetooth/esp_ble_mesh/ble_mesh_console/ble_mesh_node/Makefile +++ b/examples/bluetooth/esp_ble_mesh/ble_mesh_console/Makefile @@ -3,7 +3,7 @@ # project subdirectory. # -PROJECT_NAME := ble_mesh_console_node +PROJECT_NAME := ble_mesh_console COMPONENT_ADD_INCLUDEDIRS := components/include diff --git a/examples/bluetooth/esp_ble_mesh/ble_mesh_console/ble_mesh_node/README.md b/examples/bluetooth/esp_ble_mesh/ble_mesh_console/README.md similarity index 100% rename from examples/bluetooth/esp_ble_mesh/ble_mesh_console/ble_mesh_node/README.md rename to examples/bluetooth/esp_ble_mesh/ble_mesh_console/README.md diff --git a/examples/bluetooth/esp_ble_mesh/ble_mesh_console/ble_mesh_commands_README.md b/examples/bluetooth/esp_ble_mesh/ble_mesh_console/ble_mesh_commands_README.md new file mode 100644 index 000000000..b9277422a --- /dev/null +++ b/examples/bluetooth/esp_ble_mesh/ble_mesh_console/ble_mesh_commands_README.md @@ -0,0 +1,166 @@ +# The Document of ESP32 BLE_MESH Commands + +## Overall Command + + +* `bmreg`: Provisioner/node register callback + * Example: `bmreg` + * Result: `Bm:Reg,OK` + +* `bminit`: Provisioner/node initialize + * `-m`: `mesh modle` + * Example: `bminit -m 0x0001` + * Result: `Bm:Init,OK` + +* `bmpbind`: Provisioner binds Appkey with local model + * `-a`: `:appkey index` + * `-e`: `:element address` + * `-n`: `:network index` + * `-m`: `:model id` + * `-c`: `:company id` + * Example: `bmpbind -a 0 -e 0x01 -m 0x1001 -n 0x00` + * Result: `provisioning:AppKeyBind,OK` + +* `bmpdev`: Provisioner add/delete unprovisioned device + * `-z`: `action type ` + * `-d`: `device address` + * `-u`: `device uuid` + * `-a`: `address type` + * `-f`: `address flag` + * `-b`: `used bearer` + * `-o`: `oob information` + * Example: `bmpdev -z add -d bt_mac -b -1 -a 0` + * Result: `provisioner:DevAdd/Del,OK` + +* `bmoob`: Provisioner/node config OOB parameters + * `-s`: `Static OOB value` + * `-l`: `Static OOB value length` + * `-x`: `Maximum size of Output OOB` + * `-o`: `Supported Output OOB Actions` + * `-y`: `Maximum size of Input OOB` + * `-i`: `Supported Input OOB Actions` + * `-p`: `start address assigned by provisioner` + * Example: `bmoob -o -0 -x 0` + * Result: `OOB:Load,OK` + +* `bmpbearer`: Enable/disable provisioner different bearer + * `-b`: `bearer supported` + * `-e`: `enable or disable bearer` + * Example: `bmpbearer -b 1 -e 1` + * Result: `provisioner:EnBearer,OK` + +* `bmnbearer`: Enable/disable node different bearer + * `-b`: `bearer supported` + * `-e`: `enable or disable bearer` + * Example: `bmnbearer -b 1 -e 1` + * Result: `Node:EnBearer,OK` + +* `bmpkey`: Add/Delete NetKey and AppKey of Provisioner + * `-z`: `:add app key or network key` + * `-n`: `:network key index` + * `-k`: `:appkey or network` + * `-a`: `:appkey index` + * Example: `bmpkey -z netkey -n 1 -k ` + * Result: `provisioner:NetKeyAdd,OK` + +* `bmccm`: BLE Mesh configuration client model operations + * `-z`: `:action type`:add or del client model + * `-x`: `:set state` + * `-o`: `:message opcode` + * `-u`: `
:unicast address` + * `-n`: `:net work index` + * `-i`: `:appkey index` + * `-r`: `:relay statue` + * `-t`: `:relay transmit` + * `-c`: `:company id` + * `-v`: `:value` + * `-a`: `
:address` + * `-m`: `:model id` + * Example: `bmccm -z reg` + * Result: `ConfigClient:OK` + +* `bmgocm`: BLE Mesh onoff client model operations + * `-z`: `:action type`: on or off client model + * `-o`: `:message opcode` + * `-u`: `
:unicast address` + * `-n`: `:network key index` + * `-a`: `:appkey index` + * `-r`: `:role` + * `-t`: `