diff --git a/ESP-IDF_Robot_RC/main/common.c b/ESP-IDF_Robot_RC/main/common.c index fcce029b6..99f97a9d3 100644 --- a/ESP-IDF_Robot_RC/main/common.c +++ b/ESP-IDF_Robot_RC/main/common.c @@ -21,4 +21,24 @@ static void wifi_init(void) #if CONFIG_ESPNOW_ENABLE_LONG_RANGE ESP_ERROR_CHECK( esp_wifi_set_protocol(ESPNOW_WIFI_IF, WIFI_PROTOCOL_11B|WIFI_PROTOCOL_11G|WIFI_PROTOCOL_11N|WIFI_PROTOCOL_LR) ); #endif +} + +static esp_err_t rc_espnow_init (void) { + + espnow_data_packet_t *send_packet; + + send_packet = malloc(sizeof(espnow_data_packet_t)); + if (send_packet == NULL) { + ESP_LOGE(TAG, "malloc fail."); + return ESP_FAIL; + } + + memset(send_packet, 0, sizeof(espnow_data_packet_t)); + memcpy(send_packet->dest_mac, receiver_mac, ESP_NOW_ETH_ALEN); + send_packet->len = CONFIG_ESPNOW_SEND_LEN; // 128 + send_packet->buffer = malloc(CONFIG_ESPNOW_SEND_LEN); + sensors_data_prepare(send_packet); + xTaskCreate(rc_send_data_task2, "controller data packets task", 2048, send_packet, 8, NULL); + + return ESP_OK; } \ No newline at end of file