From 6a750fcb85c5255fc0135b517a433ea9aeb708d0 Mon Sep 17 00:00:00 2001 From: Alexandre Bobkov Date: Sat, 5 Jul 2025 23:43:14 -0400 Subject: [PATCH] manual --- .../docs/build/doctrees/environment.pickle | Bin 27735 -> 27735 bytes .../docs/build/doctrees/overview.doctree | Bin 29845 -> 31161 bytes .../docs/build/html/_sources/overview.rst.txt | 30 +++++++++--------- .../tutorial/docs/build/html/overview.html | 9 ++++++ .../tutorial/docs/build/html/searchindex.js | 2 +- .../tutorial/docs/build/simplepdf/.buildinfo | 2 +- .../tutorial/docs/build/simplepdf/index.html | 29 +++++++++++++++++ .../tutorial/docs/source/overview.rst | 24 +++++++------- 8 files changed, 67 insertions(+), 29 deletions(-) diff --git a/ESP-IDF_Robot/tutorial/docs/build/doctrees/environment.pickle b/ESP-IDF_Robot/tutorial/docs/build/doctrees/environment.pickle index 734fdb2efe1156066cb065bbacef44c15b9ce0da..90a83f700d7b07c213f43f2162c4820089130625 100644 GIT binary patch delta 597 zcmYjNJ7^R^7{1+&-b>KC2oXF_4({^Ugm^023Ze%pijko4L6&iMay!dD!rWZq6$&X# zAqxg(1QBd(_wr&3ArOc*qG)T5%R9wVE=xSrBtD{@_-*lX zp^*t@Fr6WIR=%+iLn1sxd`1Hi<{3qP%Oi|oDrZw{Vj{JPzyjkO#Z#DK-^4B6t=_oM zRZ}VFy@W7Je5n|vEhe6eJHlBx*pb8cJBxgzR#GBQ*q_ z`)+&ydX1iGlKSvFEe-AqPML4mXXR(D*(1D6^8cz;UMFWR{#8_xecN(TXFDSg{RIF; U=O;wJ0m_h80S2`A75S*{0gsE&eE;r4MY@ceX?B+EZkU~<=Ah7n z9%RA78=(kZyc*ktJt#_{dJq)Fo9)Gu2M;11y@)t3R`l}ue%}wi?``jB+dEqS)WpJG z;c!aoRx_|kQ%0%lL7*gU2VSd5Z^&qrd8EO7!n-oc_yMP)&3&~%nyldmOETIQ3L=w^x@@PF~CF zN-iy~VD-^@iLyp+C6yHDqhuPduewvP!Nk1 X5T7#&Ul3mrCF~i9@0s{Md!_#dP;%8} diff --git a/ESP-IDF_Robot/tutorial/docs/build/doctrees/overview.doctree b/ESP-IDF_Robot/tutorial/docs/build/doctrees/overview.doctree index 479235335c08a66bbe1f1765456796cea1c986e8..af3b9af48a8745230a61c2c447a0d3310b455f64 100644 GIT binary patch delta 4013 zcmbW4ZA?>F7{@ucFSH;iTkLqTSXvn%Z}QSYp-8a|1wnZcrfy~^0=E}!DTNS|IYq~` z3qj*kKWuTEjfsg_X6CwVL+8ZAebHrTbj~l!UXsnBFhiy@TVk?v&TVgRORsExIl#TY z^MC%&bD#6V@o6;iCsOQJ96!6~oZ^liWkG|!9)8e!kREEXjfz}0m0J!zgJH3jiHX5~ zq~ae#JGgXc$yo*u49k&O;7n3nUVLr0yKBJSKWKM4ylm_?FS~Rs?AfSy#Jksp>z`8d!KvHX}g zt0lQ<=#0Rfmf|`y8@qc3bua2#?Y-=vuGXe&at=BN+;Q%HyF=Ht%h}a8Y zs1lQcg^Lmvw2+mhN8bzFEpau*7*dVJq#8I|51*j897)-Q=rNvaMi0gMa}lLr5@q1B zmMT|am3SG{RO^GSASRu8Pc4RX$T8SGFs~;6Z&IiOBbg-UZZ zGXc6+>X}!0g%X_lmasS-GSMo){ld6IWWOZ2&qj+Rbc!y#Q{o~TDezjNcF&-duIq{v z3)S@PPzHx2Gk{NXwTv%Bz8_ZC4%q@N_fB3RbD5uQ!ZrOWEY5|+s+B(Aj`)n;P)#3%GMJIf03PKpM@raUZd8(@$mC>=1zYt3EvZ^q#iYRM zL;RZl4S}z@*e@%rN2r9%hXbo-Q`_V*G43IDC0B=kVVAMFtaiNx>)PbtDcXs)U@-4F z?&Z+S)%?r6;+*`N&{I5xon_Nl8Q$#I;Kw=q2CZO~WdF|Q*2Uf#2U)LUnMzAjT|ycmue(~o(&7=ixRLFi-9QM z3RrJ6p;IJik~s4^!oeluN)q$Fu?wAtjiv_l1-xt8&rHd|r?wEUXq~{lL^xI8V0;3T6^39B{X_aIM>WO!I84vSpm*0=E$pb&AQ#nXw#bn~ z9IsCy+Vzkn1sxW+QAuvRIu1UvO zR%_60JlBkFiuJFHJ*(C&`RgmmoRZuo;ytxIOT~6rFg27;iQfTCG}?Ccw!Q z4m!TRkmK?i4XUJ*+i;}vut-K_pw#4(+`(Y00B(#9k{%ddQ-$mT*b^PhuoVO?8kGwa z^}J1kuS_>=X68tk*qGSf)>;j|FA?Z;bck5{yViv!DRfa9ayBLcsx#m#4N<#A!JyZ% zr+ID3Nt1D#l<-HL2H$CX>&(oJ9iC2KCAb8#Fw(fZ z*ZPBac@kz+l5sW`;blpf6Jq1-u?uvCy-9;ELB<9%`ckYt5%h?^Mk?nOC1(;PcbiVU zDKT*woY^pfW+*c)$&kul-e_QCDi~=hXJS<1BXfe<4{moXU4^Q^kvRn?n@gB)=n?CG z++2qsueU&%h?k#L1+LakrbPueTdSEZDkxe~EaUK>^=-xE>AB=m<#x*XKX1!Kj9UfG zru10uD&9xAYanYcPI9S)1GkG;tZRRhc?%0$OOJKP6RhMtf1(bk{7D^VHRGi!rhp2O z8o`i#yA1fEbI~f5+qVSMTml|gC%cQQA|eRucZp8jq(`QMZyN*>mEn2LDVdmcL9L+5(vJkJoTBP0zM&+cM-I4ce2 sX792mX(V=*4?}u^hM`GwcJk?MWEdv{xh-*iG60mhA2AJTC>ZSh7bH+b%7 delta 3135 zcmbW3Yj6`)6vuOKvPnuxA5a2q2rWqy=!-(z6ha&NfJPn`NO`ohI>@W+EFozr9mKI3 zhEfO*r*hJ9@JUBUKR7x<(1AfghJvWW7axFv4m0W?kD?txKI*-9v%5*Vzzkn*HuwC_ zIsbch@45HHKdA2};zC^C-mOQtD>j&752Fci#O_ApU`@Uq0!{-?!!XG+9+rAd;LgoP z#mro&X6|!1ke8X~N@kP>IZnGV1#2{XmSCdOC<%hjsVEg{s>h-X81hVn3(jKHP8?la z5upN-Gv1`64o$J3JuP( zVS|3hii6B5p|pI`Np)7o4M^rpSgy!-LS(Q0fY(*6^Gb@3a?6f_i0Eea*qZW9z#EqL2uN8^ew=jE9)t*_Jjl#^{lVB%V zr8m#hLZDU{ES-k5(TQct5&Dd3h4)>9S(mgLO-Co6FMLfN_=$W0Z(USLYH?l*AC<31 z*9cfRM)+AV&Jm4EXXX_RD6_rdo@WgMCM7Pt6JDGs~I6^cO{CbWejAw6GRZt$BXzlK|ro< zq=0!OxS7mL0&*cZyBs;Gi1heMcqs?J&CbUIT1c%}hdnxITR#a7Ruqtr;Z#KkH|U_> zRtYawCdVFA+_cm;5!;b5Ynmt7(jcZAMK(xcx#QO)0i1NVWu@PZC)mBQ<%+a%+YzJc(=lI zt1*E(2Yy>&-iT-7`h|+hXS`;7O7vVtRGySQkBch*_S*1|iv7Fc_TH!F<2#D|=5Tw! zmIxJjk&Fqf3)}Hrg{f9! z>KCVgW04&Fvt@{c}k z#=Q!2U?gJ#UwsGuKw;ifW9k>rz^4@EWIXdo>6|c4uhBqgK?eSn`9rl&hpx*0R}`&( zE-~YK3Ntj4F~RPoJF&^Yb{UC-jRvWKU^$QpXs!Ewc5G9?>;&-Pis@!Q&|t>3%vIk) z>RP3^RvKd8#VAe~PnUIlegQl%H&KjVv@j3j10Uk6~;cLW@R-zTi-_1=W zbhf`~7Cvi;UTtz9{I7u=0NMI_(p-eaFr~R9{hmQSRo98ZgywE?3-kG1>3%jr?BcO` z-w<`RxRcO$K+QQWF$N8!Gio$pfg_`!r-OkET@iYY#03wqSkZy?Iz&z?8vT_K(NkMZ z94dQ~=)I!!woTVzP2)5;>@}wMj|l&o{{ce2Ckg+q82

GPIOs

State

+

Description

Function

@@ -73,21 +74,29 @@ Changing PWM on each channel determines the speed and direction of the RC car.

GPIO6 & GPIO4

PWM

+

Left & Right DC Motors +spin clockwise

Forward

GPIO5 & GPIO7

PWM

+

Left & Right DC Motors +spin counterclockwise

Reverse

GPIO6 & GPIO7

PWM

+

Left DC Motors spin clockwise +Right DC Motors spin counterclockwise

Left

GPIO4 & GPIO5

PWM

+

Left DC Motors spin counterclockwise +Right DC Motors spin clockwise

Right

diff --git a/ESP-IDF_Robot/tutorial/docs/build/html/searchindex.js b/ESP-IDF_Robot/tutorial/docs/build/html/searchindex.js index 4e9e3d6f8..d2fdf78a7 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":{"ABSTRACT":[[2,"abstract"]],"ByteRider documentation":[[1,null]],"Chassis":[[4,"chassis"]],"Configuration Variables":[[5,"configuration-variables"],[7,"configuration-variables"]],"DATA STRUCT":[[0,null]],"Data Payload":[[0,"data-payload"]],"Direction and Speed":[[3,"direction-and-speed"]],"Finished Work":[[4,"finished-work"]],"Fusion of Software with Hardware":[[3,"fusion-of-software-with-hardware"]],"GitHub":[[6,"github"]],"HOW DOES IT WORK?":[[3,null]],"Main Function":[[5,"main-function"],[7,"main-function"]],"Motor Wires Harness":[[4,"motor-wires-harness"]],"OVERVIEW":[[2,null]],"RECEIVER":[[5,null]],"REFERENCES":[[6,null]],"Receiving & De-Ecapsulating Data":[[5,"receiving-de-ecapsulating-data"]],"Reserved Pins & GPIOs":[[3,"reserved-pins-gpios"]],"Schematic":[[3,"schematic"]],"Sending & Ecapsulating Data":[[7,"sending-ecapsulating-data"]],"TRANSMITTER":[[7,null]],"WORK-IN-PROGRESS WALK THROUGH":[[4,null]],"What is PWM?":[[3,null]],"Why use __attribute((packed))?":[[0,"why-use-attribute-packed"]],"Wiring":[[4,"wiring"]],"x- and y- axis":[[3,"x-and-y-axis"]]},"docnames":["data","index","intro","overview","progress","receiver","references","transmitter"],"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":["data.rst","index.rst","intro.rst","overview.rst","progress.rst","receiver.rst","references.rst","transmitter.rst"],"indexentries":{},"objects":{},"objnames":{},"objtypes":{},"terms":{"":[0,2],"0":[3,5],"02x":5,"04x":3,"0x":3,"0x14":5,"0x17":7,"0x44":7,"0x54":5,"0x63":7,"0x6e":5,"0x9c":5,"0x9e":[5,7],"0xb0":7,"0xb5":5,"0xe4":7,"1":[3,5],"100":3,"15":3,"16":3,"2":[3,5],"250":0,"3":[3,5],"4":[0,3,5,7],"47":3,"48":3,"5":[3,5],"50":[],"6":3,"7":3,"8":3,"90":3,"91":3,"95":[],"A":3,"As":0,"At":2,"IN":1,"IT":1,"If":3,"In":[0,3],"It":[0,3],"NOT":3,"ON":[0,5,7],"On":2,"The":[0,2,3],"These":2,"To":2,"__attribut":[],"__attribute__":[0,5,7],"__gpio6__":[],"_gitbub":[],"_static":[],"abstract":1,"across":0,"ad":0,"adapt":[2,3,6],"adc1_ch0":3,"adc1_ch1":3,"add":0,"addit":[0,2],"address":[3,7],"adjust":2,"alexandrebobkov":[3,6],"align":0,"all":0,"alloc":3,"allow":[0,2,3],"an":[0,2],"analog":[0,3],"ani":[0,3],"app_main":[5,7],"appear":2,"ar":[2,3],"architectur":[],"arg":3,"assign":3,"attribut":0,"avail":[2,3],"axi":[],"back":3,"bacl":3,"bandwidth":0,"base":[2,3],"baselin":2,"batteri":0,"behavior":2,"being":3,"below":[],"between":[0,2,3],"bitbyterid":3,"blob":6,"board":3,"bool":[0,5,7],"both":2,"breadboard":3,"brief":3,"buf":[3,5],"buffer":[3,7],"button":[0,3,5,7],"byte":0,"c3":3,"c3_breadboard":[3,6],"call":[3,7],"can":[2,3],"capabl":2,"captur":0,"car":[2,3],"chang":[2,3],"channel":[3,5],"chassi":1,"chip_sensor_init":7,"clockwis":3,"code":[2,3,6],"column":[],"com":[3,6],"command":0,"commun":[0,2],"compact":0,"compat":0,"compil":0,"complet":[4,6],"configur":[0,1],"connect":2,"connectionless":2,"consequ":3,"consist":2,"const":5,"constraint":3,"contain":0,"content":[],"contin":3,"continu":2,"control":[0,2,3,4],"convert":2,"core":2,"correspond":3,"counter":3,"crc":3,"creativ":2,"current":5,"custom":2,"customiz":2,"cycl":3,"d":5,"data":[1,2,3],"data_len":[3,5],"dc":[0,2,3,4,5,7],"ddiscret":[],"de":[1,2],"declar":3,"decod":0,"decreas":3,"dedic":3,"defin":[2,3],"deletep":3,"deliv":3,"demonstr":2,"depend":2,"design":[0,2,6],"detail":[],"determin":[0,3],"devboard":3,"develop":[2,3],"developmemt":3,"devic":[0,2,3],"diagon":3,"differenti":0,"digit":3,"direct":[0,2],"discret":3,"displai":3,"doe":1,"drive":0,"duti":3,"e":[0,3],"each":3,"easili":2,"ecapsul":1,"effect":3,"effici":2,"elegantli":2,"els":3,"embed":0,"emploi":2,"enabl":[0,2],"encapsul":[0,2],"encod":0,"encrypt":5,"end":0,"endless":2,"ensur":[0,2],"error":3,"esp":[0,2,3,6,7],"esp32":[2,3,6],"esp_err":[5,7],"esp_err_nvs_new_version_found":[5,7],"esp_err_nvs_no_free_pag":[5,7],"esp_err_t":[5,7],"esp_error_check":[5,7],"esp_if_wifi_sta":5,"esp_log":3,"esp_logi":[3,5],"esp_logw":3,"esp_now_add_p":5,"esp_now_eth_alen":[5,7],"esp_now_init":5,"esp_now_is_peer_exist":3,"esp_now_peer_info_t":5,"esp_now_register_recv_cb":5,"esp_now_send":[3,7],"esp_now_send_status_t":3,"espressif":2,"etc":0,"even":[0,2],"event":3,"everi":3,"evok":3,"evolv":2,"exact":0,"exchang":2,"exist":[],"expand":2,"expect":0,"extend":2,"facilit":2,"fals":5,"fast":2,"featur":2,"fi":2,"field":0,"file":6,"final":0,"fine":[0,3],"finish":1,"fix":[0,3],"focus":2,"follow":3,"form":2,"forward":3,"foundat":2,"four":[0,3],"free":2,"freedom":2,"freerto":[5,7],"frequenc":3,"from":[0,5],"front":3,"function":[1,2,3],"fusion":1,"g":0,"get":3,"github":[1,3],"github_":[],"give":2,"gpio":1,"gpio0":3,"gpio1":3,"gpio4":3,"gpio5":3,"gpio6":3,"gpio7":3,"grain":[0,3],"group":3,"guid":2,"h":[5,7],"handl":2,"har":1,"hardwar":[0,1,2],"harn":4,"heart":2,"hexadecim":3,"high":3,"higher":3,"hold":[3,7],"hood":2,"how":[1,2],"http":[3,6],"i":[0,2],"idea":2,"ideal":[0,2],"idf_robot":6,"idf_robot_schemat":[],"ifidx":5,"igit":[],"illustr":3,"imag":3,"implement":2,"includ":[5,7],"incom":2,"increas":3,"indic":0,"individu":0,"initi":[5,7],"input":[0,2],"insid":4,"instal":4,"int":[0,3,5,7],"integr":2,"intend":0,"intern":7,"interpret":[0,2],"interv":0,"introduct":[],"itself":2,"joystick":[0,2,3,5,7],"joystick_adc_init":7,"khz":3,"kicad":[3,6],"lastli":3,"latenc":[0,2],"layout":0,"led":[0,5,7],"ledc_channel_0":3,"ledc_channel_1":3,"ledc_channel_2":3,"ledc_channel_3":3,"left":3,"len":5,"length":[3,7],"level":3,"li":2,"light":2,"lightweight":2,"like":[0,2],"listen":2,"loop":2,"low":[0,2,3],"lower":3,"mac":[3,7],"mac_addr":[3,5],"mai":0,"main":[1,6],"maintain":2,"make":0,"maneuv":0,"master":0,"maxim":0,"md":6,"mean":3,"measur":3,"memcpi":5,"memori":[0,3,7],"messag":3,"microcontrol":[0,2,3],"minim":0,"modul":[2,3],"modular":2,"motor":[0,1,2,3,5,7],"motor1_rpm_pcm":[],"motor1_rpm_pwm":[0,3,5,7],"motor2_rpm_pcm":[],"motor2_rpm_pwm":[0,3,5,7],"motor3_rpm_pcm":[],"motor3_rpm_pwm":[0,3,5,7],"motor4_rpm_pcm":[],"motor4_rpm_pwm":[0,3,5,7],"motors_rpm":3,"move":[2,3],"movement":[2,3],"multi":0,"nav_bttn":[0,3,5,7],"need":[2,3],"network":2,"node":6,"nor":2,"note":3,"now":[0,2,3,7],"num":[],"number":3,"nv":[5,7],"nvs_flash":[5,7],"nvs_flash_eras":[5,7],"nvs_flash_init":[5,7],"off":[0,3,5,7],"often":3,"ok":3,"omni":0,"onboard":0,"ondatareceiv":[3,5],"ondatas":3,"one":3,"onli":[3,4],"oper":[0,2,3],"oscilloscop":3,"other":3,"over":0,"overview":1,"pack":[5,7],"packet":[0,2,3],"pad":0,"pair":[0,2,3],"paramet":2,"particular":3,"payload":1,"pcb":[3,6],"peer_addr":5,"per":3,"percentag":3,"period":3,"physic":2,"pin":1,"platform":0,"png":[],"pointer":[3,7],"porttick_period_m":3,"posit":[0,3,5,7],"possibl":[2,3],"power":3,"precis":0,"predefin":2,"predict":0,"progress":1,"project":2,"protocol":[0,2],"provid":[0,2,3],"puls":[2,3],"purpos":3,"push":[0,3,5,7],"pwm":[0,2,5,7],"rapidli":3,"rc":[2,3],"rc_send_data_task":3,"read":2,"readm":6,"real":2,"receiv":[0,1,2,3,7],"receiver_mac":[3,7],"record":[],"refer":1,"regist":3,"regul":3,"regular":0,"relev":0,"remain":2,"remot":[0,2],"remov":0,"repres":0,"requir":[],"reserv":1,"resp":3,"respond":2,"respons":[0,3],"restructuredtext":[],"result":[2,3,7],"ret":[5,7],"revers":3,"right":3,"robot":0,"rotat":[2,3],"router":2,"row":[],"run":3,"same":[],"schemat":[1,6],"seamless":2,"second":3,"secur":4,"see":[],"send":[0,1,2,3],"senddata":[3,7],"sensor":[0,2,7],"sensors_data_t":[0,3,5,7],"sent":[0,3],"serial":0,"serv":0,"setup":2,"share":2,"side":[2,3],"sidewai":3,"signal":[0,2,3],"similarli":3,"simul":3,"size":0,"sizeof":[3,5,7],"softwar":1,"sourc":[2,6],"specif":2,"speed":[0,2],"spotlight":2,"stand":3,"state":[0,3,5,7],"static":3,"statu":[0,3],"store":3,"stream":0,"string":5,"struct":[1,3,5,7],"structur":2,"suffici":3,"summar":3,"summari":3,"support":0,"switch":3,"synchron":2,"syntax":[],"system":[0,2],"system_led_init":[5,7],"tabl":3,"tag":[3,5],"task":3,"techniqu":3,"telemetri":[0,2],"tell":0,"temperatur":7,"thi":[0,2,3],"those":3,"though":2,"through":1,"time":[2,3],"toggl":0,"translat":2,"transmiss":[0,2],"transmission_init":7,"transmit":[0,2,3],"transmitt":[0,1,2],"transmitter_mac":5,"transmitterinfo":5,"true":3,"turn":3,"tutori":2,"two":3,"typedef":[0,5,7],"uart":0,"uint8_t":[0,3,5,7],"under":2,"understand":2,"up":0,"updat":3,"us":[2,3],"user":[0,2],"valu":[2,3],"vari":2,"variabl":1,"variou":3,"vehicl":[0,2],"via":2,"void":[3,5,7],"voltag":3,"vtaskdelai":3,"wa":3,"walk":1,"walkthrough":[],"warn":0,"well":[],"what":[],"wheel":0,"when":[0,3],"where":2,"which":2,"while":[2,3],"why":[],"wi":2,"width":[2,3],"wifi":5,"wifi_init":[5,7],"wildli":2,"wire":[1,3],"wireless":2,"wirelessli":2,"without":[2,3],"work":1,"wroom":3,"x":[0,5,7],"x_axi":[0,3,5,7],"y":[0,5,7],"y_axi":[0,3,5,7],"you":[0,2],"your":2},"titles":["DATA STRUCT","ByteRider documentation","OVERVIEW","HOW DOES IT WORK?","WORK-IN-PROGRESS WALK THROUGH","RECEIVER","REFERENCES","TRANSMITTER"],"titleterms":{"IN":4,"IT":3,"__attribut":0,"abstract":2,"axi":3,"byterid":1,"chassi":4,"configur":[5,7],"data":[0,5,7],"de":5,"direct":3,"document":1,"doe":3,"ecapsul":[5,7],"encapsul":[],"finish":4,"function":[5,7],"fusion":3,"github":6,"gpio":3,"har":4,"hardwar":3,"how":3,"i":3,"introduct":[],"main":[5,7],"motor":4,"overview":2,"pack":0,"payload":0,"pin":3,"progress":4,"pwm":3,"receiv":5,"refer":6,"reserv":3,"schemat":3,"send":7,"softwar":3,"speed":3,"struct":0,"through":4,"transmitt":7,"us":0,"variabl":[5,7],"walk":4,"walkthrough":[],"what":3,"why":0,"wire":4,"work":[3,4],"x":3,"y":3}}) \ No newline at end of file +Search.setIndex({"alltitles":{"ABSTRACT":[[2,"abstract"]],"ByteRider documentation":[[1,null]],"Chassis":[[4,"chassis"]],"Configuration Variables":[[5,"configuration-variables"],[7,"configuration-variables"]],"DATA STRUCT":[[0,null]],"Data Payload":[[0,"data-payload"]],"Direction and Speed":[[3,"direction-and-speed"]],"Finished Work":[[4,"finished-work"]],"Fusion of Software with Hardware":[[3,"fusion-of-software-with-hardware"]],"GitHub":[[6,"github"]],"HOW DOES IT WORK?":[[3,null]],"Main Function":[[5,"main-function"],[7,"main-function"]],"Motor Wires Harness":[[4,"motor-wires-harness"]],"OVERVIEW":[[2,null]],"RECEIVER":[[5,null]],"REFERENCES":[[6,null]],"Receiving & De-Ecapsulating Data":[[5,"receiving-de-ecapsulating-data"]],"Reserved Pins & GPIOs":[[3,"reserved-pins-gpios"]],"Schematic":[[3,"schematic"]],"Sending & Ecapsulating Data":[[7,"sending-ecapsulating-data"]],"TRANSMITTER":[[7,null]],"WORK-IN-PROGRESS WALK THROUGH":[[4,null]],"What is PWM?":[[3,null]],"Why use __attribute((packed))?":[[0,"why-use-attribute-packed"]],"Wiring":[[4,"wiring"]],"x- and y- axis":[[3,"x-and-y-axis"]]},"docnames":["data","index","intro","overview","progress","receiver","references","transmitter"],"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":["data.rst","index.rst","intro.rst","overview.rst","progress.rst","receiver.rst","references.rst","transmitter.rst"],"indexentries":{},"objects":{},"objnames":{},"objtypes":{},"terms":{"":[0,2],"0":[3,5],"02x":5,"04x":3,"0x":3,"0x14":5,"0x17":7,"0x44":7,"0x54":5,"0x63":7,"0x6e":5,"0x9c":5,"0x9e":[5,7],"0xb0":7,"0xb5":5,"0xe4":7,"1":[3,5],"100":3,"15":3,"16":3,"2":[3,5],"250":0,"3":[3,5],"4":[0,3,5,7],"47":3,"48":3,"5":[3,5],"50":[],"6":3,"7":3,"8":3,"90":3,"91":3,"95":[],"A":3,"As":0,"At":2,"IN":1,"IT":1,"If":3,"In":[0,3],"It":[0,3],"NOT":3,"ON":[0,5,7],"On":2,"The":[0,2,3],"These":2,"To":2,"__attribut":[],"__attribute__":[0,5,7],"__gpio6__":[],"_gitbub":[],"_static":[],"abstract":1,"across":0,"ad":0,"adapt":[2,3,6],"adc1_ch0":3,"adc1_ch1":3,"add":0,"addit":[0,2],"address":[3,7],"adjust":2,"alexandrebobkov":[3,6],"align":0,"all":0,"alloc":3,"allow":[0,2,3],"an":[0,2],"analog":[0,3],"ani":[0,3],"app_main":[5,7],"appear":2,"ar":[2,3],"architectur":[],"arg":3,"assign":3,"attribut":0,"avail":[2,3],"axi":[],"back":3,"bacl":3,"bandwidth":0,"base":[2,3],"baselin":2,"batteri":0,"behavior":2,"being":3,"below":[],"between":[0,2,3],"bitbyterid":3,"blob":6,"board":3,"bool":[0,5,7],"both":2,"breadboard":3,"brief":3,"buf":[3,5],"buffer":[3,7],"button":[0,3,5,7],"byte":0,"c3":3,"c3_breadboard":[3,6],"call":[3,7],"can":[2,3],"capabl":2,"captur":0,"car":[2,3],"chang":[2,3],"channel":[3,5],"chassi":1,"chip_sensor_init":7,"clockwis":3,"code":[2,3,6],"column":[],"com":[3,6],"command":0,"commun":[0,2],"compact":0,"compat":0,"compil":0,"complet":[4,6],"configur":[0,1],"connect":2,"connectionless":2,"consequ":3,"consist":2,"const":5,"constraint":3,"contain":0,"content":[],"contin":3,"continu":2,"control":[0,2,3,4],"convert":2,"core":2,"correspond":3,"counter":3,"counterclockwis":3,"crc":3,"creativ":2,"current":5,"custom":2,"customiz":2,"cycl":3,"d":5,"data":[1,2,3],"data_len":[3,5],"dc":[0,2,3,4,5,7],"ddiscret":[],"de":[1,2],"declar":3,"decod":0,"decreas":3,"dedic":3,"defin":[2,3],"deletep":3,"deliv":3,"demonstr":2,"depend":2,"descript":3,"design":[0,2,6],"detail":[],"determin":[0,3],"devboard":3,"develop":[2,3],"developmemt":3,"devic":[0,2,3],"diagon":3,"differenti":0,"digit":3,"direct":[0,2],"discret":3,"displai":3,"doe":1,"drive":0,"duti":3,"e":[0,3],"each":3,"easili":2,"ecapsul":1,"effect":3,"effici":2,"elegantli":2,"els":3,"embed":0,"emploi":2,"enabl":[0,2],"encapsul":[0,2],"encod":0,"encrypt":5,"end":0,"endless":2,"ensur":[0,2],"error":3,"esp":[0,2,3,6,7],"esp32":[2,3,6],"esp_err":[5,7],"esp_err_nvs_new_version_found":[5,7],"esp_err_nvs_no_free_pag":[5,7],"esp_err_t":[5,7],"esp_error_check":[5,7],"esp_if_wifi_sta":5,"esp_log":3,"esp_logi":[3,5],"esp_logw":3,"esp_now_add_p":5,"esp_now_eth_alen":[5,7],"esp_now_init":5,"esp_now_is_peer_exist":3,"esp_now_peer_info_t":5,"esp_now_register_recv_cb":5,"esp_now_send":[3,7],"esp_now_send_status_t":3,"espressif":2,"etc":0,"even":[0,2],"event":3,"everi":3,"evok":3,"evolv":2,"exact":0,"exchang":2,"exist":[],"expand":2,"expect":0,"extend":2,"facilit":2,"fals":5,"fast":2,"featur":2,"fi":2,"field":0,"file":6,"final":0,"fine":[0,3],"finish":1,"fix":[0,3],"focus":2,"follow":3,"form":2,"forward":3,"foundat":2,"four":[0,3],"free":2,"freedom":2,"freerto":[5,7],"frequenc":3,"from":[0,5],"front":3,"function":[1,2,3],"fusion":1,"g":0,"get":3,"github":[1,3],"github_":[],"give":2,"gpio":1,"gpio0":3,"gpio1":3,"gpio4":3,"gpio5":3,"gpio6":3,"gpio7":3,"grain":[0,3],"group":3,"guid":2,"h":[5,7],"handl":2,"har":1,"hardwar":[0,1,2],"harn":4,"heart":2,"hexadecim":3,"high":3,"higher":3,"hold":[3,7],"hood":2,"how":[1,2],"http":[3,6],"i":[0,2],"idea":2,"ideal":[0,2],"idf_robot":6,"idf_robot_schemat":[],"ifidx":5,"igit":[],"illustr":3,"imag":3,"implement":2,"includ":[5,7],"incom":2,"increas":3,"indic":0,"individu":0,"initi":[5,7],"input":[0,2],"insid":4,"instal":4,"int":[0,3,5,7],"integr":2,"intend":0,"intern":7,"interpret":[0,2],"interv":0,"introduct":[],"itself":2,"joystick":[0,2,3,5,7],"joystick_adc_init":7,"khz":3,"kicad":[3,6],"lastli":3,"latenc":[0,2],"layout":0,"led":[0,5,7],"ledc_channel_0":3,"ledc_channel_1":3,"ledc_channel_2":3,"ledc_channel_3":3,"left":3,"len":5,"length":[3,7],"level":3,"li":2,"light":2,"lightweight":2,"like":[0,2],"listen":2,"loop":2,"low":[0,2,3],"lower":3,"mac":[3,7],"mac_addr":[3,5],"mai":0,"main":[1,6],"maintain":2,"make":0,"maneuv":0,"master":0,"maxim":0,"md":6,"mean":3,"measur":3,"memcpi":5,"memori":[0,3,7],"messag":3,"microcontrol":[0,2,3],"minim":0,"modul":[2,3],"modular":2,"motor":[0,1,2,3,5,7],"motor1_rpm_pcm":[],"motor1_rpm_pwm":[0,3,5,7],"motor2_rpm_pcm":[],"motor2_rpm_pwm":[0,3,5,7],"motor3_rpm_pcm":[],"motor3_rpm_pwm":[0,3,5,7],"motor4_rpm_pcm":[],"motor4_rpm_pwm":[0,3,5,7],"motors_rpm":3,"move":[2,3],"movement":[2,3],"multi":0,"nav_bttn":[0,3,5,7],"need":[2,3],"network":2,"node":6,"nor":2,"note":3,"now":[0,2,3,7],"num":[],"number":3,"nv":[5,7],"nvs_flash":[5,7],"nvs_flash_eras":[5,7],"nvs_flash_init":[5,7],"off":[0,3,5,7],"often":3,"ok":3,"omni":0,"onboard":0,"ondatareceiv":[3,5],"ondatas":3,"one":3,"onli":[3,4],"oper":[0,2,3],"oscilloscop":3,"other":3,"over":0,"overview":1,"pack":[5,7],"packet":[0,2,3],"pad":0,"pair":[0,2,3],"paramet":2,"particular":3,"payload":1,"pcb":[3,6],"peer_addr":5,"per":3,"percentag":3,"period":3,"physic":2,"pin":1,"platform":0,"png":[],"pointer":[3,7],"porttick_period_m":3,"posit":[0,3,5,7],"possibl":[2,3],"power":3,"precis":0,"predefin":2,"predict":0,"progress":1,"project":2,"protocol":[0,2],"provid":[0,2,3],"puls":[2,3],"purpos":3,"push":[0,3,5,7],"pwm":[0,2,5,7],"rapidli":3,"rc":[2,3],"rc_send_data_task":3,"read":2,"readm":6,"real":2,"receiv":[0,1,2,3,7],"receiver_mac":[3,7],"record":[],"refer":1,"regist":3,"regul":3,"regular":0,"relev":0,"remain":2,"remot":[0,2],"remov":0,"repres":0,"requir":[],"reserv":1,"resp":3,"respond":2,"respons":[0,3],"restructuredtext":[],"result":[2,3,7],"ret":[5,7],"revers":3,"right":3,"robot":0,"rotat":[2,3],"router":2,"row":[],"run":3,"same":[],"schemat":[1,6],"seamless":2,"second":3,"secur":4,"see":[],"send":[0,1,2,3],"senddata":[3,7],"sensor":[0,2,7],"sensors_data_t":[0,3,5,7],"sent":[0,3],"serial":0,"serv":0,"setup":2,"share":2,"side":[2,3],"sidewai":3,"signal":[0,2,3],"similarli":3,"simul":3,"size":0,"sizeof":[3,5,7],"softwar":1,"sourc":[2,6],"specif":2,"speed":[0,2],"spin":3,"spotlight":2,"stand":3,"state":[0,3,5,7],"static":3,"statu":[0,3],"store":3,"stream":0,"string":5,"struct":[1,3,5,7],"structur":2,"suffici":3,"summar":3,"summari":3,"support":0,"switch":3,"synchron":2,"syntax":[],"system":[0,2],"system_led_init":[5,7],"tabl":3,"tag":[3,5],"task":3,"techniqu":3,"telemetri":[0,2],"tell":0,"temperatur":7,"thi":[0,2,3],"those":3,"though":2,"through":1,"time":[2,3],"toggl":0,"translat":2,"transmiss":[0,2],"transmission_init":7,"transmit":[0,2,3],"transmitt":[0,1,2],"transmitter_mac":5,"transmitterinfo":5,"true":3,"turn":3,"tutori":2,"two":3,"typedef":[0,5,7],"uart":0,"uint8_t":[0,3,5,7],"under":2,"understand":2,"up":0,"updat":3,"us":[2,3],"user":[0,2],"valu":[2,3],"vari":2,"variabl":1,"variou":3,"vehicl":[0,2],"via":2,"void":[3,5,7],"voltag":3,"vtaskdelai":3,"wa":3,"walk":1,"walkthrough":[],"warn":0,"well":[],"what":[],"wheel":0,"when":[0,3],"where":2,"which":2,"while":[2,3],"why":[],"wi":2,"width":[2,3],"wifi":5,"wifi_init":[5,7],"wildli":2,"wire":[1,3],"wireless":2,"wirelessli":2,"without":[2,3],"work":1,"wroom":3,"x":[0,5,7],"x_axi":[0,3,5,7],"y":[0,5,7],"y_axi":[0,3,5,7],"you":[0,2],"your":2},"titles":["DATA STRUCT","ByteRider documentation","OVERVIEW","HOW DOES IT WORK?","WORK-IN-PROGRESS WALK THROUGH","RECEIVER","REFERENCES","TRANSMITTER"],"titleterms":{"IN":4,"IT":3,"__attribut":0,"abstract":2,"axi":3,"byterid":1,"chassi":4,"configur":[5,7],"data":[0,5,7],"de":5,"direct":3,"document":1,"doe":3,"ecapsul":[5,7],"encapsul":[],"finish":4,"function":[5,7],"fusion":3,"github":6,"gpio":3,"har":4,"hardwar":3,"how":3,"i":3,"introduct":[],"main":[5,7],"motor":4,"overview":2,"pack":0,"payload":0,"pin":3,"progress":4,"pwm":3,"receiv":5,"refer":6,"reserv":3,"schemat":3,"send":7,"softwar":3,"speed":3,"struct":0,"through":4,"transmitt":7,"us":0,"variabl":[5,7],"walk":4,"walkthrough":[],"what":3,"why":0,"wire":4,"work":[3,4],"x":3,"y":3}}) \ 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 9af29057f..3786265cb 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: fb0788d5a1f893b7e3c3f696413a5487 +config: d926a5bb60ced0af1fff872097d223ce tags: 62a1e7829a13fc7881b6498c52484ec0 diff --git a/ESP-IDF_Robot/tutorial/docs/build/simplepdf/index.html b/ESP-IDF_Robot/tutorial/docs/build/simplepdf/index.html index 3e5955ab7..f7765293e 100644 --- a/ESP-IDF_Robot/tutorial/docs/build/simplepdf/index.html +++ b/ESP-IDF_Robot/tutorial/docs/build/simplepdf/index.html @@ -385,6 +385,11 @@ Changing PWM on each channel determines the speed and direction of the RC car. State

+ +

+ Description +

+

Function @@ -405,6 +410,12 @@ GPIO4 PWM

+ +

+ Left & Right DC Motors +spin clockwise +

+

Forward @@ -423,6 +434,12 @@ GPIO7 PWM

+ +

+ Left & Right DC Motors +spin counterclockwise +

+

Reverse @@ -441,6 +458,12 @@ GPIO7 PWM

+ +

+ Left DC Motors spin clockwise +Right DC Motors spin counterclockwise +

+

Left @@ -459,6 +482,12 @@ GPIO5 PWM

+ +

+ Left DC Motors spin counterclockwise +Right DC Motors spin clockwise +

+

Right diff --git a/ESP-IDF_Robot/tutorial/docs/source/overview.rst b/ESP-IDF_Robot/tutorial/docs/source/overview.rst index e3481b6dd..dc9524d71 100644 --- a/ESP-IDF_Robot/tutorial/docs/source/overview.rst +++ b/ESP-IDF_Robot/tutorial/docs/source/overview.rst @@ -39,21 +39,21 @@ In particular, **GPIO6** and **GPIO5** provide PWM to the left- and right- side Similarly, **GPIO4** and **GPIO7** provide PWM to the left- and right- side DC motors to rotate in a **counter-clockwise** direction. Changing PWM on each channel determines the speed and direction of the RC car. -+-----------+-------+-------------+----------+----------+ -| GPIOs | State | Description | Function | -+===========+=======+========================+==========+ -| GPIO6 & | PWM | Left & Right DC Motors | Forward | -| GPIO4 | | spin clockwise | | -+-----------+-------+------------------------+----------+ -| GPIO5 & | PWM | Left & Right DC Motors | Reverse | -| GPIO7 | | spin counterclockwise | | ++-----------+-------+---------------------------------------+----------+ +| GPIOs | State | Description | Function | ++===========+=======+=======================================+==========+ +| GPIO6 & | PWM | Left & Right DC Motors | Forward | +| GPIO4 | | spin clockwise | | ++-----------+-------+---------------------------------------+----------+ +| GPIO5 & | PWM | Left & Right DC Motors | Reverse | +| GPIO7 | | spin counterclockwise | | +-----------+-------+---------------------------------------+----------+ | GPIO6 & | PWM | Left DC Motors spin clockwise | Left | -| GPIO7 | | Right DC Motors spin sounterclockwise | | -+-----------+-------+----------+ +| GPIO7 | | Right DC Motors spin counterclockwise | | ++-----------+-------+---------------------------------------+----------+ | GPIO4 & | PWM | Left DC Motors spin counterclockwise | Right | -| GPIO5 | | | -+-----------+-------+----------+ +| GPIO5 | | Right DC Motors spin clockwise | | ++-----------+-------+---------------------------------------+----------+ The following images illustrate various PWM duty cycles registered by oscilloscope (duty cycles 0%, 48% and 91%, resp.).