From dbf45992212789c2b554745d8d5d42f63caa861e Mon Sep 17 00:00:00 2001 From: Foxushka <135865149+Foxushka@users.noreply.github.com> Date: Thu, 7 Sep 2023 19:40:50 +0300 Subject: [PATCH 1/2] Update cmd_processor_get_settings --- firmware/application/src/app_cmd.c | 7 ++++--- software/script/chameleon_cmd.py | 5 +++-- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/firmware/application/src/app_cmd.c b/firmware/application/src/app_cmd.c index fa2d1f9..fb16c4b 100644 --- a/firmware/application/src/app_cmd.c +++ b/firmware/application/src/app_cmd.c @@ -118,15 +118,16 @@ data_frame_tx_t *cmd_processor_reset_settings(uint16_t cmd, uint16_t status, uin } data_frame_tx_t *cmd_processor_get_settings(uint16_t cmd, uint16_t status, uint16_t length, uint8_t *data) { - uint8_t settings[6 + BLE_CONNECT_KEY_LEN_MAX] = {}; + uint8_t settings[7 + BLE_CONNECT_KEY_LEN_MAX] = {}; settings[0] = SETTINGS_CURRENT_VERSION; // current version settings[1] = settings_get_animation_config(); // animation mode settings[2] = settings_get_button_press_config('A'); // short A button press mode settings[3] = settings_get_button_press_config('B'); // short B button press mode settings[4] = settings_get_long_button_press_config('A'); // long A button press mode settings[5] = settings_get_long_button_press_config('B'); // long B button press mode - memcpy(settings + 6, settings_get_ble_connect_key(), BLE_CONNECT_KEY_LEN_MAX); - return data_frame_make(cmd, STATUS_DEVICE_SUCCESS, 6 + BLE_CONNECT_KEY_LEN_MAX, settings); + settings[6] = settings_get_ble_pairing_enable(); // is device require pairing + memcpy(settings + 7, settings_get_ble_connect_key(), BLE_CONNECT_KEY_LEN_MAX); + return data_frame_make(cmd, STATUS_DEVICE_SUCCESS, 7 + BLE_CONNECT_KEY_LEN_MAX, settings); } data_frame_tx_t *cmd_processor_set_animation_mode(uint16_t cmd, uint16_t status, uint16_t length, uint8_t *data) { diff --git a/software/script/chameleon_cmd.py b/software/script/chameleon_cmd.py index e769c90..f1811e5 100644 --- a/software/script/chameleon_cmd.py +++ b/software/script/chameleon_cmd.py @@ -5,7 +5,7 @@ import chameleon_com import chameleon_status from chameleon_utils import expect_response -CURRENT_VERSION_SETTINGS = 4 +CURRENT_VERSION_SETTINGS = 5 DATA_CMD_GET_APP_VERSION = 1000 DATA_CMD_CHANGE_MODE = 1001 @@ -859,7 +859,8 @@ class ChameleonCMD: settings[3] = settings_get_button_press_config('B'); // short B button press mode settings[4] = settings_get_long_button_press_config('A'); // long A button press mode settings[5] = settings_get_long_button_press_config('B'); // long B button press mode - settings[6:12] = settings_get_ble_connect_key(); // BLE connection key + settings[6] = settings_get_ble_pairing_enable(); // is device require pairing + settings[7:13] = settings_get_ble_connect_key(); // BLE connection key """ data = self.device.send_cmd_sync(DATA_CMD_GET_SETTINGS, 0x00).data if data[0] != CURRENT_VERSION_SETTINGS: From 6e4d861625831f99367af948d356ed76ccd62b8f Mon Sep 17 00:00:00 2001 From: Foxushka <135865149+Foxushka@users.noreply.github.com> Date: Thu, 7 Sep 2023 19:41:57 +0300 Subject: [PATCH 2/2] Update version in docstring --- software/script/chameleon_cmd.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/software/script/chameleon_cmd.py b/software/script/chameleon_cmd.py index f1811e5..f0679c0 100644 --- a/software/script/chameleon_cmd.py +++ b/software/script/chameleon_cmd.py @@ -852,7 +852,7 @@ class ChameleonCMD: def get_device_settings(self): """ Get all possible settings - For version 4: + For version 5: settings[0] = SETTINGS_CURRENT_VERSION; // current version settings[1] = settings_get_animation_config(); // animation mode settings[2] = settings_get_button_press_config('A'); // short A button press mode