ESP32-C3 Wireless Adventure

ESP32-C3 Wireless Adventure

Torolàlana feno momba ny IoT

Espressif Systems 12 Jona 2023

fepetra arahana

  • Vokatra: ESP32-C3 Wireless Adventure
  • Mpanamboatra: Espressif Systems
  • Daty: 12 Jona 2023

Torolàlana momba ny fampiasana vokatra

Fanomanana

Alohan'ny fampiasana ny ESP32-C3 Wireless Adventure, ataovy azo antoka fa ianao
mahazatra ny foto-kevitra sy ny maritrano an'ny IoT. Hanampy izany
azonao ny fomba hifandraisan'ilay fitaovana amin'ny tontolo iainana IoT lehibe kokoa
ary ny mety ho fampiharana azy ao amin'ny trano marani-tsaina.

Fampidirana sy fampiharana ny tetikasa IoT

Amin'ity fizarana ity dia hianatra momba ny tetikasa IoT mahazatra ianao,
ao anatin'izany ny maody fototra ho an'ny fitaovana IoT mahazatra, maody fototra
ny fampiharana mpanjifa, ary ny sehatra rahona IoT mahazatra. Ity sitrapo ity
manome anao fototra ho an'ny fahatakarana sy famoronana ny anao
tetikasa IoT manokana.

Fanazaran-tena: Tetikasa Smart Light

Amin'ity tetikasa fanazaran-tena ity dia hianatra ny fomba hamoronana smart ianao
hazavana mampiasa ny ESP32-C3 Wireless Adventure. Ny rafitry ny tetikasa,
asa, fanomanana ny fitaovana, ary ny fizotran'ny fampandrosoana
nohazavaina amin’ny antsipiriany.

Rafitra tetikasa

Ny tetikasa dia ahitana singa maromaro, anisan'izany ny
ESP32-C3 Wireless Adventure, LED, sensor ary rahona
backend.

Project Functions

Ny tetikasa smart light dia ahafahanao mifehy ny famirapiratana sy
loko ny LED lavitra amin'ny alalan'ny fampiharana finday na web
interface tsara.

Fanomanana fitaovana

Mba hanomanana ny tetikasa dia mila manangona ny
Ny fitaovana ilaina, toy ny ESP32-C3 Wireless
Board Adventure, LED, resistors ary famatsiana herinaratra.

Dingana fampandrosoana

Ny dingana fampandrosoana dia mitaky ny fametrahana ny fampandrosoana
tontolo iainana, fanoratana kaody hifehy ny LED, mifandray amin'ny
cloud backend, ary andramana ny fiasan'ny smart
hazavana.

Fampidirana ny ESP RainMaker

ESP RainMaker dia rafitra matanjaka amin'ny fampivoarana ny IoT
fitaovana. Amin'ity fizarana ity dia hianatra ny atao hoe ESP RainMaker ianao
ny fomba azo ampiharina amin'ny tetikasanao.

Inona no atao hoe ESP RainMaker?

ESP RainMaker dia sehatra mifototra amin'ny rahona izay manome andiana
fitaovana sy serivisy amin'ny fananganana sy fitantanana ireo fitaovana IoT.

Ny fampiharana ny ESP RainMaker

Ity fizarana ity dia manazava ireo singa samihafa tafiditra ao
fampiharana ny ESP RainMaker, ao anatin'izany ny serivisy fitakiana,
RainMaker Agent, cloud backend, ary RainMaker Client.

Fanao: Hevi-dehibe amin'ny fampandrosoana miaraka amin'ny ESP RainMaker

Amin'ity fizarana fanazaran-tena ity dia hianatra momba ireo hevi-dehibe ianao
diniho rehefa mivoatra miaraka amin'ny ESP RainMaker. Anisan'izany ny fitaovana
fitakiana, fampifanarahana angon-drakitra, ary fitantanana mpampiasa.

Endri-javatra amin'ny ESP RainMaker

ESP RainMaker dia manolotra endri-javatra isan-karazany ho an'ny fitantanana mpampiasa, farany
mpampiasa, ary mpitantana. Ireo endri-javatra ireo dia mamela ny fitaovana mora
setup, fanaraha-maso lavitra, ary fanaraha-maso.

Fametrahana ny tontolo iainana fampandrosoana

Ity fizarana ity dia manome mihoatraview ny ESP-IDF (Espressif IoT
Rafitra fampandrosoana), izay rafitra ofisialy momba ny fampandrosoana
ho an'ny fitaovana mifototra amin'ny ESP32. Manazava ny dikan-teny samihafa amin'ny
ESP-IDF sy ny fomba fametrahana ny tontolo iainana fampandrosoana.

Fampandrosoana Hardware sy Driver

Famolavolana Hardware amin'ny vokatra maivana Smart mifototra amin'ny ESP32-C3

Ity fizarana ity dia mifantoka amin'ny famolavolana fitaovana amin'ny hazavana marani-tsaina
vokatra mifototra amin'ny ESP32-C3 Wireless Adventure. Mandrakotra ny
Ny endri-javatra sy ny firafitry ny vokatra maivana marani-tsaina, ary koa ny
famolavolana hardware ny rafitra fototra ESP32-C3.

Ny endri-javatra sy ny firafitry ny Smart Light Products

Ity fizarana ity dia manazava ny endri-javatra sy ny singa mahatonga azy
miakatra ny vokatra maivana marani-tsaina. Izy io dia miresaka momba ny fiasa samihafa
ary hevitra famolavolana amin'ny famoronana jiro marani-tsaina.

Famolavolana Hardware an'ny ESP32-C3 Core System

Ny famolavolana fitaovana amin'ny rafitra fototra ESP32-C3 dia misy hery
famatsiana, filaharan'ny herinaratra, famerenana ny rafitra, tselatra SPI, loharano famantaranandro,
ary RF sy antenne fiheverana. Ity fizarana ity dia manome
fanazavana amin’ny antsipiriany momba ireo lafiny ireo.

FAQ

F: Inona no atao hoe ESP RainMaker?

A: ESP RainMaker dia sehatra mifototra amin'ny rahona manome fitaovana
ary serivisy fananganana sy fitantanana fitaovana IoT. Manamora izany
ny dingana fampandrosoana ary mamela ny fametrahana fitaovana mora, lavitra
fanaraha-maso, ary fanaraha-maso.

F: Ahoana no ahafahako mametraka ny tontolon'ny fampandrosoana
ESP32-C3?

A: Mba hananganana tontolo iainana fampandrosoana ho an'ny ESP32-C3 dia mila
hametraka ESP-IDF (Espressif IoT Development Framework) ary
amboary izany araka ny toromarika nomena. ESP-IDF ny
rafitra fampandrosoana ofisialy ho an'ny fitaovana mifototra amin'ny ESP32.

F: Inona avy ireo endri-javatra amin'ny ESP RainMaker?

A: ESP RainMaker dia manolotra endri-javatra isan-karazany, anisan'izany ny mpampiasa
fitantanana, endri-javatra mpampiasa farany, ary endri-javatra admin. Fitantanana mpampiasa
mamela ny fitakiana fitaovana mora sy ny fampifanarahana angon-drakitra. Mpampiasa farany
Ny endri-javatra dia mamela ny fanaraha-maso lavitra ny fitaovana amin'ny alàlan'ny fampiharana finday na
web interface tsara. Ny endri-pandraharahana dia manome fitaovana ho an'ny fanaraha-maso ny fitaovana
ary fitantanana.

ESP32-C3 Wireless Adventure
Torolàlana feno momba ny IoT
Espressif Systems 12 Jona 2023

Hevitra ato Anatiny

I Fiomanana

1

1 Fampidirana ny IoT

3

1.1 Architecture an'ny IoT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.2 Fampiharana IoT ao amin'ny Smart Homes. . . . . . . . . . . . . . . . . . . . . . . . . . 6

2 Fampidirana sy fampiharana ny tetikasa IoT

9

2.1 Fampidirana ny Tetikasa IoT mahazatra . . . . . . . . . . . . . . . . . . . . . . . . 9

2.1.1 Modules fototra ho an'ny fitaovana IoT mahazatra . . . . . . . . . . . . . . . . . 9

2.1.2 Modules fototra amin'ny fampiharana mpanjifa . . . . . . . . . . . . . . . . . . . 10

2.1.3 Fampidirana ireo Sehatra Rahona IoT mahazatra . . . . . . . . . . . . . . 11

2.2 Fanao: Tetikasa Fahazavana Smart . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

2.2.1 Rafitra tetikasa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

2.2.2 Ny fiasan'ny tetikasa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

2.2.3 Fanomanana fitaovana . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

2.2.4 Fomba fampandrosoana . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

2.3 Famintinana . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

3 Fampidirana ny ESP RainMaker

19

3.1 Inona no atao hoe ESP RainMaker? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

3.2 Ny fampiharana ny ESP RainMaker . . . . . . . . . . . . . . . . . . . . . . 21

3.2.1 Serivisy fitakiana . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

3.2.2 RainMaker Agent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

3.2.3 Cloud Backend . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

3.2.4 Mpanjifa RainMaker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

3.3 Fanao: Hevi-dehibe amin'ny fampivoarana miaraka amin'ny ESP RainMaker. . . . . . . . . . . . 25

3.4 Toetran'ny ESP RainMaker. . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

3.4.1 Fitantanana ny mpampiasa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

3.4.2 Toetran'ny mpampiasa farany . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

3.4.3 Toetran'ny Admin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

3.5 Famintinana . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

4 Fametrahana ny tontolo iainana fampandrosoana

31

4.1 Mihoatra ny ESP-IDFview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

4.1.1 Dikan-teny ESP-IDF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

3

4.1.2 ESP-IDF Git Workflow . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 4.1.3 Misafidiana Dikan-teny mety . . . . . . . . . . . . . . . . . . . . . . . . 34 4.1.4 Ambonyview an'ny lahatahiry ESP-IDF SDK . . . . . . . . . . . . . . . . . . . . 34 4.2 Fametrahana ny tontolo iainana fampandrosoana ESP-IDF . . . . . . . . . . . . . . . . . 38 4.2.1 Fametrahana ny tontolo iainana fampandrosoana ESP-IDF amin'ny Linux . . . . . . . . 38 4.2.2 Fametrahana ESP-IDF Development Environment amin'ny Windows . . . . . . 40 4.2.3 Fametrahana ESP-IDF Development Environment amin'ny Mac . . . . . . . . . 45 4.2.4 Fametrahana VS Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 4.2.5 Fampidirana ny tontolo iainana fampandrosoana ny antoko fahatelo . . . . . . . . 46 4.3 Rafitra fanangonana ESP-IDF . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 4.3.1 Hevitra fototra momba ny Rafitra fanangonana . . . . . . . . . . . . . . . . . . 47 4.3.2 Tetikasa File Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 4.3.3 Fitsipika fananganana Default an'ny Rafitra fanangonana . . . . . . . . . . . . . 50 4.3.4 Fampidirana ny Script Compilation . . . . . . . . . . . . . . . . . . 51 4.3.5 Fampidirana ny baiko iombonana . . . . . . . . . . . . . . . . . . . 52 4.4 Fanao: Manangona Eksampny Program "Blink". . . . . . . . . . . . . . . . . . 53 4.4.1 Eksample Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 4.4.2 Fanangonana ny Program Blink . . . . . . . . . . . . . . . . . . . . . . . 56 4.4.3 Fampitana ny Program Blink . . . . . . . . . . . . . . . . . . . . . . . . 59 4.4.4 Famakafakana Diarin'ny Port Serial momba ny Program Blink . . . . . . . . . . . . . . 60 4.5 Famintinana . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63

II Fampandrosoana Hardware sy Driver

65

5 Famolavolana Hardware amin'ny vokatra Smart Light mifototra amin'ny ESP32-C3

67

5.1 Ny endri-javatra sy ny firafitry ny vokatra Smart Light . . . . . . . . . . . . . . . 67

5.2 Famolavolana Hardware an'ny ESP32-C3 Core System . . . . . . . . . . . . . . . . . . . 70

5.2.1 Famatsiana herinaratra . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74

5.2.2 Filaharana mandeha herinaratra sy Famerenana ny rafitra . . . . . . . . . . . . . . . . . . 74

5.2.3 SPI Flash . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

5.2.4 Loharanon'ny famantaranandro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

5.2.5 RF sy Antenna . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76

5.2.6 Famehezana Pin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79

5.2.7 GPIO sy PWM Controller . . . . . . . . . . . . . . . . . . . . . . . . . 79

5.3 Fanazaran-tena: Manangana Rafitra Fahazavana Smart miaraka amin'ny ESP32-C3 . . . . . . . . . . . . . 80

5.3.1 Mifidiana Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80

5.3.2 Fanamboarana GPIO amin'ny famantarana PWM. . . . . . . . . . . . . . . . . . . . 82

5.3.3 Misintona Firmware sy Debugging Interface . . . . . . . . . . . . 82

5.3.4 Torolàlana momba ny famolavolana RF. . . . . . . . . . . . . . . . . . . . . . . . . . 84 5.3.5 Torolàlana momba ny famolavolana famatsiana herinaratra . . . . . . . . . . . . . . . . . . . 86 5.4 Famintinana . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86

6 Fampandrosoana mpamily

87

6.1 Fizotry ny fampandrosoana ny mpamily . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87

6.2 ESP32-C3 fampiharana periferika . . . . . . . . . . . . . . . . . . . . . . . . . 88

6.3 Fototry ny mpamily LED . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89

6.3.1 Toerana miloko . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89

6.3.2 LED Driver . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94

6.3.3 Fandrefesana LED . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94

6.3.4 Fampidirana ny PWM . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95

6.4 Fampivoarana mpamily LED Dimming. . . . . . . . . . . . . . . . . . . . . . . . 96

6.4.1 Fitehirizana tsy miovaova (NVS) . . . . . . . . . . . . . . . . . . . . . . . . 97

6.4.2 LED PWM Controller (LEDC) . . . . . . . . . . . . . . . . . . . . . . . 98

6.4.3 Fandaharana PWM LED . . . . . . . . . . . . . . . . . . . . . . . . . . 100

6.5 Fanao: manampy mpamily amin'ny Smart Light Project. . . . . . . . . . . . . . . . . 103

6.5.1 Mpamily bokotra . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103

6.5.2 LED Dimming Driver . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104

6.6 Famintinana . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108

III Fifandraisana sy fanaraha-maso tsy misy tariby

109

7 Fifandimbiasana sy fifandraisana Wi-Fi

111

7.1 Ny fototry ny Wi-Fi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111

7.1.1 Fampidirana ny Wi-Fi . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111

7.1.2 Fivoaran'ny IEEE 802.11. . . . . . . . . . . . . . . . . . . . . . . . . 111

7.1.3 Hevitra Wi-Fi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112

7.1.4 Fifandraisana Wi-Fi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115

7.2 Ny fototry ny Bluetooth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122

7.2.1 Fampidirana ny Bluetooth . . . . . . . . . . . . . . . . . . . . . . . . . 123

7.2.2 Hevitra Bluetooth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124

7.2.3 Fifandraisana Bluetooth . . . . . . . . . . . . . . . . . . . . . . . . . . . 127

7.3 Fanamboarana tambajotra Wi-Fi . . . . . . . . . . . . . . . . . . . . . . . . . . . 131

7.3.1 Torolàlana momba ny fanamboarana tambajotra Wi-Fi . . . . . . . . . . . . . . . . . . . . 131

7.3.2 SoftAP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132

7.3.3 SmartConfig . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132

7.3.4 Bluetooth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135

7.3.5 Fomba hafa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137

7.4 Fandaharana Wi-Fi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139 7.4.1 Ireo singa Wi-Fi ao amin'ny ESP-IDF . . . . . . . . . . . . . . . . . . . . . . . 139 7.4.2 Fanazaran-tena: Fifandraisana Wi-Fi . . . . . . . . . . . . . . . . . . . . . . . . 141 7.4.3 Fanazaran-tena: Fifandraisana Wi-Fi Smart . . . . . . . . . . . . . . . . . . . . . 145
7.5 Fanazaran-tena: Fifandimbiasana Wi-Fi amin'ny tetikasa Smart Light. . . . . . . . . . . . . . . 156 7.5.1 Fifandraisana Wi-Fi amin'ny Smart Light Project . . . . . . . . . . . . . . . . . 156 7.5.2 Fanofanana Wi-Fi Smart . . . . . . . . . . . . . . . . . . . . . . . . . 157
7.6 Famintinana . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158

8 Fanaraha-maso eo an-toerana

159

8.1 Fampidirana ny Fanaraha-maso eo an-toerana . . . . . . . . . . . . . . . . . . . . . . . . . . . 159

8.1.1 Fampiharana ny Fanaraha-maso eo an-toerana . . . . . . . . . . . . . . . . . . . . . . . . 161

8.1.2 Advanatages of Local Control . . . . . . . . . . . . . . . . . . . . . . . . 161

8.1.3 Fahitana fitaovana voafehy amin'ny alalan'ny finday . . . . . . . . . . 161

8.1.4 Fifandraisana angona eo amin'ny finday sy ny fitaovana . . . . . . . . 162

8.2 Fomba fahita mahazatra eo an-toerana . . . . . . . . . . . . . . . . . . . . . . . . 162

8.2.1 Fampitaovana . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163

8.2.2 Multicast . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169

8.2.3 Fampitahana eo amin'ny Broadcast sy Multicast . . . . . . . . . . . . . . 176

8.2.4 Multicast Application Protocol mDNS for Local Discovery . . . . . . . . 176

8.3 Fiaraha-miasa iraisana ho an'ny angona eo an-toerana . . . . . . . . . . . . . . . 179

8.3.1 Protokol fanaraha-maso ny fandefasana (TCP) . . . . . . . . . . . . . . . . . . . 179

8.3.2 HyperText Transfer Protocol (HTTP) . . . . . . . . . . . . . . . . . . . 185

8.3.3 Mpampiasa Datagram Protocol (UDP) . . . . . . . . . . . . . . . . . . . . . . 189

8.3.4 Protocole Application Constrained (CoAP) . . . . . . . . . . . . . . . . 192

8.3.5 Bluetooth Protocol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197

8.3.6 Famintinana ny Protocols Fifandraisana Data . . . . . . . . . . . . . . . 203

8.4 Antoky ny fiarovana ny angona . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205

8.4.1 Fampidirana ny Fiarovana Layer Transport (TLS) . . . . . . . . . . . . . 207

8.4.2 Fampidirana ny Datagram Transport Layer Security (DTLS) . . . . . . . 213

8.5 Fanao: Fanaraha-maso eo an-toerana amin'ny tetikasa Smart Light. . . . . . . . . . . . . . . . . . 217

8.5.1 Mamorona Server fanaraha-maso eo an-toerana miorina amin'ny Wi-Fi . . . . . . . . . . . . . . . 217

8.5.2 Fanamarinana ny asa fanaraha-maso eo an-toerana amin'ny alàlan'ny Scripts . . . . . . . . . . . 221

8.5.3 Mamorona Server fanaraha-maso eo an-toerana miorina amin'ny Bluetooth . . . . . . . . . . . . 222

8.6 Famintinana . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224

9 Fanaraha-maso ny rahona

225

9.1 Fampidirana ny fanaraha-maso lavitra . . . . . . . . . . . . . . . . . . . . . . . . . . 225

9.2 Protocols Fifandraisana Data Cloud . . . . . . . . . . . . . . . . . . . . . . 226

9.2.1 MQTT Fampidirana . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226 9.2.2 Fitsipiky ny MQTT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227 9.2.3 Fomba Hafatra MQTT . . . . . . . . . . . . . . . . . . . . . . . . . . 228 9.2.4 Fampitahana Protocole . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233 9.2.5 Fametrahana MQTT Broker amin'ny Linux sy Windows . . . . . . . . . . . . 233 9.2.6 Fametrahana mpanjifa MQTT miorina amin'ny ESP-IDF . . . . . . . . . . . . . . . . 235 9.3 Fiantohana ny fiarovana ny angona MQTT. . . . . . . . . . . . . . . . . . . . . . . . . . . 237 9.3.1 Ny dikany sy ny fiasan'ny mari-pankasitrahana . . . . . . . . . . . . . . . . . . . 237 9.3.2 Famoronana mari-pankasitrahana eo an-toerana . . . . . . . . . . . . . . . . . . . . . . 239 9.3.3 Fanamboarana MQTT Broker . . . . . . . . . . . . . . . . . . . . . . . . . 241 9.3.4 Fanamboarana MQTT Client . . . . . . . . . . . . . . . . . . . . . . . . . 241 9.4 Fanao: Fanaraha-maso lavitra amin'ny alàlan'ny ESP RainMaker . . . . . . . . . . . . . . . . 243 9.4.1 ESP RainMaker Basics . . . . . . . . . . . . . . . . . . . . . . . . . . . 243 9.4.2 Protocol fifandraisana amin'ny Node sy Cloud Backend . . . . . . . . . . . 244 9.4.3 Fifandraisana eo amin'ny mpanjifa sy ny Cloud Backend . . . . . . . . . . . 249 9.4.4 Anjaran'ny mpampiasa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252 9.4.5 Serivisy fototra . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253 9.4.6 Fahazavana Smart Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255 9.4.7 Fampiharana RainMaker sy Fampidirana avy amin'ny antoko fahatelo . . . . . . . . . . . . . . . 262 9.5 Famintinana . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267

10 Famolavolana fampiharana finday finday

269

10.1 Fampidirana amin'ny Fampivoarana App Smartphone . . . . . . . . . . . . . . . . . . 269

10.1.1 Mihoatraview amin'ny Fampandrosoana App Smartphone. . . . . . . . . . . . . . . 270

10.1.2 Ny rafitry ny Tetikasa Android . . . . . . . . . . . . . . . . . . . . . . 270

10.1.3 Ny rafitry ny Tetikasa iOS . . . . . . . . . . . . . . . . . . . . . . . . 271

10.1.4 Ny fiainan'ny hetsika Android iray . . . . . . . . . . . . . . . . . . . . . . 272

10.1.5 Ny fiainan'ny iOS ViewController . . . . . . . . . . . . . . . . . . . . . . 273

10.2 Mamorona Tetikasa Fampiharana Smartphone Vaovao . . . . . . . . . . . . . . . . . . . . . 275

10.2.1 Miomana amin'ny Fampandrosoana Android . . . . . . . . . . . . . . . . . . . 275

10.2.2 Mamorona Tetikasa Android Vaovao . . . . . . . . . . . . . . . . . . . . . . 275

10.2.3 Fanampiana miankina amin'ny MyRainmaker . . . . . . . . . . . . . . . . . 276

10.2.4 Fangatahana fahazoan-dàlana amin'ny Android . . . . . . . . . . . . . . . . . . . . . . 277

10.2.5 Fiomanana amin'ny Fampandrosoana iOS . . . . . . . . . . . . . . . . . . . . . . 277

10.2.6 Mamorona Tetikasa iOS Vaovao . . . . . . . . . . . . . . . . . . . . . . . . 278

10.2.7 Fanampiana miankina amin'ny MyRainmaker . . . . . . . . . . . . . . . . . 279

10.2.8 Fangatahana alalana amin'ny iOS . . . . . . . . . . . . . . . . . . . . . . . . . 280

10.3 Famakafakana ny fepetra takian'ny App . . . . . . . . . . . . . . . . . . 281

10.3.1 Famakafakana ny fepetra takian'ny tetikasa . . . . . . . . . . . . 282

10.3.2 Famakafakana ny fepetra takian'ny fitantanana ny mpampiasa. . . . . . . . . . . . . . . 282 10.3.3 Famakafakana ny famatsiana fitaovana sy ny fepetra takiana. . . . . . . 283 10.3.4 Famakafakana ireo fepetra takiana amin'ny fanaraha-maso lavitra . . . . . . . . . . . . . . . . 283 10.3.5 Famakafakana ny fepetra takian'ny fandaharam-potoana . . . . . . . . . . . . . . . . . . . 284 10.3.6 Famakafakana ny zavatra takin'ny Foiben'ny Mpampiasa . . . . . . . . . . . . . . . . . . 285 10.4 Fampandrosoana ny fitantanana ny mpampiasa . . . . . . . . . . . . . . . . . . . . . . . . 285 10.4.1 Fampidirana ny RainMaker API . . . . . . . . . . . . . . . . . . . . . . 285 10.4.2 Fanombohana Fifandraisana amin'ny alalan'ny Smartphone . . . . . . . . . . . . . . . . 286 10.4.3 Fisoratana kaonty . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286 10.4.4 Fidirana kaonty . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289 10.5 Fampandrosoana ny Famatsiana fitaovana . . . . . . . . . . . . . . . . . . . . . . . 292 10.5.1 Fitaovan'ny Scan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293 10.5.2 Fitaovana mampifandray . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295 10.5.3 Famoronana fanalahidy miafina . . . . . . . . . . . . . . . . . . . . . . . . . . . 298 10.5.4 Mahazo ID Node . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 298 10.5.5 Famatsiana fitaovana . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300 10.6 Fampandrosoana ny fanaraha-maso ny fitaovana . . . . . . . . . . . . . . . . . . . . . . . . . . 302 10.6.1 Mamatotra fitaovana amin'ny kaonty rahona . . . . . . . . . . . . . . . . . . . . 303 10.6.2 Mahazoa lisitry ny fitaovana . . . . . . . . . . . . . . . . . . . . . . . . . . 305 10.6.3 Mahazoa ny satan'ny fitaovana . . . . . . . . . . . . . . . . . . . . . . . . . . . 308 10.6.4 Fanovana ny satan'ny fitaovana . . . . . . . . . . . . . . . . . . . . . . . . . . 310 10.7 Fampandrosoana ny fandaharam-potoana sy ny Foiben'ny mpampiasa. . . . . . . . . . . . . . . . . . . 313 10.7.1 Fampiharana ny asa fandaharam-potoana . . . . . . . . . . . . . . . . . . . . 313 10.7.2 Fampiharana Foiben'ny mpampiasa . . . . . . . . . . . . . . . . . . . . . . . . . 315 10.7.3 Cloud API bebe kokoa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318 10.8 Famintinana . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319

11 Fanavaozana Firmware sy Fitantanana dikan-teny

321

11.1 Fanavaozana firmware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321

11.1.1 Mihoatraview ny tabilao fisarahana. . . . . . . . . . . . . . . . . . . . . . . . 322

11.1.2 Fizotry ny fanamoriana Firmware . . . . . . . . . . . . . . . . . . . . . . . . . . . 324

11.1.3 Mihoatraview ny Mekanisma OTA. . . . . . . . . . . . . . . . . . . . . 326

11.2 Fitantanana Firmware Version . . . . . . . . . . . . . . . . . . . . . . . . . . 329

11.2.1 Fanamarihana Firmware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329

11.2.2 Fihemorana sy Fihemorana . . . . . . . . . . . . . . . . . . . . . . . . 331

11.3 Fanazaran-tena: Over-the-air (OTA) Example . . . . . . . . . . . . . . . . . . . . . . . 332

11.3.1 Fanavaozana ny firmware amin'ny alalan'ny mpampiantrano eo an-toerana . . . . . . . . . . . . . . . . . 332

11.3.2 Fanavaozana ny firmware amin'ny alàlan'ny ESP RainMaker . . . . . . . . . . . . . . . 335

11.4 Famintinana . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342

IV Optimization sy famokarana faobe

343

12 Fitantanana herinaratra sy fanamafisam-pahefana ambany

345

12.1 ESP32-C3 Fitantanana herinaratra . . . . . . . . . . . . . . . . . . . . . . . . . . . 345

12.1.1 Fanamafisana ny fatran'ny dinamika . . . . . . . . . . . . . . . . . . . . . . . . 346

12.1.2 Fifehezana fitantanana herinaratra . . . . . . . . . . . . . . . . . . . . 348

12.2 ESP32-C3 Fomba Hery ambany . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348

12.2.1 Modem-sleep mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349

12.2.2 Fomba fatoriana maivana . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 351

12.2.3 Fomba fatoriana lalina . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356

12.2.4 Fanjifana amin'izao fotoana izao amin'ny maodely hery samihafa . . . . . . . . . . . . . 358

12.3 Fitantanana ny herin'aratra sy ny debugging ambany hery . . . . . . . . . . . . . . . . . 359

12.3.1 Debugging Log . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 360

12.3.2 GPIO Debugging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362

12.4 Fanao: Fitantanana herinaratra amin'ny tetikasa Smart Light. . . . . . . . . . . . . . . 363

12.4.1 Fanamboarana Endri-pitantanana herinaratra . . . . . . . . . . . . . . . . . 364

12.4.2 Mampiasà Hidy Fitantanana Hery . . . . . . . . . . . . . . . . . . . . . . 365

12.4.3 Fanamarinana ny fanjifana herinaratra . . . . . . . . . . . . . . . . . . . . . . . 366

12.5 Famintinana . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367

13 Fanatsarana ny fiarovana ny fitaovana

369

13.1 Mihoatraview an'ny IoT Device Data Security . . . . . . . . . . . . . . . . . . . . . . . 369

13.1.1 Nahoana no azo antoka ny angon-drakitra fitaovana IoT? . . . . . . . . . . . . . . . . . . . . . . 370

13.1.2 Fepetra fototra ho an'ny fiarovana ny angona fitaovana IoT. . . . . . . . . . . . 371

13.2 Fiarovana ny fahamendrehan'ny angona . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 372

13.2.1 Fampidirana ny fomba fanamarinana ny fahamendrehana . . . . . . . . . . . . . . 372

13.2.2 Fanamarinana ny fahamarinan'ny angon-drakitra Firmware . . . . . . . . . . . . . . . . . . 373

13.2.3 Eksample . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374

13.3 Fiarovana ny tsiambaratelon'ny angona . . . . . . . . . . . . . . . . . . . . . . . . . . 374

13.3.1 Fampidirana ny Encryption Data . . . . . . . . . . . . . . . . . . . . . . 374

13.3.2 Fampidirana ny tetika fanafenana tselatra . . . . . . . . . . . . . . . . . 376

13.3.3 Fitehirizana fanalahidin'ny Flash Encryption . . . . . . . . . . . . . . . . . . . . . . . 379

13.3.4 Fomba fiasan'ny fanafenana tselatra . . . . . . . . . . . . . . . . . . . . 380

13.3.5 Fomba fanafenana tselatra . . . . . . . . . . . . . . . . . . . . . . . . . . 381

13.3.6 Fampidirana ny Encryption NVS . . . . . . . . . . . . . . . . . . . . . . 383

13.3.7 Eksamples of Flash Encryption sy NVS Encryption . . . . . . . . . . . 384

13.4 Fiarovana ara-dalàna ny angon-drakitra . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386

13.4.1 Fampidirana ny sonia nomerika . . . . . . . . . . . . . . . . . . . . . 386

13.4.2 Mihoatraview ny Secure Boot Scheme . . . . . . . . . . . . . . . . . . . . . 388

13.4.3 Fampidirana ny Boot Secure Software . . . . . . . . . . . . . . . . . . . 388 13.4.4 Fampidirana ny Hardware Secure Boot . . . . . . . . . . . . . . . . . . 390 13.4.5 Eksamples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 394 13.5 Fampiharana: Toe-piarovana amin'ny Famokarana Faobe . . . . . . . . . . . . . . . . . . 396 13.5.1 Fanafenana tselatra sy Boot azo antoka . . . . . . . . . . . . . . . . . . . . . . . . . . 396 13.5.2 Famintinana . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 397

14 Fandoroana Firmware sy Fitsapana ho an'ny famokarana faobe

399

14.1 Fandoroana Firmware amin'ny famokarana faobe . . . . . . . . . . . . . . . . . . . . . . 399

14.1.1 Famaritana ny fizarana data . . . . . . . . . . . . . . . . . . . . . . . . . . 399

14.1.2 Fandoroana Firmware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 402

14.2 Fitsapana famokarana faobe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403

14.3 Fanazaran-tena: Angon-drakitra famokarana faobe amin'ny tetikasa Smart Light. . . . . . . . . . . . . 404

14.4 Famintinana . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404

15 ESP Insights: Sehatra fanaraha-maso lavitra

405

15.1 Fampidirana ny ESP Insights . . . . . . . . . . . . . . . . . . . . . . . . . . . . 405

15.2 Fanombohana amin'ny ESP Insights . . . . . . . . . . . . . . . . . . . . . . . . . 409

15.2.1 Fanombohana amin'ny ESP Insights ao amin'ny Tetikasa esp-insights . . . . . . 409

15.2.2 Mihazakazaka Example ao amin'ny Tetikasa esp-insights. . . . . . . . . . . . . . . 411

15.2.3 Mitatitra ny fampahalalana Coredump. . . . . . . . . . . . . . . . . . . . . 411

15.2.4 Fanamboarana ny diarin'ny fahalianana . . . . . . . . . . . . . . . . . . . . . . . . 412

15.2.5 Antony famerenana ny tatitra. . . . . . . . . . . . . . . . . . . . . . . . . 413

15.2.6 Mitatitra ny mari-pamantarana manokana . . . . . . . . . . . . . . . . . . . . . . . . . 413

15.3 Fanazaran-tena: Fampiasana ESP Insights amin'ny tetikasa Smart Light. . . . . . . . . . . . . . . 416

15.4 Famintinana . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417

Sava lalana
ESP32-C3 dia Wi-Fi tokana sy Bluetooth 5 (LE) microcontroller SoC, mifototra amin'ny maritrano RISC-V open source. Izy io dia mamely ny fifandanjana tsara amin'ny hery, ny fahaiza-manaon'ny I/O, ary ny fiarovana, ka manome ny vahaolana mahomby indrindra ho an'ny fitaovana mifandray. Mba hampisehoana ny fampiharana isan-karazany an'ny fianakaviana ESP32-C3, ity boky nosoratan'i Espressif ity dia hitondra anao amin'ny dia mahaliana amin'ny AIoT, manomboka amin'ny fototry ny fampandrosoana ny tetikasa IoT sy ny fananganana tontolo iainana ka hatramin'ny taloha.amples. Ny toko efatra voalohany dia miresaka momba ny IoT, ESP RainMaker ary ESP-IDF. Toko 5 sy 6 fohy momba ny famolavolana fitaovana sy ny fampandrosoana ny mpamily. Rehefa mandroso ianao dia ho hitanao ny fomba fanamboarana ny tetikasanao amin'ny alàlan'ny tambajotra Wi-Fi sy Apps finday. Farany, mianatra manatsara ny tetikasanao ianao ary mametraka izany amin'ny famokarana faobe.
Raha injeniera amin'ny sehatra mifandraika ianao, mpamorona rindrambaiko, mpampianatra, mpianatra, na olona liana amin'ny IoT, ity boky ity dia ho anao.
Azonao atao ny misintona ny code exampampiasaina amin'ity boky ity avy amin'ny tranokalan'i Espressif ao amin'ny GitHub. Raha mila fampahalalana farany momba ny fivoaran'ny IoT dia araho azafady ny kaonty ofisialy.

sasin-teny
Tontolo fampahafantarana
Miaraka amin'ny onjan'ny Aterineto, ny Internet of Things (IoT) dia nanao ny voalohany voalohany ho lasa karazana fotodrafitrasa vaovao amin'ny toekarena nomerika. Mba hanakaiky kokoa ny teknolojia ho an'ny besinimaro, ny Espressif Systems dia miasa ho an'ny vina fa afaka mampiasa IoT ireo mpamorona avy amin'ny sarangam-piainana rehetra mba hamahana ny sasany amin'ireo olana maika indrindra amin'izao androntsika izao. Tontolon'ny “Tambajotra Intelligent of Things Rehetra” no andrasantsika amin'ny ho avy.
Ny fandrafetana ny potitsika manokana dia singa manan-danja amin'io vina io. Ny hazakazaka marathon dia mila fandrosoana tsy tapaka manoloana ny fetran'ny teknolojia. Avy amin'ny "Game Changer" ESP8266 ka hatramin'ny andiany ESP32 mampiditra Wi-Fi sy Bluetoothr (LE), arahin'ny ESP32-S3 miaraka amin'ny AI acceleration, Espressif tsy mitsahatra mikaroka sy mamolavola vokatra ho an'ny vahaolana AIoT. Miaraka amin'ny rindrambaiko open source, toy ny IoT Development Framework ESP-IDF, Mesh Development Framework ESP-MDF, ary Device Connectivity Platform ESP RainMaker, dia namorona rafitra tsy miankina amin'ny fananganana rindranasa AIoT izahay.
Tamin'ny volana jolay 2022, nihoatra ny 800 tapitrisa ny fandefasana ny chipsets IoT an'ny Espressif, nitarika ny tsenan'ny Wi-Fi MCU ary manangana fitaovana mifandray marobe eran'izao tontolo izao. Ny fikatsahana ny fahalavorariana dia mahatonga ny vokatra Espressif rehetra ho tohina lehibe noho ny fampifandraisana avo lenta sy ny fahombiazan'ny vidiny. Ny famoahana ny ESP32-C3 dia manamarika dingana lehibe amin'ny teknolojia novolavolain'ny Espressif. Izy io dia MCU tokana tokana, 32-bit, RISC-V mifototra amin'ny SRAM 400KB, izay afaka mandeha amin'ny 160MHz. Izy io dia nampiditra Wi-Fi 2.4 GHz sy Bluetooth 5 (LE) miaraka amin'ny fanohanana lavitra. Izy io dia mamely fifandanjana tsara amin'ny hery, fahaiza-manao I/O, ary fiarovana, ka manome vahaolana mahomby indrindra ho an'ny fitaovana mifandray. Miorina amin'ny ESP32-C3 mahery toy izany, ity boky ity dia natao hanampiana ny mpamaky hahatakatra ny fahalalana mifandraika amin'ny IoT miaraka amin'ny fanoharana amin'ny antsipiriany sy ny taloha.amples.
Nahoana isika no nanoratra ity boky ity?
Espressif Systems dia mihoatra noho ny orinasa semiconductor. Orinasa sehatra IoT ihany koa izy io, izay miezaka hatrany amin'ny fandrosoana sy fanavaozana eo amin'ny sehatry ny teknolojia. Nandritra izany fotoana izany, ny Espressif dia nanokatra loharano misokatra ary nizara ny rafitra fiasan'ny tenany manokana sy ny rafitry ny rindrambaiko amin'ny vondrom-piarahamonina, mamorona tontolo iainana miavaka. Injeniera, mpanamboatra ary mpankafy teknolojia dia mazoto mamorona rindranasa rindrambaiko vaovao mifototra amin'ny vokatra avy amin'ny Espressif, mifampiresaka malalaka ary mizara ny traikefany. Azonao atao ny mahita hevitra mahavariana ataon'ny mpamorona amin'ny sehatra isan-karazany, toy ny YouTube sy GitHub. Ny lazan'ny vokatra Espressif dia nandrisika ny mpanoratra mitombo isa izay namokatra boky mihoatra ny 100 mifototra amin'ny chipsets Espressif, amin'ny fiteny folo mahery, anisan'izany ny anglisy, sinoa, alemà, frantsay ary japoney.

Ny fanohanan'ny mpiara-miombon'antoka sy ny fitokisan'ny mpiara-miombon'antoka no mandrisika ny fanavaozana mitohy ataon'i Espressif. “Miezaka izahay ny hahatonga ny chips, ny rafitra miasa, ny rafitra, ny vahaolana, ny rahona, ny fomba fanao amin'ny raharaham-barotra, ny fitaovana, ny antontan-taratasy, ny asa soratra, ny hevitra, sns., mba hifanaraka kokoa amin'ny valinteny ilain'ny olona amin'ny olana goavana amin'ny fiainana ankehitriny. Ity no faniriana ambony indrindra an'i Espressif sy tondro ara-moraly.” hoy Atoa Teo Swee Ann, mpanorina sy tale jeneralin'ny Espressif.
Ny espressif dia manome lanja ny famakiana sy hevitra. Satria ny fanavaozana tsy tapaka ny teknolojia IoT dia mitaky fepetra ambony kokoa amin'ny injeniera, ahoana no ahafahantsika manampy olona maro kokoa hifehy haingana ny chips IoT, rafitra fiasana, rafitra rindrambaiko, rafitra fampiharana ary vokatra serivisy rahona? Hoy ny fitenenana hoe: aleo mampianatra manjono toy izay manome trondro. Tao anatin'ny fotoam-pivorian'ny atidoha dia tonga tao an-tsainay fa afaka manoratra boky izahay handaminana ny fahalalana fototra momba ny fivoaran'ny IoT. Nandresy izany izahay, nanangona andiana injeniera zokiolona haingana, ary nampifangaro ny traikefan'ny ekipa teknika amin'ny fandaharana embed, hardware IoT ary fampivoarana rindrambaiko, izay samy nandray anjara tamin'ny famoahana ity boky ity. Teo am-panoratana dia niezaka izahay mba ho marina sy ho marina, nesorina tamin'ny cocoon, ary nampiasa fitenenana fohy mba hilazana ny fahasarotana sy ny hakanton'ny Internet of Things. Nofintininay tamim-pitandremana ireo fanontaniana mahazatra, nanondro ny fanehoan-kevitra sy ny soso-kevitry ny vondrom-piarahamonina, mba hamaliana mazava tsara ireo fanontaniana atrehana amin'ny dingana fampandrosoana, ary manome torolalana momba ny fampandrosoana IoT azo ampiharina ho an'ny teknisianina sy mpanapa-kevitra mifandraika amin'izany.
Rafitra boky
Ity boky ity dia maka fomba fijery mifototra amin'ny injeniera ary manazava ny fahalalana ilaina amin'ny fampandrosoana ny tetikasa IoT tsikelikely. Izy io dia ahitana fizarana efatra, toy izao manaraka izao:
· Fiomanana (Toko 1): Ity ampahany ity dia mampiditra ny maritrano amin'ny IoT, ny rafitry ny tetikasa IoT mahazatra, ny sehatra rahona ESP RainMakerr, ary ny tontolo fampandrosoana ESP-IDF, mba hametrahana fototra mafy orina amin'ny fampandrosoana ny tetikasa IoT.
· Fampandrosoana ny fitaovana sy ny mpamily (Toko 5): Miorina amin'ny chipset ESP6-C32, ity ampahany ity dia mamelabelatra momba ny rafitra fitaovana kely indrindra sy ny fampivoarana ny mpamily, ary mampihatra ny fanaraha-maso ny dimming, ny fametahana loko ary ny fifandraisana an-tariby.
· Fifandraisana sy fanaraha-maso tsy misy tariby (Toko 7): Ity ampahany ity dia manazava ny rafitra fikirakirana Wi-Fi manan-tsaina mifototra amin'ny chip ESP11-C32, protocole fanaraha-maso eo an-toerana & rahona, ary fanaraha-maso ny fitaovana eo an-toerana & lavitra. Izy io koa dia manome tetika amin'ny famolavolana apps smartphone, fanavaozana firmware, ary fitantanana dikan-teny.
· Fanamafisana sy famokarana faobe (toko 12-15): Ity ampahany ity dia natao ho an'ny fampiharana IoT mandroso, mifantoka amin'ny fanatsarana ny vokatra amin'ny fitantanana herinaratra, ny fanamafisana ny hery ambany ary ny fiarovana. Izy io koa dia mampiditra ny fandoroana firmware sy ny fitsapana amin'ny famokarana faobe, ary ny fomba hamantarana ny toetry ny fandehanana sy ny diarin'ny firmware amin'ny alàlan'ny sehatra fanaraha-maso lavitra ESP Insights.

Momba ny Source Code
Ny mpamaky dia afaka mitantana ny example fandaharana ato amin'ity boky ity, na amin'ny alalan'ny fampidirana ny kaody amin'ny tanana na amin'ny alalan'ny fampiasana ny source code izay miaraka amin'ny boky. Manantitrantitra ny fitambaran'ny teoria sy ny fampiharana izahay, ary noho izany dia mametraka fizarana Practice mifototra amin'ny tetikasa Smart Light saika isaky ny toko. Ny kaody rehetra dia misokatra. Ny mpamaky dia misintona ny kaody loharano ary mifanakalo hevitra momba izany ao amin'ny fizarana mifandraika amin'ity boky ity ao amin'ny GitHub sy ny forum ofisialy esp32.com. Ny kaody misokatra amin'ity boky ity dia miankina amin'ny fepetran'ny Apache License 2.0.
Fanamarihan'ny mpanoratra
Ity boky ity dia novokarin'ny Espressif Systems tamin'ny fomba ofisialy ary nosoratan'ireo injeniera ambony ao amin'ny orinasa. Mety ho an'ny mpitantana sy mpiasan'ny R&D amin'ny indostria mifandraika amin'ny IoT, mpampianatra ary mpianatra amin'ny lehibe mifandraika amin'izany, ary mpankafy amin'ny sehatry ny Internet of Things. Manantena izahay fa ity boky ity dia ho toy ny boky fampianarana asa, fanondroana, ary boky eo akaikin'ny fandriana, mba ho toy ny mpitaiza sy namana tsara.
Rehefa nanangona ity boky ity izahay dia niresaka momba ny valin'ny fikarohana mifandraika amin'ny manam-pahaizana manokana, manam-pahaizana ary teknisianina eto an-toerana sy any ivelany, ary nanao izay azonay natao izahay mba hitanisana azy ireo araka ny fenitra akademika. Tsy azo ihodivirana anefa ny fisian’ny tsy fahampiana ka eto dia maneho ny fanajantsika sy ny fankasitrahana lalina ireo mpanoratra rehetra mifandraika amin’izany. Fanampin'izany, nanonona vaovao avy amin'ny Internet izahay, koa dia misaotra ireo mpanoratra sy mpamoaka tany am-boalohany ary miala tsiny fa tsy afaka manondro ny loharanon'ny fampahalalana rehetra.
Mba hamokarana boky manana kalitao avo lenta, dia nandamina fifanakalozan-dresaka anatiny izahay, ary nianatra avy amin'ny soso-kevitra sy ny valin-tenin'ny mpamaky andrana sy ny mpamoaka lahatsoratra. Eto indray dia misaotra anareo izahay noho ny fanampianareo izay samy nandray anjara tamin'ity asa nahomby ity.
Farany, fa ny zava-dehibe indrindra, dia misaotra ny rehetra tao amin'ny Espressif izay niasa mafy tamin'ny fahaterahana sy ny fanamafisan'ny vokatray.
Ny fampivoarana ny tetikasa IoT dia ahitana fahalalana marobe. Voafetra amin'ny halavan'ny boky, ary koa ny haavony sy ny traikefan'ny mpanoratra, dia tsy azo ihodivirana ny fanalana azy. Noho izany dia miangavy ny manam-pahaizana sy ny mpamaky izahay hitsikera sy hanitsy ny lesoka. Raha manana soso-kevitra momba ity boky ity ianao dia mifandraisa aminay amin'ny book@espressif.com. Miandrandra ny valin-teninao izahay.

Ahoana ny fampiasana ity boky ity?
Ny kaodin'ny tetikasa ato amin'ity boky ity dia misokatra. Azonao atao ny misintona azy avy amin'ny tahiry GitHub ary mizara ny hevitrao sy ny fanontanianao ao amin'ny sehatra ofisialy. GitHub: https://github.com/espressif/book-esp32c3-iot-projects Forum: https://www.esp32.com/bookc3 Manerana ny boky dia hisy ampahany hasongadina araka ny aseho etsy ambany.
Kaody loharano Ato amin'ity boky ity, dia manantitrantitra ny fitambaran'ny teoria sy ny fampiharana, ary noho izany dia mametraka fizarana Practice momba ny tetikasa Smart Light saika isaky ny toko. Ny dingana mifanaraka amin'izany sy ny pejy loharano dia homarihina eo anelanelan'ny andalana roa manomboka amin'ny tag Kaody loharano.
FANAMARIHANA/SOSO-KEVITRA Eto ianao dia mety hahita fampahalalana manan-danja sy fampahatsiahivana amin'ny fampandehanana ny programanao. Hisy marika eo anelanelan'ny tsipika roa matevina manomboka amin'ny tag FANAMARIHANA na SOSO-KEVITRA.
Ny ankamaroan'ny baiko ato amin'ity boky ity dia tanterahina amin'ny Linux, atosiky ny endri-tsoratra "$". Raha mitaky tombotsoa ho an'ny mpampiasa super ny baiko, dia hosoloina "#" ny bitsika. Ny baiko haingana amin'ny rafitra Mac dia "%", araka ny ampiasaina ao amin'ny Fizarana 4.2.3 Fametrahana ESP-IDF amin'ny Mac.
Ny lahatsoratra ao amin'ity boky ity dia hatao pirinty ao amin'ny Charter, raha ny code examples, singa, fonctions, variables, code file anarana, lahatahiry kaody ary tady dia ho ao amin'ny Courier New.
Ny baiko na lahatsoratra mila ampidiran'ny mpampiasa, ary ny baiko azo ampidirina amin'ny fanindriana ny famaha "Enter" dia hatao pirinty amin'ny Courier New bold. Haseho ao anaty boaty manga mazava ny logs sy code blocks.
Example:
Faharoa, ampiasao esp-idf/components/nvs flash/nvs partition generator/nvs partition gen.py hamokatra ny binary partition NVS file amin'ny mpampiantrano fampandrosoana miaraka amin'ity baiko manaraka ity:
$ python $IDF PATH/singa/nvs flash/nvs partition generator/nvs partition gen.py –input mass prod.csv –output mass prod.bin –size NVS PARTITION SIZE

Toko 1

Sava lalana

ny

IoT

Tamin'ny faran'ny taonjato faha-20, miaraka amin'ny firongatry ny tambajotra informatika sy ny teknolojian'ny fifandraisana, ny Internet dia niditra haingana tamin'ny fiainan'ny olona. Raha mbola mihamatotra ny teknolojia Internet, dia teraka ny hevitra momba ny Internet of Things (IoT). Ara-bakiteny, ny IoT dia midika hoe Internet misy zavatra mifandray. Na dia mandika ny fetran'ny habaka sy ny fotoana aza ny Internet tany am-boalohany ary mampihena ny elanelana misy eo amin'ny “olona sy ny olona”, ny IoT dia manao ny “zavatra” ho mpandray anjara manan-danja, mampifanakaiky kokoa ny “olona” sy ny “zavatra”. Amin'ny hoavy azo tsapain-tanana, IoT dia natao ho lasa hery mitarika ny indostrian'ny fampahalalam-baovao.
Noho izany, inona ny Internet of Things?
Sarotra ny mamaritra tsara ny Internet of Things, satria mivoatra tsy an-kijanona ny dikany sy ny sarany. Tamin'ny 1995, Bill Gates dia nitondra ny hevitry ny IoT voalohany tao amin'ny bokiny The Road Ahead. Raha tsorina, ny IoT dia ahafahan'ny zavatra mifanakalo vaovao amin'ny Internet. Ny tanjona faratampony dia ny hananganana “Internet ny zava-drehetra”. Fandikan-teny voalohany momba ny IoT io, ary koa nofinofy momba ny teknolojia ho avy. Telopolo taona aty aoriana, miaraka amin'ny fivoarana haingana ny toekarena sy ny teknolojia, tonga ny nofinofy. Avy amin'ny fitaovana maranitra, trano marani-tsaina, tanàna marani-tsaina, Internet amin'ny fiara ary fitaovana azo ampiasaina, ka hatramin'ny "metaverse" tohanan'ny teknolojia IoT, dia tsy mitsaha-mipoitra ny hevitra vaovao. Amin'ity toko ity dia hanomboka amin'ny fanazavana momba ny maritrano an'ny Internet of Things isika, ary avy eo dia hampiditra ny fampiharana IoT mahazatra indrindra, ny trano marani-tsaina, mba hanampiana anao hahazo fahalalana mazava momba ny IoT.
1.1 Architecture an'ny IoT
Ny Internet of Things dia misy teknolojia marobe izay manana filana fampiharana sy endrika samihafa amin'ny indostria samihafa. Mba handaminana ny rafitra, ny teknolojia fototra ary ny toetran'ny fampiharana ny IoT, dia ilaina ny manangana maritrano iraisana sy rafitra ara-teknika mahazatra. Amin'ity boky ity, ny maritrano an'ny IoT dia mizara ho sosona efatra fotsiny: sosona perception & control, layer network, layer platform, ary layer application.
Perception & Control Layer Amin'ny maha singa fototra indrindra amin'ny maritrano IoT, ny soson-kevitra sy ny fanaraha-maso no fototry ny fahatsapan'ny IoT feno. Ny tena asany dia ny manangona, mamantatra ary mifehy ny vaovao. Izy io dia ahitana fitaovana isan-karazany miaraka amin'ny fahaiza-manaon'ny fahatsapana,
3

famantarana, fanaraha-maso ary famonoana, ary tompon'andraikitra amin'ny fakana sy famakafakana angon-drakitra toy ny fananana ara-materialy, ny fironana amin'ny fitondran-tena ary ny satan'ny fitaovana. Amin'izany fomba izany, ny IoT dia mahafantatra ny tontolo tena izy. Ankoatra izany, ny sosona dia afaka mifehy ny toetry ny fitaovana.
Ny fitaovana mahazatra indrindra amin'ity sosona ity dia sensor isan-karazany, izay manana anjara toerana lehibe amin'ny fanangonana vaovao sy famantarana. Ny sensor dia toy ny taovan'ny olombelona, ​​toy ny sensor photosensitive mitovy amin'ny fahitana, sensor acoustic ho an'ny fandrenesana, sensor entona amin'ny fofona, ary sensor sensor sy mari-pana amin'ny fikasihana. Miaraka amin'ireo "taovam-pandrenesana" rehetra ireo, ny zavatra dia lasa "velona" ary afaka ny fahitana, ny fanekena ary ny fanodikodinana ny tontolo ara-batana.
Soson-tambajotra Ny tena anjara asan'ny soson-tambajotra dia ny fampitana vaovao, ao anatin'izany ny angon-drakitra azo avy amin'ny soson-kevitra & fanaraha-maso mankany amin'ny tanjona voafaritra, ary koa ny baiko navoaka avy amin'ny sosona fampiharana miverina amin'ny sosona perception & control. Izy io dia tetezana fifandraisana manan-danja mampifandray ireo sosona samihafa amin'ny rafitra IoT. Mba hananganana maodely fototra amin'ny Internet of Things, dia misy dingana roa hampidirana zavatra ao anaty tambajotra: fidirana amin'ny Internet sy fandefasana amin'ny Internet.
Ny fidirana amin'ny Aterineto Aterineto dia ahafahan'ny fifandraisana eo amin'ny olona sy ny olona, ​​saingy tsy afaka mampiditra zavatra ao anatin'ny fianakaviana lehibe. Talohan'ny nahatongavan'ny IoT, ny ankamaroan'ny zavatra dia tsy "afaka tambajotra". Noho ny fivoaran'ny teknolojia mitohy, ny IoT dia mahavita mampifandray zavatra amin'ny Internet, ka mahatsapa ny fifamatorana eo amin'ny "olona sy ny zavatra", ary ny "zavatra sy zavatra". Misy fomba roa mahazatra hampiharana fifandraisana Internet: fidirana amin'ny tambazotra tariby sy fidirana amin'ny tambajotra tsy misy tariby.
Ny fomba fidirana amin'ny tambajotra an-tariby dia misy ny Ethernet, ny fifandraisana serial (oh: RS-232, RS-485) ary ny USB, raha ny fidirana amin'ny tambajotra an-tariby dia miankina amin'ny fifandraisana an-tariby, izay azo zaraina bebe kokoa amin'ny fifandraisana an-tariby fohy sy ny fifandraisana an-tariby lavitra.
Ny fifandraisana an-tariby fohy fohy dia ahitana ZigBee, Bluetoothr, Wi-Fi, Fifandraisana akaiky (NFC), ary Famantarana ny fréquency radio (RFID). Ny fifandraisana an-tariby lavitra dia ahitana ny Enhanced Machine Type Communication (eMTC), LoRa, Narrow Band Internet of Things (NB-IoT), 2G, 3G, 4G, 5G, sns.
Fandefasana amin'ny alalan'ny Internet Ny fomba samihafa amin'ny fidirana amin'ny Internet dia mitarika amin'ny rohy fampitana ara-batana mifanaraka amin'ny angona. Ny zavatra manaraka dia ny manapa-kevitra hoe inona no protocole fifandraisana ampiasaina handefasana ny angona. Raha ampitahaina amin'ny terminal Internet, ny ankamaroan'ny terminal IoT dia vitsy kokoa amin'izao fotoana izao
4 ESP32-C3 Wireless Adventure: Torolàlana feno amin'ny IoT

loharano azo ampiasaina, toy ny fampandehanana ny fanodinana, ny fahafaha-mitahiry, ny tahan'ny tambajotra, sns., noho izany dia ilaina ny misafidy protocole fifandraisana izay manana loharano vitsy kokoa amin'ny rindranasa IoT. Misy protocole fifandraisana roa izay be mpampiasa ankehitriny: Message Queuing Telemetry Transport (MQTT) sy Constrained Application Protocol (CoAP).
Layer Platform Ny sosona sehatra dia manondro indrindra ny sehatra rahona IoT. Rehefa mifandray amin'ny tamba-jotra ny terminal IoT rehetra, dia mila angonina amin'ny sehatra rahona IoT ny angon-dry zareo mba hokajiana sy hotehirizina. Ny sosona sehatra dia manohana indrindra ny rindranasa IoT amin'ny fanamorana ny fidirana sy ny fitantanana fitaovana goavana. Mampifandray ny terminal IoT amin'ny sehatra rahona izy io, manangona angon-drakitra momba ny terminal, ary mamoaka baiko amin'ny terminal, mba hampiharana ny fanaraha-maso lavitra. Amin'ny maha serivisy mpanelanelana hanendry fitaovana ho an'ny rindranasa indostrialy, ny soson'ny sehatra dia mitana anjara toerana mampifandray amin'ny maritrano IoT manontolo, mitondra ny lojikan'ny orinasa abstract sy ny maodely data fototra manara-penitra, izay tsy vitan'ny hoe mahatsapa ny fidirana haingana amin'ny fitaovana, fa manome koa ny fahaiza-manao modular mahery. mamaly ny filana isan-karazany amin'ny sehatra fampiharana indostrialy. Ny sarin'ny sehatra dia ahitana indrindra ny maody miasa toy ny fidirana amin'ny fitaovana, ny fitantanana ny fitaovana, ny fitantanana ny fiarovana, ny fifandraisana amin'ny hafatra, ny fanaraha-maso sy ny fikojakojana ary ny fampiharana data.
· Ny fidirana amin'ny fitaovana, mahatsapa ny fifandraisana sy ny fifandraisana eo amin'ny terminal sy ny sehatra rahona IoT.
· Fitantanana fitaovana, anisan'izany ny asa toy ny famoronana fitaovana, fikojakojana ny fitaovana, fiovam-baovao, fampifanarahana ny angona, ary fizarana fitaovana.
· Fitantanana fiarovana, miantoka ny fiarovana ny fifindran'ny angona IoT avy amin'ny fomba fijerin'ny fanamarinana fiarovana sy ny fiarovana ny fifandraisana.
· Fifandraisana amin'ny hafatra, ao anatin'izany ny torolalana fampitana telo, izany hoe, ny terminal dia mandefa angon-drakitra mankany amin'ny sehatra rahona IoT, ny sehatra rahona IoT dia mandefa angona amin'ny lafiny server na sehatra hafa amin'ny rahona IoT, ary ny lafiny server dia mifehy lavitra ny fitaovana IoT.
· Fanaraha-maso ny O&M, misy ny fanaraha-maso sy ny fitiliana, ny fanavaozana ny firmware, ny debugging an-tserasera, ny serivisy log, sns.
· Fampiharana angona, ahitana ny fitahirizana, ny famakafakana ary ny fampiharana ny angona.
Layer Application Ny sosona fampiharana dia mampiasa ny angona avy amin'ny soson'ny sehatra hitantana ny rindranasa, sivana ary fanodinana azy ireo amin'ny fitaovana toy ny angon-drakitra sy rindrambaiko fanadihadiana. Ny angon-drakitra vokatr'izany dia azo ampiasaina amin'ny fampiharana IoT tena izy toy ny fikarakarana ara-pahasalamana marani-tsaina, fambolena marani-tsaina, trano marani-tsaina ary tanàna marani-tsaina.
Mazava ho azy, ny maritrano an'ny IoT dia azo zaraina ho sosona maro kokoa, fa na firy na firy sosona misy azy, ny fitsipika fototra dia tsy miova. fianarana
Toko 1. Fampidirana ny IoT 5

momba ny maritrano an'ny IoT dia manampy amin'ny fahalalantsika ny teknolojia IoT ary manangana tetikasa IoT miasa tanteraka.
1.2 Fampiharana IoT ao amin'ny Smart Homes
IoT dia niditra tamin'ny sehatra rehetra, ary ny fampiharana IoT mifandray akaiky indrindra amintsika dia ny trano hendry. Fitaovana nentim-paharazana maro ankehitriny no fitaovana amin'ny fitaovana IoT iray na maromaro, ary trano maro vao naorina no namboarina tamin'ny teknolojia IoT hatrany am-boalohany. Ny sary 1.1 dia mampiseho fitaovana an-trano mahazatra mahazatra.
Sary 1.1. Fitaovana an-trano mahazatra mahazatra Ny fivoaran'ny trano marani-tsaina dia azo zaraina tsotra izao ho vokatra marani-tsaina stage, sehatra fifampifandraisana stage sy intelligent stage, araka ny asehon'ny sary 1.2.
Sary 1.2. Fampandrosoana stage an'ny Smart Home 6 ESP32-C3 Wireless Adventure: Torolàlana feno amin'ny IoT

Ny voalohany stage dia momba ny vokatra marani-tsaina. Tsy mitovy amin'ny trano nentim-paharazana, ao amin'ny trano manan-tsaina, ny fitaovana IoT dia mahazo famantarana miaraka amin'ny sensor, ary mifandray amin'ny tambajotra amin'ny alàlan'ny teknolojian'ny fifandraisana tsy misy tariby toy ny Wi-Fi, Bluetooth LE, ary ZigBee. Ny mpampiasa dia afaka mifehy ny vokatra marani-tsaina amin'ny fomba isan-karazany, toy ny fampiharana finday avo lenta, mpanampy amin'ny feo, fifehezana mpandahateny mahay, sns.tage dia mifantoka amin'ny fifandraisan'ny sehatra. Amin'ity stage, tsy mieritreritra ny hifehy ny vokatra marani-tsaina tokana intsony ny mpamorona, fa mampifandray vokatra marani-tsaina roa na maromaro, mandeha ho azy amin'ny lafiny iray, ary farany mamorona fomba fanao mahazatra. Ho an'ny example, rehefa manindry ny bokotra mode scene ny mpampiasa, ny jiro, ny ridao, ary ny air conditioner dia ampifanarahana ho azy amin'ny preset. Mazava ho azy fa misy ny fepetra takiana mba hapetraka mora foana ny lojika fifandraisana, ao anatin'izany ny fepetran'ny trigger sy ny hetsika famonoana. Alao sary an-tsaina fa ny fomba fanamafisam-peo dia mipoitra rehefa latsaka ambanin'ny 10 ° C ny mari-pana ao an-trano; fa amin'ny 7 ora maraina dia alefa ny mozika hanaitra ny mpampiasa, misokatra ny ridao marani-tsaina, ary manomboka amin'ny socket smart ny rice cooker na mofo fanasan-damba; rehefa mifoha ny mpampiasa ka vita ny fanasana dia efa aroso ny sakafo maraina, mba tsy hisy fahatarana ny fandehanana miasa. Tena nahasoa tokoa ny fiainantsika! Ny fahatelo stage mankany amin'ny intelligence stage. Satria betsaka kokoa ny fitaovana an-trano marani-tsaina idirana, dia ho toy izany koa ireo karazana angona azo. Miaraka amin'ny fanampian'ny informatika rahona, angon-drakitra lehibe ary ny faharanitan-tsaina artifisialy, dia toy ny "atidoha marani-tsaina" nambolena tao amin'ny trano marani-tsaina, izay tsy mitaky baiko matetika avy amin'ny mpampiasa intsony. Manangona angona avy amin'ny fifaneraserana teo aloha izy ireo ary mianatra ny fomba fitondran-tenan'ny mpampiasa sy ny safidiny, mba handrindrana ny hetsika, anisan'izany ny fanomezana tolo-kevitra momba ny fandraisana fanapahan-kevitra. Amin'izao fotoana izao, ny ankamaroan'ny trano manan-tsaina dia eo amin'ny sehatra interconnection stage. Rehefa mitombo ny tahan'ny fidirana sy ny faharanitan-tsaina amin'ny vokatra marani-tsaina, dia nesorina ny sakana eo amin'ny protocole fifandraisana. Amin'ny hoavy, ny tokantrano marani-tsaina dia tsy maintsy ho lasa tena "smart", toy ny rafitra AI Jarvis ao Iron Man, izay tsy vitan'ny hoe manampy ny mpampiasa hifehy ny fitaovana isan-karazany, hikarakara ny raharaha andavanandro, fa koa manana hery informatika sy fahaiza-misaina. Ao amin'ny intelligent stage, hahazo tolotra tsaratsara kokoa na amin'ny habeny na amin'ny kalitao ny olombelona.
Toko 1. Fampidirana ny IoT 7

8 ESP32-C3 Wireless Adventure: Torolàlana feno amin'ny IoT

Toko Fampidirana sy fampiharana ny Tetikasa IoT 2
Ao amin'ny Toko 1, nampidirinay ny maritrano an'ny IoT, ary ny anjara asa sy ny fifandraisan'ny soson-kevitra sy ny fanaraha-maso, ny soson'ny tambajotra, ny soson'ny sehatra, ary ny sosona fampiharana, ary koa ny fampivoarana ny trano marani-tsaina. Na izany aza, tahaka ny rehefa mianatra mandoko isika, ny fahalalana ny fahalalana teorika dia tsy ampy. Tsy maintsy “maloto tanana” isika mba hampiharana ny tetikasa IoT mba hahafehy tsara ny teknolojia. Fanampin'izany, rehefa mifindra amin'ny famokarana faobe ny tetikasa stage, ilaina ny mandinika anton-javatra maro kokoa toy ny fifandraisana amin'ny tambajotra, ny fanamafisana, ny fifandraisana amin'ny sehatra rahona IoT, ny fitantanana sy ny fanavaozana ny firmware, ny fitantanana ny famokarana faobe ary ny fanamafisana ny fiarovana. Noho izany, inona no tokony hojerentsika rehefa mamolavola tetikasa IoT feno? Ao amin'ny Toko 1, dia nilaza izahay fa ny trano marani-tsaina dia iray amin'ireo sehatra fampiharana IoT mahazatra indrindra, ary ny jiro marani-tsaina dia iray amin'ireo fitaovana fototra sy azo ampiharina indrindra, izay azo ampiasaina amin'ny trano, trano fandraisam-bahiny, gym, hopitaly, sns. amin'ity boky ity, dia horaisinay ny fananganana tetikasa maivana marani-tsaina ho toy ny fiaingana, hanazava ny singany sy ny endri-javatra, ary hanome torolalana momba ny fampandrosoana ny tetikasa. Manantena izahay fa afaka manatsoaka hevitra avy amin'ity tranga ity ianao mba hamoronana rindranasa IoT bebe kokoa.
2.1 Fampidirana ireo tetikasa IoT mahazatra
Eo amin'ny lafiny fampandrosoana, ny maody fototra miasa amin'ny tetikasa IoT dia azo sokajiana ho amin'ny fampivoarana rindrambaiko sy hardware amin'ny fitaovana IoT, ny fampivoarana ny fampiharana mpanjifa, ary ny fampivoarana ny sehatra rahona IoT. Zava-dehibe ny manazava ny maody fototra miasa, izay holazaina bebe kokoa ato amin'ity fizarana ity.
2.1.1 Modules fototra ho an'ny fitaovana IoT mahazatra
Ny fampivoarana rindrambaiko sy hardware amin'ny fitaovana IoT dia ahitana ireto maody fototra manaraka ireto: Fanangonana angona
Amin'ny maha-sosona ambany indrindra amin'ny maritrano IoT, ny fitaovana IoT amin'ny sosona fahatsapana sy fanaraha-maso dia mampifandray ireo sensor sy fitaovana amin'ny alàlan'ny chips sy periferikany mba hahatratrarana ny fanangonana angona sy ny fanaraha-maso ny asa.
9

Famatorana kaonty sy fanamafisana voalohany Ho an'ny ankamaroan'ny fitaovana IoT, ny famatorana kaonty sy ny fanamafisana voalohany dia vita amin'ny dingana iray miasa, ho an'ny ex.ample, mampifandray fitaovana amin'ny mpampiasa amin'ny alalan'ny configuring Wi-Fi tambajotra.
Fifandraisana amin'ny sehatra rahona IoT Mba hanaraha-maso sy hifehezana ireo fitaovana IoT dia ilaina ihany koa ny mampifandray azy ireo amin'ny sehatra rahona IoT, mba hanomezana baiko sy tatitra sata amin'ny alàlan'ny fifampiraharahana eo amin'ny tsirairay.
Fanaraha-maso ny fitaovana Rehefa mifandray amin'ny sehatra rahona IoT, dia afaka mifandray amin'ny rahona ny fitaovana ary misoratra anarana, mifatotra, na fehezina. Ny mpampiasa dia afaka manontany ny sata momba ny vokatra ary manao asa hafa amin'ny fampiharana finday amin'ny alàlan'ny sehatra rahona IoT na protocole fifandraisana eo an-toerana.
Ny fampivoarana firmware ny fitaovana IoT dia afaka mahatratra ny fanavaozana firmware mifototra amin'ny filan'ny mpanamboatra. Amin'ny alàlan'ny fandraisana baiko nalefan'ny rahona, ny fanavaozana ny firmware sy ny fitantanana ny dikan-teny dia ho tanteraka. Miaraka amin'ity fampiasa fanavaozana firmware ity dia azonao atao ny manatsara hatrany ny fiasan'ny fitaovana IoT, manamboatra lesoka ary manatsara ny traikefan'ny mpampiasa.
2.1.2 Modules fototra amin'ny fampiharana mpanjifa
Ny fampiharana mpanjifa (oh: fampiharana finday avo lenta) dia ahitana ireto maodely fototra manaraka ireto:
Rafitra kaonty sy fanomezan-dàlana Izy io dia manohana ny fanomezan-dàlana amin'ny kaonty sy fitaovana.
Fanaraha-maso ny fitaovana Ny fampiharana smartphone dia matetika misy fitaovana fanaraha-maso. Afaka mifandray mora amin'ny fitaovana IoT ny mpampiasa, ary mitantana azy ireo amin'ny fotoana rehetra, na aiza na aiza amin'ny alàlan'ny fampiharana finday. Ao amin'ny tokantrano marani-tsaina eran-tany, ny ankamaroan'ny fitaovana dia voafehy amin'ny alàlan'ny fampiharana finday, izay tsy vitan'ny hoe manome fahafaham-po ny fitantanana fitaovana, fa mitahiry ny vidin'ny mpiasa. Noho izany, ny fanaraha-maso ny fitaovana dia tsy maintsy ho an'ny mpanjifa fampiharana, toy ny fitaovana fiasan'ny toetra fanaraha-maso, sehatra fanaraha-maso, fandaharam-potoana, lavitra fanaraha-maso, fitaovana fifandraisana, sns Smart trano mpampiasa dia afaka ampanjifaina ihany koa ny sehatra araka ny filan'ny tena manokana, mifehy ny jiro, fitaovana an-trano, fidirana. , sns., mba hahatonga ny fiainana an-trano ho milamina sy mety kokoa. Azon'izy ireo atao ny manara-maso ny fanamafisam-peo, mamono azy avy lavitra, mametraka ho azy ny jiron'ny lalantsara rehefa voahidy ny varavarana, na mifindra amin'ny fomba “teatra” amin'ny bokotra tokana.
Ny fampiharana Notification Client dia manavao ny toeran'ny fitaovana IoT amin'ny fotoana tena izy, ary mandefa fanairana rehefa mandeha tsy ara-dalàna ny fitaovana.
10 ESP32-C3 Wireless Adventure: Torolàlana feno amin'ny IoT

Serivisy mpanjifa aorian'ny varotra Ny fampiharana Smartphone dia afaka manome serivisy aorian'ny varotra ho an'ny vokatra, hamahana ireo olana mifandraika amin'ny tsy fahombiazan'ny fitaovana IoT sy ny asa ara-teknika ara-potoana.
Fampiasa asongadina Mba hanomezana fahafaham-po ny filan'ny mpampiasa samihafa, dia azo ampiana asa hafa, toy ny Shake, NFC, GPS, sns. Ny GPS dia afaka manampy amin'ny fametrahana ny fahamarinan'ny fiasan'ny sehatra araka ny toerana misy azy sy ny halavirana, raha ny fiasan'ny Shake kosa dia ahafahan'ny mpampiasa mametraka ny baiko hotanterahina amin'ny fitaovana na sehatra manokana amin'ny alalan'ny fanozongozonana.
2.1.3 Fampidirana ireo Sehatra Rahona IoT mahazatra
IoT cloud platform dia sehatra iray manontolo izay mampifandray ireo fiasa toy ny fitantanana fitaovana, fifandraisana fiarovana amin'ny angona ary fitantanana fampahafantarana. Araka ny vondrona kendren'izy ireo sy ny fidirany, ny sehatra rahona IoT dia azo zaraina ho sehatra rahona IoT ho an'ny daholobe (antsoina hoe "rahona ho an'ny daholobe") sy sehatra rahona IoT manokana (antsoina hoe "rahona manokana").
Ny rahona ho an'ny daholobe dia matetika manondro ireo sehatra rahona IoT zaraina ho an'ny orinasa na olon-tsotra, miasa sy karakarain'ny mpamatsy sehatra, ary zaraina amin'ny Internet. Afaka maimaim-poana izy io na mora vidy, ary manome tolotra manerana ny tambajotram-bahoaka misokatra, toy ny Alibaba Cloud, Tencent Cloud, Baidu Cloud, AWS IoT, Google IoT, sns. Amin'ny maha sehatra fanohanana azy, ny rahona ho an'ny daholobe dia afaka mampiditra ireo mpanome tolotra ambony sy mpampiasa farany ambany mba hamorona rojo sanda sy tontolo iainana vaovao.
Ny rahona tsy miankina dia natsangana ho an'ny fampiasana orinasa ihany, ka miantoka ny fanaraha-maso tsara indrindra amin'ny angona, ny fiarovana ary ny kalitaon'ny serivisy. Ny serivisy sy ny fotodrafitrasa dia tazonin'ny orinasa mitokana, ary natokana ho an'ny mpampiasa manokana ihany koa ny fitaovana sy rindrambaiko fanohanana. Ny orinasa dia afaka manamboatra serivisy rahona mba hanomezana ny filan'ny orinasany. Amin'izao fotoana izao, ny mpanamboatra trano hendry sasany dia efa nahazo sehatra rahona IoT manokana ary namolavola rindranasa an-trano marani-tsaina mifototra amin'izy ireo.
Ny rahona ho an'ny daholobe sy ny rahona manokana dia manana ny advanny manokanatages, izay hazavaina any aoriana.
Mba hahatongavana amin'ny fifandraisana amin'ny fifandraisana dia ilaina ny mamita farafaharatsiny ny fampandrosoana mipetaka amin'ny lafiny fitaovana, miaraka amin'ireo mpizara fandraharahana, sehatra rahona IoT, ary fampiharana finday. Manoloana tetikasa goavana toy izany, ny rahona ho an'ny daholobe dia matetika manome fitaovana fampivoarana rindrambaiko ho an'ny rindranasa amin'ny lafiny fitaovana sy finday mba hanafainganana ny dingana. Ny rahona ho an'ny daholobe sy tsy miankina dia samy manome tolotra ao anatin'izany ny fidirana amin'ny fitaovana, ny fitantanana ny fitaovana, ny aloky ny fitaovana ary ny fampandehanana sy fikojakojana.
Ny fidirana amin'ny fitaovana IoT rahona sehatra dia tsy maintsy manome interface tsara ho an'ny fidirana amin'ny fitaovana mampiasa protocols
Toko 2. Fampidirana sy fampiharana ny Tetikasa IoT 11

toy ny MQTT, CoAP, HTTPS, ary WebSocket, fa koa ny asan'ny fanamarinana fiarovana amin'ny fitaovana hanakanana ireo fitaovana sandoka sy tsy ara-dalàna, ary mampihena amin'ny fomba mahomby ny loza mety hitranga. Ny fanamarinana toy izany matetika dia manohana mekanika samihafa, ka rehefa mamokatra faobe ny fitaovana dia ilaina ny manendry mialoha ny taratasy fanamarinana ny fitaovana araka ny mekanika fanamarinana voafantina ary handoro azy ao anaty fitaovana.
Fitantanana fitaovana Ny fiasan'ny fitantanana fitaovana nomen'ny sehatra rahona IoT dia tsy vitan'ny hoe manampy ny mpanamboatra hanara-maso ny sata fampahavitrihana sy ny sata an-tserasera ny fitaovany amin'ny fotoana tena izy, fa mamela safidy toy ny manampy / manala fitaovana, maka, manampy / mamafa vondrona, fanavaozana firmware. , ary fitantanana version.
Ny sehatra rahona IoT aloky ny fitaovana dia afaka mamorona dikan-teny virtoaly maharitra (alokaloka) ho an'ny fitaovana tsirairay, ary azo ampifanarahina sy azo amin'ny fampiharana finday na fitaovana hafa amin'ny alàlan'ny protocole fampitana amin'ny Internet ny sata mifehy ny aloky ny fitaovana. Ny aloky ny fitaovana dia mitahiry ny sata voatatitra farany indrindra sy ny sata andrasana amin'ny fitaovana tsirairay, ary na dia ivelan'ny aterineto aza ilay fitaovana, dia mbola afaka mahazo ilay sata amin'ny fiantsoana API. Ny aloky ny fitaovana dia manome APIs mandeha foana, izay manamora ny fananganana fampiharana finday mifandray amin'ny fitaovana.
Fampandehanana sy fikojakojana Ny fiasan'ny O&M dia misy lafin-javatra telo: · Fampisehoana vaovao momba ny statistika momba ny fitaovana IoT sy ny fampahafantarana. · Ny fitantanana log dia ahafahana maka vaovao momba ny fitondran-tenan'ny fitaovana, ny fikorianan'ny hafatra miakatra/midina, ary ny votoatin'ny hafatra. · Ny debug amin'ny fitaovana dia manohana ny fandefasana baiko, ny fanavaozana ny fandrindrana, ary ny fanamarinana ny fifandraisana eo amin'ny sehatra rahona IoT sy ny hafatra amin'ny fitaovana.
2.2 Fanao: Tetikasa Fahazavana Smart
Aorian'ny fampidirana ara-teorika ao amin'ny toko tsirairay dia hahita fizarana fanao mifandraika amin'ny tetikasa Smart Light ianao hanampy anao hahazo traikefa an-tanana. Ny tetikasa dia mifototra amin'ny ESP32-C3 chip sy ESP RainMaker IoT Cloud Platform, ary mandrakotra ny fitaovana maody tsy misy tariby amin'ny vokatra maivana marani-tsaina, rindrambaiko napetraka ho an'ny fitaovana marani-tsaina miorina amin'ny ESP32C3, fampiharana finday, ary fifandraisana ESP RainMaker.
Source code Mba hianarana tsara kokoa sy hampivelatra traikefa, ny tetikasa ato amin'ity boky ity dia natao tamin'ny loharano misokatra. Azonao atao ny misintona ny kaody loharano avy amin'ny tahiry GitHub ao amin'ny https://github. com/espressif/book-esp32c3-iot-projects.
12 ESP32-C3 Wireless Adventure: Torolàlana feno amin'ny IoT

2.2.1 Rafitra tetikasa
Ny tetikasa Smart Light dia misy fizarana telo: i. Ny fitaovana maivana marani-tsaina miorina amin'ny ESP32-C3, tompon'andraikitra amin'ny fifandraisana amin'ny sehatra rahona IoT, ary mifehy ny fifandimbiasana, ny famirapiratana ary ny mari-pana amin'ny LED l.amp vakana. ii. Fampiharana finday (anisan'izany ny rindranasa tablette mandeha amin'ny Android sy iOS), tompon'andraikitra amin'ny fandrindrana ny tambazotran'ireo vokatra maivana marani-tsaina, ary koa ny fametraham-panontaniana sy ny fanaraha-maso ny satan'izy ireo.
iii. Sehatra rahona IoT miorina amin'ny ESP RainMaker. Ho fanatsorana dia heverintsika amin'ity boky ity ny sehatra rahona IoT sy ny mpizara orinasa. Ny antsipiriany momba ny ESP RainMaker dia homena ao amin'ny Toko 3.
Ny fifandraisana misy eo amin'ny rafitry ny tetikasa Smart Light sy ny rafitry ny IoT dia aseho amin'ny sary 2.1.
Sary 2.1. Ny rafitry ny tetikasa maivana marani-tsaina
2.2.2 Ny fiasan'ny tetikasa
Zaraina araka ny firafitra, toy izao manaraka izao ny fiasan’ny ampahany tsirairay. Fitaovana maivana maivana
· Fikirakirana tambajotra sy fifandraisana. · Fanaraha-maso LED PWM, toy ny switch, famirapiratana, mari-pana amin'ny loko, sns. · Fanafihana sy baotin'ny Flash azo antoka. · Fanavaozana firmware sy fitantanana dikan-teny.
Toko 2. Fampidirana sy fampiharana ny Tetikasa IoT 13

Fampiharana finday · Fikirakirana tambajotra sy famatorana fitaovana. · Fanaraha-maso ny vokatra maivana maivana, toy ny switch, ny famirapiratana, ny maripanan'ny loko, sns. · Fanaraha-maso eo an-toerana/lavitra. · Fisoratana anarana mpampiasa, fidirana, sns.
Sehatra rahona ESP RainMaker IoT · Mamela ny fidirana amin'ny fitaovana IoT. · Manome API fampandehanana fitaovana azo idirana amin'ny fampiharana finday. · Fanavaozana firmware sy fitantanana dikan-teny.
2.2.3 Fanomanana fitaovana
Raha liana amin'ny fampiharana ny tetikasa dia mila ireto fitaovana manaraka ireto ihany koa ianao: jiro marani-tsaina, finday avo lenta, router Wi-Fi, ary solosaina iray mahafeno ny fepetra fametrahana ny tontolo fampandrosoana. Jiro maranitra
Ny jiro marani-tsaina dia karazana takamoa vaovao, izay mitovy endrika amin'ny takamoa amin'ny ankapobeny. Ny jiro marani-tsaina dia ahitana ny famatsiana herinaratra fehezin'ny capacitor, module tsy misy tariby (miaraka amin'ny ESP32-C3 naorina), mpanara-maso LED ary matrix LED RGB. Rehefa mifandray amin'ny herinaratra, ny 15 V DC voltagNy fivoahana aorian'ny fisidinan'ny capacitor, ny fanitsiana ny diode ary ny fitsipika dia manome angovo ho an'ny mpanara-maso LED sy matrix LED. Ny mpanara-maso LED dia afaka mandefa mandeha ho azy ambaratonga avo sy ambany amin'ny elanelam-potoana sasany, mamadika ny RGB LED matrix eo anelanelan'ny mihidy (jiro) sy misokatra (jiro maty), mba hahafahany mamoaka cyan, mavo, maitso, volomparasy, manga, mena ary hazavana fotsy. Ny maody tsy misy tariby dia tompon'andraikitra amin'ny fampifandraisana amin'ny router Wi-Fi, mandray sy mitatitra ny satan'ny jiro marani-tsaina, ary mandefa baiko hifehy ny LED.
Sary 2.2. Jiro maranitra natao simulate
Tany am-piandohana fampandrosoana stage, azonao atao ny maka tahaka ny jiro marani-tsaina mampiasa ny ESP32-C3DevKitM-1 board mifandray amin'ny RGB LED lamp vakana (jereo ny sary 2.2). Fa ianao no tokony
14 ESP32-C3 Wireless Adventure: Torolàlana feno amin'ny IoT

Mariho fa tsy izany ihany no fomba hanangonana jiro marani-tsaina. Ny famolavolana fitaovana amin'ny tetikasa ato amin'ity boky ity dia tsy misy afa-tsy maody tsy misy tariby (miaraka amin'ny ESP32-C3 naorina), fa tsy famolavolana fitaovana maivana maivana feno. Ho fanampin'izany, ny ESP32-C3 dia mamokatra board development audio ESP32C3-Lyra ho an'ny fifehezana jiro miaraka amin'ny feo. Ny birao dia manana interface tsara ho an'ny mikrô sy mpandahateny ary afaka mifehy ny tsipika LED. Izy io dia azo ampiasaina amin'ny famolavolana fampielezam-peo faran'izay mora sy avo lenta ary tady maivana amin'ny gadona. Ny sary 2.3 dia mampiseho tabilao ESP32-C3Lyra mifandray amin'ny jiro LED 40.
Sary 2.3. ESP32-C3-Lyra mifandraika amin'ny jiro LED 40
Smartphones (Android/iOS) Ny tetikasa Smart Light dia misy ny fampivoarana fampiharana finday ho an'ny fametrahana sy fanaraha-maso ireo vokatra maivana marani-tsaina.
Ny router Wi-Fi Ny router Wi-Fi dia mamadika ny famantarana ny tambajotra tariby sy ny famantarana ny tambajotra finday ho famantarana ny tambajotra tsy misy tariby, ho an'ny solosaina, finday avo lenta, takelaka ary fitaovana an-tariby hafa mba hifandraisana amin'ny tambajotra. Ho an'ny exampAmin'ny ankapobeny, ny broadband ao an-trano dia mila mifandray amin'ny router Wi-Fi mba hahazoana tambajotra tsy misy tariby amin'ny fitaovana Wi-Fi. Ny fenitry ny protocol mahazatra tohanan'ny router Wi-Fi dia IEEE 802.11n, miaraka amin'ny salan'isa TxRate 300 Mbps, na 600 Mbps raha ambony indrindra. Izy ireo dia mifanaraka amin'ny IEEE 802.11b sy IEEE 802.11g. Ny chip ESP32-C3 an'i Espressif dia manohana ny IEEE 802.11b/g/n, ka afaka misafidy ny router Wi-Fi tokana (2.4 GHz) na roa-band (2.4 GHz sy 5 GHz) ianao.
Ny tontolon'ny fampandrosoana amin'ny solosaina (Linux/macOS/Windows) dia hapetraka ao amin'ny Toko 4. Toko 2. Fampidirana sy fampiharana ny Tetikasa IoT 15

2.2.4 Fomba fampandrosoana
Sary 2.4. Dingana amin'ny fampandrosoana ny tetikasa Smart Light
Famolavolana Hardware Ny famolavolana hardware ny fitaovana IoT dia tena ilaina amin'ny tetikasa IoT. Tetik'asa mazava tsara feno dia natao hamokarana alamp miasa eo ambany famatsiana mains. Ny mpanamboatra samihafa dia mamokatra lamps amin'ny fomba samy hafa sy ny karazana mpamily, fa ny Wireless Modules dia matetika mitovy asa. Mba hanatsorana ny fizotry ny fampandrosoana ny tetikasa Smart Ligh, ity boky ity dia tsy misy afa-tsy ny famolavolana fitaovana sy ny fampivoarana rindrambaiko amin'ny maody tsy misy tariby.
Fametrahana sehatra rahona IoT Raha hampiasa sehatra rahona IoT dia mila manamboatra tetikasa amin'ny backend ianao, toy ny famoronana vokatra, famoronana fitaovana, fametrahana ny fananana fitaovana, sns.
Fampivoarana rindrambaiko voarakitra ho an'ny fitaovana IoT Ampiharo ny asa andrasana miaraka amin'ny ESP-IDF, SDK amin'ny lafiny fitaovana an'i Espressif, ao anatin'izany ny fampifandraisana amin'ny sehatra rahona IoT, ny fampivelarana mpamily LED, ary ny fanavaozana ny firmware.
Fampivoarana fampiharana finday Mamorona fampiharana finday ho an'ny rafitra Android sy iOS mba hahatanteraka ny fisoratana anarana sy ny fidirana amin'ny mpampiasa, ny fanaraha-maso ny fitaovana ary ny fiasa hafa.
Fanatsarana ny fitaovana IoT Rehefa vita ny fampivoarana fototra ny fiasan'ny fitaovana IoT dia mety hitodika amin'ny asa fanatsarana ianao, toy ny fanatsarana ny herinaratra.
Fitsapana famokarana faobe Manaova fitsapana famokarana faobe araka ny fenitra mifandraika, toy ny fitsapana fiasan'ny fitaovana, fitsapana fahanterana, fitsapana RF, sns.
Na dia eo aza ny dingana voatanisa etsy ambony, ny tetikasa Smart Light dia tsy voatery iharan'ny fomba fiasa toy izany satria ny asa samihafa dia azo atao amin'ny fotoana iray ihany. Ho an'ny example, logiciel embedded sy apps smartphone dia azo amboarina mifanandrify. Mety mila averina ihany koa ny dingana sasany, toy ny fanatsarana ny fitaovana IoT sy ny fitiliana famokarana faobe.
16 ESP32-C3 Wireless Adventure: Torolàlana feno amin'ny IoT

2.3 Famintinana
Ao amin'ity toko ity, nohazavainay voalohany ny singa fototra sy ny maodely miasa amin'ny tetikasa IoT, avy eo dia nampiditra ny raharaha Smart Light ho an'ny fampiharana, manondro ny rafitra, ny asany, ny fiomanana amin'ny fitaovana ary ny fizotran'ny fampandrosoana. Ny mpamaky dia afaka maka hevitra avy amin'ny fanao ary lasa matoky tena amin'ny fanatanterahana ireo tetikasa IoT miaraka amin'ny fahadisoana kely indrindra amin'ny ho avy.
Toko 2. Fampidirana sy fampiharana ny Tetikasa IoT 17

18 ESP32-C3 Wireless Adventure: Torolàlana feno amin'ny IoT

Toko 3

Sava lalana

ny

ESP

RainMaker

Ny Internet of Things (IoT) dia manolotra fahafahana tsy manam-petra hanovana ny fomba fiainan'ny olona, ​​​​na izany aza dia feno fanamby ny fampandrosoana ny injeniera IoT. Miaraka amin'ny rahona ho an'ny daholobe, ny mpanamboatra terminal dia afaka mampihatra ny fiasan'ny vokatra amin'ny alàlan'ireto vahaolana manaraka ireto:
Mifototra amin'ny sehatra rahona mpanome vahaolana Amin'izany fomba izany, ny mpanamboatra terminal ihany no mila mamolavola ny fitaovan'ny vokatra, avy eo mampifandray ny fitaovana amin'ny rahona amin'ny alàlan'ny môdely fifandraisana nomena, ary manamboatra ny fiasan'ny vokatra manaraka ny torolàlana. Fomba mahomby io satria manafoana ny filàna amin'ny fampivoarana sy fampandehanana sy fikojakojana (O&M) amin'ny lafiny server sy ny fampiharana. Izy io dia mamela ny mpanamboatra terminal hifantoka amin'ny famolavolana fitaovana nefa tsy mila mandinika ny fampiharana rahona. Na izany aza, ny vahaolana toy izany (ohatra, firmware fitaovana sy App) dia matetika tsy loharano misokatra, noho izany dia hoferan'ny sehatra rahon'ny mpamatsy izay tsy azo amboarina ny fiasan'ny vokatra. Mandritra izany fotoana izany, ny angon-drakitra mpampiasa sy ny fitaovana dia an'ny sehatra rahona ihany koa.
Miorina amin'ny vokatra rahona Amin'ity vahaolana ity, aorian'ny famitana ny famolavolana fitaovana, ny mpanamboatra terminal dia tsy mila mampihatra ny asan'ny rahona amin'ny fampiasana vokatra rahona iray na maromaro nomen'ny rahona ho an'ny daholobe, fa mila mampifandray ny fitaovana amin'ny rahona ihany koa. Ho an'ny example, hifandray amin'ny Amazon Web Services (AWS), ny mpanamboatra terminal dia mila mampiasa vokatra AWS toy ny Amazon API Gateway, AWS IoT Core, ary AWS Lambda mba ahafahana miditra amin'ny fitaovana, fanaraha-maso lavitra, fitahirizana angon-drakitra, fitantanana mpampiasa ary fiasa fototra hafa. Tsy vitan'ny hoe mangataka amin'ireo mpanamboatra terminal mba hampiasa mora foana sy hanamboatra ny vokatra rahona miaraka amin'ny fahatakarana lalina sy traikefa manankarena izy ireo, fa mitaky azy ireo koa handinika ny vidin'ny fanamboarana sy fikojakojana ho an'ny voalohany sy aoriana.tagIzany dia miteraka fanamby lehibe amin'ny angovo sy loharanon'ny orinasa.
Raha ampitahaina amin'ny rahona ho an'ny daholobe, ny rahona manokana dia matetika natsangana ho an'ny tetikasa sy vokatra manokana. Ny mpamorona rahona tsy miankina dia omena fahalalahana ambony indrindra amin'ny famolavolana protocol sy ny fampiharana ny lojika fandraharahana. Ny mpanamboatra terminal dia afaka manamboatra vokatra sy tetik'asa amin'ny sitrapony, ary mampiditra mora foana sy manome hery ny angona mpampiasa. Fampifangaroana ny fiarovana avo, ny scalability ary ny fahatokisana ny rahona ho an'ny daholobe miaraka amin'ny advantages an'ny rahona manokana, namoaka ESP ny Espressif
19

RainMaker, vahaolana rahona tsy miankina lalina mifototra amin'ny rahona Amazon. Ny mpampiasa dia afaka mametraka ESP RainMaker ary manangana rahona manokana miaraka amin'ny kaonty AWS fotsiny.
3.1 Inona no atao hoe ESP RainMaker?
ESP RainMaker dia sehatra AIoT feno namboarina miaraka amin'ny vokatra AWS matotra maro. Izy io dia manome serivisy isan-karazany ilaina amin'ny famokarana faobe toy ny fidirana amin'ny rahona fitaovana, ny fanavaozana ny fitaovana, ny fitantanana backend, ny fidirana amin'ny antoko fahatelo, ny fampidirana feo ary ny fitantanana mpampiasa. Amin'ny fampiasana ny Serverless Application Repository (SAR) nomen'ny AWS, ireo mpanamboatra terminal dia afaka mametraka haingana ny ESP RainMaker amin'ny kaontiny AWS, izay mandaitra sy mora ampiasaina. Ny SAR ampiasain'ny ESP RainMaker no tantanin'ny Espressif sy nokarakaraina dia manampy ny mpamorona hampihena ny vidin'ny fikojakojana ny rahona ary hanafaingana ny fivoaran'ny vokatra AIoT, ka hananganana vahaolana AIoT azo antoka sy azo antoka ary azo zahana. Ny sary 3.1 dia mampiseho ny maritrano an'ny ESP RainMaker.
Sary 3.1. Architecture an'ny ESP RainMaker
Maimaim-poana ny mpizara ESP RainMaker an'ny ESPressif ho an'ireo mpankafy ESP, mpanamboatra ary mpanabe rehetra amin'ny fanombanana ny vahaolana. Afaka miditra amin'ny kaonty Apple, Google, na GitHub ny mpamorona, ary manangana haingana ny prototypes fampiharana IoT azy manokana. Ny mpizara ho an'ny daholobe dia mampiditra an'i Alexa sy Google Home, ary manome serivisy fanaraha-maso feo, izay tohanan'ny Alexa Skill sy Google Actions. Ny fiasan'ny fanekena semantika dia ampiasain'ny antoko fahatelo ihany koa. Ny fitaovana RainMaker IoT dia mamaly hetsika manokana ihany. Raha mila lisitra feno amin'ny baikon'ny feo tohanana dia jereo azafady ny sehatra antoko fahatelo. Ho fanampin'izay, ny Espressif dia manolotra App RainMaker ho an'ny daholobe ho an'ny mpampiasa hifehy ny vokatra amin'ny alàlan'ny finday. 20 ESP32-C3 Wireless Adventure: Torolàlana feno amin'ny IoT

3.2 Ny fampiharana ny ESP RainMaker
Araka ny aseho ao amin'ny sary 3.2, ny ESP RainMaker dia misy fizarana efatra: · Serivisy fitakiana, ahafahan'ny fitaovana RainMaker mahazo mari-pankasitrahana. · RainMaker Cloud (fantatra ihany koa amin'ny hoe rahona backend), manome tolotra toy ny fanivanana hafatra, fitantanana ny mpampiasa, fitahirizana angon-drakitra, ary fampidirana antoko fahatelo. · RainMaker Agent, ahafahan'ny fitaovana RainMaker mifandray amin'ny RainMaker Cloud. · RainMaker Client (RainMaker App na CLI scripts), ho an'ny famatsiana, famoronana mpampiasa, fikambanana sy fanaraha-maso ny fitaovana, sns.
Sary 3.2. Ny rafitry ny ESP RainMaker
Ny ESP RainMaker dia manome fitaovana feno ho an'ny fampandrosoana ny vokatra sy ny famokarana faobe, ao anatin'izany ny: RainMaker SDK
Ny RainMaker SDK dia mifototra amin'ny ESP-IDF ary manome ny kaody loharanon'ny mpandraharaha amin'ny lafiny fitaovana sy ny C API mifandraika amin'ny fampivoarana firmware. Ny mpamorona ihany no mila manoratra ny lojika fampiharana ary mamela ny ambiny amin'ny rafitra RainMaker. Raha mila fanazavana fanampiny momba ny C API, tsidiho azafady ny https://bookc3.espressif.com/rm/c-api-reference. RainMaker App Ny dikan-teny ho an'ny besinimaro an'ny RainMaker App dia ahafahan'ny mpamorona mamita ny famatsiana fitaovana, ary mifehy sy manontany ny satan'ny fitaovana (oh: vokatra jiro marani-tsaina). Hita ao amin'ny fivarotana fampiharana iOS sy Android izy io. Raha mila fanazavana fanampiny dia jereo ny Toko 10. REST APIs REST APIs dia manampy ny mpampiasa hanangana ny rindranasany manokana mitovy amin'ny RainMaker App. Raha mila fanazavana fanampiny, tsidiho azafady https://swaggerapis.rainmaker.espressif.com/.
Toko 3. Fampidirana ny ESP RainMaker 21

Python APIs CLI mifototra amin'ny Python, izay miaraka amin'ny RainMaker SDK, dia omena mba hampiharana ny fiasa rehetra mitovy amin'ny endri-javatra finday. Raha mila fanazavana fanampiny momba ny API Python, tsidiho azafady https://bookc3.espressif.com/rm/python-api-reference.
Admin CLI Admin CLI, miaraka amin'ny fidirana ambony kokoa, dia omena amin'ny fametrahana manokana ny ESP RainMaker mba hamoronana taratasy fanamarinana fitaovana amin'ny ampahany.
3.2.1 Serivisy fitakiana
Ny fifandraisana rehetra eo amin'ny fitaovana RainMaker sy ny backend rahona dia atao amin'ny alàlan'ny MQTT+TLS. Ao amin'ny tontolon'ny ESP RainMaker, ny "Claiming" dia ny dingana izay ahazoan'ny fitaovana mari-pankasitrahana avy amin'ny serivisy fitakiana mba hifandraisana amin'ny backend rahona. Mariho fa ny serivisy fitakiana dia mihatra amin'ny serivisy RainMaker ho an'ny daholobe ihany, fa ho an'ny fametrahana manokana, ny mari-pamantarana fitaovana dia mila amboarina betsaka amin'ny alàlan'ny Admin CLI. Ny ESP RainMaker dia manohana karazana serivisy fitakiana telo: Fitakiana tena
Ny fitaovana mihitsy no maka ireo mari-pankasitrahana amin'ny alalan'ny fanalahidy miafina efa nomanina mialoha ao amin'ny eFuse rehefa avy mifandray amin'ny Internet. Host Driven Claiming Ny mari-pankasitrahana dia azo avy amin'ny mpampiantrano fampandrosoana miaraka amin'ny kaonty RainMaker. Fanampiana fitakiana Ny mari-pankasitrahana dia azo amin'ny alàlan'ny fampiharana smartphone mandritra ny famatsiana.
3.2.2 RainMaker Agent
Sary 3.3. Ny rafitry ny RainMaker SDK Ny asa voalohany an'ny RainMaker Agent dia ny manome fifandraisana sy manampy ny sosona fampiharana amin'ny fanodinana ny angona rahona uplink/downlink. Namboarina tamin'ny alàlan'ny RainMaker SDK 22 ESP32-C3 Wireless Adventure: Torolalana feno ho an'ny IoT

ary novolavolaina mifototra amin'ny rafitra ESP-IDF voaporofo, mampiasa singa ESP-IDF toy ny RTOS, NVS, ary MQTT. Ny sary 3.3 dia mampiseho ny firafitry ny RainMaker SDK.
Ny RainMaker SDK dia misy endri-javatra roa lehibe.
fifandraisana
i. Miara-miasa amin'ny serivisy fitakiana hahazoana mari-pankasitrahana fitaovana.
ii. Mampifandray amin'ny backend rahona amin'ny alàlan'ny protocol MQTT azo antoka mba hanomezana fifandraisana lavitra sy hampiharana ny fanaraha-maso lavitra, ny tatitra momba ny hafatra, ny fitantanana ny mpampiasa, ny fitantanana ny fitaovana, sns. Mampiasa ny singa MQTT ao amin'ny ESP-IDF amin'ny alàlan'ny default izy ary manome sosona abstraction mba hifandraisana amin'ny hafa protocol stacks.
iii. Manome singa famatsiana wifi ho an'ny fifandraisana Wi-Fi sy famatsiana, esp https ota singa ho an'ny fanavaozana OTA, ary esp singa ctrl eo an-toerana ho an'ny fitadiavana fitaovana eo an-toerana sy ny fifandraisana. Ireo tanjona rehetra ireo dia azo tratrarina amin'ny alàlan'ny fanamafisana tsotra.
Fanodinana angona
i. Mitahiry ny mari-pamantarana fitaovana navoakan'ny Service Claiming sy ny angon-drakitra ilaina rehefa mampandeha ny RainMaker, amin'ny alàlan'ny default amin'ny fampiasana ny interface omen'ny singa flash nvs, ary manome API ho an'ny mpamorona ho an'ny fampiasana mivantana.
ii. Mampiasa ny mekanika antso an-tariby mba hanodinana ny angon-drahona uplink/downlink ary manala ho azy ny angon-drakitra mankany amin'ny sosona fampiharana mba ho mora amin'ny mpamorona. Ho an'ny exampAry, ny RainMaker SDK dia manome interface tsara amin'ny fametrahana angon-drakitra TSL (Thing Specification Language), izay takiana hamaritana ny maodely TSL hamaritana ny fitaovana IoT sy hampiharana ny asa toy ny fotoana, fanisana ary fifehezana feo. Ho an'ny endri-javatra ifanakalozan-kevitra fototra toy ny fotoana, ny RainMaker SDK dia manome vahaolana tsy misy fampandrosoana izay azo alefa tsotra izao rehefa ilaina izany. Avy eo, ny RainMaker Agent dia handamina mivantana ny angon-drakitra, handefa izany amin'ny rahona amin'ny alàlan'ny lohahevitra MQTT mifandraika, ary hamerina ny fiovan'ny angona ao amin'ny backend rahona amin'ny alàlan'ny mekanika callback.
3.2.3 Cloud Backend
Ny backend rahona dia natsangana tamin'ny AWS Serverless Computing ary tratra tamin'ny alàlan'ny AWS Cognito (rafitra fitantanana ny maha-izy azy), Amazon API Gateway, AWS Lambda (serivisy informatika tsy misy serivisy), Amazon DynamoDB (database NoSQL), AWS IoT Core (IoT access core izay manome fidirana MQTT ary sivana fitsipika), Amazon Simple Email Service (SES serivisy mailaka tsotra), Amazon CloudFront (tambajotra fandefasana haingana), Amazon Simple Queue Service (SQS message queuing), ary Amazon S3 (serivisy fitahirizana siny). Izy io dia mikendry ny hanatsara ny scalability sy ny fiarovana. Miaraka amin'ny ESP RainMaker, afaka mitantana fitaovana tsy mila manoratra kaody ao anaty rahona ny mpamorona. Ampitaina amin'ny mangarahara ny hafatra notaterin'ny fitaovana
Toko 3. Fampidirana ny ESP RainMaker 23

mpanjifa fampiharana na serivisy an'ny antoko fahatelo hafa. Ny tabilao 3.1 dia mampiseho ny vokatra sy ny asa rahona AWS ampiasaina ao amin'ny backend rahona, miaraka amin'ny vokatra sy endri-javatra maro kokoa eo am-pamolavolana.
Tabilao 3.1. Vokatra sy fiasa rahona AWS ampiasain'ny backend rahona

AWS Cloud Product ampiasain'ny RainMaker

asa

AWS Cognito

Mitantana ny mombamomba ny mpampiasa sy manohana ny fidirana amin'ny antoko fahatelo

AWS Lambda

Fampiharana ny lojika fandraharahana fototra amin'ny backend rahona

Amazon Timestream Mitahiry angona andiam-potoana

Amazon DynamoDB Mitahiry ny mombamomba ny mpanjifa manokana

AWS IoT Core

Manohana ny fifandraisana MQTT

Amazon SES

Manome serivisy fandefasana mailaka

Amazon CloudFront Manafaingana ny fitantanana ny backend webfidirana amin'ny tranokala

Amazon SQS

Mandefa hafatra avy amin'ny AWS IoT Core

3.2.4 Mpanjifa RainMaker
Ny mpanjifa RainMaker, toy ny App sy CLI, dia mifandray amin'ny rahona backend amin'ny alàlan'ny REST API. Ny fampahalalana amin'ny antsipiriany sy ny torolàlana momba ny REST API dia azo jerena ao amin'ny antontan-taratasy Swagger nomen'ny Espressif. Ny mpanjifan'ny fampiharana finday an'ny RainMaker dia misy amin'ny rafitra iOS sy Android. Izy io dia mamela ny famatsiana, ny fanaraha-maso ary ny fizarana fitaovana, ary koa ny famoronana sy fampandehanana ny asa fanisana ary ny fifandraisana amin'ny sehatra an'ny antoko fahatelo. Afaka mameno ho azy ny UI sy ny kisary araka ny fanamafisam-peo notaterin'ireo fitaovana ary mampiseho tanteraka ny fitaovana TSL.
Ho an'ny example, raha misy jiro marani-tsaina naorina amin'ny RainMaker SDK-nomen'ny examples, ny kisary sy ny UI an'ny jiro takamoa dia ho entina ho azy rehefa vita ny famatsiana. Ny mpampiasa dia afaka manova ny loko sy ny famirapiratan'ny hazavana amin'ny alàlan'ny interface ary mahazo fanaraha-maso avy amin'ny antoko fahatelo amin'ny fampifandraisana ny Alexa Smart Home Skill na Google Smart Home Actions amin'ny kaontiny ESP RainMaker. Ny sary 3.4 dia mampiseho ny kisary sy ny UI exampny jiron'ny takamoa tsirairay ao amin'ny Alexa, Google Home, ary ESP RainMaker App.

24 ESP32-C3 Wireless Adventure: Torolàlana feno amin'ny IoT

(a) Eksampny - Alexa

(b) Eksampny - Google Home

(c) Eksample – ESP RainMaker
Sary 3.4. Eksampny kisary sy ny UI an'ny jiro takamoa amin'ny Alexa, Google Home ary ESP RainMaker App
3.3 Fanazaran-tena: Hevi-dehibe amin'ny fampandrosoana miaraka amin'ny ESP RainMaker
Rehefa vita ny sarin'ny mpamily fitaovana, dia mety manomboka mamorona modely TSL ny mpamorona ary manodina ny angona rohy midina amin'ny alàlan'ny API nomen'ny RainMaker SDK, ary mamela ny serivisy fototra ESP RainMaker mifototra amin'ny famaritana ny vokatra sy ny fepetra takiana.
Toko 3. Fampidirana ny ESP RainMaker 25

Ny fizarana 9.4 amin'ity boky ity dia hanazava ny fampiharana ny jiro marani-tsaina LED ao amin'ny RainMaker. Mandritra ny debugging, afaka mampiasa ny fitaovana CLI ao amin'ny RainMaker SDK ny mpamorona mba hifandraisana amin'ny hazavana marani-tsaina (na miantso REST API avy amin'ny Swagger).
Ny toko faha-10 dia hamelabelatra ny fampiasana ny REST API amin'ny famolavolana rindranasa finday. Ny fanavaozana OTA amin'ny jiro marani-tsaina LED dia horesahina ao amin'ny Toko 11. Raha namela ny fanaraha-maso lavitra ny ESP Insights ny mpamorona, dia hampiseho ny angon-drakitra ESP Insights ny backend fitantanana ESP RainMaker. Haseho ao amin’ny Toko faha-15 ny tsipiriany.
ESP RainMaker dia manohana ny fametrahana manokana, izay tsy mitovy amin'ny mpizara RainMaker ho an'ny daholobe amin'ireto fomba manaraka ireto:
Serivisy fitakiana Mba hamoronana mari-pankasitrahana amin'ny fametrahana manokana, dia ilaina ny mampiasa ny RainMaker Admin CLI fa tsy mitaky. Miaraka amin'ny mpizara ho an'ny daholobe, ny mpamorona dia tsy maintsy omena zon'ny admin hampihatra ny fanavaozana firmware, saingy tsy ilaina izany amin'ny fametrahana ara-barotra. Noho izany, tsy misy serivisy fanamarinana misaraka azo omena amin'ny fitakiana tena, na zon'ny admin ho an'ny fitakiana entin'ny mpampiantrano na fanampiana.
Fampiharana an-telefaona Amin'ny fametrahana manokana dia mila amboarina sy atambatra misaraka ireo rindranasa mba hahazoana antoka fa tsy afaka mifampiraharaha ny rafitra kaonty.
Fidirana amin'ny antoko faha-3 sy fampidirana feo Ny mpamorona dia tsy maintsy manamboatra misaraka amin'ny alàlan'ny kaonty Google sy Apple Developer mba ahafahana miditra amin'ny antoko fahatelo, ary koa ny fampidirana Alexa Skill sy Google Voice Assistant.
SOSO-KEVITRA Raha mila antsipiriany momba ny fametrahana rahona, tsidiho azafady https://customer.rainmaker.espressif. com. Raha ny momba ny firmware, ny fifindra-monina avy amin'ny mpizara ho an'ny daholobe mankany amin'ny mpizara tsy miankina dia mitaky fanoloana ny mari-pankasitrahana fitaovana, izay manatsara ny fahombiazan'ny fifindra-monina ary mampihena ny vidin'ny fifindra-monina sy ny debugging faharoa.
3.4 Toetran'ny ESP RainMaker
Ny endri-javatra ESP RainMaker dia mikendry indrindra amin'ny lafiny telo - fitantanana mpampiasa, mpampiasa farany ary admin. Ny endri-javatra rehetra dia tohanana amin'ny mpizara ho an'ny daholobe sy tsy miankina raha tsy misy filazana hafa.
3.4.1 Fitantanana ny mpampiasa
Ny endri-pitantanana ny mpampiasa dia ahafahan'ny mpampiasa misoratra anarana, miditra, manova tenimiafina, maka tenimiafina, sns.
26 ESP32-C3 Wireless Adventure: Torolàlana feno amin'ny IoT

Misoratra anarana ary midira Ny fomba fisoratana anarana sy fidirana tohanan'ny RainMaker dia ahitana: · Id mailaka + Password · Laharan-telefaona + Password · kaonty Google · kaonty Apple · kaonty GitHub (server ho an'ny daholobe ihany) · kaonty Amazon (server privé ihany)
FANAMARIHANA Misoratra anarana amin'ny alàlan'ny Google/Amazon mizara ny adiresy mailaka an'ny mpampiasa amin'ny RainMaker. Misoratra anarana amin'ny fampiasana Apple mizara adiresy dummy izay omen'i Apple ho an'ny mpampiasa manokana ho an'ny serivisy RainMaker. Ny kaonty RainMaker dia ho noforonina ho azy ho an'ireo mpampiasa miditra amin'ny kaonty Google, Apple, na Amazon voalohany.
Ovay ny tenimiafina Tsy manan-kery afa-tsy amin'ny adiresy mailaka / nomeraon-telefaona mifototra amin'ny fidirana. Ny fivoriana mavitrika hafa rehetra dia ho tafavoaka rehefa niova ny tenimiafina. Araka ny fitondran-tenan'ny AWS Cognito dia afaka mijanona ho mavitrika hatramin'ny adiny 1 ny fotoam-pivoriana mivoaka.
Raiso ny tenimiafina manan-kery ho an'ny adiresy mailaka / nomeraon-telefaona mifototra amin'ny fidirana.
3.4.2 Toetran'ny mpampiasa farany
Ny endri-javatra misokatra ho an'ny mpampiasa farany dia ahitana ny fanaraha-maso sy fanaraha-maso eo an-toerana sy lavitra, fandaharam-potoana, fanangonana fitaovana, fizarana fitaovana, fampandrenesana fanosehana, ary fampidirana antoko fahatelo.
Fanaraha-maso lavitra sy fanaraha-maso · Fanofanana fanontaniana, sandan'ny mari-pamantarana ary sata fifandraisana ho an'ny fitaovana iray na rehetra. · Mametraha masontsivana ho an'ny fitaovana tokana na maromaro.
Fanaraha-maso eo an-toerana sy fanaraha-maso Ny finday sy ny fitaovana dia mila mifandray amin'ny tambajotra iray ihany ho an'ny fanaraha-maso eo an-toerana.
Fandaharam-potoana · Ny mpampiasa dia mametraka mialoha ny hetsika sasany amin'ny fotoana voafaritra. · Tsy mila fifandraisana Internet amin'ny fitaovana mandritra ny fanatanterahana ny fandaharam-potoana. · Indray mandeha na miverimberina (amin'ny andro voafaritra) ho an'ny fitaovana tokana na maromaro.
Fivondronana fitaovana Manohana ny vondrona abstract misy ambaratonga maromaro Azo ampiasaina hamoronana firafitry ny Efi-trano ny metadata vondrona.
Toko 3. Fampidirana ny ESP RainMaker 27

Fizarana fitaovana Azo zaraina amin'ny mpampiasa iray na maromaro ny fitaovana iray na maromaro.
Fampandrenesana fanerena Ny mpampiasa farany dia hahazo fampandrenesana fanerena ho an'ny hetsika toy ny · Fitaovana vaovao nampiana/ nesorina · Fitaovana mifandray amin'ny rahona · Ny fitaovana tapaka amin'ny rahona · Ny fangatahana fifampizaràna fitaovana noforonina / nekena / nolavina · Hafatra fanairana notaterin'ny fitaovana
Fampidiranan'ny antoko fahatelo Alexa sy Google Voice Assistant dia tohanana hifehy ny fitaovana RainMaker, ao anatin'izany ny jiro, switch, socket, mpankafy ary sensor maripana.
3.4.3 Toetran'ny Admin
Ny endri-pandraharahana dia ahafahan'ny mpitantana mampihatra ny fisoratana anarana amin'ny fitaovana, ny fanangonana fitaovana, ary ny fanavaozana OTA, ary ny to view antontan'isa sy angona ESP Insights.
Fisoratana anarana fitaovana Mamorona taratasy fanamarinana fitaovana ary misoratra anarana amin'ny Admin CLI (server privé ihany).
Vondrona fitaovana Mamorona vondrona saro-takarina na voarafitra mifototra amin'ny fampahalalana momba ny fitaovana (mpizara manokana ihany).
Over-the-Air (OTA) upgrades Mampiakara firmware mifototra amin'ny dikan-teny sy modely, amin'ny fitaovana iray na maromaro na vondrona Manara-maso, manafoana, na mitahiry asa OTA.
View antontan'isa ViewNy antontan'isa azo atao dia ahitana: · Fisoratana anarana amin'ny fitaovana (certificat nosoratan'ny admin) · Fampahavitrihana fitaovana (fitaovana mifandray voalohany) · Kaonty mpampiasa · Fikambanan'ny mpampiasa-fitaovana
View Takelaka data ESP Insights ViewNy angon-drakitra ESP Insights dia ahitana: · Hadisoana, fampitandremana, ary diary manokana · Tatitry ny fianjerana sy famakafakana · Antony famerenana indray · Famaritana toy ny fampiasana fitadidiana, RSSI, sns. · Metrika manokana sy miovaova
28 ESP32-C3 Wireless Adventure: Torolàlana feno amin'ny IoT

3.5 Famintinana
Ao amin'ity toko ity, nampiditra fahasamihafana lehibe eo amin'ny fametrahana RainMaker ho an'ny daholobe sy ny fametrahana manokana. Ny vahaolana ESP RainMaker tsy miankina navoakan'i Espressif dia tena azo ianteherana sy azo itarina. Ny chips andiany ESP32 rehetra dia nifandray sy nampifanarahana tamin'ny AWS, izay mampihena be ny vidiny. Ny mpamorona dia afaka mifantoka amin'ny fanamarinana prototype nefa tsy mila mianatra momba ny vokatra rahona AWS. Nohazavainay ihany koa ny fampiharana sy ny endri-javatra amin'ny ESP RainMaker, ary ireo hevi-dehibe sasany amin'ny fampandrosoana amin'ny fampiasana ny sehatra.
Scan mba hisintona ESP RainMaker ho an'ny Android Scan raha hisintona ESP RainMaker ho an'ny iOS
Toko 3. Fampidirana ny ESP RainMaker 29

30 ESP32-C3 Wireless Adventure: Torolàlana feno amin'ny IoT

Toko Fametrahana 4 tontolo iainana fampandrosoana
Ity toko ity dia mifantoka amin'ny ESP-IDF, ny rafi-pampandrosoana rindrambaiko ofisialy ho an'ny ESP32-C3. Hazavainay ny fomba fametrahana ny tontolo iainana amin'ny rafitra miasa isan-karazany, ary hampiditra ny rafitry ny tetikasa sy ny rafitra fananganana ESP-IDF, ary koa ny fampiasana fitaovana fampandrosoana mifandraika amin'izany. Avy eo dia hasehontsika ny fizotran'ny fanangonana sy fampandehanana ny example tetikasa, raha manolotra fanazavana amin'ny antsipiriany momba ny log de output isaky ny stage.
4.1 Mihoatra ny ESP-IDFview
ESP-IDF (Espressif IoT Development Framework) dia rafitra fampivoarana IoT tokana nomen'ny Espressif Technology. Mampiasa C/C ++ ho fiteny fampivoarana lehibe izy io ary manohana ny famoriam-bola eo ambanin'ny rafitra fiasa mahazatra toy ny Linux, Mac, ary Windows. Ny exampNy programa ao anatin'ity boky ity dia novolavolaina tamin'ny fampiasana ESP-IDF, izay manolotra ireto endri-javatra manaraka ireto: · SoC system-level drivers. ESP-IDF dia misy mpamily ho an'ny ESP32, ESP32-S2, ESP32-C3,
ary chips hafa. Ireo mpamily ireo dia ahitana tranomboky ambany (LL) periferika, trano famakiam-boky abstraction layer (HAL) hardware, fanohanana RTOS ary logiciel mpamily ambony sosona, sns. · Ireo singa tena ilaina. Ny ESP-IDF dia mampiditra singa fototra ilaina amin'ny fampandrosoana IoT. Tafiditra ao anatin'izany ny tamba-jotra protocole maro toy ny HTTP sy MQTT, rafi-pitantanana herinaratra miaraka amin'ny fanovana matetika matetika, ary ireo endri-javatra toa ny Flash Encryption sy Secure Boot, sns. · Fitaovana fampandrosoana sy famokarana. Ny ESP-IDF dia manome fitaovana fampiasa mahazatra amin'ny fananganana, tselatra ary ny debugging mandritra ny fampandrosoana sy ny famokarana faobe (jereo ny sary 4.1), toy ny rafitra fananganana miorina amin'ny CMake, ny rojo fitaovana fanangonana cross-compilation mifototra amin'ny GCC, ary ny JTAG fitaovana fanadiovana mifototra amin'ny OpenOCD, sns. Tsara ny manamarika fa ny kaody ESP-IDF dia mifikitra indrindra amin'ny lisansa loharano misokatra Apache 2.0. Ny mpampiasa dia afaka mamorona rindrambaiko manokana na ara-barotra tsy misy famerana raha manaraka ny fepetran'ny fahazoan-dàlana misokatra. Fanampin'izany, omena maimaim-poana ny fahazoan-dàlana patanty maharitra ireo mpampiasa, tsy manana adidy hanokatra loharano izay fanovana natao tamin'ny kaody loharano.
31

Sary 4.1.

Fanorenana, tselatra ary debug-

fitaovana ho an'ny fampandrosoana sy ny famokarana faobe

4.1.1 Dikan-teny ESP-IDF
Ny kaody ESP-IDF dia apetraka ao amin'ny GitHub ho tetikasa open-source. Amin'izao fotoana izao, misy dikan-teny telo lehibe misy: v3, v4, ary v5. Ny dikan-teny lehibe tsirairay dia matetika misy fanodikodinana isan-karazany, toy ny v4.2, v4.3, sy ny sisa. Ny Espressif Systems dia miantoka ny fanohanana mandritra ny 30 volana ho an'ny fanamboarana bug sy paty fiarovana ho an'ny dikan-teny tsirairay navoaka. Noho izany, avoaka tsy tapaka ihany koa ny fanavaozana ny fanodikodinam-bola, toy ny v4.3.1, v4.2.2, sns. Ny tabilao 4.1 dia mampiseho ny satan'ny fanohanan'ny dikan-teny ESP-IDF samihafa ho an'ny chips Espressif, izay manondro raha ao anaty pretra izy ireo.view stage (manolotra fanohanana ho an'ny preview dikan-teny, izay mety tsy manana endri-javatra na antontan-taratasy sasany) na tohana amin'ny fomba ofisialy.

Tabilao 4.1. Fanohanana ny sata ESP-IDF samihafa ho an'ny chips Espressif

Ampahany ESP32 ESP32-S2 ESP32-C3 ESP32-S3 ESP32-C2 ESP32-H2

v4.1 tohanana

v4.2 tohanana tohanana

v4.3 tohanana tohanana tohanana

v4.4 tohanana tohanana tohanana tohanana
preview

v5.0 tohanana tohanana tohanana tohanana tohanana mialohaview

32 ESP32-C3 Wireless Adventure: Torolàlana feno amin'ny IoT

Ny famerimberenan'ny dikan-teny lehibe matetika dia misy fanitsiana ny rafitra rafitra sy fanavaozana ny rafitra fanangonana. Ho an'ny example, ny fiovana lehibe avy amin'ny v3.* ho v4.* dia ny fifindra-monina tsikelikely ny rafitra fananganana avy amin'ny Make ho CMake. Amin'ny lafiny iray, ny famerimberenana ny dikan-teny madinidinika dia matetika mitaky ny fanampiana endri-javatra vaovao na fanohanana ny chips vaovao.
Zava-dehibe ny manavaka sy mahatakatra ny fifandraisan'ny dikan-teny stable sy ny sampana GitHub. Ny dikan-teny misy soratra hoe v*.* na v*.*.* dia maneho ny dikan-teny stable izay nandalo fitsapana anatiny feno nataon'ny Espressif. Rehefa raikitra dia tsy miova ny kaody, rojo fitaovana ary ny famoahana antontan-taratasy ho an'ny dikan-teny mitovy. Na izany aza, ny sampana GitHub (oh: ny sampana famoahana/v4.3) dia mandalo fehezan-dalàna matetika, matetika isan'andro. Noho izany dia mety tsy hitovy ny sombin-kaody roa eo ambanin'ny sampana iray, ka mila manavao haingana ny kaody mifanaraka amin'izany ny mpamorona.
4.1.2 ESP-IDF Git Workflow
Ny Espressif dia manaraka ny fomba fiasa Git manokana ho an'ny ESP-IDF, voasoritra toy izao manaraka izao:
· Misy fanovana vaovao atao amin'ny sampana master, izay sampana lehibe amin'ny fampandrosoana. Ny dikan-teny ESP-IDF amin'ny sampana master dia mitondra -dev foana tag mba hanondroana fa eo am-pandrosoana izy io, toy ny v4.3-dev. Ny fanovana eo amin'ny sampana master dia ho reviewed ary nosedraina tao amin'ny fitahirizana anatiny an'i Espressif, ary avy eo natosiky ny GitHub rehefa vita ny fitiliana mandeha ho azy.
· Raha vantany vao nahavita ny fampivoarana endri-javatra ao amin'ny sampana master ny dikan-teny vaovao ary mahafeno ny fepetra hidirana amin'ny fitsapana beta, dia hifindra any amin'ny sampana vaovao izany, toy ny famoahana/v4.3. Ankoatra izany, ity sampana vaovao ity dia tagged ho kinova mialoha ny famoahana, toy ny v4.3-beta1. Ny mpamorona dia afaka manondro ny sehatra GitHub mba hidirana amin'ny lisitry ny sampana feno sy tags ho an'ny ESP-IDF. Zava-dehibe ny manamarika fa ny dikan-beta (dikan-teny mialoha ny famoahana) dia mety mbola manana olana maro fantatra. Satria mandalo fitsapana mitohy ny version beta dia ampiana miaraka amin'ity dikan-teny ity sy ny sampana master miaraka ny fanamboarana bug. Mandritra izany fotoana izany, ny sampana master dia mety efa nanomboka namolavola endri-javatra vaovao ho an'ny dikan-teny manaraka. Rehefa saika ho vita ny fitsapana, dia ampiana etikety kandidà (rc) famotsorana ny sampana, izay manondro fa mety ho kandidà amin'ny famoahana ofisialy izany, toy ny v4.3-rc1. Amin'ity stage, mijanona ho dikan-teny mialoha ny famoahana ny sampana.
· Raha tsy misy bibikely lehibe hita na taterina, ny kinova mialoha ny famoahana dia mahazo mari-pamantarana dikan-teny lehibe (oh: v5.0) na mari-pamantarana dikan-teny kely (oh: v4.3) ary lasa kinova ofisialy nivoaka, izay voarakitra an-tsoratra. ao amin'ny pejy naoty famoahana. Aorian'izay, izay bug hita amin'ity dikan-teny ity dia apetraka amin'ny sampana famoahana. Rehefa vita ny fitiliana amin'ny tanana, dia omena mari-pamantarana dikan-dikan-dikan-dikan-dikan-dikan-dikan-dikan-dikan-dikan-dikan-dikan-dikan-dikan-dikan-dikan-dikan-dikan-dikan-tsoratra (oh: v4.3.2) ny sampana, izay hita taratra ao amin'ny pejy naoty famoahana.
Toko 4. Fametrahana ny tontolo iainana fampandrosoana 33

4.1.3 Misafidiana Dikan-teny mety
Satria ny ESP-IDF dia nanomboka nanohana tamin'ny fomba ofisialy ny ESP32-C3 avy amin'ny version v4.3, ary ny v4.4 dia tsy mbola navoaka tamin'ny fomba ofisialy tamin'ny fotoana nanoratana ity boky ity, ny dikan-teny ampiasaina amin'ity boky ity dia v4.3.2, izay dikan-teny nohavaozina. ny v4.3. Na izany aza, zava-dehibe ny manamarika fa amin'ny fotoana hamakianao ity boky ity dia mety efa misy ny v4.4 na dikan-teny vaovao kokoa. Rehefa mifidy dikan-teny dia manoro ireto manaraka ireto izahay:
· Ho an'ny mpamorona ambaratonga fidirana dia tsara ny misafidy ny version stable v4.3 na ny kinova nohavaozina, izay mifanaraka amin'ny talohaample version ampiasaina ato amin'ity boky ity.
· Ho an'ny tanjona famokarana faobe, dia soso-kevitra ny hampiasa ny kinova stable farany indrindra mba hahazoana tombony amin'ny fanohanana ara-teknika farany indrindra.
· Raha mikasa ny hanandrana chips vaovao ianao na hikaroka endri-javatra vaovao momba ny vokatra dia ampiasao ny sampana master. Ny kinova farany dia ahitana ny endri-javatra farany rehetra, saingy tadidio fa mety misy bibikely fantatra na tsy fantatra.
· Raha toa ka tsy ahitana ireo endri-javatra vaovao tadiavina ny dikan-teny stable ampiasaina ary tianao ny hanamaivana ny risika mifandray amin'ny sampana master, dia diniho ny fampiasana ny sampana famoahana mifanaraka amin'izany, toy ny sampana release/v4.4. Ny fitehirizana GitHub an'i Espressif dia hamorona voalohany ny sampana famoahana/v4.4 ary avy eo dia hamoaka ny version stable v4.4 mifototra amin'ny sary ara-tantara manokana an'ity sampana ity, rehefa vita ny fampivoarana sy ny fitsapana rehetra.
4.1.4 Mihoatraview an'ny lahatahiry ESP-IDF SDK
Ny ESP-IDF SDK dia misy lahatahiry roa lehibe: esp-idf sy .espressif. Ny voalohany dia misy ny kaody loharanon'ny tahiry ESP-IDF files sy script compilation, raha ity farany kosa dia mitahiry rojo fitaovana famoriam-bola sy rindrambaiko hafa. Ny fahafantarana ireo lahatahiry roa ireo dia hanampy ny mpamorona hampiasa tsara kokoa ny loharano misy ary hanafaingana ny fizotran'ny fampandrosoana. Ny firafitry ny lahatahiry an'ny ESP-IDF dia voalaza eto ambany:
(1) lahatahiry kaody fitehirizana ESP-IDF (/esp/esp-idf), araka ny aseho amin'ny sary 4.2.
a. Component directory components
Ity lahatahiry fototra ity dia mampiditra singa rindrambaiko tena ilaina amin'ny ESP-IDF. Tsy misy kaody tetikasa azo atambatra raha tsy miantehitra amin'ireo singa ao anatin'ity lahatahiry ity. Tafiditra ao anatin'izany ny fanohanan'ny mpamily ho an'ny chips Espressif isan-karazany. Avy amin'ny tranomboky LL sy tranomboky HAL mifandray amin'ny periferika mankany amin'ny Driver sy Virtual File System (VFS) fanohanan'ny sosona, ny mpamorona dia afaka misafidy ireo singa mety amin'ny ambaratonga samihafa ho an'ny filan'ny fampandrosoana. Ny ESP-IDF koa dia manohana ireo tambajotra protocole protocole maromaro toy ny TCP/IP, HTTP, MQTT, WebSocket, sns. Afaka mampiasa interface mahazatra toy ny Socket ny mpamorona mba hananganana rindranasa tambajotra. Ny singa dia manome fahatakarana
34 ESP32-C3 Wireless Adventure: Torolàlana feno amin'ny IoT

Sary 4.2. ESP-IDF repository code lahatahiry
fampiasa mavitrika ary azo ampidirina mora foana amin'ny fampiharana, ahafahan'ny mpamorona mifantoka fotsiny amin'ny lojika fandraharahana. Ny singa mahazatra sasany dia ahitana: · mpamily: Ity singa ity dia misy programa mpamily periferika ho an'ny Espressif isan-karazany
andiany chip, toy ny GPIO, I2C, SPI, UART, LEDC (PWM), sns. Ny periferika tsirairay dia manana lohapejy iraisana file (toy ny gpio.h), manafoana ny filana hiatrehana ireo fanontaniana fanohanana manokana momba ny chip. · esp_wifi: Wi-Fi, toy ny periferika manokana, dia raisina ho singa misaraka. Ahitana API maro toy ny fanombohana ny maodely mpamily Wi-Fi isan-karazany, ny fanamafisana ny mari-pamantarana ary ny fanodinana hetsika. Ny fiasa sasany amin'ity singa ity dia omena amin'ny endrika tranomboky rohy static. ESP-IDF koa dia manome antontan-taratasy feno momba ny mpamily mba hanamora ny fampiasana.
Toko 4. Fametrahana ny tontolo iainana fampandrosoana 35

· freertos: Ity singa ity dia misy ny kaody FreeRTOS feno. Ankoatra ny fanomezana fanohanana feno ho an'ity rafitra miasa ity, ny Espressif dia nanitatra ny fanohanan'izy ireo amin'ny chips roa-core. Ho an'ny chips roa-core toa ny ESP32 sy ESP32-S3, ny mpampiasa dia afaka mamorona asa amin'ny cores manokana.
b. Dokotera lahatahiry docs
Ity lahatahiry ity dia misy antontan-taratasy momba ny fampandrosoana mifandraika amin'ny ESP-IDF, ao anatin'izany ny Torolàlana Manomboha, Boky Torolàlana momba ny API, Torolàlana Fampandrosoana, sns.
FANAMARIHANA Rehefa avy natambatra tamin'ny fitaovana mandeha ho azy, dia apetraka ao amin'ny https://docs.espressif.com/projects/esp-idf ny votoatin'ity lahatahiry ity. Azafady mba ho azo antoka fa mamadika ny kendrena antontan-taratasy ho ESP32-C3 ary safidio ny dikan-teny ESP-IDF voatondro.
c. Fitaovana fitaovana script
Ity lahatahiry ity dia mirakitra fitaovana fandrafetana fampiasa matetika toy ny idf.py, sy ny fitaovana terminal monitor idf_monitor.py, sns. Ny sub-directory cmake dia misy soratra fototra ihany koa. files amin'ny rafitra fanangonana, izay fototry ny fampiharana ny fitsipika fanangonana ESP-IDF. Rehefa manampy ny fari-piainan'ny tontolo iainana, dia ampidirina ao amin'ny fari-piainan'ny tontolo iainana ny atiny ao anatin'ny lahatahiry fitaovana, mamela ny idf.py hotanterahina mivantana eo ambanin'ny lalan'ny tetikasa.
d. Ekampny directory program exampl'
Ity lahatahiry ity dia misy fanangonana be dia be amin'ny ESP-IDF exampny programa mampiseho ny fampiasana ny singa API. Ny examples dia nalamina ho subdirectories isan-karazany mifototra amin'ny sokajy:
· fanombohana: Ity sub-directory ity dia ahitana ex-level examptoy ny "hello world" sy "blink" mba hanampiana ireo mpampiasa hahatakatra ny fototra.
· bluetooth: Afaka mahita Bluetooth mifandray examples eto, anisan'izany ny Bluetooth LE Mesh, Bluetooth LE HID, BluFi, sy ny maro hafa.
· wifi: Mifantoka amin'ny Wi-Fi ex ity lahatahiry kely ityamples, ao anatin'izany ny programa fototra toy ny Wi-Fi SoftAP, Wi-Fi Station, espnow, ary koa ny protocole fifandraisana manokana talohaamples avy amin'ny Espressif. Izy io koa dia ahitana sosona fampiharana maro examples mifototra amin'ny Wi-Fi, toy ny Iperf, Sniffer, ary Smart Config.
· periferika: Mizarazara ho zana-tsipìka maromaro ity lahatahiry midadasika ity mifototra amin'ny anarana periferika. Ahitana mpamily periferika examples ho an'ny chips Espressif, miaraka amin'ny example ahitana sub-ex maromaroamples. Ohatra, ny sub-directory gpio dia misy roa examples: fitendry matrix GPIO sy GPIO. Zava-dehibe ny manamarika fa tsy ny ex rehetraampIreo singa mifandraika amin'ny ESP32-C3
36 ESP32-C3 Wireless Adventure: Torolàlana feno amin'ny IoT

Ho an'ny example, ny examples ao amin'ny usb/host dia azo ampiharina amin'ny periferika misy fitaovana USB Host (toy ny ESP32-S3), ary ny ESP32-C3 dia tsy manana an'io periferika io. Matetika ny rafitra fanangonana dia manome bitsika rehefa mametraka ny tanjona. Ny README file ny ex tsirairayample mitanisa ny puce tohanana. · protocols: Ity sub-directory ity dia misy examples ho an'ny protocole fifandraisana isan-karazany, ao anatin'izany ny MQTT, HTTP, HTTP Server, PPPoS, Modbus, mDNS, SNTP, mandrakotra karazana protocole fifandraisana ex.amples ilaina amin'ny fampandrosoana IoT. · provisioning: Eto ianao dia hahita provisioning examples ho an'ny fomba samihafa, toy ny fanomezana Wi-Fi sy ny fanomezana Bluetooth LE. · rafitra: Ity sub-directory ity dia ahitana ny debug rafitra examples (ohatra, fanaraha-maso stack, fanaraha-maso ny fotoana, fanaraha-maso ny asa), fitantanana herinaratra examples (oh: fomba fatoriana isan-karazany, co-processors), ary examples mifandraika amin'ny singa rafitra mahazatra toy ny terminal console, loop event, ary timer system. · fitahirizana: Ao anatin'ity sub-directory ity dia hahita examples ny rehetra file rafitra sy rafitra fitahirizana tohanan'ny ESP-IDF (toy ny famakiana sy fanoratana Flash, karatra SD ary haino aman-jery fitahirizana hafa), ary koa ny examples of non-volatile storage (NVS), FatFS, SPIFFS ary ny hafa file fiasan'ny rafitra. · fiarovana: Ity sub-directory ity dia misy examples mifandraika amin'ny flash encryption. (2) lahatahiry rojo fitaovana fanangonana ESP-IDF (/.espressif), araka ny aseho amin'ny sary 4.3.
Sary 4.3. ESP-IDF compilation tool chain directory
Toko 4. Fametrahana ny tontolo iainana fampandrosoana 37

a. Dist
Ny rojo fitaovana ESP-IDF sy rindrambaiko hafa dia zaraina amin'ny endrika fonosana voaporitra. Mandritra ny fizotry ny fametrahana, ny fitaovana fametrahana dia misintona voalohany ny fonosana voatsindry mankany amin'ny lahatahiry dist, ary avy eo dia mamoaka azy any amin'ny lahatahiry voatondro. Rehefa vita ny fametrahana dia azo esorina soa aman-tsara ny ao anatin'ity lahatahiry ity.
b. Python virtoaly environment directory python env
Ny dikan-teny samihafa amin'ny ESP-IDF dia miankina amin'ny dikan-teny manokana amin'ny fonosana Python. Ny fametrahana ireo fonosana ireo mivantana amin'ny mpampiantrano iray ihany dia mety hiteraka fifandirana eo amin'ny dikan-teny fonosana. Mba hamahana izany, ny ESP-IDF dia mampiasa tontolo virtoaly Python mba hanavahana ireo dikan-teny fonosana samihafa. Miaraka amin'io mekanika io, afaka mametraka dikan-teny maro an'ny ESP-IDF amin'ny mpampiantrano iray ihany ny mpamorona ary afaka mifamadika mora foana eo anelanelan'izy ireo amin'ny alàlan'ny fanafarana ireo fari-piainana samihafa.
c. ESP-IDF compilation tool chain directory fitaovana
Ity lahatahiry ity dia ahitana fitaovana famoriam-bola ilaina indrindra amin'ny fanangonana tetikasa ESP-IDF, toy ny fitaovana CMake, fitaovana fananganana Ninja, ary ny rojom-pitaovana gcc izay miteraka ny programa azo tanterahina farany. Fanampin'izany, ity lahatahiry ity dia mametraka ny tranomboky manara-penitra amin'ny fiteny C/C++ miaraka amin'ny lohapejy mifanaraka amin'izany files. Raha misy programa manondro lohapelin'ny rafitra file toy ny #include , ny rojo fitaovana fanangonana dia hahita ny stdio.h file ao anatin'ity lahatahiry ity.
4.2 Fametrahana ny tontolo iainana fampandrosoana ESP-IDF
Ny tontolon'ny fampandrosoana ESP-IDF dia manohana ny rafitra fiasa mahazatra toy ny Windows, Linux, ary macOS. Ity fizarana ity dia hampiditra ny fomba fametrahana ny tontolo fampandrosoana amin'ny rafitra tsirairay. Amporisihina ny hamolavola ESP32-C3 amin'ny rafitra Linux, izay haseho amin'ny antsipiriany eto. Toromarika maro no azo ampiharina amin'ny sehatra rehetra noho ny fitovian'ny fitaovana fampandrosoana. Noho izany dia asaina mamaky tsara ny votoatin'ity fizarana ity.
FANAMARIHANA Azonao atao ny mijery ireo antontan-taratasy an-tserasera hita ao amin'ny https://bookc3.espressif.com/esp32c3, izay manome ny baiko voalaza ato amin'ity fizarana ity.
4.2.1 Fametrahana ny tontolo iainana fampandrosoana ESP-IDF amin'ny Linux
Ny fitaovana fampivoarana GNU sy debugging ilaina amin'ny tontolo fampandrosoana ESP-IDF dia avy amin'ny rafitra Linux. Fanampin'izany, matanjaka sy mora ampiasaina ny terminal andalana baiko ao amin'ny Linux, ka mahatonga azy ho safidy tsara ho an'ny fampandrosoana ESP32-C3. Ianao dia afaka
38 ESP32-C3 Wireless Adventure: Torolàlana feno amin'ny IoT

safidio ny fizarana Linux tianao, fa manoro hevitra ny mampiasa Ubuntu na rafitra hafa mifototra amin'ny Debian. Ity fizarana ity dia manome torolàlana momba ny fametrahana ny tontolo fampandrosoana ESP-IDF amin'ny Ubuntu 20.04.
1. Mametraka fonosana ilaina
Sokafy terminal vaovao ary tanteraho ity baiko manaraka ity mba hametrahana fonosana ilaina rehetra. Ny baiko dia handalo ho azy ireo fonosana efa napetraka.
$ sudo apt-get install git wget flex bison gperf python3 python3-pip python3setuptools cmake ninja-build ccache libffi-dev libssl-dev dfu-util libusb-1.0-0
SOSO-KEVITRA Mila mampiasa ny kaonty administratera sy ny tenimiafina ho an'ny baiko etsy ambony ianao. Amin'ny alàlan'ny default, tsy misy fampahalalana haseho rehefa miditra ny tenimiafina. Tsindrio fotsiny ny bokotra "Enter" hanohizana ny dingana.
Git dia fitaovana fitantanana kaody fototra ao amin'ny ESP-IDF. Rehefa vita ny fametrahana ny tontolo fampandrosoana dia azonao ampiasaina ny baiko git log to view fanovana code rehetra natao hatramin'ny namoronana ny ESP-IDF. Ankoatra izany, ny Git dia ampiasaina amin'ny ESP-IDF ihany koa mba hanamafisana ny vaovao momba ny dikan-teny, izay ilaina amin'ny fametrahana ny rojo fitaovana mifanaraka amin'ny dikan-teny manokana. Miaraka amin'ny Git, fitaovana rafitra manan-danja hafa dia misy Python. Ny ESP-IDF dia mampiditra sora-baventy marobe voasoratra amin'ny Python. Ny fitaovana toy ny CMake, Ninja-build, ary Ccache dia ampiasaina betsaka amin'ny tetikasa C/C++ ary miasa ho toy ny famoriam-bola sy fitaovana fananganana ao amin'ny ESP-IDF. libusb-1.0-0 sy dfu-util no tena mpamily ampiasaina amin'ny USB serial fifandraisana sy ny firmware fandoroana. Rehefa tafapetraka ny fonosana rindrambaiko dia azonao ampiasaina ny fampisehoana apt baiko hahazoana fanazavana amin'ny antsipiriany momba ny fonosana tsirairay. Ho an'ny example, ampiasao apt show git hanonta ny fampahalalana momba ny fitaovana Git.
F: Inona no hatao raha tsy tohanana ny version Python? A: Ny ESP-IDF v4.3 dia mila dikan-teny Python tsy ambany noho ny v3.6. Ho an'ny dikan-teny taloha an'ny Ubuntu, azafady misintona sy mametraka dikan-teny Python avo kokoa ary apetraho ho Python3 ho toy ny tontolo iainana Python default. Azonao atao ny mahita torolalana amin'ny antsipiriany amin'ny fitadiavana ny teny fanalahidy update-alternatives python.
2. Ampidino ny kaody fitehirizana ESP-IDF
Sokafy ny terminal ary mamorona lahatahiry antsoina hoe esp ao amin'ny lahatahiry an-tranonao mampiasa ny baiko mkdir. Afaka misafidy anarana hafa ho an'ny lahatahiry ianao raha tianao. Ampiasao ny baiko cd hiditra ao amin'ny lahatahiry.
Toko 4. Fametrahana ny tontolo iainana fampandrosoana 39

$ mkdir -p /esp $ cd /esp
Ampiasao ny baiko git clone hisintona ny kaody fitehirizana ESP-IDF, araka ny aseho eto ambany:
$ git clone -b v4.3.2 – miverimberina https://github.com/espressif/esp-idf.git
Ao amin'ny baiko etsy ambony, ny parameter -b v4.3.2 dia mamaritra ny dikan-teny alaina (amin'ity tranga ity, version 4.3.2). Ny parameter -recursive dia miantoka fa ny sub-repositories rehetra an'ny ESP-IDF dia alaina miverimberina. Ny fampahalalana momba ny sub-repositories dia azo jerena ao amin'ny .gitmodules file.
3. Apetraho ny rojo fitaovana fampandrosoana ESP-IDF
Espressif dia manome script install.sh mandeha ho azy mba hisintonana sy hametrahana ny rojo fitaovana. Ity script ity dia manamarina ny dikan-teny ESP-IDF ankehitriny sy ny tontolo iainan'ny rafitra miasa, ary avy eo misintona sy mametraka ny dikan-teny mety amin'ny fonosana fitaovana Python sy ny rojo fitaovana fanangonana. Ny lalana fametrahana default ho an'ny rojo fitaovana dia /.espressif. Ny hany ataonao dia ny mandeha mankany amin'ny lahatahiry esp-idf ary mihazakazaka install.sh.
$ cd /esp/esp-idf $ ./install.sh
Raha apetrakao soa aman-tsara ny rojo fitaovana dia hiseho ny terminal:
Vita daholo!
Amin'izao fotoana izao, nahavita nanangana ny tontolo fampandrosoana ESP-IDF ianao.
4.2.2 Fametrahana ny ESP-IDF Development Environment amin'ny Windows
1. Ampidino ny fametrahana fitaovana ESP-IDF
SOSO-KEVITRA Aroso ny hametraka ny tontolo fampandrosoana ESP-IDF Windows 10 na ambony. Azonao atao ny misintona ny installer avy amin'ny https://dl.espressif.com/dl/esp-idf/. Ny installer dia rindrambaiko open-source ihany koa, ary ny code source dia mety viewed ao amin'ny https: //github.com/espressif/idf-installer.
· Fametrahana fitaovana ESP-IDF an-tserasera
Ity installer ity dia somary kely, manodidina ny 4 MB ny habeny, ary ny fonosana sy ny code hafa dia alaina mandritra ny dingana fametrahana. Ny advantage an'ny installer an-tserasera dia tsy vitan'ny hoe afaka misintona fonosana rindrambaiko sy kaody amin'ny fangatahana mandritra ny dingan'ny fametrahana, fa mamela ny fametrahana ny famoahana rehetra misy ny ESP-IDF sy ny sampana farany amin'ny kaody GitHub (toy ny sampana master) . Ny disadvantage dia mitaky fifandraisana amin'ny tambajotra izany mandritra ny dingana fametrahana, izay mety hiteraka tsy fahombiazan'ny fametrahana noho ny olana amin'ny tambajotra.
40 ESP32-C3 Wireless Adventure: Torolàlana feno amin'ny IoT

· Fametrahana fitaovana ESP-IDF an-tserasera Ity installer ity dia lehibe kokoa, manodidina ny 1 GB ny habeny, ary misy ny fonosana rindrambaiko sy ny kaody ilaina amin'ny fananganana tontolo iainana. Ny tena advantage amin'ny installer ivelan'ny aterineto dia azo ampiasaina amin'ny solosaina tsy misy fidirana amin'ny Internet, ary amin'ny ankapobeny dia manana taham-pahombiazana ambony kokoa. Marihina fa ny installer ivelan'ny aterineto dia tsy afaka mametraka afa-tsy ny famoahana stable an'ny ESP-IDF fantatra amin'ny v*.* na v*.*.*.
2. Alefaso ny ESP-IDF fitaovana installer Rehefa avy misintona kinova mety amin'ny installer (alao ny ESP-IDF Tools Offline 4.3.2 ho an'ny example eto), tsindrio indroa ny exe file hanombohana ny ESP-IDF interface tsara. Ity manaraka ity dia mampiseho ny fomba fametrahana ESP-IDF stable version v4.3.2 amin'ny fampiasana ny installer offline.
(1) Ao amin'ny interface "Select installation language" aseho ao amin'ny Figure 4.4, safidio ny fiteny ampiasaina amin'ny lisitry ny drop-down.
Sary 4.4. "Select installation language" interface (2) Rehefa avy nifidy ny fiteny, tsindrio "OK" mba hiseho ny interface "Licence agreement".
(jereo ny sary 4.5). Rehefa avy namaky tsara ny fifanarahana fahazoan-dàlana fametrahana, safidio ny "Manaiky ny fifanarahana aho" ary tsindrio "Manaraka".
Sary 4.5. Fifandraisana “fifanarahana fahazoan-dàlana” Toko 4. Fametrahana ny tontolo iainana fampandrosoana 41

(3) Review ny rafitra rafitra ao amin'ny "Pre-installation system check" interface tsara (jereo ny sary 4.6). Jereo ny dikan-Windows sy ny fampahalalana rindrambaiko antivirus napetraka. Kitiho ny "Next" raha toa ka ara-dalàna ny singa rehetra. Raha tsy izany dia azonao atao ny manindry ny "Log feno" ho an'ny vahaolana mifototra amin'ny singa fototra.
Sary 4.6. "System check before installation" interface tsara SOSO-KEVITRA
Azonao atao ny mandefa logs amin'ny https://github.com/espressif/idf-installer/issues ho fanampiana. (4) Safidio ny lahatahiry fametrahana ESP-IDF. Eto, fidio D:/.espressif, araka ny hita ao
Figure 4.7, ary tsindrio "Next". Mariho fa .espressif eto dia lahatahiry miafina. Rehefa vita ny fametrahana dia azonao atao view ny atiny manokana amin'ity lahatahiry ity amin'ny fanokafana ny file mpitantana ary mampiseho zavatra miafina.
Sary 4.7. Safidio ny lahatahiry fametrahana ESP-IDF 42 ESP32-C3 Wireless Adventure: Torolàlana feno amin'ny IoT

(5) Hamarino ireo singa tokony hapetraka, araka ny aseho amin'ny sary 4.8. Amporisihina ny hampiasa ny safidy default, izany hoe ny fametrahana tanteraka, ary tsindrio ny "Next".
Sary 4.8. Safidio ny singa hapetraka (6) Hamafiso ireo singa hapetraka ary tsindrio ny "Install" hanombohana ny fampidirana mandeha ho azy.
fomba fiatoana, araka ny aseho amin'ny sary 4.9. Mety haharitra folo minitra ny fizotran'ny fametrahana ary aseho amin'ny sary 4.10 ny tsipika fandrosoan'ny fizotry ny fametrahana. Mba andraso am-paharetana.
Sary 4.9. Fiomanana amin'ny fametrahana (7) Rehefa vita ny fametrahana dia asaina manamarina ny "Register the ESP-IDF".
Tools executables as Windows Defender exclusions…” mba hisorohana ny rindrambaiko antivirus tsy ho voafafa files. Ny fampidirana singa fanilihana dia afaka mandingana ny scan matetika amin'ny antivirus
Toko 4. Fametrahana ny tontolo iainana fampandrosoana 43

Sary 4.10. Fametrahana lozisialy fandrosoana bar, manatsara be ny fahombiazan'ny fanangonana kaody amin'ny rafitra Windows. Kitiho ny "Finish" hamita ny fametrahana ny tontolo fampandrosoana, araka ny aseho amin'ny sary 4.11. Azonao atao ny misafidy ny hanamarina ny "Run ESP-IDF PowerShell environment" na "Run ESP-IDF command prompt". Alefaso mivantana ny varavarankely fanangonana aorian'ny fametrahana mba hahazoana antoka fa miasa ara-dalàna ny tontolon'ny fampandrosoana.
Sary 4.11. Vita ny fametrahana (8) Sokafy ny tontolo fampandrosoana napetraka ao amin'ny lisitry ny programa (na ESP-IDF 4.3
CMD na ESP-IDF 4.3 PowerShell terminal, araka ny aseho amin'ny sary 4.12), ary ny fari-piainan'ny ESP-IDF dia ampiana ho azy rehefa mandeha ao amin'ny terminal. Aorian'izany dia azonao ampiasaina ny baiko idf.py ho an'ny asa. Ny ESP-IDF 4.3 CMD nosokafana dia aseho amin'ny sary 4.13. 44 ESP32-C3 Wireless Adventure: Torolàlana feno amin'ny IoT

Sary 4.12. Napetraka ny tontolo fampandrosoana
Sary 4.13. ESP-IDF 4.3 CMD
4.2.3 Fametrahana ESP-IDF Development Environment amin'ny Mac
Ny dingana fametrahana ny tontolo fampandrosoana ESP-IDF amin'ny rafitra Mac dia mitovy amin'ny rafitra Linux. Ny baiko amin'ny fampidinana ny kaody fitahirizana sy ny fametrahana ny rojo fitaovana dia mitovy tanteraka. Ny baiko fametrahana fonosana fiankinan-doha ihany no hafa kely. 1. Mametraka fonosana fiankinan-doha Sokafy ny terminal, ary apetraho ny pip, ilay fitaovana fitantanana fonosana Python, amin'ny alàlan'ny baiko manaraka:
% sudo mora fametrahana pip
Ampidiro ny Homebrew, fitaovana fitantanana fonosana ho an'ny macOS, amin'ny alàlan'ny baiko manaraka:
% /bin/bash -c “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/ HEAD/install.sh)”
Apetraho ireo fonosana fiankinan-doha ilaina amin'ny alàlan'ny baiko manaraka:
% brew python3 mametraka cmake ninja ccache dfu-util
2. Ampidino ny kaody fitehirizana ESP-IDF Araho ny toromarika omena ao amin'ny fizarana 4.2.1 mba hisintonana ny kaody fitehirizana ESP-IDF. Ny dingana dia mitovy amin'ny fampidinana amin'ny rafitra Linux.
Toko 4. Fametrahana ny tontolo iainana fampandrosoana 45

3. Apetraho ny rojo fitaovana fampandrosoana ESP-IDF
Araho ny torolàlana omena ao amin'ny fizarana 4.2.1 mba hametrahana ny rojo fitaovana fampandrosoana ESP-IDF. Ny dingana dia mitovy amin'ny fametrahana amin'ny rafitra Linux.
4.2.4 Fametrahana VS Code
Amin'ny alàlan'ny default, ny ESP-IDF SDK dia tsy misy fitaovana fanitsiana kaody (na dia ny installer ESP-IDF farany ho an'ny Windows aza dia manolotra safidy hametrahana ESP-IDF Eclipse). Azonao atao ny mampiasa fitaovana fanitsiana lahatsoratra tianao hanitsiana ny kaody ary avy eo manangona azy amin'ny baiko terminal.
Ny fitaovana fanovana kaody malaza iray dia ny VS Code (Visual Studio Code), izay tonian-dahatsoratry ny kaody maimaim-poana sy manana endri-javatra misy interface tsara. Izy io dia manolotra isan-karazany plugins izay manome fiasa toy ny fitetezana kaody, fanasongadinana syntax, fanaraha-maso ny dikan-teny Git, ary fampidirana terminal. Fanampin'izany, namolavola plugin natokana antsoina hoe Espressif IDF ho an'ny Code VS i Espressif, izay manamora ny fanitsiana ny tetikasa sy ny debugging.
Azonao atao ny mampiasa ny baiko kaody ao amin'ny terminal mba hanokafana haingana ny lahatahiry amin'izao fotoana izao ao amin'ny VS Code. Raha tsy izany, azonao atao ny mampiasa ny hitsin-dàlana Ctrl+ hanokafana ny console terminal default ao amin'ny VS Code.
SOSO-KEVITRA Atolotra ny fampiasana VS Code ho an'ny fampandrosoana kaody ESP32-C3. Ampidino ary apetraho ny kinova farany an'ny VS Code ao amin'ny https://code.visualstudio.com/.
4.2.5 Fampidirana ny tontolo iainana fampandrosoana ny antoko fahatelo
Ho fanampin'ny tontolom-pampandrosoana ofisialy ESP-IDF, izay mampiasa ny fiteny C indrindra, ny ESP32-C3 koa dia manohana fiteny fandaharana mahazatra hafa sy tontolo manodidina ny fampandrosoana an'ny antoko fahatelo. Ireto misy safidy miavaka:
Arduino: sehatra misokatra ho an'ny fitaovana sy rindrambaiko, manohana microcontrollers isan-karazany, anisan'izany ny ESP32-C3.
Mampiasa ny fiteny C++ izy io ary manolotra API tsotra sy manara-penitra, izay antsoina matetika hoe fiteny Arduino. Arduino dia ampiasaina betsaka amin'ny fampandrosoana prototype sy ny toe-javatra fanabeazana. Izy io dia manome fonosana rindrambaiko azo itarina sy IDE ahafahan'ny fanangonana mora sy tselatra.
MicroPython: mpandika teny Python 3 natao hihazakazaka amin'ny sehatra microcontroller tafiditra.
Miaraka amin'ny fiteny script tsotra, afaka miditra mivantana amin'ny loharanon'ny periferika an'ny ESP32-C3 (toy ny UART, SPI, ary I2C) sy ny fifandraisana (toy ny Wi-Fi sy Bluetooth LE).
46 ESP32-C3 Wireless Adventure: Torolàlana feno amin'ny IoT

Manamora ny fifandraisan'ny fitaovana izany. Ny MicroPython, miaraka amin'ny tranomboky fampandehanana matematika midadasika an'i Python, dia mamela ny fampiharana ireo algorithm sarotra amin'ny ESP32-C3, manamora ny fampivoarana ny rindranasa mifandraika amin'ny AI. Amin'ny maha fiteny script, tsy ilaina ny fanangonana miverimberina; azo atao ny fanovana ary azo atao mivantana ny script.
NodeMCU: mpandika teny LUA novolavolaina ho an'ny chips andiany ESP.
Saika manohana ny fiasan'ny periferika rehetra amin'ny chips ESP izy ary maivana kokoa noho ny MicroPython. Mitovy amin'ny MicroPython, mampiasa fiteny script ny NodeMCU, manafoana ny filàna fanangonana miverimberina.
Ankoatr'izay, ny ESP32-C3 dia manohana ny rafitra fiasa NuttX sy Zephyr. NuttX dia rafitra miasa amin'ny fotoana tena izy izay manome interface mifanentana amin'ny POSIX, manatsara ny fampitana ny fampiharana. Zephyr dia rafitra fiasa kely amin'ny fotoana tena izy natao manokana ho an'ny rindranasa IoT. Tafiditra ao anatin'izany ny tranomboky rindrambaiko maro ilaina amin'ny fampivoarana IoT, mivoatra tsikelikely ho tontolo iainana rindrambaiko feno.
Ity boky ity dia tsy manome torolàlana fametrahana amin'ny antsipiriany ho an'ireo tontolo fampandrosoana voalaza etsy ambony. Azonao atao ny mametraka tontolo fampandrosoana mifototra amin'ny zavatra takinao amin'ny alàlan'ny fanarahana ny antontan-taratasy sy ny torolàlana tsirairay.
4.3 Rafitra fanangonana ESP-IDF
4.3.1 Hevitra fototra momba ny Rafitra fanangonana
Ny tetikasa ESP-IDF dia fitambarana programa lehibe iray misy fiasa fidirana sy singa tsy miankina maro. Ho an'ny exampNy tetikasa iray mifehy ny switch LED dia ahitana ny programa fidirana sy ny singa mpamily izay mifehy ny GPIO. Raha te hahatsapa ny fanaraha-maso lavitra LED ianao dia mila manampy Wi-Fi, TCP / IP protocol stack, sns.
Ny rafitra compilation dia afaka manangona, mampifandray ary mamorona azo tanterahana files (.bin) ho an'ny kaody amin'ny alàlan'ny fitsipika fananganana. Ny rafitra fanangonana ny ESP-IDF v4.0 sy ny dikan-teny ambony dia mifototra amin'ny CMake amin'ny alàlan'ny default, ary ny script compilation CMakeLists.txt dia azo ampiasaina mba hifehezana ny fitondran-tena fanangonana ny code. Ho fanampin'ny fanohanana ny fehezanteny fototra amin'ny CMake, ny rafitra fanangonam-bokatra ESP-IDF ihany koa dia mamaritra andiana fitsipika fanangonam-bokatra sy fiasa CMake, ary azonao atao ny manoratra ny script compilation miaraka amin'ny fanambarana tsotra.
4.3.2 Tetikasa File FIRAFITRA
Ny tetikasa dia lahatahiry iray misy programa fidirana, singa voafaritry ny mpampiasa, ary files ilaina amin'ny fananganana rindranasa azo tanterahana, toy ny script compilation, configuration
Toko 4. Fametrahana ny tontolo iainana fampandrosoana 47

files, latabatra fizarazarana, sns. Ny tetikasa dia azo adika sy ampitaina, ary azo tanterahina ihany file azo angonina sy amboarina amin'ny milina miaraka amin'ny dikan-teny mitovy amin'ny tontolo fampandrosoana ESP-IDF. Tetikasa ESP-IDF mahazatra file ny rafitra dia aseho amin'ny sary 4.14.
Sary 4.14. Tetikasa ESP-IDF mahazatra file firafitry Satria ny ESP-IDF dia manohana ny chips IoT maro avy amin'ny Espressif, anisan'izany ny ESP32, ESP32-S andian-dahatsoratra, ESP32-C andian-dahatsoratra, ESP32-H andian-dahatsoratra, sns. Ny lasibatra dia ny fitaovana fampiasa amin'ny programa fampiharana sy ny lasibatra fananganana ny rafitra fanangonana. Miankina amin'ny filanao, azonao atao ny mamaritra tanjona iray na maromaro ho an'ny tetikasanao. Ho an'ny exampAmin'ny alàlan'ny baiko idf.py set-target esp32c3, azonao atao ny mametraka ny tanjona fanangonana amin'ny ESP32-C3, izay hampidirana ny mari-pamantarana default sy ny lalan'ny rojo fitaovana fanangonana ho an'ny ESP32C3. Aorian'ny fanangonana dia azo amboarina ny programa azo tanterahina ho an'ny ESP32C3. Azonao atao ihany koa ny mampandeha ny baiko napetraka-kendrena indray mba hametraka tanjona hafa, ary ny rafitra fanangonam-bokatra dia hanadio ho azy sy hanamboatra indray. singa
Ny singa ao amin'ny ESP-IDF dia singa modular sy mahaleo tena voatanisa ao anatin'ny rafitra fanangonana. Izy ireo dia voalamina ho lahatahiry, miaraka amin'ny anaran'ny lahatahiry maneho ny anaran'ny singa amin'ny alàlan'ny default. Ny singa tsirairay dia manana script compilation manokana izay 48 ESP32-C3 Wireless Adventure: Torolàlana feno ho an'ny IoT

mamaritra ny masontsivana sy ny fiankinan-dohany. Mandritra ny dingan'ny fanangonana, ny singa dia natambatra ho tranomboky static misaraka (.a files) ary amin'ny farany dia mitambatra amin'ny singa hafa mba hamoronana ny programa fampiharana.
Ny ESP-IDF dia manome asa tena ilaina, toy ny rafitra miasa, mpamily periferika, ary stack protocole tambajotra, amin'ny endrika singa. Ireo singa ireo dia voatahiry ao amin'ny lahatahiry singa hita ao anatin'ny lahatahiry faka ESP-IDF. Tsy mila mandika ireo singa ireo amin'ny lahatahiry singa ao amin'ny myProject ny mpamorona. Fa kosa, mila mamaritra ny fifandraisana miankina amin'ireo singa ireo ao amin'ny CMakeLists.txt an'ny tetikasa izy ireo. file mampiasa ny REQUIRES na PRIV_REQUIRES toromarika. Ny rafitra fanangonam-bokatra dia hitady sy hanangona ho azy ireo singa ilaina.
Noho izany, ny lahatahiry singa eo ambanin'ny myProject dia tsy ilaina. Ampiasaina fotsiny izy io mba hampidirana singa manokana amin'ny tetikasa, izay mety ho tranomboky an'ny antoko fahatelo na kaody voafaritry ny mpampiasa. Fanampin'izany, azo alaina avy amin'ny lahatahiry hafa ankoatra ny ESP-IDF na ny tetikasa ankehitriny ny singa, toy ny avy amin'ny tetikasa open source voatahiry ao amin'ny lahatahiry hafa. Amin'ity tranga ity, mila manampy fotsiny ny lalan'ny singa ianao amin'ny fametrahana ny fari-piadidiana EXTRA_COMPONENT_DIRS ao amin'ny CMakeLists.txt eo ambanin'ny lahatahiry faka. Ity lahatahiry ity dia hanaisotra izay singa ESP-IDF manana anarana mitovy, miantoka ny fampiasana ny singa marina.
Fandaharana fidirana main Ny lahatahiry lehibe ao anatin'ny tetikasa dia manaraka izany file rafitra toy ny singa hafa (oh: singa1). Na izany aza, manana lanjany manokana izy io satria singa tsy maintsy misy amin'ny tetikasa tsirairay. Ny lahatahiry lehibe dia ahitana ny kaody loharanon'ny tetikasa sy ny idiran'ny programa mpampiasa, izay matetika antsoina hoe app_main. Amin'ny alàlan'ny default, manomboka amin'ity teboka fidirana ity ny fanatanterahana ny programa mpampiasa. Ny singa fototra koa dia tsy mitovy amin'ny hoe miankina ho azy amin'ny singa rehetra ao anatin'ny lalan'ny fikarohana. Noho izany, tsy ilaina ny manondro mazava ny fiankinan-doha amin'ny fampiasana ny REQUIRES na PRIV_REQUIRES toromarika ao amin'ny CMakeLists.txt file.
fanahafana file Ny lahatahiry fakan'ny tetikasa dia misy config file antsoina hoe sdkconfig, izay misy ny mari-pamantarana fanamafisana ho an'ny singa rehetra ao anatin'ilay tetikasa. Ny sdkconfig file dia avy amin'ny rafitra fanangonana ho azy ary azo ovaina sy havaozina amin'ny baiko idf.py menuconfig. Ny safidy menuconfig dia avy amin'ny Kconfig.projbuild ny tetikasa sy ny Kconfig ny singa. Amin'ny ankapobeny dia manampy singa fanamafisam-peo ao amin'ny Kconfig ny mpamorona singa mba hahatonga ilay singa ho mora sy azo amboarina.
Manangana lahatahiry Amin'ny alàlan'ny default, ny lahatahiry fananganana ao anatin'ny tetikasa dia mitahiry mpanelanelana filesy ny fi-
Toko 4. Fametrahana ny tontolo iainana fampandrosoana 49

nal programa azo tanterahina novokarin'ny baiko idf.py build. Amin'ny ankapobeny, tsy ilaina ny miditra mivantana ny votoatin'ny lahatahiry fananganana. Ny ESP-IDF dia manome baiko efa voafaritra mialoha hifaneraserana amin'ny lahatahiry, toy ny fampiasana ny baiko flash idf.py hitadiavana ho azy ny binary natambatra. file ary tselatra amin'ny adiresy tselatra voatondro, na mampiasa ny baiko idf.py fullclean hanadio ny lahatahiry fananganana manontolo.
Fizarana latabatra (partitions.csv) Ny tetikasa tsirairay dia mitaky latabatra fizarazarana mba hizarana ny habaka tselatra sy hamaritana ny habeny sy ny adiresin'ny programa azo tanterahina sy ny habaka data mpampiasa. Ny baiko idf.py flash na ny programa fanavaozana OTA dia handefa ny firmware amin'ny adiresy mifanaraka amin'ity tabilao ity. Ny ESP-IDF dia manome tabilao fisarahana mahazatra maromaro ao amin'ny singa/partition_table, toy ny partitions_singleapp.csv sy partitions_two_ ota.csv, izay azo fidina ao amin'ny menuconfig.
Raha tsy mahafeno ny fepetra takian'ny tetikasa ny latabatra fizarazarana default amin'ny rafitra, dia azo ampiana partitions.csv manokana ao amin'ny lahatahiry tetikasa ary hofantenana ao amin'ny menuconfig.
4.3.3 Fitsipika fananganana Default an'ny Rafitra fanangonana
Fitsipika momba ny famerana singa mitovy anarana Mandritra ny fizotry ny fikarohana singa, manaraka lamina manokana ny rafitra fanangonana. Mikaroka ireo singa anatiny ao amin'ny ESP-IDF aloha izy, avy eo mitady singa amin'ny tetikasan'ny mpampiasa, ary farany mitady singa ao amin'ny EXTRA_COMPONENT_DIRS. Raha misy lahatahiry maromaro misy singa mitovy anarana, ny singa hita ao amin'ny lahatahiry farany dia hanaisotra ireo singa teo aloha manana anarana mitovy. Ity fitsipika ity dia mamela ny fanamboarana ireo singa ESP-IDF ao anatin'ny tetikasan'ny mpampiasa, sady mitazona ny kaody ESP-IDF tany am-boalohany.
Fitsipika momba ny fampidirana singa iraisana amin'ny alàlan'ny default Araka ny voalaza ao amin'ny fizarana 4.3.2, ny singa dia mila mamaritra mazava ny fiankinany amin'ny singa hafa ao amin'ny CMakeLists.txt. Na izany aza, ny singa mahazatra toy ny freertos dia tafiditra ho azy ao amin'ny rafitra fananganana amin'ny alàlan'ny default, na dia tsy voafaritra mazava ao amin'ny script compilation aza ny fifandraisan'izy ireo. Ny singa mahazatra ESP-IDF dia ahitana ny freertos, Newlib, heap, log, soc, esp_rom, esp_common, xtensa/riscv, ary cxx. Ny fampiasana ireo singa mahazatra ireo dia misoroka ny asa miverimberina rehefa manoratra CMakeLists.txt ary ataovy fohy kokoa.
Fitsipika ho an'ny famerana singa fanamafisam-peo Azon'ny mpamorona atao ny manisy masontsivana fanefena default amin'ny alalan'ny fampiarahana rindrankajy default file nomena anarana hoe sdkconfig.defaults amin'ny tetikasa. Ho an'ny example, manampy CONFIG_LOG_
50 ESP32-C3 Wireless Adventure: Torolàlana feno amin'ny IoT

DEFAULT_LEVEL_NONE = y dia afaka manamboatra ny interface UART mba tsy hanonta ny angona diary amin'ny alàlan'ny default. Fanampin'izay, raha mila apetraka ny paramètre manokana ho an'ny tanjona iray manokana, dia config file azo ampiana ny anarana hoe sdkconfig.defaults.TARGET_NAME, izay mety ahitana TARGET_NAME esp32s2, esp32c3, sy ny sisa. Ireo configuration ireo files dia ampidirina ao amin'ny sdkconfig mandritra ny fanangonana, miaraka amin'ny konfigurasi default ankapobeny file sdkconfig.defaults no nafarana voalohany, arahin'ny firafitry ny kendrena manokana file, toy ny sdkconfig.defaults.esp32c3. Amin'ny toe-javatra izay misy singa fanamafisam-peo mitovy anarana, ny fanamafisana farany file hanapaka ny teo aloha.
4.3.4 Fampidirana ny Script Compilation
Rehefa mamolavola tetikasa amin'ny fampiasana ESP-IDF, ny mpamorona dia tsy mila manoratra kaody loharano fotsiny fa mila manoratra CMakeLists.txt ho an'ny tetikasa sy singa. CMakeLists.txt dia lahatsoratra file, fantatra ihany koa amin'ny anarana hoe script compilation, izay mamaritra andian-javatra fanangonana, singa fanakambanana, ary baiko hitarika ny fizotran'ny fanangonana ny code source. Ny rafitra fanangonana ny ESP-IDF v4.3.2 dia mifototra amin'ny CMake. Ho fanampin'ny fanohanana ny asa sy ny baiko CMake teratany, dia mamaritra andiana fiasa mahazatra ihany koa izy io, izay mahatonga azy io ho mora kokoa ny fanoratana sora-baventy.
Ny script compilation ao amin'ny ESP-IDF dia ahitana indrindra ny script compilation tetikasa sy ny script compilation singa. Ny CMakeLists.txt ao amin'ny lahatahiry fototry ny tetikasa dia antsoina hoe script compilation tetikasa, izay mitarika ny fizotran'ny fanangonana ny tetikasa manontolo. Ny script fanangonana tetikasa fototra dia matetika ahitana ireto andalana telo manaraka ireto:
1. cmake_minimum_required(VERSION 3.5) 2. include($ENV{IDF_PATH}/tools/cmake/project.cmake) 3. project(myProject)
Amin'izy ireo, ny cmake_minimum_required (VERSION 3.5) dia tsy maintsy apetraka amin'ny andalana voalohany, izay ampiasaina hanondroana ny laharan'ny dikan-teny CMake kely indrindra takian'ny tetikasa. Ny dikan-dikan-dikan-dikan-dikan-dikan-dikan-dikan-dikan-dikan-dikan-dikan-dikan-dikan-dikan-dikan-dikan-dikan-dikan-dikan-dikan-dikan-dikan-dikan-dikan-dikan-dikan-dikan-dikan-dikan-dikan-dikan-dikan-dikan-teny hafa amin'ny ankapobeny dia matetika mifanaraka amin'ny dikan-teny taloha kokoa, noho izany dia amboary araka ny tokony ho izy ny laharan'ny dikan-teny rehefa mampiasa baiko CMake vaovao mba hiantohana ny fifanarahana.
include($ENV {IDF_PATH}/tools/cmake/project.cmake) dia manafatra entana sy baikon'ny rafitra fanangonam-bokatra efa voafaritra mialoha ao amin'ny ESP-IDF, ao anatin'izany ny fitsipika fananganana default amin'ny rafitra fanangonana voalaza ao amin'ny Fizarana 4.3.3. project(myProject) dia mamorona ny tetikasa ary mamaritra ny anarany. Ity anarana ity dia hampiasaina ho binary famoahana farany file anarana, izany hoe, myProject.elf sy myProject.bin.
Ny tetikasa dia afaka manana singa maromaro, anisan'izany ny singa fototra. Ny lahatahiry ambony indrindra amin'ny singa tsirairay dia misy CMakeLists.txt file, izay antsoina hoe script compilation singa. Ny script compilation singa dia ampiasaina indrindra hamaritana ny fiankinan'ny singa, ny mari-pamantarana fanamafisam-peo, ny kaody loharano files, ary misy lohapejy files ho an'ny
Toko 4. Fametrahana ny tontolo iainana fampandrosoana 51

fanangonana. Miaraka amin'ny fiasan'ny ESP-IDF idf_component_register, ny kaody kely indrindra ilaina amin'ny script compilation singa dia toy izao manaraka izao:

1. idf_component_register(SRCS “src1.c”

2.

INCLUDE_DIRS "ampidiro"

3.

MILA singa1)

Ny parameter SRCS dia manome lisitry ny loharano files ao amin'ny singa, misaraka amin'ny habaka raha misy maromaro files. Ny mari-pamantarana INCLUDE_DIRS dia manome lisitry ny lohatenim-bahoaka file lahatahiry ho an'ny singa, izay ampidirina amin'ny lalan'ny fikarohana ho an'ny singa hafa izay miankina amin'ny singa ankehitriny. Ny parameter REQUIRES dia mamaritra ny fiankinan'ny singam-bahoaka ho an'ny singa ankehitriny. Ilaina ny milaza mazava ny singa iankinan'izy ireo, toy ny singa2 miankina amin'ny singa1. Na izany aza, ho an'ny singa fototra, izay miankina amin'ny singa rehetra amin'ny alàlan'ny default, ny parameter REQUIRES dia azo esorina.

Ankoatr'izay, ny baiko CMake teratany dia azo ampiasaina amin'ny script compilation. Ho an'ny example, ampiasao ny baiko napetraka mba hametrahana fari-piainana, toy ny set(VARIABLE "VALUE").

4.3.5 Fampidirana ny baiko iombonana
ESP-IDF dia mampiasa CMake (fitaovana fanamboarana tetikasa), Ninja (fitaovana fananganana tetikasa) ary esptool (fitaovana tselatra) eo amin'ny dingan'ny fanangonana kaody. Ny fitaovana tsirairay dia manana anjara asa hafa amin'ny fanangonana, fananganana ary fizotry ny tselatra, ary koa manohana ny baiko miasa samihafa. Mba hanamorana ny fiasan'ny mpampiasa, ny ESP-IDF dia manampy idf.py mitambatra eo anoloana izay ahafahan'ireo baiko voalaza etsy ambony antsoina haingana.
Alohan'ny hampiasana idf.py, ataovy azo antoka fa:
· Ny fari-piainan'ny tontolo iainana IDF_PATH an'ny ESP-IDF dia nampiana amin'ny terminal ankehitriny. · Ny lahatahiry famonoana baiko dia ny lahatahiry fototry ny tetikasa, izay ahitana ny
script fanangonana tetikasa CMakeLists.txt.
Ny baiko mahazatra amin'ny idf.py dia toy izao manaraka izao:
· idf.py –help: mampiseho ny lisitry ny baiko sy ny toromarika fampiasa azy. · idf.py set-target : fametrahana ny compilation taidf.py fullcleanrget, toy izany
toy ny fanoloana sy esp32c3. · idf.py menuconfig: fanombohana menuconfig, rindran-tsary terminal
fitaovana, izay afaka misafidy na manova ny safidy configuration, ary ny valin'ny configuration dia voatahiry ao amin'ny sdkconfig file. · idf.py fananganana: fanombohana fanangonana kaody. Ny mpanelanelana files ary ny programa azo tanterahina farany novokarin'ny fanangonana dia hotehirizina ao amin'ny lahatahiry fananganana ny tetikasa amin'ny alàlan'ny default. Ny fizotry ny fanangonana dia incremental, izay midika fa raha loharano iray ihany file ovaina, ny ovaina ihany file hatambatra amin'ny manaraka.

52 ESP32-C3 Wireless Adventure: Torolàlana feno amin'ny IoT

· idf.py madio: fanadiovana ny mpanelanelana files novokarin'ny fanangonana tetikasa. Ny tetikasa manontolo dia ho voatery hanangona amin'ny fanangonana manaraka. Mariho fa tsy ho voafafa mandritra ny fanadiovana ny fanitsiana CMake sy ny fanovana ny fanovana nataon'ny menuconfig.
· idf.py fullclean: famafana ny lahatahiry fananganana manontolo, ao anatin'izany ny famoahana CMake rehetra files. Rehefa manangana indray ny tetikasa dia hamboarin'ny CMake hatrany am-boalohany ny tetikasa. Mariho fa ity baiko ity dia hamafa ny rehetra files ao amin'ny lahatahiry fananganana, koa ampiasao izany amim-pitandremana, ary ny fandrindrana ny tetikasa file tsy ho voafafa.
· idf.py tselatra: mamelatra ny programa binary azo tanterahina file novokarin'ny fananganana mankany amin'ny kendrena ESP32-C3. Ny safidy -p ary -b dia ampiasaina mba hametrahana ny anaran'ny fitaovana amin'ny seranan-tsambo serial sy ny tahan'ny baud ho an'ny tselatra. Raha tsy voafaritra ireo safidy roa ireo dia ho hita ho azy ny seranan-tsambo ary hampiasaina ny tahan'ny baud default.
· idf.py fanaraha-maso: mampiseho ny fivoahan'ny seranan-tsambo amin'ny tanjona ESP32-C3. Ny safidy -p dia azo ampiasaina hamaritana ny anaran'ny fitaovana amin'ny seranan-tsambo an-tariby. Mandritra ny fanontana amin'ny seranan-tsambo, tsindrio ny fitambarana fanalahidy Ctrl+] hivoaka ny monitor.
Ireo baiko etsy ambony ireo dia azo atambatra koa raha ilaina. Ho an'ny exampAry, ny baiko idf.py build flash monitor dia hanao compilation code, flash, ary hanokatra ny serial port monitor in sequence.
Azonao atao ny mitsidika ny https://bookc3.espressif.com/build-system raha te hahalala bebe kokoa momba ny rafitra fanangonana ESP-IDF.
4.4 Fanao: Manangona Eksampny Program "Blink"
4.4.1 Eksampny Analysis
Ity fizarana ity dia hitondra ny programa Blink ho toy ny talohaample analyse ny file firafitry sy ny fitsipiky ny coding ny tena tetikasa amin'ny antsipiriany. Ny programa Blink dia mampihatra ny vokatry ny jiro LED, ary ny tetikasa dia hita ao amin'ny lahatahiry examples/get-start/blink, izay misy loharano file, configuration files, ary script compilation maromaro.
Ny tetikasa maivana marani-tsaina nampidirina ato amin'ity boky ity dia mifototra amin'ity ex ityampny programa. Hampiana tsikelikely ny asa ao amin'ny toko manaraka mba hamitana azy amin'ny farany.
Kaody loharano Mba hanehoana ny fizotran'ny fampandrosoana manontolo, ny programa Blink dia nadika ho esp32c3-iot-projects/device firmware/1 blink.
Ny firafitry ny lahatahiry amin'ny tetikasa blink files dia aseho amin'ny sary 4.15.
Ny tetikasa blink dia tsy misy afa-tsy lahatahiry lehibe iray, izay singa manokana izay
Toko 4. Fametrahana ny tontolo iainana fampandrosoana 53

Sary 4.15. File firafitry ny lahatahiry an'ny tetikasa blink

dia tsy maintsy ampidirina araka ny voalaza ao amin'ny fizarana 4.3.2. Ny lahatahiry lehibe dia ampiasaina indrindra hitahirizana ny fampiharana ny app_main() fonction, izay idiran'ny programa mpampiasa.Ny tetikasa blink dia tsy ahitana ny lahatahiry singa, satria ity ex ityample mila mampiasa ny singa miaraka amin'ny ESP-IDF fotsiny ary tsy mila singa fanampiny. Ny CMakeLists.txt tafiditra ao amin'ny tetikasa blink dia ampiasaina hitarihana ny fizotry ny fanangonana, raha ny Kconfig.projbuild kosa dia ampiasaina mba hampidirana singa fanamafisana ho an'ity ex ity.ampny programa ao amin'ny menuconfig. hafa tsy ilaina files dia tsy hisy fiantraikany amin'ny fanangonana ny kaody, ka tsy horesahina eto. Fampidirana amin'ny antsipiriany momba ny tetikasa blink files dia toy izao manaraka izao.

1. /*blink.c dia ahitana ity lohateny manaraka ity files*/

2. #ampidiro

// Lohatenin'ny tranomboky Standard C file

3. #include “freeertos/freeRTOS.h” //FreeRTOS lohapejy lehibe file

4. #Ampidiro ny “freeertos/task.h”

// FreeRTOS Task header file

5. # ampidiro ny “sdkconfig.h”

// Lohatenin'ny Configuration file novokarin'ny kconfig

6. #include “driver/gpio.h”

// Lohatenin'ny mpamily GPIO file

Ny loharano file blink.c dia misy andian-dahatsoratra files mifanaraka amin'ny fonction declara-

tions. ESP-IDF amin'ny ankapobeny dia manaraka ny filaharan'ny fampidirana ny lohatenin'ny tranomboky mahazatra files, FreeR-

Lohatenin'ny TOS files, lohatenin'ny mpamily files, lohapejy singa hafa files, ary lohatenin'ny tetikasa files.

Ny filaharan'ny lohapejy files dia tafiditra dia mety hisy fiantraikany amin'ny valin'ny fanangonana farany, koa andramo

araho ny fitsipika fototra. Marihina fa ny sdkconfig.h dia novokarina ho azy

amin'ny kconfig ary azo amboarina amin'ny alalan'ny baiko idf.py menuconfig.

Fanovana mivantana an'ity lohateny ity file hosoloina.

1. /* Azonao atao ny misafidy ny GPIO mifanaraka amin'ny LED ao amin'ny idf.py menuconfig, ary ny valin'ny fanovana ny menuconfig dia ny sandan'ny CONFIG_BLINK

_GPIO dia hovana. Azonao atao koa ny manova mivantana ny famaritana macro

eto, ary ovay CONFIG_BLINK_GPIO ho sanda raikitra.*/ 2. #define BLINK_GPIO CONFIG_BLINK_GPIO

3. void app_main(void)

4. {

5.

/* Ampifanaraho ny IO ho toy ny fiasan'ny GPIO, avelao ny fomba fisintonana, ary

6.

esory ny fomba fampidirana sy fivoahana*/

7.

gpio_reset_pin(BLINK_GPIO);

54 ESP32-C3 Wireless Adventure: Torolàlana feno amin'ny IoT

8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. }

/*Mametraka GPIO amin'ny fomba famoahana*/ gpio_set_direction(BLINK_GPIO, GPIO_MODE_OUTPUT); raha(1) {
/*Print log*/ printf(“Famonoana ny LEDn”); /*Atsaharo ny LED (avo avo lenta)*/ gpio_set_level(BLINK_GPIO, 0); /*Fanemorana (1000 ms)*/ vTaskDelay(1000 / portTICK_PERIOD_MS); printf("Mandeha ny LEDn"); /*Avereno ny LED (avo avo lenta)*/ gpio_set_level(BLINK_GPIO, 1); vTaskDelay(1000 / portTICK_PERIOD_MS); }

Ny fiasa app_main() ao amin'ny Blink exampNy programa dia toerana fidirana ho an'ny programa mpampiasa. Izy io dia fiasa tsotra tsy misy paramètre ary tsy misy sanda miverina. Antsoina io asa io rehefa vita ny fanombohana ny rafitra, izay ahitana asa toy ny fanombohana ny seranan-tsambo serial log, ny fanefena ny fotony tokana/droa, ary ny fanamboarana ny mpiambina.

Ny fiasa app_main() dia mandeha amin'ny tontolon'ny asa iray antsoina hoe main. Ny haben'ny stack sy ny laharam-pahamehana amin'ity asa ity dia azo ovaina ao amin'ny menuconfig Componentconfig Common ESP mifandraika.

Ho an'ny asa tsotra toy ny fanipihana LED, ny kaody ilaina rehetra dia azo ampiharina mivantana ao amin'ny app_main(). Matetika izany dia misy ny fanombohana ny GPIO mifanandrify amin'ny LED ary ny fampiasana fehiloha kely (1) hamadihana ny LED sy hiala. Raha tsy izany, azonao atao ny mampiasa FreeRTOS API hamoronana asa vaovao mitantana ny jiro LED. Rehefa vita soa aman-tsara ilay asa vaovao dia azonao atao ny miala amin'ny fiasa app_main().

Ny votoatin'ny main/CMakeLists.txt file, izay mitarika ny fizotry ny fanangonana ho an'ny singa fototra, dia toy izao manaraka izao:

1. idf_component_register(SRCS “blink.c” INCLUDE_DIRS “.” )

Amin'izy ireo, ny main/CMakeLists.txt dia tsy miantso afa-tsy ny rafitra fanangonan-tsonia, izany hoe idf_component_register. Mitovy amin'ny CMakeLists.txt ho an'ny ankamaroan'ny singa hafa, blink.c dia ampiana amin'ny SRCS, ary ny loharano files ampidirina amin'ny SRCS dia hatambatra. Mandritra izany fotoana izany, ".", izay maneho ny lalana misy ny CMakeLists.txt, dia tokony ampiana amin'ny INCLUDE_DIRS ho lahatahiry fikarohana ho an'ny lohapejy. files. Ny votoatin'ny CMakeLists.txt dia toy izao manaraka izao:
1. #Specify v3.5 ho dikan-teny CMake tranainy indrindra tohanan'ny tetikasa ankehitriny 2. #Versions ambany noho ny v3.5 dia tsy maintsy havaozina alohan'ny hitohizan'ny fanangonana - Rafitra fanangonana IDF

Toko 4. Fametrahana ny tontolo iainana fampandrosoana 55

5. ampidiro ($ENV{IDF_PATH}/tools/cmake/project.cmake) 6. #Mamorona tetikasa antsoina hoe “blink” 7. tetikasa(myProject)
Anisan'izany, ny CMakeLists.txt ao amin'ny lahatahiry fototra dia ahitana indrindra indrindra ny $ENV{IDF_ PATH}/tools/cmake/project.cmake, izay ny tena CMake configuration. file nomen'ny ESP-IDF. Ampiasaina amin'ny con

Documents / Loharano

Espressif Systems ESP32-C3 Wireless Adventure [pdf] Torolàlana ho an'ny mpampiasa
ESP32-C3 Wireless Adventure, ESP32-C3, Wireless Adventure, Adventure

References

Mametraha hevitra

Tsy havoaka ny adiresy mailakao. Voamarika ireo saha ilaina *