diff --git a/ESP-IDF_Robot/tutorial/docs/build/doctrees/environment.pickle b/ESP-IDF_Robot/tutorial/docs/build/doctrees/environment.pickle
index 68cb6daf3..5e2d82a7f 100644
Binary files a/ESP-IDF_Robot/tutorial/docs/build/doctrees/environment.pickle and b/ESP-IDF_Robot/tutorial/docs/build/doctrees/environment.pickle differ
diff --git a/ESP-IDF_Robot/tutorial/docs/build/doctrees/overview.doctree b/ESP-IDF_Robot/tutorial/docs/build/doctrees/overview.doctree
index 20301f6d8..cefed81fb 100644
Binary files a/ESP-IDF_Robot/tutorial/docs/build/doctrees/overview.doctree and b/ESP-IDF_Robot/tutorial/docs/build/doctrees/overview.doctree differ
diff --git a/ESP-IDF_Robot/tutorial/docs/build/html/_sources/overview.rst.txt b/ESP-IDF_Robot/tutorial/docs/build/html/_sources/overview.rst.txt
index e73a4db58..0c446ae8e 100644
--- a/ESP-IDF_Robot/tutorial/docs/build/html/_sources/overview.rst.txt
+++ b/ESP-IDF_Robot/tutorial/docs/build/html/_sources/overview.rst.txt
@@ -98,6 +98,20 @@ The function for updating motors' PWM values.
ESP_LOGW("ESP-NOW", "Data was sent.");
}
+The rc_send_data_task() function runs every 0.1 second to transmit the data to the receiver.
+
+.. code-block:: c
+
+ // Continous, periodic task that sends data.
+ static void rc_send_data_task (void *arg) {
+
+ while (true) {
+ if (esp_now_is_peer_exist(receiver_mac))
+ sendData();
+ vTaskDelay (100 / portTICK_PERIOD_MS);
+ }
+ }
+
Schematic
---------
diff --git a/ESP-IDF_Robot/tutorial/docs/build/html/overview.html b/ESP-IDF_Robot/tutorial/docs/build/html/overview.html
index 78b3b1e9c..3d9c8f871 100644
--- a/ESP-IDF_Robot/tutorial/docs/build/html/overview.html
+++ b/ESP-IDF_Robot/tutorial/docs/build/html/overview.html
@@ -144,6 +144,18 @@ Changing PWM on each channel determines the speed and direction of the RC car.
}
+
The rc_send_data_task() function runs every 0.1 second to transmit the data to the receiver.
+// Continous, periodic task that sends data.
+static void rc_send_data_task (void *arg) {
+
+ while (true) {
+ if (esp_now_is_peer_exist(receiver_mac))
+ sendData();
+ vTaskDelay (100 / portTICK_PERIOD_MS);
+ }
+}
+
+
Schematic
diff --git a/ESP-IDF_Robot/tutorial/docs/build/html/searchindex.js b/ESP-IDF_Robot/tutorial/docs/build/html/searchindex.js
index 05709fd5b..cad022cca 100644
--- a/ESP-IDF_Robot/tutorial/docs/build/html/searchindex.js
+++ b/ESP-IDF_Robot/tutorial/docs/build/html/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"alltitles":{"ByteRider documentation":[[0,null]],"Chassis":[[3,"chassis"]],"Direction and Speed":[[2,"direction-and-speed"]],"Finished Work":[[3,"finished-work"]],"Fusion of Software with Hardware":[[2,"fusion-of-software-with-hardware"]],"HOW DOES IT WORK?":[[2,null]],"INTRODUCTION":[[1,null]],"Motor Wires Harness":[[3,"motor-wires-harness"]],"Reserved Pins & GPIOs":[[2,"reserved-pins-gpios"]],"Schematic":[[2,"schematic"]],"WORK-IN-PROGRESS WALK THROUGH":[[3,null]],"Wiring":[[3,"wiring"]],"x- and y- axis":[[2,"x-and-y-axis"]]},"docnames":["index","intro","overview","progress"],"envversion":{"sphinx":65,"sphinx.domains.c":3,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":9,"sphinx.domains.index":1,"sphinx.domains.javascript":3,"sphinx.domains.math":2,"sphinx.domains.python":4,"sphinx.domains.rst":2,"sphinx.domains.std":2},"filenames":["index.rst","intro.rst","overview.rst","progress.rst"],"indexentries":{},"objects":{},"objnames":{},"objtypes":{},"terms":{"0":2,"04x":2,"0x":2,"1":2,"15":2,"16":2,"2":2,"3":2,"4":2,"5":2,"6":2,"7":2,"8":2,"A":2,"IN":0,"IT":0,"If":2,"In":2,"NOT":2,"The":2,"__gpio6__":[],"_static":[],"adapt":2,"adc1_ch0":2,"adc1_ch1":2,"add":0,"address":2,"ani":2,"ar":2,"assign":2,"axi":[],"back":2,"base":2,"being":2,"below":[],"bitbyterid":2,"board":2,"breadboard":2,"brief":2,"buffer":2,"button":2,"c3":2,"call":2,"can":2,"car":2,"chang":2,"channel":2,"chassi":0,"clockwis":2,"code":2,"column":[],"complet":3,"consequ":2,"constraint":2,"content":0,"control":[2,3],"correspond":2,"counter":2,"crc":2,"data":2,"dc":[2,3],"declar":2,"dedic":2,"defin":2,"deletep":2,"detail":0,"determin":2,"develop":2,"developmemt":2,"diagon":2,"direct":[],"displai":2,"doe":0,"e":2,"each":2,"els":2,"error":2,"esp":2,"esp32":2,"esp_log":2,"esp_logi":2,"esp_logw":2,"esp_now_send":2,"exist":[],"finish":0,"follow":2,"four":2,"front":2,"function":2,"fusion":0,"gpio":0,"gpio0":2,"gpio1":2,"gpio4":2,"gpio5":2,"gpio6":2,"gpio7":2,"group":2,"har":0,"hardwar":0,"harn":3,"hexadecim":2,"hold":2,"how":0,"i":2,"idf_robot_schemat":[],"imag":[],"insid":3,"instal":3,"int":2,"introduct":0,"joystick":2,"lastli":2,"ledc_channel_0":2,"ledc_channel_1":2,"ledc_channel_2":2,"ledc_channel_3":2,"left":2,"length":2,"mac":2,"mean":2,"measur":2,"memori":2,"messag":2,"microcontrol":2,"motor":[0,2],"motor1_rpm_pcm":[],"motor1_rpm_pwm":2,"motor2_rpm_pcm":[],"motor2_rpm_pwm":2,"motor3_rpm_pcm":[],"motor3_rpm_pwm":2,"motor4_rpm_pcm":[],"motor4_rpm_pwm":2,"motors_rpm":2,"move":2,"movement":2,"nav_bttn":2,"note":2,"now":2,"number":2,"ok":2,"onli":[2,3],"oper":2,"other":2,"pair":2,"particular":2,"pin":0,"png":[],"pointer":2,"posit":2,"possibl":2,"power":2,"progress":0,"provid":2,"purpos":2,"push":2,"pwm":2,"rc":2,"receiv":2,"receiver_mac":2,"requir":2,"reserv":0,"respons":2,"restructuredtext":0,"result":2,"right":2,"rotat":2,"row":[],"same":[],"schemat":0,"secur":3,"see":0,"send":2,"senddata":2,"sensors_data_t":2,"sent":2,"side":2,"similarli":2,"sizeof":2,"softwar":0,"speed":[],"statu":2,"store":2,"struct":2,"summar":2,"summari":2,"syntax":0,"tabl":2,"tag":2,"thi":2,"those":2,"through":0,"two":2,"uint8_t":2,"updat":2,"us":0,"valu":2,"void":2,"voltag":2,"wa":2,"walk":0,"well":[],"wire":[0,2],"work":0,"wroom":2,"x":[],"x_axi":2,"y":[],"y_axi":2,"your":0},"titles":["ByteRider documentation","INTRODUCTION","HOW DOES IT WORK?","WORK-IN-PROGRESS WALK THROUGH"],"titleterms":{"IN":3,"IT":2,"axi":2,"byterid":0,"chassi":3,"direct":2,"document":0,"doe":2,"finish":3,"fusion":2,"gpio":2,"har":3,"hardwar":2,"how":2,"introduct":1,"motor":3,"pin":2,"progress":3,"reserv":2,"schemat":2,"softwar":2,"speed":2,"through":3,"walk":3,"wire":3,"work":[2,3],"x":2,"y":2}})
\ No newline at end of file
+Search.setIndex({"alltitles":{"ByteRider documentation":[[0,null]],"Chassis":[[3,"chassis"]],"Direction and Speed":[[2,"direction-and-speed"]],"Finished Work":[[3,"finished-work"]],"Fusion of Software with Hardware":[[2,"fusion-of-software-with-hardware"]],"HOW DOES IT WORK?":[[2,null]],"INTRODUCTION":[[1,null]],"Motor Wires Harness":[[3,"motor-wires-harness"]],"Reserved Pins & GPIOs":[[2,"reserved-pins-gpios"]],"Schematic":[[2,"schematic"]],"WORK-IN-PROGRESS WALK THROUGH":[[3,null]],"Wiring":[[3,"wiring"]],"x- and y- axis":[[2,"x-and-y-axis"]]},"docnames":["index","intro","overview","progress"],"envversion":{"sphinx":65,"sphinx.domains.c":3,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":9,"sphinx.domains.index":1,"sphinx.domains.javascript":3,"sphinx.domains.math":2,"sphinx.domains.python":4,"sphinx.domains.rst":2,"sphinx.domains.std":2},"filenames":["index.rst","intro.rst","overview.rst","progress.rst"],"indexentries":{},"objects":{},"objnames":{},"objtypes":{},"terms":{"0":2,"04x":2,"0x":2,"1":2,"100":2,"15":2,"16":2,"2":2,"3":2,"4":2,"5":2,"6":2,"7":2,"8":2,"A":2,"IN":0,"IT":0,"If":2,"In":2,"NOT":2,"The":2,"__gpio6__":[],"_static":[],"adapt":2,"adc1_ch0":2,"adc1_ch1":2,"add":0,"address":2,"ani":2,"ar":2,"arg":2,"assign":2,"axi":[],"back":2,"base":2,"being":2,"below":[],"bitbyterid":2,"board":2,"breadboard":2,"brief":2,"buffer":2,"button":2,"c3":2,"call":2,"can":2,"car":2,"chang":2,"channel":2,"chassi":0,"clockwis":2,"code":2,"column":[],"complet":3,"consequ":2,"constraint":2,"content":0,"contin":2,"control":[2,3],"correspond":2,"counter":2,"crc":2,"data":2,"dc":[2,3],"declar":2,"dedic":2,"defin":2,"deletep":2,"detail":0,"determin":2,"develop":2,"developmemt":2,"diagon":2,"direct":[],"displai":2,"doe":0,"e":2,"each":2,"els":2,"error":2,"esp":2,"esp32":2,"esp_log":2,"esp_logi":2,"esp_logw":2,"esp_now_is_peer_exist":2,"esp_now_send":2,"everi":2,"exist":[],"finish":0,"follow":2,"four":2,"front":2,"function":2,"fusion":0,"gpio":0,"gpio0":2,"gpio1":2,"gpio4":2,"gpio5":2,"gpio6":2,"gpio7":2,"group":2,"har":0,"hardwar":0,"harn":3,"hexadecim":2,"hold":2,"how":0,"i":2,"idf_robot_schemat":[],"imag":[],"insid":3,"instal":3,"int":2,"introduct":0,"joystick":2,"lastli":2,"ledc_channel_0":2,"ledc_channel_1":2,"ledc_channel_2":2,"ledc_channel_3":2,"left":2,"length":2,"mac":2,"mean":2,"measur":2,"memori":2,"messag":2,"microcontrol":2,"motor":[0,2],"motor1_rpm_pcm":[],"motor1_rpm_pwm":2,"motor2_rpm_pcm":[],"motor2_rpm_pwm":2,"motor3_rpm_pcm":[],"motor3_rpm_pwm":2,"motor4_rpm_pcm":[],"motor4_rpm_pwm":2,"motors_rpm":2,"move":2,"movement":2,"nav_bttn":2,"note":2,"now":2,"number":2,"ok":2,"onli":[2,3],"oper":2,"other":2,"pair":2,"particular":2,"period":2,"pin":0,"png":[],"pointer":2,"porttick_period_m":2,"posit":2,"possibl":2,"power":2,"progress":0,"provid":2,"purpos":2,"push":2,"pwm":2,"rc":2,"rc_send_data_task":2,"receiv":2,"receiver_mac":2,"requir":2,"reserv":0,"respons":2,"restructuredtext":0,"result":2,"right":2,"rotat":2,"row":[],"run":2,"same":[],"schemat":0,"second":2,"secur":3,"see":0,"send":2,"senddata":2,"sensors_data_t":2,"sent":2,"side":2,"similarli":2,"sizeof":2,"softwar":0,"speed":[],"static":2,"statu":2,"store":2,"struct":2,"summar":2,"summari":2,"syntax":0,"tabl":2,"tag":2,"task":2,"thi":2,"those":2,"through":0,"transmit":2,"true":2,"two":2,"uint8_t":2,"updat":2,"us":0,"valu":2,"void":2,"voltag":2,"vtaskdelai":2,"wa":2,"walk":0,"well":[],"while":2,"wire":[0,2],"work":0,"wroom":2,"x":[],"x_axi":2,"y":[],"y_axi":2,"your":0},"titles":["ByteRider documentation","INTRODUCTION","HOW DOES IT WORK?","WORK-IN-PROGRESS WALK THROUGH"],"titleterms":{"IN":3,"IT":2,"axi":2,"byterid":0,"chassi":3,"direct":2,"document":0,"doe":2,"finish":3,"fusion":2,"gpio":2,"har":3,"hardwar":2,"how":2,"introduct":1,"motor":3,"pin":2,"progress":3,"reserv":2,"schemat":2,"softwar":2,"speed":2,"through":3,"walk":3,"wire":3,"work":[2,3],"x":2,"y":2}})
\ No newline at end of file
diff --git a/ESP-IDF_Robot/tutorial/docs/build/simplepdf/.buildinfo b/ESP-IDF_Robot/tutorial/docs/build/simplepdf/.buildinfo
index b00da54ed..b873286e5 100644
--- a/ESP-IDF_Robot/tutorial/docs/build/simplepdf/.buildinfo
+++ b/ESP-IDF_Robot/tutorial/docs/build/simplepdf/.buildinfo
@@ -1,4 +1,4 @@
# Sphinx build info version 1
# This file records the configuration used when building these files. When it is not found, a full rebuild will be done.
-config: 736147878f63ed26eacd6b40e69c30bf
+config: 91d2f6019af2166055864870d347be93
tags: 62a1e7829a13fc7881b6498c52484ec0
diff --git a/ESP-IDF_Robot/tutorial/docs/build/simplepdf/esp-idf_espnow_rc-car.pdf b/ESP-IDF_Robot/tutorial/docs/build/simplepdf/esp-idf_espnow_rc-car.pdf
index 46ad459cc..09b8844e2 100644
Binary files a/ESP-IDF_Robot/tutorial/docs/build/simplepdf/esp-idf_espnow_rc-car.pdf and b/ESP-IDF_Robot/tutorial/docs/build/simplepdf/esp-idf_espnow_rc-car.pdf differ
diff --git a/ESP-IDF_Robot/tutorial/docs/build/simplepdf/index.html b/ESP-IDF_Robot/tutorial/docs/build/simplepdf/index.html
index 776796876..57630d7f5 100644
--- a/ESP-IDF_Robot/tutorial/docs/build/simplepdf/index.html
+++ b/ESP-IDF_Robot/tutorial/docs/build/simplepdf/index.html
@@ -483,6 +483,23 @@ Changing PWM on each channel determines the speed and direction of the RC car.
else
ESP_LOGW("ESP-NOW", "Data was sent.");
}
+
+
+
+
+ The rc_send_data_task() function runs every 0.1 second to transmit the data to the receiver.
+
+
+
+
// Continous, periodic task that sends data.
+static void rc_send_data_task (void *arg) {
+
+ while (true) {
+ if (esp_now_is_peer_exist(receiver_mac))
+ sendData();
+ vTaskDelay (100 / portTICK_PERIOD_MS);
+ }
+}