@@ -49,6 +49,7 @@ static const char rsp_str[][24] = {
49
49
"OK\r\n" , // OK
50
50
"DONE\r\n" , // Done
51
51
"ERROR\r\n" , // Error
52
+ "VER:%s\r\n" , // Version String
52
53
"RECV:%ld/%ld\r\n" // Receive Progress
53
54
};
54
55
@@ -96,13 +97,9 @@ void bt_app_spp_cb(esp_spp_cb_event_t event, esp_spp_cb_param_t *param)
96
97
} else if (strncmp (fw_cmd [1 ], (const char * )param -> data_ind .data , strlen (fw_cmd [1 ])) == 0 ) {
97
98
ESP_LOGI (BT_SPP_TAG , "GET command: FW+VER?" );
98
99
99
- uint8_t str_len = strlen (firmware_get_version ()) + 2 ;
100
- char * str_buf = malloc (str_len * sizeof (char ));
101
- strncpy (str_buf , firmware_get_version (), str_len - 2 );
102
- str_buf [str_len - 2 ] = '\r' ;
103
- str_buf [str_len - 1 ] = '\n' ;
104
-
105
- esp_spp_write (param -> write .handle , str_len , (uint8_t * )str_buf );
100
+ char str_buf [24 ] = {0 };
101
+ snprintf (str_buf , sizeof (str_buf ), rsp_str [3 ], firmware_get_version ());
102
+ esp_spp_write (param -> write .handle , strlen (str_buf ), (uint8_t * )str_buf );
106
103
} else if (strncmp (fw_cmd [2 ], (const char * )param -> data_ind .data , 7 ) == 0 ) {
107
104
sscanf ((const char * )param -> data_ind .data , fw_cmd [2 ], & image_length );
108
105
ESP_LOGI (BT_SPP_TAG , "GET command: FW+UPD:%ld" , image_length );
@@ -141,7 +138,7 @@ void bt_app_spp_cb(esp_spp_cb_event_t event, esp_spp_cb_param_t *param)
141
138
ESP_LOGD (BT_OTA_TAG , "have written image length %ld" , data_num );
142
139
143
140
char str_buf [24 ] = {0 };
144
- snprintf (str_buf , sizeof (str_buf ), rsp_str [3 ], data_num , image_length );
141
+ snprintf (str_buf , sizeof (str_buf ), rsp_str [4 ], data_num , image_length );
145
142
esp_spp_write (param -> write .handle , strlen (str_buf ), (uint8_t * )str_buf );
146
143
147
144
if (data_num == image_length ) {
0 commit comments