ESP32-C3 Wireless Adventure

ESP32-C3 Wireless Adventure

Isikhokelo esiBanzi kwi-IoT

IiNkqubo ze-Espressif nge-12 kaJuni ngo-2023

Iinkcukacha

  • Imveliso: ESP32-C3 Wireless Adventure
  • Umenzi: Iinkqubo ze-Espressif
  • Umhla: 12 Juni 2023

Imiyalelo yokusetyenziswa kwemveliso

Ukulungiselela

Ngaphambi kokusebenzisa i-ESP32-C3 Wireless Adventure, qiniseka ukuba ukhona
uqhelene neengqikelelo kunye noyilo lwe-IoT. Oku kuya kunceda
uyayiqonda indlela esingena ngayo isixhobo kwindawo enkulu ye-IoT ecosystem
kunye nokusetyenziswa kwayo okunokwenzeka kumakhaya ahlakaniphile.

Intshayelelo kunye nokusebenza kweeProjekthi ze-IoT

Kweli candelo, uya kufunda malunga neeprojekthi ze-IoT eziqhelekileyo,
kuquka iimodyuli ezisisiseko zezixhobo eziqhelekileyo ze-IoT, iimodyuli ezisisiseko
yezicelo zabathengi, kunye neeplatifti zefu ze-IoT eziqhelekileyo. Oku kuya kuba njalo
kukubonelela ngesiseko sokuqonda kunye nokudala kwakho
iiprojekthi zakho ze-IoT.

Practice: Smart Light Project

Kule projekthi yokuziqhelanisa, uya kufunda ukwenza i-smart
ukukhanya usebenzisa ESP32-C3 Wireless Adventure. Ubume beprojekthi,
imisebenzi, ukulungiswa kwehardware, kunye nenkqubo yophuhliso iya kuba
icaciswe ngokweenkcukacha.

Ubume beProjekthi

Le projekthi inamacandelo amaninzi, kuquka
ESP32-C3 Wireless Adventure, ii-LED, izinzwa, kunye nelifu
ngasemva.

Imisebenzi yeProjekthi

Iprojekthi yokukhanya ehlakaniphile ikuvumela ukuba ulawule ukukhanya kunye
umbala LEDs ukude ngokusebenzisa app mobile okanye web
ujongano.

Ukulungiselela i-Hardware

Ukulungiselela iprojekthi, kuya kufuneka uqokelele i
izixhobo zehardware eziyimfuneko, njenge ESP32-C3 Wireless
Ibhodi ye-Adventure, ii-LED, izixhasi, kunye nokubonelela ngombane.

Inkqubo yoPhuhliso

Inkqubo yophuhliso ibandakanya ukuseka uphuhliso
ubume, ikhowudi yokubhala ukulawula ii-LEDs, ukudibanisa kwi
cloud backend, kunye nokuvavanya ukusebenza kwe-smart
ukukhanya.

Intshayelelo ye-ESP RainMaker

I-ESP RainMaker sisikhokelo esinamandla sokuphuhlisa i-IoT
izixhobo. Kweli candelo, uya kufunda ukuba yintoni i-ESP RainMaker kwaye
ingaphunyezwa njani kwiiprojekthi zakho.

Yintoni i-ESP RainMaker?

I-ESP RainMaker liqonga elisekelwe kwilifu elibonelela ngeseti ye
izixhobo kunye neenkonzo zokwakha kunye nokulawula izixhobo ze-IoT.

Ukuphunyezwa kwe-ESP RainMaker

Eli candelo lichaza amacandelo ahlukeneyo abandakanyekayo
ukusebenzisa i-ESP RainMaker, kuquka nenkonzo yokubanga,
Ummeli weRainMaker, umva welifu, kunye noMxumi weRainMaker.

Ukuziqhelanisa: Amanqaku aphambili okuPhuhlisa nge-ESP RainMaker

Kweli candelo lokuziqhelanisa, uya kufunda malunga namanqaku aphambili ukuze
qwalasela xa uphuhlisa nge-ESP RainMaker. Oku kuquka isixhobo
ibango, ungqamaniso lwedatha, kunye nolawulo lomsebenzisi.

Iimpawu ze-ESP RainMaker

I-ESP RainMaker inikezela ngeempawu ezahlukeneyo zolawulo lwabasebenzisi, ekupheleni
abasebenzisi, kunye nabalawuli. Ezi mpawu zivumela isixhobo esilula
ukuseta, ulawulo olukude, kunye nokubeka iliso.

Ukumisela Ubume boPhuhliso

Eli candelo libonelela ngaphezuluview ye-ESP-IDF (Espressif IoT
Isakhelo soPhuhliso), esisisikhokelo sophuhliso esisemthethweni
kwizixhobo ezisekwe kwi-ESP32. Icacisa iinguqulelo ezahlukeneyo ze
I-ESP-IDF kunye nendlela yokuseka indawo yophuhliso.

I-Hardware kunye noPhuhliso loMqhubi

Uyilo lweHardware yeeMveliso zoKhanya eziSmart ezisekwe kwi-ESP32-C3

Eli candelo lijolise kuyilo lwehardware yokukhanya okukrelekrele
iimveliso ezisekelwe kwi-ESP32-C3 Wireless Adventure. Igubungela i
iimpawu kunye nokwakhiwa kweemveliso zokukhanya ezihlakaniphile, kunye ne
uyilo lwehardware yenkqubo engundoqo ye-ESP32-C3.

Iimpawu kunye noKuqulunqwa kweeMveliso zoKhanya eziSmart

Eli candelwana lichaza iimpawu kunye namacandelo enza
up iimveliso zokukhanya smart. Ixoxa ngemisebenzi eyahlukeneyo
kunye neengqwalasela zoyilo lokudala izibane ezihlakaniphile.

Uyilo lweHardware ye-ESP32-C3 Core System

Uyilo lwe-hardware ye-ESP32-C3 inkqubo engundoqo iquka amandla
unikezelo, ukulandelelana kwamandla, ukusetwa kwakhona kwenkqubo, ukukhanya kweSPI, umthombo wewotshi,
kunye ne-RF kunye nokuqwalaselwa kwe-eriyali. Eli candelwana liyabonelela
ulwazi oluthe vetshe kule miba.

FAQ

Umbuzo: Yintoni i-ESP RainMaker?

A: I-ESP RainMaker iqonga elisekelwe kwifu elibonelela ngezixhobo
kunye neenkonzo zokwakha kunye nokulawula izixhobo ze-IoT. Iyenza lula
inkqubo yophuhliso kwaye ivumela ukuseta isixhobo esilula, kude
ulawulo, kunye nokubeka iliso.

Umbuzo: Ndingamisela njani indawo yophuhliso
ESP32-C3?

A: Ukuseta indawo yophuhliso ye-ESP32-C3, uyafuna
ukufaka i-ESP-IDF (i-Espressif IoT Development Framework) kunye
yiqwalasele ngokwemiyalelo enikiweyo. I-ESP-IDF yi
isakhelo sophuhliso esisemthethweni sezixhobo ezisekelwe kwi-ESP32.

Q: Zeziphi iimpawu ze-ESP RainMaker?

A: I-ESP RainMaker inikezela ngeempawu ezahlukeneyo, kubandakanya umsebenzisi
ulawulo, iimpawu zomsebenzisi wokugqibela, kunye neempawu zolawulo. Ulawulo lomsebenzisi
ivumela ukubanga isixhobo esilula kunye nongqamaniso lwedata. Umsebenzisi wokugqiba
iimpawu zenza ulawulo olukude lwezixhobo ngokusebenzisa i-app yeselula okanye
web ujongano. Iimpawu zolawulo zibonelela ngezixhobo zokujonga isixhobo
kunye nolawulo.

ESP32-C3 Wireless Adventure
Isikhokelo esiBanzi kwi-IoT
IiNkqubo ze-Espressif nge-12 kaJuni ngo-2023

Imixholo

I Ukulungiselela

1

1 Intshayelelo kwi-IoT

3

1.1 Uyilo lwe-IoT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.2 Isicelo se-IoT kuMakhaya ahlakaniphile. . . . . . . . . . . . . . . . . . . . . . . . . . 6

I-2 Intshayelelo kunye nokusebenza kweeProjekthi ze-IoT

9

2.1 Intshayelelo kwiiProjekthi ze-IoT eziqhelekileyo. . . . . . . . . . . . . . . . . . . . . . . . 9

2.1.1 IiModyuli eziSisiseko kwii-Common IoT Devices . . . . . . . . . . . . . . . . . 9

2.1.2 IiModyuli eziSisiseko zezicelo zoMxumi . . . . . . . . . . . . . . . . . . . 10

2.1.3 Intshayelelo kwii-Common IoT Cloud Platforms . . . . . . . . . . . . . . 11

2.2 Ukuziqhelanisa: Iprojekthi ye-Smart Light. . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

2.2.1 Ubume beProjekthi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

2.2.2 Imisebenzi yeProjekthi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

2.2.3 ULungiselelo lweHardware. . . . . . . . . . . . . . . . . . . . . . . . . . . 14

2.2.4 Inkqubo yoPhuhliso . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

2.3 Isishwankathelo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

3 Intshayelelo ye-ESP RainMaker

19

3.1 Yintoni i-ESP RainMaker? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

3.2 Ukuphunyezwa kwe-ESP RainMaker . . . . . . . . . . . . . . . . . . . . . . 21

3.2.1 Inkonzo yokufaka ibango . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

3.2.2 Iarhente yoMenzi wemvula . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

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

3.2.4 Umxhasi we-RainMaker. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

3.3 Ukuziqhelanisa: Amanqaku aphambili okuPhuhlisa nge-ESP RainMaker . . . . . . . . . . . . 25

3.4 Iimpawu ze-ESP RainMaker . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

3.4.1 ULawulo lwabasebenzisi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

3.4.2 Iimpawu zoMsebenzisi wokugqibela . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

3.4.3 Iimpawu zoLawulo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

3.5 Isishwankathelo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

4 Ukumisela imeko yoPhuhliso

31

4.1 ESP-IDF Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

4.1.1 Iinguqulelo ze-ESP-IDF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

3

4.1.2 ESP-IDF Git Workflow . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 4.1.3 Ukukhetha inguqulelo efanelekileyo . . . . . . . . . . . . . . . . . . . . . . . . 34 4.1.4 Ngaphezuluview ye ESP-IDF SDK Directory . . . . . . . . . . . . . . . . . . . . 34 4.2 Ukuseka i-ESP-IDF yendawo yoPhuhliso . . . . . . . . . . . . . . . . . 38 4.2.1 Ukuseka i-ESP-IDF yoPhuhliso lweNdawo kwiLinux . . . . . . . . 38 4.2.2 Ukuseka i-ESP-IDF yoPhuhliso lweNdawo kwii-Windows. . . . . . 40 4.2.3 Ukuseka i-ESP-IDF yoPhuhliso lweNdawo kwi-Mac. . . . . . . . . 45 4.2.4 Ukufakwa kweKhowudi yeVS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 4.2.5 Intshayelelo kwiiNdawo zoPhuhliso zeQela leSithathu . . . . . . . . 46 4.3 Inkqubo yokuHlanganisa i-ESP-IDF . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 4.3.1 IiNgcebiso eziSisiseko zeNkqubo yokuHlanganisa . . . . . . . . . . . . . . . . . . 47 4.3.2 Iprojekthi File Ulwakhiwo . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 4.3.3 Ulwakhiwo oluMiselweyo lweMithetho yeNkqubo yokuHlanganisa . . . . . . . . . . . . . 50 4.3.4 Intshayelelo yescript sokuHlanganisa . . . . . . . . . . . . . . . . . . 51 4.3.5 Intshayelelo yeMithetho eqhelekileyo . . . . . . . . . . . . . . . . . . . 52 4.4 Ukuziqhelanisa: Ukuqulunqa iEksampkunye neNkqubo ethi "Blink" . . . . . . . . . . . . . . . . . . 53 4.4.1 Eksample Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 4.4.2 Ukuqulunqa iNkqubo yokuqhwanyaza . . . . . . . . . . . . . . . . . . . . . . . 56 4.4.3 Ukudanyaza iNkqubo yokuqhwanyaza . . . . . . . . . . . . . . . . . . . . . . . . 59 4.4.4 Uhlalutyo lweMibhalo yeZibuko eziLuthotho lweNkqubo yokuqhwanyaza. . . . . . . . . . . . . . 60 4.5 Isishwankathelo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63

II Hardware kunye noPhuhliso loMqhubi

65

5 Uyilo lweHardware yeeMveliso zoKhanya eziSmart ezisekwe kwi-ESP32-C3

67

5.1 Iimpawu kunye noKuqulunqwa kweeMveliso eziKhanya eziKhanya . . . . . . . . . . . . . . . 67

5.2 Uyilo lweHardware ye-ESP32-C3 Core System. . . . . . . . . . . . . . . . . . . 70

5.2.1 Ubonelelo ngoMbane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74

5.2.2 Ukulandelelana koMbane kunye noKusetwa kwakhona kweNkqubo . . . . . . . . . . . . . . . . . . 74

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

5.2.4 Umthombo wewotshi. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

5.2.5 I-RF kunye ne-Antenna. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76

5.2.6 Izikhonkwane zokubopha . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79

5.2.7 GPIO kunye noMlawuli wePWM . . . . . . . . . . . . . . . . . . . . . . . . . 79

5.3 Ukuziqhelanisa: Ukwakha iSmart Light System nge-ESP32-C3. . . . . . . . . . . . . 80

5.3.1 Ukukhetha iiModyuli . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80

5.3.2 Ukuqwalasela iiGPIO zePWM Signals . . . . . . . . . . . . . . . . . . . . 82

5.3.3 Ukukhuphela iFirmware kunye ne-Debugging Interface . . . . . . . . . . . . 82

5.3.4 Izikhokelo zoYilo lweRF . . . . . . . . . . . . . . . . . . . . . . . . . . 84 5.3.5 Izikhokelo zoYilo lokuNikezelwa koMbane . . . . . . . . . . . . . . . . . . . 86 5.4 Isishwankathelo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86

6 Uphuhliso lwabaqhubi

87

6.1 Inkqubo yoPhuhliso lwaBaqhubi . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87

6.2 ESP32-C3 Izicelo zePheripheral. . . . . . . . . . . . . . . . . . . . . . . . . 88

6.3 Iziseko zoMqhubi we-LED . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89

6.3.1 Izithuba zeMibala . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89

6.3.2 Umqhubi we-LED . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94

6.3.3 Ukukhanya kwe-LED. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94

6.3.4 Intshayelelo nge-PWM . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95

6.4 Uphuhliso lwe-LED Dimming Driver . . . . . . . . . . . . . . . . . . . . . . . . 96

6.4.1 UGcino olungagungqiyo (NVS) . . . . . . . . . . . . . . . . . . . . . . . . 97

6.4.2 UMlawuli wePWM we-LED (LEDC) . . . . . . . . . . . . . . . . . . . . . . . 98

6.4.3 INkqubo ye-PWM ye-LED . . . . . . . . . . . . . . . . . . . . . . . . . . 100

6.5 Ukuziqhelanisa: Ukongeza abaqhubi kwiProjekthi ye-Smart Light. . . . . . . . . . . . . . . . . 103

6.5.1 Iqhosha Lokuqhuba . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103

6.5.2 I-LED Dimming Driver . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104

6.6 Isishwankathelo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108

III Unxibelelwano olungenazingcingo kunye noLawulo

109

7 Ulungelelwaniso lweWi-Fi kunye noQhagamshelwano

111

7.1 Iziseko ze-Wi-Fi. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111

7.1.1 Intshayelelo kwi-Wi-Fi . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111

7.1.2 Ukuzivelela kwe-IEEE 802.11. . . . . . . . . . . . . . . . . . . . . . . . . 111

7.1.3 IiNgcebiso zeWi-Fi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112

7.1.4 UQhagamshelwano lweWi-Fi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115

7.2 Iziseko zeBluetooth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122

7.2.1 Intshayelelo kwiBluetooth . . . . . . . . . . . . . . . . . . . . . . . . . 123

7.2.2 IiNgcebiso zeBluetooth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124

7.2.3 UQhagamshelwano lweBluetooth . . . . . . . . . . . . . . . . . . . . . . . . . . . 127

7.3 ULungiselelo lwenethiwekhi ye-Wi-Fi. . . . . . . . . . . . . . . . . . . . . . . . . . . 131

7.3.1 Isikhokelo soLungiselelo lwenethiwekhi yeWi-Fi. . . . . . . . . . . . . . . . . . . . 131

7.3.2 I-SoftAP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132

7.3.3 I-SmartConfig . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132

7.3.4 IBluetooth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135

7.3.5 Ezinye iindlela . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137

7.4 iWi-Fi Programming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139 7.4.1 Izixhobo ze-Wi-Fi kwi-ESP-IDF. . . . . . . . . . . . . . . . . . . . . . . 139 7.4.2 Umthambo: UQhagamshelwano lweWi-Fi . . . . . . . . . . . . . . . . . . . . . . . . 141 7.4.3 Umthambo: UQhagamshelwano lwe-Wi-Fi ehlakaniphile . . . . . . . . . . . . . . . . . . . . . 145
7.5 Ukuziqhelanisa: Ukucwangciswa kwe-Wi-Fi kwiProjekthi yokuKhanya okuSmart. . . . . . . . . . . . . . . 156 7.5.1 UQhagamshelwano lwe-Wi-Fi kwiProjekthi yokuKhanya okuSmart. . . . . . . . . . . . . . . . . 156 7.5.2 Ulungelelwaniso lwe-Smart Wi-Fi . . . . . . . . . . . . . . . . . . . . . . . . . 157
7.6 Isishwankathelo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158

8 uLawulo lwaseKhaya

159

8.1 Intshayelelo kuLawulo lweNgingqi. . . . . . . . . . . . . . . . . . . . . . . . . . . 159

8.1.1 Ukusetyenziswa koLawulo lweNgingqi . . . . . . . . . . . . . . . . . . . . . . . . 161

8.1.2 I-AdvantagUlawulo lweNdawo . . . . . . . . . . . . . . . . . . . . . . . . 161

8.1.3 Ukufumanisa iZixhobo eziLawulwayo ngee-Smartphones. . . . . . . . . . 161

8.1.4 Unxibelelwano lweDatha phakathi kwee-Smartphones kunye neZixhobo . . . . . . . . 162

8.2 Iindlela eziqhelekileyo zoFundo lweNdawo . . . . . . . . . . . . . . . . . . . . . . . . 162

8.2.1 Usasazo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163

8.2.2 Usasazo oluninzi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169

8.2.3 Uthelekiso phakathi koSasazo kunye noSasazo oluninzi . . . . . . . . . . . . . . 176

8.2.4 IProtokholi yeSicelo seMulticast mDNS yokuFumana kwiNdawo . . . . . . . . 176

8.3 IiProthokholi zoNxibelelwano oluQhelekileyo kwiiNkcukacha zeNdawo . . . . . . . . . . . . . . . 179

8.3.1 IProthokholi yoLawulo loThutho (TCP) . . . . . . . . . . . . . . . . . . . 179

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

8.3.3 Umsebenzisi DatagiProtocol yenkunzi yegusha (UDP) . . . . . . . . . . . . . . . . . . . . . . 189

8.3.4 INkqubo yokuSebenza eMiselweyo (CoAP) . . . . . . . . . . . . . . . . 192

8.3.5 iProtocol yeBluetooth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197

8.3.6 Isishwankathelo seeProtokholi zoNxibelelwano ngoDatha . . . . . . . . . . . . . . . 203

8.4 Isiqinisekiso soKhuseleko lweenkcukacha . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205

8.4.1 Intshayelelo kuKhuseleko lweNqanaba lezoThutho (TLS) . . . . . . . . . . . . . 207

8.4.2 Intshayelelo kuDataginkunzi yegusha yoKhuseleko lweNqanaba loThutho (DTLS) . . . . . . . 213

8.5 Ukuziqhelanisa: Ulawulo lweNdawo kwiProjekthi yokukhanya kwe-Smart. . . . . . . . . . . . . . . . . . 217

8.5.1 Ukudala i-Wi-Fi-based Local Control Server . . . . . . . . . . . . . . . 217

8.5.2 Ukuqinisekisa ukusebenza ngokuSebenza koLawulo lweNgingqi usebenzisa i-Scripts. . . . . . . . . . . 221

8.5.3 Ukwenza i-Bluetooth-based Local Control Server . . . . . . . . . . . . 222

8.6 Isishwankathelo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224

9 Ulawulo lwamafu

225

9.1 Intshayelelo yoLawulo olukude . . . . . . . . . . . . . . . . . . . . . . . . . . 225

9.2 IiProtokholi zoNxibelelwano lwamafu. . . . . . . . . . . . . . . . . . . . . . 226

9.2.1 Intshayelelo ye-MQTT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226 9.2.2 Imigaqo-siseko ye-MQTT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227 9.2.3 iMQTT ifomathi yomyalezo . . . . . . . . . . . . . . . . . . . . . . . . . . 228 9.2.4 Uthelekiso lweNkqubo . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233 9.2.5 Ukuseka i-MQTT Broker kwiLinux nakwiiWindows. . . . . . . . . . . . 233 9.2.6 Ukuseta uMQTT uMxumi oSekwe kwi-ESP-IDF . . . . . . . . . . . . . . . . 235 9.3 Ukuqinisekisa uKhuseleko lweDatha ye-MQTT . . . . . . . . . . . . . . . . . . . . . . . . . . . 237 9.3.1 Intsingiselo kunye noMsebenzi weZiqinisekiso . . . . . . . . . . . . . . . . . . . 237 9.3.2 Ukuvelisa iziqinisekiso ekuhlaleni . . . . . . . . . . . . . . . . . . . . . . 239 9.3.3 Ukulungisa i-MQTT Broker . . . . . . . . . . . . . . . . . . . . . . . . . 241 9.3.4 Ukuqwalasela umThengi we-MQTT . . . . . . . . . . . . . . . . . . . . . . . . . 241 9.4 Ukuziqhelanisa: noLawulo olukude nge-ESP RainMaker. . . . . . . . . . . . . . . . 243 9.4.1 ESP RainMaker Basics . . . . . . . . . . . . . . . . . . . . . . . . . . . 243 9.4.2 IProthokholi yoNxibelelwano lwe-Node kunye ne-Cloud Backend. . . . . . . . . . . 244 9.4.3 Unxibelelwano phakathi koMthengi kunye ne-Cloud Backend . . . . . . . . . . . 249 9.4.4 Iindima zabasebenzisi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252 9.4.5 Iinkonzo ezisisiseko . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253 9.4.6 Isibane esiSmart Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255 9.4.7 I-RainMaker App kunye nodibaniso lweqela lesithathu . . . . . . . . . . . . . . . 262 9.5 Isishwankathelo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267

10 Uphuhliso lwe-Smartphone App

269

10.1 Intshayelelo kuPhuhliso lwe-Smartphone App . . . . . . . . . . . . . . . . . . 269

10.1.1 Ngaphezuluview yoPhuhliso lwe-Smartphone App. . . . . . . . . . . . . . . 270

10.1.2 Ubume beProjekthi ye-Android . . . . . . . . . . . . . . . . . . . . . . 270

10.1.3 Ubume beProjekthi ye-iOS . . . . . . . . . . . . . . . . . . . . . . . . 271

10.1.4 Umjikelo wobomi boMsebenzi we-Android . . . . . . . . . . . . . . . . . . . . . . 272

10.1.5 Lifecycle of iOS ViewUmlawuli . . . . . . . . . . . . . . . . . . . . . . 273

10.2 Ukudala iProjekthi ye-Smartphone App eNtsha. . . . . . . . . . . . . . . . . . . . . 275

10.2.1 Ukulungiselela uPhuhliso lwe-Android . . . . . . . . . . . . . . . . . . . 275

10.2.2 Ukudala iProjekthi eNtsha ye-Android . . . . . . . . . . . . . . . . . . . . . . 275

10.2.3 Ukongeza iziXhomekeko kwiMyRainmaker . . . . . . . . . . . . . . . . . 276

10.2.4 Isicelo seMvume kwi-Android. . . . . . . . . . . . . . . . . . . . . . 277

10.2.5 Ukulungiselela uPhuhliso lwe-iOS . . . . . . . . . . . . . . . . . . . . . . 277

10.2.6 Ukudala iProjekthi entsha ye-iOS . . . . . . . . . . . . . . . . . . . . . . . . 278

10.2.7 Ukongeza iziXhomekeko kwiMyRainmaker . . . . . . . . . . . . . . . . . 279

10.2.8 Isicelo seMvume kwi-iOS. . . . . . . . . . . . . . . . . . . . . . . . . 280

10.3 Uhlalutyo lweeMfuno zokuSebenza ze-App. . . . . . . . . . . . . . . . . . 281

10.3.1 Uhlalutyo lweeMfuno zokuSebenza zeProjekthi. . . . . . . . . . . . 282

10.3.2 Uhlalutyo lweeMfuno zoLawulo lwaBasebenzisi . . . . . . . . . . . . . . . 282 10.3.3 Uhlalutyo loBonelelo lweSixhobo kunye neeMfuno zokuBophelela. . . . . . . 283 10.3.4 Uhlahlelo lweeMfuno zoLawulo olukude . . . . . . . . . . . . . . . . 283 10.3.5 Uhlalutyo lweeMfuno zoCwangciso . . . . . . . . . . . . . . . . . . . 284 10.3.6 Uhlalutyo lweeMfuno zeZiko loMsebenzisi . . . . . . . . . . . . . . . . . . 285 10.4 Uphuhliso loLawulo lwabasebenzisi . . . . . . . . . . . . . . . . . . . . . . . . 285 10.4.1 Intshayelelo kwiRainMaker APIs . . . . . . . . . . . . . . . . . . . . . . 285 10.4.2 Ukuqalisa uNxibelelwano nge-Smartphone . . . . . . . . . . . . . . . . 286 10.4.3 Ukubhaliswa Kweakhawunti . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286 10.4.4 Ngena kwiAkhawunti . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289 10.5 Uphuhliso loBonelelo lweSixhobo. . . . . . . . . . . . . . . . . . . . . . . 292 10.5.1 Izixhobo zokuskena . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293 10.5.2 Izixhobo zokuqhagamshela . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295 10.5.3 Ukuvelisa amaqhosha ayimfihlo. . . . . . . . . . . . . . . . . . . . . . . . . . . 298 10.5.4 Ukufumana i-ID yeNodi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 298 10.5.5 Ubonelelo lwezixhobo . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300 10.6 Uphuhliso loLawulo lweSixhobo. . . . . . . . . . . . . . . . . . . . . . . . . . 302 10.6.1 Izixhobo ezibophelelayo kwiiAkhawunti zeLifu . . . . . . . . . . . . . . . . . . . . 303 10.6.2 Ukufumana uludwe lweZixhobo . . . . . . . . . . . . . . . . . . . . . . . . . . 305 10.6.3 Ukufumana iMeko yeSixhobo. . . . . . . . . . . . . . . . . . . . . . . . . . . 308 10.6.4 Ukutshintsha iMeko yesixhobo . . . . . . . . . . . . . . . . . . . . . . . . . . 310 10.7 Uphuhliso loCwangciso neZiko labasebenzisi . . . . . . . . . . . . . . . . . . . 313 10.7.1 Ukuphumeza uMsebenzi woCwangciso . . . . . . . . . . . . . . . . . . . . 313 10.7.2 Ukuphumeza iZiko labasebenzisi . . . . . . . . . . . . . . . . . . . . . . . . . 315 10.7.3 Ngakumbi Cloud APIs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318 10.8 Isishwankathelo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319

I-11 yoPhuculo lweFirmware kunye noLawulo lweNguqulelo

321

11.1 Uphuculo lweFirmware. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321

11.1.1 Ngaphezuluview yoLwahlulo lweZintlu . . . . . . . . . . . . . . . . . . . . . . . . 322

11.1.2 Inkqubo yokuQalisa iFirmware. . . . . . . . . . . . . . . . . . . . . . . . . . . 324

11.1.3 Ngaphezuluview ye-OTA Mechanism. . . . . . . . . . . . . . . . . . . . . 326

11.2 Ulawulo lweNguqulelo yeFirmware. . . . . . . . . . . . . . . . . . . . . . . . . . 329

11.2.1 UkuMakisha iFirmware. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329

11.2.2 I-Rollback kunye ne-Anti-Rollback . . . . . . . . . . . . . . . . . . . . . . . . 331

11.3 Ukuziqhelanisa: Ngokuhamba emoyeni (OTA) Eksample . . . . . . . . . . . . . . . . . . . . . . . 332

11.3.1 UPhuculo lweFirmware Ngomamkeli wasekhaya . . . . . . . . . . . . . . . . . 332

11.3.2 UPhuculo lweFirmware Nge-ESP RainMaker. . . . . . . . . . . . . . . 335

11.4 Isishwankathelo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342

UPhuculo lwe-IV kunye neMveliso yoMninzi

343

I-12 yoLawulo lwaMandla kunye nokuPhuculwa koMbane woMbane

345

12.1 ESP32-C3 Ulawulo lwamandla . . . . . . . . . . . . . . . . . . . . . . . . . . . 345

. . . . . . . . . . . . . . . . . . . . . . . . 12.1.1

12.1.2 Ulungelelwaniso loLawulo lwaMandla . . . . . . . . . . . . . . . . . . . . 348

12.2 ESP32-C3 Imowudi yaMandla aPhantsi . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348

12.2.1 Imodem-yokulala . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349

12.2.2 Imowudi yokulala ukukhanya. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 351

12.2.3 Imowudi yokulala . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356

12.2.4 Ukusetyenziswa kwangoku kwiiNdlela zaMandla ezahlukeneyo . . . . . . . . . . . . . 358

12.3 Ulawulo loMbane kunye noLungiso lwaMandla aphantsi . . . . . . . . . . . . . . . . . 359

12.3.1 Ukulungiswa kweelog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 360

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

12.4 Ukuziqhelanisa: Ulawulo lwamandla kwiProjekthi yokuKhanya okuSmart. . . . . . . . . . . . . . . 363

12.4.1 Ukuqwalasela iCandelo loLawulo lwaMandla . . . . . . . . . . . . . . . . . 364

12.4.2 Sebenzisa izitshixo zoLawulo lwaMandla . . . . . . . . . . . . . . . . . . . . . . 365

12.4.3 Ukuqinisekisa ukuSetyenziswa koMbane . . . . . . . . . . . . . . . . . . . . . . . 366

12.5 Isishwankathelo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367

13 Iimpawu zoKhuseleko lweSixhobo esongezelelweyo

369

13.1 Ngaphezuluview yoKhuseleko lweDatha yeSixhobo se-IoT. . . . . . . . . . . . . . . . . . . . . . . 369

13.1.1 Kutheni uKhusela iDatha yesiXhobo se-IoT? . . . . . . . . . . . . . . . . . . . . . . 370

13.1.2 Iimfuno ezisisiseko zoKhuseleko lweDatha yeSixhobo se-IoT . . . . . . . . . . . . 371

13.2 ukuKhuselwa koMthetho weDatha. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 372

13.2.1 Intshayelelo yeNdlela yoQinisekiso lweMfezeko. . . . . . . . . . . . . . 372

13.2.2 Ukuqinisekiswa kweMfezeko yedatha yeFirmware. . . . . . . . . . . . . . . . . . 373

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

13.3 uKhuseleko lweMfihlo kwiiNkcukacha . . . . . . . . . . . . . . . . . . . . . . . . . . 374

13.3.1 Intshayelelo yokuFihliswa kweeNkcukacha . . . . . . . . . . . . . . . . . . . . . . 374

13.3.2 Intshayelelo ye-Flash Encryption Scheme . . . . . . . . . . . . . . . . . 376

13.3.3 Ugcino oluFihliweyo lweFlash Storage . . . . . . . . . . . . . . . . . . . . . . . 379

13.3.4 Imowudi yokuSebenza yoFihlo lweFlash. . . . . . . . . . . . . . . . . . . . 380

13.3.5 Inkqubo yoFihlo lweFlash. . . . . . . . . . . . . . . . . . . . . . . . . . 381

13.3.6 Intshayelelo kwi-NVS Encryption. . . . . . . . . . . . . . . . . . . . . . 383

13.3.7 EksampLes yoFihlo lweFlash kunye neNVS Encryption. . . . . . . . . . . 384

13.4 Ukukhuselwa ngokusemthethweni kweDatha. . . . . . . . . . . . . . . . . . . . . . . . . . . . 386

13.4.1 Intshayelelo kwiSiginitsha yeDijithali. . . . . . . . . . . . . . . . . . . . . 386

13.4.2 Ngaphezuluview yeSikimu sokuQalisa ngokuKhuselekileyo. . . . . . . . . . . . . . . . . . . . . 388

13.4.3 Intshayelelo kwiSofthiwe eKhuselekileyo yokuQalisa . . . . . . . . . . . . . . . . . . . 388 13.4.4 Intshayelelo kwi-Hardware Khusela i-boot. . . . . . . . . . . . . . . . . . 390 13.4.5 Eksamples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 394 13.5 Ukuziqhelanisa: Iimpawu zoKhuseleko kwiMveliso yoMninzi. . . . . . . . . . . . . . . . . . 396 13.5.1 Ufihlo lweFlash kunye noKhuseleko lwe-Boot. . . . . . . . . . . . . . . . . . . . . 396 13.5.2 Ukuvula uFihlo lweFlash kunye nokuKhuseleka kokuQalisa ngeBatch Flash Tools. . 397 13.5.3 Ukuvula uFihlo lweFlash kunye nokuKhuseleka kokuQalisa kwiProjekthi yoKhanya oluSmart. . . 398 13.6 Isishwankathelo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 398

I-14 yokutshiswa kweFirmware kunye noVavanyo lweMveliso yoMninzi

399

14.1 Ukutshiswa kweFirmware kwiMveliso yoMninzi. . . . . . . . . . . . . . . . . . . . . . 399

14.1.1 Ukuchaza iZahlulo zeDatha. . . . . . . . . . . . . . . . . . . . . . . . . . 399

14.1.2 Ukutshiswa kweFirmware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 402

14.2 Uvavanyo lweMveliso yoMninzi. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403

14.3 Ukuziqhelanisa: Idatha yoMveliso weMisa kwiProjekthi yokukhanya kwe-Smart. . . . . . . . . . . . . 404

14.4 Isishwankathelo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404

I-15 ESP Insights: I-Remote Monitoring Platform

405

15.1 Intshayelelo kwi-ESP Insights . . . . . . . . . . . . . . . . . . . . . . . . . . . . 405

15.2 Ukuqalisa nge-ESP Insights . . . . . . . . . . . . . . . . . . . . . . . . . 409

15.2.1 Ukuqalisa nge-ESP Insights kwiProjekthi ye-esp-insights. . . . . . 409

15.2.2 Ukuqhuba Eksample kwiProjekthi ye-esp-insights. . . . . . . . . . . . . . . 411

15.2.3 Ukunika iNgxelo ngeNgcaciso yeNdalo engundoqo . . . . . . . . . . . . . . . . . . . . . 411

15.2.4 Ukulungelelanisa iiLog ezinomdla . . . . . . . . . . . . . . . . . . . . . . . . 412

15.2.5 Isizathu sokunika iNgxelo yokuQalisa kwakhona . . . . . . . . . . . . . . . . . . . . . . . . . 413

15.2.6 Ukunika ingxelo ngeeMetrikhi zesiNtu . . . . . . . . . . . . . . . . . . . . . . . . . 413

15.3 Ukuziqhelanisa: Ukusebenzisa i-ESP Insights kwiProjekthi yokuKhanya okuSmart. . . . . . . . . . . . . . . 416

15.4 Isishwankathelo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417

Intshayelelo
I-ESP32-C3 i-Wi-Fi eyodwa-core kunye neBluetooth 5 (LE) microcontroller SoC, ngokusekelwe kwi-architecture ye-RISC-V evulekile. Ibetha ibhalansi elungileyo yamandla, amandla e-I / O, kunye nokhuseleko, ngaloo ndlela inikezela ngesisombululo esinexabiso elifanelekileyo lezixhobo ezixhunyiwe. Ukubonisa izicelo ezahlukeneyo zosapho lwe-ESP32-C3, le ncwadi ngu-Espressif iya kukuthatha kuhambo olunika umdla nge-AIoT, ukuqala kwiziseko zophuhliso lweprojekthi ye-IoT kunye nokusekwa kwendalo ukuya kwi-ex practical.amples. Izahluko ezine zokuqala zithetha nge-IoT, i-ESP RainMaker kunye ne-ESP-IDF. Isahluko 5 kunye ne-6 emfutshane malunga noyilo lwehardware kunye nophuhliso lwabaqhubi. Njengoko uqhubela phambili, uya kufumanisa ukuba ungayimisa njani iprojekthi yakho ngenethiwekhi ye-Wi-Fi kunye neeApps eziphathwayo. Ekugqibeleni, uya kufunda ukwandisa iprojekthi yakho kwaye uyibeke kwimveliso yobuninzi.
Ukuba uyinjineli kumacandelo anxulumeneyo, umyili wesoftware, utitshala, umfundi, okanye nabani na onomdla kwi-IoT, le ncwadi yeyakho.
Unakho ukukhuphela ikhowudi example isetyenziswe kule ncwadi kwindawo ye-Espressif kwi-GitHub. Ngolwazi lwamva nje ngophuhliso lwe-IoT, nceda ulandele iakhawunti yethu esemthethweni.

Intshayelelo
Ihlabathi Elinika Ulwazi
Ukukhwela i-Intanethi, i-Intanethi yeZinto (IoT) yenza i-debut yayo enkulu ukuba ibe luhlobo olutsha lweziseko ezingundoqo kuqoqosho lwedijithali. Ukusondeza iteknoloji kuluntu, iiNkqubo ze-Espressif zisebenzela umbono wokuba abaphuhlisi abavela kuzo zonke iindlela zobomi banokusebenzisa i-IoT ukuxazulula ezinye zeengxaki ezixinzelelekileyo zamaxesha ethu. Ihlabathi “Lothungelwano Olukrelekrele Lwezinto Zonke” yinto esiyilindeleyo kwixesha elizayo.
Ukuyila iitshiphusi zethu kwenza icandelo elibalulekileyo lalo mbono. Iya kuba lugqatso lomdyarho, olufuna impumelelo ethe gqolo ngokuchasene nemida yobuchwepheshe. Ukusuka kwi-"Game Changer" ESP8266 kwi-series ye-ESP32 yokudibanisa i-Wi-Fi kunye neBluetoothr (LE) uxhumano, ilandelwa yi-ESP32-S3 exhotyiswe yi-AI yokukhawuleza, i-Espressif ayize iyeke ukuphanda nokuphuhlisa iimveliso ze-AIoT izisombululo. Ngesoftware yethu evulekileyo yomthombo, njengeSikhokelo soPhuhliso lwe-IoT i-ESP-IDF, iSakhelo soPhuhliso lwe-Mesh ESP-MDF, kunye nePlatform yoQhagamshelwano lweSixhobo ESP RainMaker, senze isakhelo esizimeleyo sokwakha izicelo ze-AIoT.
Ukusukela ngoJulayi ka-2022, ukuthunyelwa okongezelekayo kwee-chipsets ze-IoT ze-Espressif kudlule kwi-800 yezigidi, okukhokelela kwimakethi ye-Wi-Fi MCU kwaye kunika amandla inani elikhulu lezixhobo eziqhagamshelwe kwihlabathi liphela. Ukufuna ukugqwesa kwenza yonke imveliso ye-Espressif ibe yinto enkulu kwinqanaba layo eliphezulu lokudityaniswa kunye nokusebenza kakuhle kweendleko. Ukukhutshwa kwe-ESP32-C3 kuphawula inqanaba elibalulekileyo letekhnoloji yokuziphuhlisa ye-Espressif. I-single-core, i-32-bit, i-RISC-V-esekelwe kwi-MCU kunye ne-400KB ye-SRAM, enokuqhuba kwi-160MHz. Idibanise i-2.4 GHz Wi-Fi kunye ne-Bluetooth 5 (LE) kunye nenkxaso yexesha elide. Ibetha ibhalansi elungileyo yamandla, amandla e-I / O, kunye nokhuseleko, ngaloo ndlela inikezela ngesisombululo esinexabiso elifanelekileyo lezixhobo ezixhunyiwe. Ngokusekwe kwi-ESP32-C3 enamandla ngolo hlobo, le ncwadi yenzelwe ukunceda abafundi ukuba baqonde ulwazi olunxulumene ne-IoT ngomfanekiso ocacileyo kunye ne-ex practical.amples.
Kwakutheni ukuze sibhale le ncwadi?
I-Espressif Systems ingaphezulu kwenkampani ye-semiconductor. Ikwayinkampani yeqonga le-IoT, ehlala ilwela impumelelo kunye nezinto ezintsha kwicandelo letekhnoloji. Ngexesha elifanayo, i-Espressif inemithombo evulekileyo kwaye yabelane ngenkqubo yayo yokusebenza ephuhlisiwe kunye nesakhelo sesoftware kunye noluntu, ukwenza i-ecosystem ekhethekileyo. Iinjineli, abenzi, kunye nabathandi betekhnoloji baphuhlisa usetyenziso lwesoftware entsha esekwe kwiimveliso ze-Espressif, banxibelelana ngokukhululekileyo, kwaye babelane ngamava abo. Ungazibona izimvo zabaphuhlisi ezinomdla kumaqonga ohlukeneyo ngamaxesha onke, anje ngeYouTube kunye neGitHub. Ukuthandwa kweemveliso ze-Espressif kukhuthaze ukwanda kwenani lababhali abaye bavelisa ngaphezulu kwe-100 yeencwadi ezisekelwe kwi-chipsets ye-Espressif, kwiilwimi ezingaphezu kweshumi, kuquka isiNgesi, isiTshayina, isiJamani, isiFrentshi kunye nesiJapan.

Yinkxaso kunye nokuthembela kwamaqabane oluntu akhuthaza ukuveliswa okuqhubekayo kwe-Espressif. “Sizama ukwenza iitshiphusi zethu, iinkqubo zokusebenza, izikhokelo, izisombululo, iLifu, imisebenzi yeshishini, izixhobo, amaxwebhu, imibhalo, imibono, njl. Eli lelona bhongo liphakamileyo le-Espressif nekhampasi yokuziphatha.” utshilo uMnu Teo Swee Ann, uMseki kunye ne-CEO ye-Espressif.
I-Espressif ikuxabisile ukufunda kunye nezimvo. Njengoko uphuculo oluqhubekayo lwetekhnoloji ye-IoT lubeka iimfuno eziphezulu kwiinjineli, sinokunceda njani abantu abaninzi ukuba baqonde ngokukhawuleza iitshiphusi ze-IoT, iinkqubo zokusebenza, izikhokelo zesoftware, izikimu zesicelo kunye neemveliso zenkonzo yelifu? Njengoko kuthethwa, kulunge ngakumbi ukufundisa umntu indlela yokuloba kunokumnika intlanzi. Kwiseshoni yokucinga ngengqondo, kwenzekile kuthi ukuba sibhale incwadi ukuze sihlele ngokucwangcisiweyo ulwazi oluphambili lophuhliso lwe-IoT. Sayibetha, saqokelela ngokukhawuleza iqela leenjineli eziphezulu, kwaye sadibanisa amava eqela lobugcisa kwiprogram edibeneyo, i-hardware ye-IoT kunye nophuhliso lwesoftware, zonke ezinegalelo ekupapashweni kwale ncwadi. Kwinkqubo yokubhala, sizame konke okusemandleni ethu ukuba nenjongo kunye nobulungisa, sihluthwe i-cocoon, kwaye sisebenzise amabinzana amafutshane ukuxelela ubunzima kunye nomtsalane we-Intanethi yeZinto. Sishwankathele ngononophelo imibuzo eqhelekileyo, ebhekiselele kwiingxelo kunye neengcebiso zoluntu, ukuze siphendule ngokucacileyo imibuzo efunyenwe kwinkqubo yophuhliso, kunye nokubonelela ngezikhokelo zophuhliso lwe-IoT ezisebenzayo kumagcisa afanelekileyo kunye nabenzi bezigqibo.
Ulwakhiwo lweNcwadi
Le ncwadi ithatha umbono ogxile kubunjineli kwaye icacisa ulwazi oluyimfuneko kuphuhliso lweprojekthi ye-IoT inyathelo ngenyathelo. Iqulunqwe ngamalungu amane, ngolu hlobo lulandelayo:
· Ukulungiselela (Isahluko 1): Le nxalenye yazisa i-architecture ye-IoT, isakhelo seprojekthi ye-IoT eqhelekileyo, iqonga lelifu le-ESP RainMakerr, kunye nommandla wophuhliso lwe-ESP-IDF, ukwenzela ukubeka isiseko esiluqilima sophuhliso lweprojekthi ye-IoT.
· I-Hardware kunye noPhuhliso loMqhubi (Isahluko 5): Ngokusekelwe kwi-chipset ye-ESP6-C32, le nxalenye ichaza ngokubanzi inkqubo encinci ye-hardware kunye nophuhliso lwabaqhubi, kwaye iphumeza ulawulo lobumnyama, ukuhlelwa kombala, kunye nonxibelelwano olungenacingo.
· Unxibelelwano olungenazingcingo kunye noLawulo (iSahluko 7): Le nxalenye icacisa iskimu sokucwangciswa kwe-Wi-Fi ehlakaniphile esekwe kwi-chip ye-ESP11-C32, iiprothokholi zolawulo lwendawo kunye nelifu, kunye nolawulo lwendawo kunye nolawulo olude lwezixhobo. Ikwabonelela ngezikimu zokuphuhlisa ii-apps ze-smartphone, ukuphuculwa kwe-firmware, kunye nolawulo lwenguqulelo.
· Ukuphuculwa kunye nokuVeliswa koMninzi (Isahluko 12-15): Le nxalenye ijoliswe kwizicelo eziphambili ze-IoT, ezigxininise ekuphuculeni iimveliso kulawulo lwamandla, ukulungiswa kwamandla aphantsi, kunye nokhuseleko oluphuculweyo. Ikwazisa ukutshiswa kwe-firmware kunye novavanyo kwimveliso yobuninzi, kunye nendlela yokuxilonga ubume obusebenzayo kunye neelogi ze-firmware yesixhobo ngeqonga lokujonga elikude le-ESP Insights.

Malunga neKhowudi yoMthombo
Abafundi banokuqhuba i-example iinkqubo kule ncwadi, nokuba ngokufaka ikhowudi ngesandla okanye ngokusebenzisa ikhowudi yemvelaphi ehamba nencwadi. Sigxininisa indibaniselwano yethiyori kunye nokuziqhelanisa, kwaye ngaloo ndlela siseta icandelo lokuSebenza elisekelwe kwiprojekthi ye-Smart Light phantse kwisahluko ngasinye. Zonke iikhowudi zivuliwe. Abafundi bamkelekile ukukhuphela ikhowudi yomthombo kwaye baxoxe ngayo kumacandelo anxulumene nale ncwadi kwi-GitHub kunye neforum yethu esemthethweni esp32.com. Ikhowudi evulelekileyo yale ncwadi ixhomekeke kwimigaqo ye-Apache License 2.0.
Inqaku loMbhali
Le ncwadi iveliswe ngokusemthethweni yi-Espressif Systems kwaye ibhalwe ziinjineli eziphezulu zenkampani. Ilungele abaphathi kunye nabasebenzi be-R&D kumashishini anxulumene ne-IoT, ootitshala nabafundi bee-majors ezinxulumeneyo, kunye nabanomdla kwinkalo ye-Intanethi yeZinto. Siyathemba ukuba le ncwadi ingasebenza njengencwadana yomsebenzi, ireferensi, kunye nencwadi esecaleni kwebhedi, ukuze ibe njengomkhapheli nomhlobo olungileyo.
Ngelixa siqulunqa le ncwadi, siye sabhekisa kwiziphumo zophando ezifanelekileyo zeengcaphephe, izifundiswa, namagcisa ekhaya naphesheya, kwaye senze konke okusemandleni ethu ukuzicaphula ngokwemigaqo yezemfundo. Nangona kunjalo, akunakuphepheka ukuba kubekho izinto ezishiyiweyo, ngoko ke apha singathanda ukubonisa intlonipho yethu enzulu kunye nombulelo kubo bonke ababhali abafanelekileyo. Ukongeza, sicaphule ulwazi oluvela kwi-Intanethi, ngoko ke sinqwenela ukubulela ababhali bokuqala kunye nabapapashi kwaye sixolise ukuba asikwazi ukubonisa umthombo walo lonke ulwazi.
Ukuze sivelise incwadi ekumgangatho ophezulu, siye saququzelela imijikelo yeengxoxo zangaphakathi, kwaye safunda kwiingcebiso kunye nengxelo yabafundi bovavanyo kunye nabahleli babapapashi. Apha, singathanda ukubulela kwakhona ngoncedo lwenu nonke ebe negalelo kulo msebenzi ube yimpumelelo.
Okokugqibela, kodwa okona kubalulekileyo, sibulela wonke umntu e-Espressif osebenze nzima ukuzalwa kunye nokuthandwa kweemveliso zethu.
Ukuphuhliswa kweeprojekthi ze-IoT kubandakanya uluhlu olubanzi lolwazi. Ukukhawulelana nobude bencwadi, kunye nenqanaba kunye namava ombhali, ukukhutshwa akunakuphepheka. Ke ngoko, sicela ngobubele ukuba iingcali kunye nabafundi bagxeke kwaye balungise iimpazamo zethu. Ukuba unazo naziphi na iingcebiso kule ncwadi, nceda uqhagamshelane nathi book@espressif.com. Sijonge phambili kwingxelo yakho.

Isetyenziswa njani le ncwadi?
Ikhowudi yeeprojekthi ezikule ncwadi ivuliwe. Ungayikhuphela kwindawo yethu yokugcina i-GitHub kwaye wabelane ngeengcinga zakho kunye nemibuzo kwiforum yethu esemthethweni. I-GitHub: https://github.com/espressif/book-esp32c3-iot-projects Forum: https://www.esp32.com/bookc3 Kuyo yonke le ncwadi, kuya kubakho iinxalenye ezibonakaliswe ngezantsi.
Ikhowudi yomthombo Kule ncwadi, sigxininisa indibaniselwano yethiyori kunye nokusebenza, kwaye ke ngoko usete icandelo lokuSebenza malunga neprojekthi yokuKhanya okuSmart phantse kwisahluko ngasinye. Amanyathelo ahambelanayo kunye nephepha lomthombo liya kuphawulwa phakathi kwemigca emibini eqala nge tag Ikhowudi yonikezo.
QAPHELA/IINGCEBISO Apha kulapho unokufumana khona ulwazi olubalulekileyo kunye nesikhumbuzo sokulungisa ngempumelelo inkqubo yakho. Ziya kuphawulwa phakathi kwemigca emibini engqindilili eqala nge tag QAPHELA okanye IINGCEBISO.
Uninzi lwemiyalelo kule ncwadi luqhutywa phantsi kweLinux, iqhutywa ngumlinganiswa "$". Ukuba umyalelo ufuna amalungelo akhethekileyo omsebenzisi ukuba aphumeze, i-prompt iya kutshintshwa ngu-“#”. Umyalelo womyalelo kwiinkqubo ze-Mac ngu-“%”, njengoko usetyenziswa kwiCandelo 4.2.3 Ukufaka i-ESP-IDF kwi-Mac.
Isicatshulwa somzimba kule ncwadi siya kuprintwa kwi-Charter, ngelixa ikhowudi exampLes, amalungu, imisebenzi, variables, ikhowudi file amagama, abalawuli bekhowudi, kunye nemitya iya kuba kwiCourier New.
Imiyalelo okanye imibhalo ekufuneka ifakwe ngumsebenzisi, kunye nemiyalelo enokuthi ingeniswe ngokucofa iqhosha elithi "Enter" iya kuprintwa kwiCourier New ngqindilili. Iilogi kunye neebhloko zekhowudi ziya kuboniswa kwiibhokisi eziluhlaza okwesibhakabhaka.
Example:
Okwesibini, sebenzisa i esp-idf/components/nvs flash/nvs partition generator/nvs partition gen.py ukwenza isahlulelo seNVS sokubini file kumamkeli wophuhliso ngalo myalelo ulandelayo:
$ python $IDF UMENDO/izakhi/nvs flash/nvs isahlulelo generator/nvs isahlulelo gen.py –input mass prod.csv –output mass prod.bin –size NVS PARTITION SIZE

Isahluko 1

Intshayelelo

ukuya

IoT

Ekupheleni kwenkulungwane yama-20, ngokunyuka kothungelwano lwekhompyuter kunye nobuchwepheshe bonxibelelwano, i-Intanethi idityaniswe ngokukhawuleza kubomi babantu. Njengoko itekhnoloji ye-Intanethi iqhubeka nokukhula, umbono we-Intanethi weZinto (IoT) wazalwa. Ngokwenyani, i-IoT ithetha i-Intanethi apho izinto ziqhagamshelwe khona. Ngelixa i-Intanethi yasekuqaleni iphula imida yendawo kunye nexesha kwaye inciphisa umgama phakathi "komntu nomntu", i-IoT yenza "izinto" zibe ngumthathi-nxaxheba obalulekileyo, ukusondeza "abantu" kunye "nezinto" kunye. Kwixesha elizayo elibonakalayo, i-IoT imiselwe ukuba ibe yeyona nto iqhuba ishishini lolwazi.
Ke, yintoni i-Intanethi yeZinto?
Kunzima ukuchaza ngokuchanekileyo i-Intanethi yeZinto, njengoko intsingiselo yayo kunye nobubanzi buhlala buvela. Ngo-1995, uBill Gates waqala wavelisa umbono we-IoT kwincwadi yakhe ethi The Road Ahead. Ngamafutshane, i-IoT yenza ukuba izinto zitshintshiselane ngolwazi nge-Intanethi. Injongo yalo yokugqibela kukuseka "i-Intanethi yeYonke into". Oku kukutolikwa kwangaphambili kwe-IoT, kunye nefantasy yetekhnoloji yexesha elizayo. Kwiminyaka engamashumi amathathu kamva, kunye nophuhliso olukhawulezayo lwezoqoqosho kunye neteknoloji, ifantasy iyenzeka. Ukusuka kwizixhobo ezihlakaniphile, amakhaya ahlakaniphile, izixeko ezihlakaniphile, i-Intanethi yeZithuthi kunye nezixhobo ezinxitywayo, ukuya kwi-"metaverse" exhaswa buchwephesha be-IoT, iingcamango ezintsha zihlala zivela. Kwesi sahluko, siza kuqala ngengcaciso yoyilo lwe-Intanethi yeZinto, kwaye emva koko sazise esona sicelo sixhaphakileyo se-IoT, ikhaya elihlakaniphile, ukuze sikuncede ufumane ukuqonda okucacileyo kwe-IoT.
1.1 Uyilo lwe-IoT
I-Intanethi yeZinto ibandakanya itekhnoloji ezininzi ezineemfuno ezahlukeneyo zesicelo kunye neefom kumashishini ahlukeneyo. Ukuze kulungiswe isakhiwo, ubugcisa obuphambili kunye neempawu zokusetyenziswa kwe-IoT, kuyimfuneko ukuseka i-architecture edibeneyo kunye nenkqubo yobugcisa obuqhelekileyo. Kule ncwadi, i-architecture ye-IoT yahlulahlulwe ngokulula ibe ngamaleko amane: umbono kunye nolawulo lolawulo, umaleko womnatha, umaleko weqonga, kunye nomaleko wesicelo.
Ukuqonda kunye noMaleko woLawulo Njengowona mba usisiseko woyilo lwe-IoT, ukuqonda kunye nomgangatho wolawulo ngundoqo wokuqonda imvakalelo ebanzi ye-IoT. Umsebenzi wayo ophambili kukuqokelela, ukuchonga nokulawula ulwazi. Ibandakanya izixhobo ezahlukeneyo ezinobuchule bokubona,
3

ukuchongwa, ukulawula kunye nokwenziwa, kwaye unoxanduva lokufumana kwakhona kunye nokuhlalutya idatha efana neempawu eziphathekayo, iindlela zokuziphatha, kunye nesimo sesixhobo. Ngale ndlela, i-IoT ifumana ukuqonda umhlaba wokwenyani. Ngaphandle koko, umaleko uyakwazi ukulawula ubume besixhobo.
Izixhobo eziqhelekileyo zolu luhlu ziyi-sensor ezahlukeneyo, ezidlala indima ebalulekileyo ekuqokeleleni ulwazi kunye nokuchongwa. Izivamvo zifana namalungu ezivamvo zomntu, anje ngephotosensitive sensors elingana nokubona, acoustic sensors to hear, acoustic sensors to hear, igesi yokuva ivumba, kunye noxinzelelo kunye nobushushu bokuvava ukubamba. Ngawo onke la "malungu eenzwa", izinto "ziyaphila" kwaye ziyakwazi ukuqonda, ukuqondwa kunye nokulawula umhlaba wenyama.
Umaleko womnatha Umsebenzi ophambili womaleko wothungelwano kukudlulisa ulwazi, kuquka idata efunyenwe kwimbono & umaleko wolawulo ukuya kwithagethi ekhankanyiweyo, kunye nemiyalelo ekhutshiweyo ukusuka kumaleko wesicelo umva ukuya kwimbono & nomaleko wolawulo. Isebenza njengebhulorho yonxibelelwano ebalulekileyo edibanisa iileya ezahlukeneyo zenkqubo ye-IoT. Ukuseta imodeli esisiseko ye-Intanethi yeZinto, kubandakanya amanyathelo amabini okudibanisa izinto kwinethiwekhi: ukufikelela kwi-Intanethi kunye nokuhanjiswa nge-Intanethi.
Ukufikelela kwi-Intanethi ye-Intanethi kwenza unxibelelwano phakathi komntu nomntu, kodwa lusilele ukubandakanya izinto kusapho olukhulu. Ngaphambi kokufika kwe-IoT, izinto ezininzi zazingenalo "unxibelelwano lwenethiwekhi". Ngombulelo kuphuhliso oluqhubekayo lwetekhnoloji, i-IoT ilawula ukudibanisa izinto kwi-Intanethi, ngaloo ndlela iqonda ukunxibelelana phakathi "kobantu nezinto", kunye "nezinto nezinto". Kukho iindlela ezimbini eziqhelekileyo zokuphumeza uqhagamshelo lwe-Intanethi: ukufikelela kwinethiwekhi yeentambo kunye nokufikelela kwinethiwekhi engenazingcingo.
Iindlela zokufikelela kwinethiwekhi ngeentambo ziquka i-Ethernet, unxibelelwano olulandelelanayo (umz., RS-232, RS-485) kunye ne-USB, ngelixa ukufikelela kwinethiwekhi engenazingcingo kuxhomekeke kunxibelelwano olungenazingcingo, olunokwahlulwa ngakumbi lube lunxibelelwano olungenazingcingo olufutshane kunye nonxibelelwano olungenazingcingo olude.
Unxibelelwano olungenazingcingo olufutshane lubandakanya iZigBee, iBluetoothr, iWi-Fi, iNxibelelwano ekufutshane neNdawo (NFC), kunye neRadio Frequency Identification (RFID). Unxibelelwano olungenazintambo olude lubandakanya uThungelwano loMtshini oPhuhliweyo (i-eMTC), i-LoRa, i-Intanethi ye-Intanethi ye-Narrow Band yezinto (NB-IoT), i-2G, i-3G, i-4G, i-5G, njl.
Ugqithiso nge-Intanethi Iindlela ezahlukeneyo zokufikelela kwi-Intanethi zikhokelela kunxibelelwano oluhambelanayo lwedatha. Into elandelayo kukugqiba ukuba yeyiphi iprotocol yonxibelelwano oza kuyisebenzisa ukuhambisa idatha. Xa kuthelekiswa neetheminali ze-Intanethi, uninzi lweetheminali ze-IoT okwangoku zinembalwa
4 I-ESP32-C3 i-Adventure ye-Wireless: Isikhokelo esiBanzi kwi-IoT

izixhobo ezikhoyo, ezifana nokusebenza kokucubungula, amandla okugcina, izinga lenethiwekhi, njl., ngoko ke kuyimfuneko ukukhetha iprotocol yonxibelelwano ethatha izibonelelo ezimbalwa kwizicelo ze-IoT. Kukho iiprothokholi ezimbini zonxibelelwano ezisetyenziswa ngokubanzi namhlanje: I-Message Queuing Telemetry Transport (MQTT) kunye neConstrained Application Protocol (CoAP).
I-Platform Layer Iqonga leqonga libhekisa ikakhulu kumaqonga elifu e-IoT. Xa zonke iitheminali ze-IoT zidityanisiwe, idatha yazo kufuneka idityaniswe kwiqonga lelifu le-IoT ukuze libalwe kwaye ligcinwe. Umaleko weqonga uxhasa ikakhulu usetyenziso lwe-IoT ekuququzeleleni ukufikelela kunye nolawulo lwezixhobo ezikhulu. Idibanisa ii-terminals ze-IoT kwi-platform yefu, iqokelela idatha ye-terminal, kwaye ikhupha imiyalelo kwii-terminals, ukwenzela ukuba kuphunyezwe ulawulo olukude. Njengenkonzo ephakathi yokunikezela izixhobo kwizicelo zeshishini, umaleko weqonga udlala indima yokudibanisa kulo lonke ulwakhiwo lwe-IoT, ephethe ingqiqo yeshishini elingabonakaliyo kunye nemodeli yedatha esemgangathweni, engakwaziyo ukufikelela ngokukhawuleza kwezixhobo, kodwa ikwabonelela ngezakhono ezinamandla zeemodyuli. ukuhlangabezana neemfuno ezahlukeneyo kwimiba yesicelo soshishino. Uluhlu lweqonga lubandakanya ikakhulu iimodyuli ezisebenzayo ezifana nokufikelela kwisixhobo, ulawulo lwesixhobo, ulawulo lokhuseleko, unxibelelwano lomyalezo, ukubekwa esweni ukusebenza kunye nokugcinwa, kunye nokusetyenziswa kwedatha.
· Ukufikelela kwisixhobo, ukuqonda uqhagamshelo kunye nonxibelelwano phakathi kweetheminali kunye namaqonga elifu e-IoT.
· Ulawulo lwesixhobo, kuquka imisebenzi efana nokudalwa kwesixhobo, ugcino lwesixhobo, uguqulelo lwedatha, ungqamaniso lwedatha, kunye nokuhanjiswa kwesixhobo.
· Ulawulo lokhuseleko, ukuqinisekisa ukhuseleko lokugqithiswa kwedatha ye-IoT kwiimbono zoqinisekiso lokhuseleko kunye nokhuseleko lonxibelelwano.
· Unxibelelwano lomyalezo, kubandakanywa izikhokelo ezintathu zokuhambisa, oko kukuthi, i-terminal ithumela idatha kwi-platform yefu ye-IoT, i-platform yefu ye-IoT ithumela idatha kwicala lomncedisi okanye ezinye iiplatifomu zefu ze-IoT, kwaye i-server ilawula kude izixhobo ze-IoT.
· Ukubeka iliso kwi-O&M, ebandakanya ukubeka iliso kunye noxilongo, uphuculo lwe-firmware, ukulungiswa kwe-intanethi, iinkonzo zelogi, njl.
· Ukusetyenziswa kwedatha, okubandakanya ukugcinwa, uhlalutyo kunye nokusetyenziswa kwedatha.
Uluhlu lweSicelo Uluhlu lwesicelo lusebenzisa idatha evela kuluhlu lweqonga lokulawula usetyenziso, ukuhluza kunye nokusebenza ngezixhobo ezifana nedathabheyisi kunye nesoftware yokuhlalutya. Idatha efunyenweyo inokusetyenziselwa usetyenziso lwe-IoT lwehlabathi lokwenyani olunje ngenkathalo yezempilo elumkileyo, ezolimo ngobuchule, amakhaya alumkileyo, kunye nezixeko ezikrelekrele.
Ewe kunjalo, uyilo lwe-IoT lunokwahlulwa lube ngamacandelo amaninzi, kodwa kungakhathaliseki ukuba zingaphi iileya eziqulathe zona, umgaqo osisiseko uhlala ufana. Ukufunda
Isahluko 1. Intshayelelo ye-IoT 5

malunga noyilo lwe-IoT lunceda ukuqinisa ukuqonda kwethu itekhnoloji ye-IoT kunye nokwakha iiprojekthi ze-IoT ezisebenza ngokupheleleyo.
1.2 Isicelo se-IoT kuMakhaya ahlakaniphile
I-IoT ingene kuzo zonke iinkalo zobomi, kwaye esona sicelo sisondele kakhulu kwi-IoT likhaya elihlakaniphile. Uninzi lwezixhobo zemveli ngoku zixhotyiswe ngesixhobo esinye okanye ezingaphezulu ze-IoT, kwaye izindlu ezininzi ezisanda kwakhiwa ziyilwe ngobuchwephesha be-IoT kwasekuqaleni. Umzobo 1.1 ubonisa izixhobo eziqhelekileyo zasekhaya ezihlakaniphile.
Umfanekiso 1.1. Izixhobo eziqhelekileyo zasekhaya ezihlakaniphile Uphuhliso lwekhaya elihlakaniphile lunokwahlulwa ngokulula kwimveliso ehlakaniphile stage, uqhagamshelo lwendawo stage kunye nobukrelekrele stage, njengoko kubonisiwe kuMfanekiso 1.2.
Umfanekiso 1.2. Uphuhliso stage yekhaya smart 6 ESP32-C3 Wireless Adventure: Isikhokelo esiBanzi kwi-IoT

Eyokuqala stage imalunga neemveliso smart. Ngokwahlukileyo kumakhaya emveli, kumakhaya alumkileyo, izixhobo ze-IoT zifumana imiqondiso enezivamvo, kwaye zithungelwe ngetekhnoloji yonxibelelwano engenazingcingo njengeWi-Fi, iBluetooth LE, kunye neZigBee. Abasebenzisi banokulawula iimveliso ezihlakaniphile ngeendlela ezahlukeneyo, njenge-apps ze-smartphone, abancedisi belizwi, ukulawula isithethi esihlakaniphile, njl.tage ijolise kuqhagamshelo lwendawo. Kule stage, abaphuhlisi abasacingi ngokulawula imveliso enye ekrelekrele, kodwa banxibelelanisa ezimbini nangaphezulu iimveliso ezikrelekrele, ukuzenzela ukuya kumlinganiselo othile, kwaye ekugqibeleni benze imo yemeko yesiko. UmzekeloampLe, xa umsebenzisi ecofa naliphi na iqhosha lemo yomboniso, izibane, iikhethini, kunye nezifudumezi-moya ziya kutshintshwa ngokuzenzekelayo zilungele ukusetwa kwangaphambili. Kakade ke, kukho imfuneko yokuba ingqiqo yonxibelelaniso imiselwe ngokukhawuleza, kubandakanywa iimeko zokuqalisa kunye neentshukumo zophumezo. Khawucinge ukuba imodi yokufudumala yomoya iqhutywe xa ukushisa kwangaphakathi kwehla ngaphantsi kwe-10 ° C; ukuba ngentsimbi yesi-7 kusasa, umculo udlalwa ukuvusa umsebenzisi, amakhethini ahlakaniphile avuliwe, kwaye i-rice cooker okanye isonka se-toaster siqala ngesokethi ehlakaniphile; njengoko umsebenzisi evuka aze agqibe ukuhlamba, isidlo sakusasa senziwe, ukuze kungabikho kulibaziseka ukuya emsebenzini. Hayi indlela obulunge ngayo ubomi bethu! Eyesithathu ktaguya kwi-intelligence stage. Njengoko izixhobo zasekhaya ezilumkileyo zifikeleleka, kuya kuba njalo iintlobo zedatha eyenziweyo. Ngoncedo lwe-computing yamafu, idatha enkulu kunye nobukrelekrele bokwenziwa, kufana "nobuchopho obulumkileyo" butyalwe kumakhaya ahlakaniphile, angasafuni imiyalelo rhoqo kumsebenzisi. Baqokelela idatha kwintsebenziswano yangaphambili kwaye bafunde iipatheni zokuziphatha zabasebenzisi kunye nezinto abazikhethayo, ukuze benze izinto ngokuzenzekelayo, kubandakanywa nokubonelela ngeengcebiso zokwenza izigqibo. Okwangoku, amakhaya amaninzi ahlakaniphile akwindawo yonxibelelwano stage. Njengoko izinga lokungena kunye nobukrelekrele beemveliso ezihlakaniphile zisanda, imiqobo phakathi kwemigaqo yonxibelelwano iyasuswa. Kwixesha elizayo, amakhaya ahlakaniphile anyanzelekile ukuba abe "smart" ngokwenene, njengenkqubo ye-AI yeJarvis kwi-Iron Man, engakwazi ukunceda umsebenzisi ukulawula izixhobo ezahlukeneyo, ukuphatha imicimbi yemihla ngemihla, kodwa inamandla amakhulu ekhompyutheni kunye nengqondo yokucinga. Kwiingqondi stage, abantu baya kufumana iinkonzo ezingcono zombini ngokobungakanani nangomgangatho.
Isahluko 1. Intshayelelo ye-IoT 7

8 I-ESP32-C3 i-Adventure ye-Wireless: Isikhokelo esiBanzi kwi-IoT

Ukuqaliswa kweSahluko kunye nokuSebenza kweeProjekthi ze-IoT ezi-2
KwiSahluko 1, sazisa i-architecture ye-IoT, kunye neendima kunye nobudlelwane bombono kunye nolawulo lolawulo, i-network layer, i-platform layer, kunye ne-application layer, kunye nophuhliso lwekhaya elihlakaniphile. Nangona kunjalo, njengaxa sifunda ukupeyinta, ukwazi ulwazi lwethiyori kude ngokwaneleyo. Kufuneka "singcolise izandla zethu" ukuze sisebenzise iiprojekthi ze-IoT ukuze sibambe itekhnoloji ngokwenene. Ukongeza, xa iprojekthi ihambela kwimveliso yobuninzi stage, kuyimfuneko ukuqwalasela izinto ezininzi ezifana noxhumo lwenethiwekhi, ulungelelwaniso, i-IoT cloud cloud interaction, ulawulo lwe-firmware kunye nohlaziyo, ulawulo lwemveliso yobuninzi, kunye nokucwangciswa kokhuseleko. Ke, yintoni ekufuneka sinikele ingqalelo kuyo xa siphuhlisa iprojekthi ye-IoT epheleleyo? KwiSahluko 1, sikhankanye ukuba ikhaya elihlakaniphile yenye yezona meko zixhaphakileyo zesicelo se-IoT, kwaye izibane ezihlakaniphile zezinye zezona zixhobo zisisiseko kunye nezisebenzayo, ezinokusetyenziswa kumakhaya, iihotele, iindawo zokuzivocavoca, izibhedlele, njl. le ncwadi, siya kuthatha ukwakhiwa kweprojekthi yokukhanya ehlakaniphile njengesiqalo, sichaze amacandelo kunye neempawu, kwaye sinikeze isikhokelo kuphuhliso lweprojekthi. Siyathemba ukuba ungazoba intelekelelo kule meko ukwenza izicelo ezininzi ze-IoT.
2.1 Intshayelelo kwiiProjekthi ze-IoT eziqhelekileyo
Ngokumalunga nophuhliso, iimodyuli ezisisiseko ezisebenzayo zeeprojekthi ze-IoT zinokuhlelwa zibe yisoftware kunye nophuhliso lwehardware yezixhobo ze-IoT, uphuhliso lwesicelo somthengi, kunye nophuhliso lweqonga lelifu le-IoT. Kubalulekile ukucacisa iimodyuli ezisisiseko ezisebenzayo, eziza kuchazwa ngakumbi kweli candelo.
2.1.1 IiModyuli ezisisiseko kwii-Common IoT Devices
Ukuphuhliswa kweSoftware kunye ne-hardware yezixhobo ze-IoT kubandakanya ezi modyuli ezisisiseko zilandelayo: Ukuqokelela idatha
Njengomaleko ongezantsi woyilo lwe-IoT, izixhobo ze-IoT zombono kunye nolawulo lolawulo zidibanisa abenzi boluvo kunye nezixhobo ngokusebenzisa iitshiphusi zabo kunye neeperipherals ukufezekisa ukuqokelelwa kwedatha kunye nolawulo lokusebenza.
9

Ukubophelela i-akhawunti kunye noqwalaselo lokuqala Kuninzi lwezixhobo ze-IoT, ukubophelela i-akhawunti kunye noqwalaselo lokuqala kugqityezelwe kwinkqubo enye yokusebenza, kuba ex.ample, ukudibanisa izixhobo kunye nabasebenzisi ngokuqwalasela inethiwekhi ye-Wi-Fi.
Ukusebenzisana kunye neeplatifomu zefu ze-IoT Ukubeka iliso kunye nokulawula izixhobo ze-IoT, kukwafuneka ukuba udibanise kwiiplatifti zefu ze-IoT, ukwenzela ukunika imiyalelo kunye nesimo sengxelo ngokusebenzisana phakathi komnye nomnye.
Ulawulo lwesixhobo Xa uqhagamshelwe kumaqonga elifu e-IoT, izixhobo zinokunxibelelana nelifu kwaye zibhaliswe, zibotshwe, okanye zilawulwe. Abasebenzisi banokubuza imeko yemveliso kwaye benze eminye imisebenzi kwi-smartphone app ngokusebenzisa amaqonga elifu e-IoT okanye iiprothokholi zonxibelelwano lwasekhaya.
Uphuculo lweFirmware izixhobo ze-IoT zinokufikelela ekuphuculweni kwe-firmware ngokusekwe kwiimfuno zabavelisi. Ngokufumana imiyalelo ethunyelwe lilifu, ukuphuculwa kwe-firmware kunye nolawulo loguqulelo luya kwenziwa. Ngeli nqaku lokuphucula i-firmware, ungaqhubeka uphucula imisebenzi yezixhobo ze-IoT, ulungise iziphene, kwaye uphucule amava omsebenzisi.
2.1.2 IiModyuli eziSisiseko zezicelo zoMxumi
Usetyenziso lwabathengi (umzekelo, ii-apps ze-smartphone) ikakhulu ziquka ezi modyuli zilandelayo:
Inkqubo yeakhawunti kunye nogunyaziso Ixhasa ugunyaziso lweakhawunti kunye nesixhobo.
Ulawulo lwesixhobo Ii-apps ze-smartphone zihlala zixhotyiswe ngemisebenzi yokulawula. Abasebenzisi banokuqhagamshela ngokulula kwizixhobo ze-IoT, kwaye bazilawule nanini na, naphi na ngeeapps ze-smartphone. Kwikhaya elinobulumko lehlabathi lokwenyani, izixhobo zilawulwa ikakhulu ngee-apps ze-smartphone, ezingavumeli kuphela ulawulo olukrelekrele lwezixhobo, kodwa zikwagcina iindleko zabasebenzi. Ke ngoko, ulawulo lwesixhobo luyimfuneko kwizicelo zomxumi, ezinjengolawulo lophawu lomsebenzi wesixhobo, ulawulo lwendawo, ukucwangciswa, ulawulo olude, ukudityaniswa kwesixhobo, njl. njl. , njl., ukwenza ubomi basekhaya bube lula kwaye bube lula. Bangabeka ixesha le-air conditioning, bayicime bekude, basete isibane sepaseji ngokuzenzekelayo xa ucango luvuliwe, okanye batshintshele kwimowudi "yethiyetha" ngeqhosha elinye.
Izaziso izicelo zabaThengi zihlaziya imeko yexesha lokwenyani yezixhobo ze-IoT, kwaye zithumele izilumkiso xa izixhobo zingahambi kakuhle.
10 I-ESP32-C3 i-Adventure ye-Wireless: Isikhokelo esiBanzi kwi-IoT

Emva kokuthengiswa kwenkonzo yabathengi Ii-apps ze-smartphone zinokubonelela ngeenkonzo emva kokuthengiswa kweemveliso, ukusombulula iingxaki ezinxulumene nokusilela kwesixhobo se-IoT kunye nokusebenza kobugcisa ngexesha elifanelekileyo.
Imisebenzi efakiweyo Ukuhlangabezana neemfuno zabasebenzisi abahlukeneyo, eminye imisebenzi inokongezwa, njenge-Shake, i-NFC, i-GPS, njl. njl. I-GPS inokunceda ukuseta ukuchaneka kwemisebenzi yendawo ngokwendawo kunye nomgama, ngelixa umsebenzi we-Shake uvumela abasebenzisi ukuseta imiyalelo ekufuneka yenziwe kwisixhobo esithile okanye indawo ngokungcangcazela.
2.1.3 Intshayelelo kwii-Common IoT Cloud Platforms
Iqonga lelifu le-IoT liqonga lezinto zonke ezidibanisa imisebenzi efana nolawulo lwesixhobo, unxibelelwano lokhuseleko lwedatha, kunye nolawulo lwesaziso. Ngokweqela labo ekujoliswe kulo kunye nokufikeleleka, amaqonga elifu e-IoT anokwahlulwa abe ngamaqonga elifu e-IoT (emva koko abizwa ngokuba "yilifu likawonke-wonke") kunye neeplatifti zefu ze-IoT zabucala (emva koko zibizwa ngokuba "yilifu labucala").
Ilifu likawonke-wonke lihlala libonisa amaqonga elifu e-IoT ekwabelwana ngawo kumashishini okanye abantu ngabanye, aqhutywa kwaye agcinwe ngababoneleli beqonga, kwaye kwabelwana ngawo nge-Intanethi. Inokuthi ikhululeke okanye ingabizi, kwaye ibonelele ngeenkonzo kuyo yonke inethiwekhi yoluntu evulekileyo, njenge-Alibaba Cloud, i-Tencent Cloud, i-Baidu Cloud, i-AWS IoT, i-Google IoT, njl. Njengeqonga elixhasayo, ifu likawonkewonke lingakwazi ukudibanisa ababoneleli benkonzo abaphezulu kunye abasebenzisi bokugqibela abasezantsi ukwenza ikhonkco lexabiso elitsha kunye ne-ecosystem.
Ilifu labucala lenzelwe ukusetyenziswa kweshishini kuphela, ngaloo ndlela liqinisekisa olona lawulo luphezulu kwidatha, ukhuseleko, kunye nomgangatho wenkonzo. Iinkonzo zayo kunye neziseko zophuhliso zigcinwa ngokwahlukeneyo ngamashishini, kwaye i-hardware exhasayo kunye nesoftware nazo zinikezelwe kubasebenzisi abathile. Amashishini anokwenza iinkonzo zelifu ukuba zihlangabezane neemfuno zeshishini labo. Okwangoku, abanye abavelisi basekhaya abakrelekrele sele benayo iqonga lelifu le-IoT labucala kwaye baphuhlise usetyenziso lwasekhaya olusekwe kubo.
Ilifu loluntu kunye nelifu labucala bane-advan yabotages, eya kuchazwa kamva.
Ukufezekisa unxibelelwano lonxibelelwano, kuyafuneka ukuba ugqibezele ubuncinci uphuhliso olufakwe kwicala lesixhobo, kunye neeseva zeshishini, amaqonga elifu e-IoT, kunye neeapps ze-smartphone. Ukujongana neprojekthi enkulu kangaka, ilifu likawonke-wonke libonelela ngezixhobo zophuhliso lwesoftware kwicala lesixhobo kunye neeapps ze-smartphone ukukhawulezisa inkqubo. Zombini ilifu likawonke-wonke kunye nelabucala libonelela ngeenkonzo ezibandakanya ukufikelela kwisixhobo, ulawulo lwesixhobo, isithunzi sesixhobo, kunye nokusebenza nokugcinwa.
Ukufikelela kwisixhobo amaqonga elifu e-IoT kufuneka anganikezeli kuphela ujongano lofikelelo lwesixhobo kusetyenziswa iiprothokholi
Isahluko 2. Intshayelelo kunye nokuSetyenziswa kweeProjekthi ze-IoT 11

njengeMQTT, CoAP, HTTPS, kunye WebI-Socket, kodwa kunye nomsebenzi wokuqinisekisa ukhuseleko lwesixhobo ukuvala izixhobo ezenziwe ngomgunyathi kunye nezingekho mthethweni, ukunciphisa ngokufanelekileyo umngcipheko wokuba sengozini. Ungqinisiso olunjalo ludla ngokuxhasa iindlela ezahlukeneyo, ngoko xa izixhobo ziveliswe ngobuninzi, kuyimfuneko ukunikeza kwangaphambili isatifikethi sesixhobo ngokwendlela yoqinisekiso ekhethiweyo kwaye uyitshise kwizixhobo.
Ulawulo lwesixhobo Umsebenzi wolawulo wesixhobo obonelelwa ngamaqonga elifu e-IoT akanakunceda kuphela abavelisi ukuba bajonge imeko yokuvula kunye nemo ye-intanethi yezixhobo zabo ngexesha langempela, kodwa ikwavumela iinketho ezinjengokongeza / ukususa izixhobo, ukubuyisa, ukongeza / ukucima amaqela, ukuphuculwa kwe-firmware. , kunye nolawulo loguqulelo.
Isixhobo somthunzi we-IoT iiplatifomu zamafu zinokwenza uguqulelo oluqhubekayo lwenyani (isithunzi sesixhobo) kwisixhobo ngasinye, kwaye ubume besithunzi sesixhobo sinokudityaniswa kwaye sifumaneke nge-smartphone app okanye ezinye izixhobo ngokusebenzisa iiprothokholi zothumelo lwe-Intanethi. Isithunzi sesixhobo sigcina imo yamva nje exeliweyo kunye nesimo esilindelekileyo sesixhobo ngasinye, kwaye nokuba isixhobo singaphandle kweintanethi, sisenokufumana ubume ngokufowunela ii-APIs. Isithunzi sesixhobo sibonelela rhoqo-kwi-APIs, eyenza kube lula ukwakha ii-apps ze-smartphone ezisebenzisana nezixhobo.
Ukusebenza nokulondolozwa Umsebenzi we-O&M ubandakanya iinkalo ezintathu: · Ukubonisa ulwazi lwamanani malunga nezixhobo ze-IoT kunye nezaziso. · Ulawulo lwelog luvumela ukufunyanwa kolwazi malunga nokuziphatha kwesixhobo, ukuhamba komyalezo phezulu / ezantsi, kunye nomxholo womyalezo. · Ukulungiswa kwesixhobo kuxhasa unikezelo lomyalelo, uhlaziyo lolungelelwaniso, kunye nokujonga unxibelelwano phakathi kwamaqonga elifu e-IoT kunye nemiyalezo yesixhobo.
2.2 Ukuziqhelanisa: Iprojekthi yokuKhanya kwe-Smart
Emva kwentshayelelo yethiyori kwisahluko ngasinye, uya kufumana icandelo lokuziqhelanisa elihambelana neprojekthi yeSmart Light ukukunceda ufumane amava ngamava. Iprojekthi isekelwe kwi-chip ye-Espressif ye-ESP32-C3 kunye ne-ESP RainMaker IoT Cloud Platform, kwaye igubungela i-hardware yemodyuli engenacingo kwiimveliso zokukhanya ezihlakaniphile, isofthiwe edibeneyo yezixhobo ezihlakaniphile ezisekelwe kwi-ESP32C3, i-smartphone apps, kunye ne-ESP RainMaker intsebenziswano.
Ikhowudi yomthombo Ukufunda ngcono kunye nokuphuhlisa amava, iprojekthi ekule ncwadi ivuleleke. Unokukhuphela ikhowudi yomthombo kwindawo yethu yokugcina i-GitHub https://github. com/espressif/book-esp32c3-iot-projects.
12 I-ESP32-C3 i-Adventure ye-Wireless: Isikhokelo esiBanzi kwi-IoT

2.2.1 Ubume beProjekthi
Iprojekthi yeSmart Light inamacandelo amathathu: i. Izixhobo zokukhanya ezihlakaniphile ezisekelwe kwi-ESP32-C3, enoxanduva lokusebenzisana ne-IoT yamaqonga elifu, kunye nokulawula ukutshintshwa, ukukhanya kunye nobushushu bombala we-LED l.amp amaso. ii. Ii-apps ze-smartphone (kubandakanywa ii-tablet apps ezisebenza kwi-Android kunye ne-iOS), ejongene nokucwangciswa kwenethiwekhi yeemveliso zokukhanya ezihlakaniphile, kunye nokubuza kunye nokulawula isimo sabo.
iii. Iqonga lelifu le-IoT elisekelwe kwi-ESP RainMaker. Ukwenza lula, sijonga iqonga lelifu le-IoT kunye neseva yeshishini lilonke kule ncwadi. Iinkcukacha malunga ne-ESP RainMaker ziya kunikwa kwiSahluko sesi-3.
Imbalelwano phakathi kwesakhiwo seprojekthi ye-Smart Light kunye noyilo lwe-IoT iboniswe kuMfanekiso 2.1.
Umfanekiso 2.1. Ubume beprojekthi yokukhanya ehlakaniphile
2.2.2 Imisebenzi yeProjekthi
Yahlulwe ngokwesakhiwo, imisebenzi yelungu ngalinye imi ngolu hlobo lulandelayo. Izixhobo zokukhanya ezihlakaniphile
· Ubumbeko lwenethiwekhi kunye noqhagamshelwano. · Ulawulo lwe-LED PWM, olufana nokutshintsha, ukuqaqamba, ubushushu bombala, njalo njalo. · Ukuzenzekela okanye ulawulo lwendawo, umz. · Uguqulelo oluntsonkothileyo kunye nokuqalisa ngokukhuselekileyo kweFlash. · Uphuculo lweFirmware kunye nolawulo loguqulelo.
Isahluko 2. Intshayelelo kunye nokuSetyenziswa kweeProjekthi ze-IoT 13

Ii-apps ze-smartphone · Ulungelelwaniso lwenethiwekhi kunye nokubopha isixhobo. · Ulawulo lwemveliso yokukhanya elumkileyo, njengokutshintsha, ukuqaqamba, ubushushu bombala, njalo njalo. · Ulawulo lwasekhaya/lokude. · Ukubhaliswa komsebenzisi, ukungena ngemvume, njl.
Iqonga lelifu le-ESP RainMaker IoT · Ukwenza ufikelelo kwisixhobo se-IoT. · Ukubonelela ngee-API zokusebenza kwesixhobo ezifikelelekayo kwiiapps ze-smartphone. · Uphuculo lweFirmware kunye nolawulo loguqulelo.
2.2.3 ULungiselelo lwe-Hardware
Ukuba unomdla wokusebenzisa iprojekthi, uya kufuna kwakhona i-hardware elandelayo: izibane ezihlakaniphile, ii-smartphones, iirutha ze-Wi-Fi, kunye nekhompyutha ehlangabezana neemfuno zofakelo lwemeko yophuhliso. Izibane ezihlakaniphile
Izibane ezihlakaniphile luhlobo olutsha lweebhalbhu, ezimilo yazo ifana nebhalbhu ye-incandescent ngokubanzi. Ukukhanya okuhlakaniphile kuqulethwe yi-capacitor step-down regulated power supply, imodyuli engenacingo (ene-ESP32-C3 eyakhelwe ngaphakathi), isilawuli se-LED kunye ne-RGB LED matrix. Xa uqhagamshelwe kumandla, i-15 V DC voltagi-e imveliso emva kwe-capacitor step-down, ukulungiswa kwe-diode, kunye nokulawulwa kunika amandla kumlawuli we-LED kunye ne-matrix ye-LED. Umlawuli we-LED unokuthumela ngokuzenzekelayo amanqanaba aphezulu kunye aphantsi ngamaxesha athile, ukutshintsha i-RGB LED matrix phakathi kokuvala (izibane zikhanyisa) kwaye zivule (izibane zicinywe), ukuze zikhuphe i-cyan, i-yellow, eluhlaza, eluhlaza, eluhlaza, ebomvu, kunye ukukhanya okumhlophe. Imodyuli engenazintambo inoxanduva lokuxhuma kwi-router ye-Wi-Fi, ukufumana kunye nokubika ubume bezibane ezihlakaniphile, kunye nokuthumela imiyalelo yokulawula i-LED.
Umfanekiso 2.2. Isibane esikrelekrele esifanisiweyo
Kuphuhliso lokuqala stage, ungalinganisa isibane esilumkileyo usebenzisa ibhodi ye ESP32-C3DevKitM-1 eqhagamshelwe ngeRGB LED lamp amaso (jonga umfanekiso 2.2). Kodwa kufuneka
14 I-ESP32-C3 i-Adventure ye-Wireless: Isikhokelo esiBanzi kwi-IoT

Qaphela ukuba le ayisiyiyo yodwa indlela yokuhlanganisa isibane esilumkileyo. Uyilo lwehardware yeprojekthi kule ncwadi iqulethe kuphela imodyuli engenazingcingo (ene-ESP32-C3 eyakhelweyo), kodwa hayi uyilo olupheleleyo lwe-smart light hardware. Ukongeza, i-Espressif iphinda ivelise i-ESP32-C3-based based audio development board ESP32C3-Lyra yokulawula izibane ezinomsindo. Ibhodi ine-interfaces yee-microphone kunye nezithethi kwaye inokulawula imichilo ye-LED. Ingasetyenziselwa ukuphuhlisa i-ultra-low-low-low, ukusebenza okuphezulu kosasazo lweaudio kunye nemicu yokukhanya yesingqisho. Umzobo we-2.3 ubonisa ibhodi ye-ESP32-C3Lyra edityaniswe nomgca we-40 wezibane ze-LED.
Umfanekiso 2.3. I-ESP32-C3-Lyra idityaniswe nomtya wezibane ze-LED ezingama-40
Ii-Smartphones (i-Android/iOS) Iprojekthi yokuKhanya okuSmart ibandakanya uphuhliso lwe-smartphone yokuseta nokulawula iimveliso zokukhanya ezikrelekrele.
Iirutha ze-Wi-Fi Iirutha ze-Wi-Fi ziguqula imiqondiso yenethiwekhi eneengcingo kunye nemiqondiso yenethiwekhi ephathwayo ibe ziimpawu zenethiwekhi ezingenazingcingo, kwiikhompyuter, ii-smartphones, iitafile, kunye nezinye izixhobo ezingenazingcingo ukuqhagamshela kwinethiwekhi. UmzekeloampLe, ibroadband ekhaya ifuna ukuqhagamshelwa kwirutha ye-Wi-Fi ukuphumeza uthungelwano olungenazingcingo lwezixhobo ze-Wi-Fi. Umgangatho oqhelekileyo weprothokholi oxhaswa zii-router ze-Wi-Fi yi-IEEE 802.11n, ene-avareji ye-TxRate ye-300 Mbps, okanye i-600 Mbps kubuninzi. Ziyahambelana ne-IEEE 802.11b kunye ne-IEEE 802.11g. I-chip ye-ESP32-C3 yi-Espressif ixhasa i-IEEE 802.11b/g/n, ngoko unokukhetha i-single-band (2.4 GHz) okanye i-dual-band (2.4 GHz kunye ne-5 GHz) i-Wi-Fi router.
Ikhompyutha (iLinux/macOS/Windows) indawo yophuhliso iya kwaziswa kwiSahluko 4. Isahluko 2. Intshayelelo kunye nokuSebenza kweeProjekthi ze-IoT 15.

2.2.4 Inkqubo yoPhuhliso
Umfanekiso 2.4. Amanyathelo okuphuhlisa iprojekthi ye-Smart Light
Uyilo lweHardware uyilo lwezixhobo ze-IoT lubalulekile kwiprojekthi ye-IoT. Iprojekthi epheleleyo yokukhanya ehlakaniphile yenzelwe ukuvelisa i-alamp ukusebenza phantsi kobonelelo lwee-main. Abavelisi abohlukeneyo bavelisa iamps yeendlela ezahlukeneyo kunye neentlobo zomqhubi, kodwa iimodyuli zabo ezingenazingcingo zidla ngomsebenzi ofanayo. Ukwenza lula inkqubo yophuhliso lweprojekthi ye-Smart Ligh, le ncwadi igubungela kuphela uyilo lwehardware kunye nophuhliso lwesoftware yeemodyuli ezingenazingcingo.
Ukucwangciswa kweqonga lelifu le-IoT Ukusebenzisa iiplatifomu zefu ze-IoT, kufuneka uqwalasele iiprojekthi kwi-backend, ezifana nokudala iimveliso, ukudala izixhobo, ukuseta iipropati zesixhobo, njl.
Uphuhliso lwesoftware olufakelweyo lwezixhobo ze-IoT Phumeza imisebenzi elindelweyo nge-ESP-IDF, i-SDK yecala lesixhobo se-Espressif, kubandakanywa ukuqhagamshela kumaqonga elifu e-IoT, ukuphuhlisa abaqhubi be-LED, kunye nokuphucula i-firmware.
Uphuhliso losetyenziso lwe-smartphone Phuhlisa ii-apps ze-smartphone ze-Android kunye neenkqubo ze-iOS ukuqonda ukubhaliswa komsebenzisi kunye nokungena, ulawulo lwesixhobo kunye neminye imisebenzi.
Ukulungiswa kwesixhobo se-IoT Nje ukuba uphuhliso olusisiseko lwemisebenzi yesixhobo se-IoT lugqityiwe, ungaguqukela kwimisebenzi yokuphucula, efana nokwandisa amandla.
Uvavanyo lwemveliso yobuninzi Yenza uvavanyo lwemveliso eninzi ngokwemigangatho ehambelanayo, njengovavanyo lomsebenzi wezixhobo, uvavanyo lokuguga, uvavanyo lweRF, njl.
Ngaphandle kwamanyathelo adweliswe apha ngasentla, iprojekthi ye-Smart Light ayixhomekeke kwinkqubo enjalo njengoko imisebenzi eyahlukeneyo inokuqhutywa ngaxeshanye. Umzekeloample, isoftware edibeneyo kunye neeapps ze-smartphone zinokuphuhliswa ngokuhambelana. Amanye amanyathelo anokufuna ukuphinda phindwa, anje ngokwenziwa kwesixhobo se-IoT kunye novavanyo lwemveliso yobuninzi.
16 I-ESP32-C3 i-Adventure ye-Wireless: Isikhokelo esiBanzi kwi-IoT

2.3 Isishwankathelo
Kwesi sahluko, saqala sachaza amacandelo asisiseko kunye neemodyuli ezisebenzayo zeprojekthi ye-IoT, emva koko sazisa i-Smart Light case for practice, ngokubhekiselele kwisakhiwo sayo, imisebenzi, ukulungiswa kwe-hardware, kunye nenkqubo yophuhliso. Abafundi banokuthatha intelekelelo kuqheliselo kwaye babe nokuzithemba ukwenza iiprojekthi ze-IoT ngeempazamo ezincinci kwixesha elizayo.
Isahluko 2. Intshayelelo kunye nokuSetyenziswa kweeProjekthi ze-IoT 17

18 I-ESP32-C3 i-Adventure ye-Wireless: Isikhokelo esiBanzi kwi-IoT

Isahluko 3

Intshayelelo

ukuya

ESP

Umenzi wemvula

I-Intanethi yeZinto (IoT) inikezela ngamathuba angapheliyo okutshintsha indlela abantu abaphila ngayo, ukanti uphuhliso lobunjineli be-IoT luzele yimingeni. Ngamafu oluntu, abavelisi besiphelo banokusebenzisa ukusebenza kwemveliso ngezi zisombululo zilandelayo:
Ngokusekelwe kwiiplatifti zefu zababoneleli besisombululo Ngale ndlela, abavelisi be-terminal bafuna kuphela ukuyila i-hardware yemveliso, emva koko badibanise i-hardware kwifu usebenzisa imodyuli yonxibelelwano enikeziweyo, kwaye uqwalasele imisebenzi yemveliso ngokulandela izikhokelo. Le yindlela efanelekileyo njengoko isusa imfuno ye-server-side kunye ne-application-side side development and operations and maintenance (O&M). Ivumela abavelisi be-terminal ukuba bagxile kuyilo lwehardware ngaphandle kokuqwalasela ukuphunyezwa kwelifu. Nangona kunjalo, izisombululo ezinjalo (umzekelo, i-firmware yesixhobo kunye ne-App) aziyiyo imithombo evulekileyo, ngoko ke imisebenzi yemveliso iya kuthintelwa liqonga lelifu lomboneleli elingenakwenziwa ngokwezifiso. Ngeli xesha, umsebenzisi kunye nedatha yesixhobo ikwakwiqonga lelifu.
Ngokusekelwe kwiimveliso zefu Kule sisombululo, emva kokugqiba i-hardware yoyilo, abavelisi be-terminal abafuni nje ukuphumeza imisebenzi yefu ngokusebenzisa imveliso yefu enye okanye ngaphezulu enikezelwa yifu likawonkewonke, kodwa kufuneka badibanise i-hardware kunye nefu. Umzekeloample, ukuqhagamshela kwiAmazon Web Iinkonzo (AWS), abavelisi be-terminal kufuneka basebenzise iimveliso ze-AWS ezifana ne-Amazon API Gateway, i-AWS IoT Core, kunye ne-AWS Lambda ukunika amandla ukufikelela kwesixhobo, ukulawulwa kude, ukugcinwa kwedatha, ulawulo lomsebenzisi, kunye neminye imisebenzi eyisiseko. Ayiceli kuphela abavelisi be-terminal ukuba basebenzise ngokuguquguqukayo kunye nokuqwalasela iimveliso zelifu kunye nokuqonda okunzulu kunye namava atyebileyo, kodwa ikwafuna ukuba baqwalasele iindleko zokwakha kunye nokugcinwa kweendleko zokuqala kunye nekamva.tages Oku kubangela imingeni enkulu kumandla kunye nezibonelelo zenkampani.
Xa kuthelekiswa namafu oluntu, amafu abucala ahlala akhelwe iiprojekthi ezithile kunye neemveliso. Abaphuhlisi bamafu abucala banikwa inqanaba eliphezulu lenkululeko kuyilo lweprotocol kunye nokuphunyezwa kwengqiqo yeshishini. Abavelisi betheminali banokwenza iimveliso kunye nezikimu zoyilo ngokuthanda, kwaye badibanise ngokulula kwaye baxhobise idatha yomsebenzisi. Ukudibanisa ukhuseleko oluphezulu, ukulinganisa kunye nokuthembeka kwelifu loluntu kunye ne-advantages yelifu labucala, i-Espressif yasungula i-ESP
19

I-RainMaker, isisombululo selifu sabucala esihlanganisiweyo esisekwe kwilifu laseAmazon. Abasebenzisi banokuthumela i-ESP RainMaker kwaye bakhe ilifu labucala ngokulula ngeakhawunti ye-AWS.
3.1 Yintoni i-ESP RainMaker?
I-ESP RainMaker liqonga elipheleleyo le-AIoT elakhiwe ngeemveliso ezininzi ze-AWS eziqolileyo. Ibonelela ngeenkonzo ezahlukeneyo ezifunekayo kwimveliso yobuninzi njengokufikelela kwilifu lesixhobo, ukuphuculwa kwesixhobo, ulawulo lokubuyela umva, ukungena komntu wesithathu, ukudityaniswa kwelizwi, kunye nolawulo lomsebenzisi. Ngokusebenzisa i-Serverless Application Repository (i-SAR) enikezelwa yi-AWS, abavelisi be-terminal banokuthumela ngokukhawuleza i-ESP RainMaker kwii-akhawunti zabo ze-AWS, esebenza ixesha kwaye kulula ukuyisebenzisa. Ukulawulwa kunye nokugcinwa yi-Espressif, i-SAR esetyenziswa yi-ESP RainMaker inceda abaphuhlisi banciphise iindleko zokugcina ifu kunye nokukhawulezisa ukuphuhliswa kweemveliso ze-AIoT, ngaloo ndlela kwakha izisombululo ezikhuselekileyo, ezizinzile, kunye ne-customizable AIoT. Umfanekiso 3.1 ubonisa uyilo lwe-ESP RainMaker.
Umfanekiso 3.1. Uyilo lwe-ESP RainMaker
Iseva yoluntu ye-ESP RainMaker ngu-Espressif isimahla kubo bonke abathanda i-ESP, abenzi, kunye nabafundisi bovavanyo lwesisombululo. Abaphuhlisi banokungena nge-Apple, Google, okanye i-akhawunti ye-GitHub, kwaye ngokukhawuleza bakhe iiprototypes zabo zesicelo se-IoT. Umncedisi woluntu udibanisa i-Alexa kunye neKhaya leGoogle, kwaye unikezela ngeenkonzo zokulawula ilizwi, ezixhaswa yi-Alexa Skill kunye ne-Google Actions. Umsebenzi wayo wokuqaphela i-semantic ikwanikwe amandla ngamaqela esithathu. Izixhobo ze-IoT zeRainMaker ziphendula kuphela kwizenzo ezithile. Kuluhlu olupheleleyo lwemiyalelo yelizwi exhaswayo, nceda ujonge amaqonga omntu wesithathu. Ukongeza, i-Espressif ibonelela ngeRainMaker App kawonkewonke kubasebenzisi ukulawula iimveliso ngee-smartphones. I-20 ESP32-C3 i-Adventure engenazintambo: Isikhokelo esiBanzi kwi-IoT

3.2 Ukuphunyezwa kwe-ESP RainMaker
Njengoko kubonisiwe kuMfanekiso 3.2, i-ESP RainMaker inamacandelo amane: · Inkonzo yokuBanga iBango, eyenza izixhobo zeRainMaker zifumane izatifikethi ngamandla. · I-RainMaker Cloud (ekwabizwa ngokuba yi-cloud backend), inikezela ngeenkonzo ezinjengokucoca umyalezo, ulawulo lomsebenzisi, ukugcinwa kwedatha, kunye nokudibanisa komntu wesithathu. · I-Agent ye-RainMaker, eyenza izixhobo ze-RainMaker ziqhagamshelane ne-RainMaker Cloud. · I-RainMaker Client (i-RainMaker App okanye imibhalo ye-CLI), ukulungiselela, ukudala umsebenzisi, ukudibanisa isixhobo kunye nokulawula, njl.
Umfanekiso 3.2. Ubume be-ESP RainMaker
I-ESP RainMaker ibonelela ngeseti epheleleyo yezixhobo zophuhliso lwemveliso kunye nemveliso enkulu, kuquka: I-RainMaker SDK
I-RainMaker SDK isekwe kwi-ESP-IDF kwaye ibonelela ngekhowudi yomthombo we-arhente yecala lesixhobo kunye nee-C APIs ezinxulumene nophuhliso lwe-firmware. Abaphuhlisi badinga kuphela ukubhala ingqiqo yesicelo kwaye bashiye intsalela kwisakhelo seRainMaker. Ngolwazi oluthe vetshe malunga neeC APIs, nceda undwendwele https://bookc3.espressif.com/rm/c-api-reference. I-RainMaker App Ushicilelo lukawonke-wonke lwe-RainMaker App luvumela abaphuhlisi ukuba bagqibezele unikezelo lwesixhobo, nokulawula nokubuza ubume bezixhobo (umzekelo, iimveliso zokukhanyisa ngobuchule). Ifumaneka kuzo zombini iivenkile ze-iOS kunye ne-Android app. Ukufumana iinkcukacha ezingaphezulu, nceda ubhekisele kwiSahluko 10. I-REST APIs i-REST APIs inceda abasebenzisi ukuba bakhe izicelo zabo ezifanayo ne-RainMaker App. Ngolwazi oluthe vetshe, nceda undwendwele https://swaggerapis.rainmaker.espressif.com/.
Isahluko 3. Intshayelelo ye-ESP RainMaker 21

I-Python APIs I-CLI esekwe kwiPython, eza kunye ne-RainMaker SDK, inikezelwa ukuphumeza yonke imisebenzi efana neempawu ze-smartphone. Ngolwazi oluthe kratya malunga nePython APIs, nceda undwendwele https://bookc3.espressif.com/rm/python-api-reference.
UMlawuli we-CLI woLawulo lwe-CLI, enomgangatho ophezulu wofikelelo, unikezelwe kwi-ESP RainMaker ukusasazwa kwabucala ukuvelisa izatifikethi zesixhobo ngobuninzi.
3.2.1 Inkonzo yokufaka ibango
Lonke unxibelelwano phakathi kwezixhobo zeRainMaker kunye ne-backend yelifu lwenziwa nge-MQTT + TLS. Kumxholo we-ESP RainMaker, "Ibango" yinkqubo apho izixhobo zifumana izatifikethi kwiNkonzo yokuBanga ukudibanisa kwi-backend yefu. Qaphela ukuba i-Bango leNkonzo lisebenza kuphela kwinkonzo kawonke-wonke yeRainMaker, ngelixa ukusasazwa kwabucala, izatifikethi zesixhobo kufuneka ziveliswe ngobuninzi nge-Admin CLI. I-ESP RainMaker ixhasa iindidi ezintathu zeNkonzo yokuBanga: UkuZibanga ngokwakho
Isixhobo ngokwaso siyazilanda izatifikethi ngeqhosha eliyimfihlo elicwangciswe kwangaphambili kwi-eFuse emva kokuqhagamshelwa kwi-Intanethi. Ibango eliqhutywa ngumamkeli Iziqinisekiso zifunyanwa kumamkeli wophuhliso ngeakhawunti yeRainMaker. Ukufakwa kweBango eliNcedayo Izatifikethi zifunyanwa ngokusebenzisa izicelo ze-smartphone ngexesha lonikezelo.
3.2.2 Iarhente yoMenzi wemvula
Umfanekiso 3.3. Ubume be-RainMaker SDK Umsebenzi ophambili we-RainMaker Agent kukubonelela ngoqhagamshelwano kunye nokuncedisa umaleko wesicelo ukucubungula idatha yefu ye-uplink / downlink. Yakhiwe ngeRainMaker SDK 22 ESP32-C3 Wireless Adventure: Isikhokelo esiBanzi kwi-IoT

kwaye yaphuhliswa ngokusekelwe kwisikhokelo esiqinisekisiweyo se-ESP-IDF, kusetyenziswa amacandelo e-ESP-IDF afana ne-RTOS, i-NVS, kunye ne-MQTT. Umzobo 3.3 ubonisa ubume be-RainMaker SDK.
I-RainMaker SDK ibandakanya iimpawu ezimbini eziphambili.
Uqhagamshelwano
i. Ukusebenzisana neNkonzo yokuBanga ukufumana izatifikethi zesixhobo.
ii. Ukuqhagamshela kwi-backend yefu usebenzisa i-protocol ye-MQTT ekhuselekileyo yokubonelela uqhagamshelwano olukude kunye nokuphumeza ulawulo olukude, ingxelo yomyalezo, ulawulo lomsebenzisi, ulawulo lwesixhobo, njl. iprotocol stacks.
iii. Ukubonelela ngecandelo lonikezelo lwe-wifi yoqhagamshelo lwe-Wi-Fi kunye nokubonelela, esp https ota component yokuphuculwa kwe-OTA, kunye necandelo le-ctrl lendawo lendawo yokufunyanwa kwesixhobo kunye noqhagamshelo. Zonke ezi njongo zinokufezekiswa ngolungelelwaniso olulula.
Ukulungiswa kwedatha
i. Ukugcina izatifikethi zesixhobo ezikhutshwe yiNkonzo yoBango kunye nedatha efunekayo xa uqhuba iRainMaker, ngokungagqibekanga usebenzisa ujongano olunikezwe yicandelo le-nvs flash, kunye nokubonelela ngee-APIs kubaphuhlisi ukuze basebenzise ngokuthe ngqo.
ii. Ukusebenzisa indlela yokufowunelwa ukusetyenzwa kwe-uplink/downlink cloud cloud kunye nokuvula ngokuzenzekelayo idatha kuluhlu lwesicelo ukwenzela ukuba kube lula ukuqhutyelwa ngabaphuhlisi. Umzekeloample, i-RainMaker SDK ibonelela ngojongano olutyebileyo lokuseka idatha ye-TSL (i-Thing Specification Language), efunekayo ukuchaza imifuziselo ye-TSL ukuchaza izixhobo ze-IoT kunye nokuphumeza imisebenzi efana nexesha, ukubala, kunye nolawulo lwelizwi. Kwiimpawu ezisisiseko zokusebenzisana ezifana nexesha, i-RainMaker SDK ibonelela ngesisombululo esingenaphuhliso esinokuvulwa ngokulula xa sifuneka. Emva koko, i-Agent ye-RainMaker iya kuqhubekeka ngokuthe ngqo idatha, iyithumele efini ngesihloko esihambelanayo se-MQTT, kwaye izondle ngotshintsho lwedatha kwi-backend yelifu ngokusebenzisa indlela yokufowuna.
3.2.3 Cloud Backend
I-backend yefu yakhiwe kwi-AWS Serverless Computing kwaye iphunyezwe nge-AWS Cognito (inkqubo yolawulo lwesazisi), i-Amazon API Gateway, i-AWS Lambda (inkonzo ye-computing ye-server), i-Amazon DynamoDB (i-NoSQL database), i-AWS IoT Core (i-IoT yokufikelela kwi-core enikezela ukufikelela kwe-MQTT kunye nokucoca umthetho), iNkonzo ye-imeyile ye-Amazon elula (i-SES yenkonzo ye-imeyile elula), i-Amazon CloudFront (inethiwekhi yokuhanjiswa ngokukhawuleza), i-Amazon Simple Queue Service (i-SQS yomyalezo we-queuing), kunye ne-Amazon S3 (inkonzo yokugcina ibhakethi). Ijolise ekukhuliseni ubungakanani kunye nokhuseleko. Nge-ESP RainMaker, abaphuhlisi banokulawula izixhobo ngaphandle kokubhala ikhowudi efini. Imiyalezo exelwe zizixhobo igqithiselwa elubala
Isahluko 3. Intshayelelo ye-ESP RainMaker 23

abaxhasi besicelo okanye ezinye iinkonzo zomntu wesithathu. Itheyibhile 3.1 ibonisa iimveliso zefu ze-AWS kunye nemisebenzi esetyenziswe kwi-backend yefu, kunye neemveliso ezininzi kunye neempawu eziphantsi kophuhliso.
Uluhlu 3.1. Iimveliso zefu ze-AWS kunye nemisebenzi esetyenziswa yi-backend yefu

IMveliso yeLifu ye-AWS esetyenziswa nguRainMaker

Umsebenzi

AWS Cognito

Ukulawula iziqinisekiso zomsebenzisi kunye nokuxhasa ukungena komntu wesithathu

AWS Lambda

Ukuphumeza ingqiqo yeshishini engundoqo kwi-backend yefu

Ixesha le-Amazon Ukugcina idatha yexesha lexesha

IAmazon DynamoDB Ukugcina ulwazi lwabucala lwabathengi

I-AWS IoT Core

Ukuxhasa unxibelelwano lwe-MQTT

Amazon SES

Ukubonelela ngeenkonzo zokuthumela i-imeyile

I-Amazon CloudFront Ukukhawulezisa ulawulo lwe-backend webukufikelela kwindawo

Amazon SQS

Ukuthumela imiyalezo evela kwi-AWS IoT Core

3.2.4 Umxhasi we-RainMaker
Abathengi be-RainMaker, njenge-App kunye ne-CLI, banxibelelana ne-backend yelifu ngokusebenzisa i-REST APIs. Ulwazi oluneenkcukacha kunye nemiyalelo malunga ne-REST APIs inokufumaneka kuxwebhu lwe-Swagger olunikezwe yi-Espressif. Umxhasi wesicelo seRainMaker uyafumaneka kuzo zombini ii-iOS kunye neenkqubo ze-Android. Ivumela unikezelo lwesixhobo, ulawulo, kunye nokwabelana, kunye nokudala kunye nokuvumela imisebenzi yokubala kunye nokudibanisa kumaqonga omntu wesithathu. Iyakwazi ukulayisha ngokuzenzekelayo i-UI kunye nee-icon ngokuhambelana noqwalaselo oluchazwe zizixhobo kwaye ibonise ngokupheleleyo isixhobo se-TSL.
UmzekeloampLe, ukuba isibane esilumkileyo sakhiwe kwi-RainMaker SDK enikezelweyo exampNgokukodwa, i-icon kunye ne-UI yesibane sebhalbhu iya kulayishwa ngokuzenzekelayo xa unikezelo lugqityiwe. Abasebenzisi banokutshintsha umbala kunye nokukhanya kokukhanya ngokusebenzisa i-interface kwaye bafezekise ulawulo lomntu wesithathu ngokudibanisa i-Alexa Smart Home Skill okanye i-Google Smart Home Actions kwii-akhawunti zabo ze-ESP RainMaker. Umfanekiso 3.4 ubonisa i icon kunye ne-UI exampUkukhanya kwebhalbhu ngokulandelelanayo kwi-Alexa, iKhaya likaGoogle, kunye ne-ESP RainMaker App.

24 I-ESP32-C3 i-Adventure ye-Wireless: Isikhokelo esiBanzi kwi-IoT

(a) Eksample - Alexa

(b) Eksample-iKhaya likaGoogle

(c) Eksample – ESP RainMaker
Umzobo 3.4. Eksampi icon kunye ne-UI yesibane sebhalbhu kwi-Alexa, iKhaya likaGoogle, kunye ne-ESP RainMaker App
3.3 Ukuziqhelanisa: Amanqaku aphambili okuPhuhlisa nge-ESP RainMaker
Nje ukuba umaleko womqhubi wesixhobo ugqitywe, abaphuhlisi banokuqalisa ukwenza imifuziselo ye-TSL kwaye baqhube idatha ye-downlink besebenzisa i-APIs ebonelelwe yi-RainMaker SDK, kwaye benze iinkonzo ezisisiseko ze-ESP RainMaker zisekelwe kwinkcazo yemveliso kunye neemfuno.
Isahluko 3. Intshayelelo ye-ESP RainMaker 25

Icandelo 9.4 lale ncwadi liza kuchaza ukuphunyezwa kokukhanya kwe-LED kwi-RainMaker. Ngexesha lokulungisa, abaphuhlisi banokusebenzisa izixhobo ze-CLI kwi-RainMaker SDK ukunxibelelana nokukhanya okuhlakaniphile (okanye ukubiza i-REST APIs kwi-Swagger).
Isahluko se-10 siya kucacisa ukusetyenziswa kwe-REST APIs ekuphuhliseni izicelo ze-smartphone. Ukuphuculwa kwe-OTA yezibane ezihlakaniphile ze-LED ziya kugutyungelwa kwiSahluko 11. Ukuba abaphuhlisi baye benza i-ESP Insights i-remote monitoring, i-ESP RainMaker management backend iya kubonisa idatha ye-ESP Insights. Iinkcukacha ziya kuchazwa kwiSahluko se-15.
I-ESP RainMaker ixhasa ukusasazwa kwabucala, okwahlukileyo kwiseva yeRainMaker yoluntu ngezi ndlela zilandelayo:
Inkonzo yokuBanga iBango Ukuvelisa izatifikethi kwi-deployments yabucala, kuyafuneka ukuba usebenzise i-RainMaker Admin CLI endaweni yokuBanga. Ngomncedisi kawonkewonke, abaphuhlisi kufuneka banikwe amalungelo olawulo ukuphumeza uphuculo lwe-firmware, kodwa ayinqweneleki ekuhanjisweni kwezorhwebo. Ke ngoko, akukho nkonzo yongqinisiso eyahlukileyo inokubonelelwa ngokuzenza ibango, okanye amalungelo olawulo okubanga eliqhutywayo okanye elincediswayo.
Ii-apps zefowuni Kwii-deployments zangasese, izicelo kufuneka ziqwalaselwe kwaye zihlanganiswe ngokwahlukileyo ukuze kuqinisekiswe ukuba iinkqubo ze-akhawunti azikwazi ukusebenzisana.
Ukungena kweqela le-3 kunye nokudityaniswa kwezwi Abaphuhlisi kufuneka balungiselele ngokwahlukileyo nge-akhawunti yeGoogle kunye ne-Apple Developer ukuze bakwazi ukungena kwiqela le-3rd, kunye ne-Alexa Skill kunye ne-Google Voice Assistant.
IINGCEBISO Ngeenkcukacha malunga nokusasazwa kwamafu, nceda undwendwele https://customer.rainmaker.espressif. com. Ngokumalunga ne-firmware, ukufuduka kwiseva kawonkewonke ukuya kwiseva yabucala kufuna kuphela ukutshintshwa kwezatifikethi zesixhobo, eziphucula kakhulu ukusebenza kakuhle kokufuduka kunye nokunciphisa iindleko zokufuduka kunye nokulungiswa kwesibini.
3.4 Iimpawu ze-ESP RainMaker
Iimpawu ze-ESP RainMaker zijolise ikakhulu kwimiba emithathu - ulawulo lwabasebenzisi, abasebenzisi bokugqibela, kunye nabaphathi. Zonke iimpawu zixhaswa kuzo zombini iiseva zikawonke-wonke nezibucala ngaphandle kokuba kuchazwe ngenye indlela.
3.4.1 ULawulo lwabasebenzisi
Iimpawu zolawulo lomsebenzisi zivumela abasebenzisi bokugqibela ukuba babhalise, bangene, batshintshe amagama agqithisiweyo, bafumane iipassword, njl.
26 I-ESP32-C3 i-Adventure ye-Wireless: Isikhokelo esiBanzi kwi-IoT

Bhalisa kwaye ungene Ubhaliso kunye neendlela zokungena ezixhaswa yi-RainMaker ziquka: · I-imeyile ye-id + Igama eliyimfihlo · Inombolo yefowuni + Igama eliyimfihlo · I-akhawunti kaGoogle · I-akhawunti ye-Apple · I-akhawunti ye-GitHub (iseva kawonkewonke kuphela) · I-akhawunti ye-Amazon (iseva yabucala kuphela)
QAPHELA Bhalisa usebenzisa uGoogle/Amazon wabelana ngedilesi ye-imeyile yomsebenzisi kunye neRainMaker. Bhalisa usebenzisa i-Apple yabelana ngedilesi eyidummy ethi iApple inike umsebenzisi ngokukodwa inkonzo yeRainMaker. Iakhawunti yeRainMaker iya kwenziwa ngokuzenzekelayo kubasebenzisi abangena ngeakhawunti kaGoogle, Apple, okanye Amazon okokuqala.
Guqula igama lokugqithisa Lisebenza kuphela kwi-ID ye-imeyile/kwinombolo yeFowuni esekwe ngokungena. Zonke ezinye iiseshini ezisebenzayo ziya kukhutshelwa ngaphandle emva kokuba igama lokugqitha litshintshiwe. Njengokuziphatha kwe-AWS Cognito, iiseshini ezikhutshiweyo zingahlala zisebenza ukuya kuthi ga kwiyure enye.
Fumana igama lokugqitha Lisebenza kuphela kwi-ID ye-imeyile/kwinombolo yeFowuni esekwe ngokungena.
3.4.2 Iimpawu zoMsebenzisi wokugqibela
Iimpawu ezivuleleke kubasebenzisi bokugqibela ziquka ulawulo lwasekhaya kunye nokude kunye nokubeka iliso, ukucwangcisa, amaqela esixhobo, ukwabelana ngesixhobo, izaziso zokutyhala, kunye nokudityaniswa komntu wesithathu.
Ulawulo olukude kunye nokubeka iliso · Uqwalaselo lombuzo, amaxabiso eparameter, kunye nobume boqhagamshelwano lwesixhobo esinye okanye zonke. · Seta iiparamitha zesixhobo esinye okanye ezininzi.
Ulawulo lwengingqi kunye nokubeka iliso Imfonomfono kunye nesixhobo kufuneka sidityaniswe kuthungelwano olufanayo lolawulo lwendawo.
Ukucwangcisa · Abasebenzisi baseta kwangaphambili iintshukumo ezithile ngexesha elithile. · Akukho nxibelelwano lwe-Intanethi olufunekayo kwisixhobo ngelixa usenza ishedyuli. · Ixesha elinye okanye phinda (ngokuchaza iintsuku) kwisixhobo esinye okanye ezininzi.
Ukwahlulwahlulwa kwesixhobo Ixhasa ukwahlulahlula ngokwamaqela amanqanaba amaninzi Imetadata yeQela ingasetyenziswa ukwenza ulwakhiwo lweGumbi laseKhaya.
Isahluko 3. Intshayelelo ye-ESP RainMaker 27

Ukwabelana ngesixhobo Isixhobo esinye okanye ngaphezulu kunokwabelwana ngaso nomntu omnye okanye ngaphezulu.
Izaziso zokutyhala Abasebenzisi baya kufumana izaziso zokutyhala kwiziganeko ezinje · Isixhobo esitsha esongeziweyo/sisusiweyo · Isixhobo esiqhagamshelwe efini · Isixhobo sinqanyulwe efini · Izicelo zokwabelana ngesixhobo zenziwe/zamkelwe/zaliwe · Imiyalezo yesivuseleli exelwe zizixhobo.
Ukudityaniswa kweqela lesithathu i-Alexa kunye noMncedisi weLizwi likaGoogle zixhaswa ukulawula izixhobo zeRainMaker, kubandakanya izibane, iiswitshi, iisokethi, abalandeli, kunye nezinzwa zobushushu.
3.4.3 Iimpawu zoLawulo
Iifitsha zolawulo zivumela abalawuli ukuba baphumeze ubhaliso lwesixhobo, iqela lesixhobo, kunye nophuculo lwe-OTA, kunye noku view izibalo kunye nedatha ye-ESP Insights.
Ukubhaliswa kwesiXhobo Yenza izatifikethi zesixhobo kwaye ubhalise ku-Admin CLI (iseva yabucala kuphela).
Uluhlu lwesixhobo Yenza amaqela angekhoyo okanye acwangcisiweyo ngokusekelwe kulwazi lwesixhobo (iseva yabucala kuphela).
I-Over-the-Air (i-OTA) iphucula Layisha i-firmware esekelwe kuguqulelo kunye nemodeli, kwisixhobo esinye okanye ngaphezulu okanye iqela Monitor, khansela, okanye ugcine imisebenzi ye-OTA.
View izibalo ViewAmanani akhoyo aquka: · Ubhaliso lwesixhobo (izatifikethi ezibhaliswe ngumlawuli) · Usetyenziso lwesixhobo (isixhobo siqhagamshelwe okokuqala) · Iiakhawunti zomsebenzisi · Unxulumano lwesixhobo somsebenzisi
View Idatha ye-ESP Insights Viewekwaziyo idatha ye-ESP Insights iquka: · Iimpazamo, izilumkiso, kunye nelogi yesiko · Iingxelo zokuwa kunye nohlalutyo · Qalisa kwakhona izizathu · Iimetrics ezifana nokusetyenziswa kwememori, RSSI, njalo njalo. · Iimetrics zesiko kunye nezinto ezahlukeneyo
28 I-ESP32-C3 i-Adventure ye-Wireless: Isikhokelo esiBanzi kwi-IoT

3.5 Isishwankathelo
Kwesi sahluko, sazise umahluko ophambili phakathi kokuhanjiswa kweRainMaker yoluntu kunye nokuthunyelwa kwabucala. Isisombululo sabucala se-ESP RainMaker esiqaliswe yi-Espressif sithembeke kakhulu kwaye siyandiswa. Zonke iitshiphusi ze-ESP32 ziye zadityaniswa kwaye zilungelelaniswe ne-AWS, enciphisa kakhulu iindleko. Abaphuhlisi banokugxila ekuqinisekiseni iprototype ngaphandle kokuba bafunde ngeemveliso zelifu ze-AWS. Siphinde sachaza ukuphunyezwa kunye neempawu ze-ESP RainMaker, kunye nezinye iingongoma eziphambili zophuhliso usebenzisa iqonga.
Skena ukukhuphela i-ESP RainMaker ye-Android Scan ukuze ukhuphele i-ESP RainMaker ye-iOS
Isahluko 3. Intshayelelo ye-ESP RainMaker 29

30 I-ESP32-C3 i-Adventure ye-Wireless: Isikhokelo esiBanzi kwi-IoT

Ukusekwa kwesahluko sesi-4 soPhuhliso
Esi sahluko sigxile kwi-ESP-IDF, isakhelo esisemthethweni sophuhliso lwesoftware ye-ESP32-C3. Siza kucacisa indlela yokuseka okusingqongileyo kwiinkqubo ezahlukeneyo zokusebenza, kwaye sazise ubume beprojekthi kunye nokwakhiwa kwenkqubo ye-ESP-IDF, kunye nokusetyenziswa kwezixhobo zophuhliso ezinxulumeneyo. Emva koko siza kubonisa ukuqulunqa kunye nokusebenza inkqubo ye-example projekthi, ngelixa unikezela ngengcaciso eneenkcukacha yelog yemveliso kwiktage.
4.1 ESP-IDF Overview
I-ESP-IDF (i-Espressif IoT Development Framework) yinkqubo yophuhliso ye-IoT enye-stop enikezelwa yi-Espressif Technology. Isebenzisa i-C/C ++ njengolwimi oluphambili lophuhliso kwaye ixhasa ukuhlanganisana phantsi kweenkqubo zokusebenza eziqhelekileyo ezifana neLinux, Mac, kunye neWindows. Exampiinkqubo ezibandakanyiweyo kule ncwadi ziphuhliswa kusetyenziswa i-ESP-IDF, enika ezi mpawu zilandelayo: · SoC system-level drivers. I-ESP-IDF ibandakanya abaqhubi be-ESP32, ESP32-S2, ESP32-C3,
kunye nezinye iitshiphusi. Aba baqhubi baquka ithala leencwadi le-peripheral low (LL), ithala leencwadi le-hardware abstraction layer (HAL), inkxaso ye-RTOS kunye nesoftware yomqhubi we-upper-layer, njl. njl. · Amacandelo abalulekileyo. I-ESP-IDF idibanisa amacandelo ayimfuneko kuphuhliso lwe-IoT. Oku kuquka iiprotocol ezininzi zenethiwekhi ezifana ne-HTTP kunye ne-MQTT, isakhelo solawulo lwamandla kunye ne-modulation frequency frequency, kunye neempawu ezifana ne-Flash Encryption kunye ne-Secure Boot, njl. · Uphuhliso kunye nezixhobo zokuvelisa. I-ESP-IDF ibonelela ngezixhobo ezisetyenziswa ngokuqhelekileyo zokwakha, ukukhanya, kunye nokulungiswa kweempazamo ngexesha lophuhliso kunye nokuveliswa kobuninzi (jonga umfanekiso we-4.1), njengenkqubo yokwakha esekelwe kwi-CMake, ikhonkco yesixhobo sokuhlanganisa i-cross-compilation esekelwe kwi-GCC, kunye ne-J.TAG isixhobo sokulungisa esisekwe kwi-OpenOCD, njlnjl. Kuyaphawuleka ukuba ikhowudi ye-ESP-IDF ithobela ikakhulu ilayisensi ye-Apache 2.0 yomthombo ovulekileyo. Abasebenzisi banokuphuhlisa isoftwe yobuqu okanye yorhwebo ngaphandle kwezithintelo ngelixa bethobela imiqathango yelayisensi yomthombo ovulekileyo. Ukongeza, abasebenzisi banikwa iilayisensi ezisisigxina zepatent simahla, ngaphandle kwesinyanzeliso sokuvula umthombo naluphi na ulungiso olwenziweyo kwikhowudi yemvelaphi.
31

Umzobo 4.1.

Ukwakha, ukudanyaza, kunye nokucoca-

izixhobo ging kuphuhliso kunye nemveliso ngobuninzi

4.1.1 Iinguqulelo ze-ESP-IDF
Ikhowudi ye-ESP-IDF isingathwe kwi-GitHub njengeprojekthi yomthombo ovulekileyo. Okwangoku, kukho iinguqulelo ezintathu eziphambili ezikhoyo: i-v3, i-v4, kunye ne-v5. Inguqulelo nganye enkulu idla ngokuqulatha iinguqulelo ezahlukeneyo, ezinje nge-v4.2, v4.3, njalo njalo. IiNkqubo ze-Espressif ziqinisekisa inkxaso yeenyanga ezingama-30 yokulungiswa kwebug kunye neepatches zokhuseleko kuguqulelo ngalunye olukhutshiweyo. Ke ngoko, uhlaziyo loguqulo luphinda lukhutshwe rhoqo, olunje nge-v4.3.1, v4.2.2, njl. njl.view stage (enika inkxaso yangaphambiliview iinguqulelo, ezinokuswela iimpawu ezithile okanye uxwebhu) okanye zixhaswe ngokusemthethweni.

Uluhlu 4.1. Ubume benkxaso yeenguqulelo ezahlukeneyo ze-ESP-IDF zeetshiphusi ze-Espressif

Uthotho ESP32 ESP32-S2 ESP32-C3 ESP32-S3 ESP32-C2 ESP32-H2

v4.1 iyaxhaswa

I-v4.2 iyaxhaswa

I-v4.3 ixhaswa ixhaswa

I-v4.4 iyaxhaswa iyaxhaswa
phambiview

I-v5.0 exhaswayo exhaswayo exhaswayo exhaswayo ngaphambiliview

32 I-ESP32-C3 i-Adventure ye-Wireless: Isikhokelo esiBanzi kwi-IoT

Ukuphindaphindwa kweenguqulelo ezinkulu zihlala zibandakanya uhlengahlengiso kwisakhiwo sesakhelo kunye nohlaziyo kwinkqubo yokuhlanganiswa. Umzekeloample, utshintsho olukhulu ukusuka kwi-v3.* ukuya kwi-v4.* yaba kukufuduka kancinci kwenkqubo yokwakha ukusuka kwi-Make ukuya kwi-CMake. Kwelinye icala, ukuphindaphindwa kweenguqulelo ezincinci kubandakanya ukongezwa kweempawu ezintsha okanye inkxaso yeetshiphusi ezintsha.
Kubalulekile ukwahlula nokuqonda ubudlelwane phakathi kweenguqulelo ezizinzileyo kunye namasebe eGitHub. Iinguqulelo eziphawulwe njenge v*.* okanye v*.*.* zimele iinguqulelo ezizinzileyo eziphumelele uvavanyo lwangaphakathi olupheleleyo yi-Espressif. Yakuba ilungisiwe, ikhowudi, ikhonkco lesixhobo, kunye namaxwebhu okukhupha inguqulelo efanayo ahlala engatshintshi. Nangona kunjalo, amasebe e-GitHub (umzekelo, ukukhululwa/v4.3 isebe) zifumana ikhowudi rhoqo, rhoqo yonke imihla. Ke ngoko, iziqwengana ezimbini zekhowudi phantsi kwesebe elifanayo zinokwahluka, kufuneke abaphuhlisi bahlaziye ngokukhawuleza ikhowudi yabo ngokufanelekileyo.
4.1.2 ESP-IDF Git Workflow
I-Espressif ilandela i-Git workflow ethile ye-ESP-IDF, echazwe ngolu hlobo lulandelayo:
Utshintsho olutsha lwenziwa kwi-master branch, esebenza njengesebe eliphambili lophuhliso. Inguqulo ye-ESP-IDF kwi-master branch ihlala iphethe i-dev tag ukubonisa ukuba ngoku iphantsi kophuhliso, njenge v4.3-dev. Utshintsho kwi-master branch iya kuqala ibe reviewed kwaye yavavanywa kwindawo yokugcina yangaphakathi ye-Espressif, kwaye emva koko yatyhalelwa kwi-GitHub emva kokuba uvavanyo oluzenzekelayo lugqityiwe.
· Nje ukuba uguqulelo olutsha lugqibe uphuhliso lwesici kwi-master branch kwaye yadibana neendlela zokungena kuvavanyo lwe-beta, itshintshela kwisebe elitsha, elifana nokukhululwa/ v4.3. Ukongeza, eli sebe litsha tagged njengoguqulelo olukhutshwe kwangaphambili, njenge-v4.3-beta1. Abaphuhlisi banokubhekisa kwiqonga leGitHub lokufikelela kuluhlu olupheleleyo lwamasebe kunye tags ye-ESP-IDF. Kubalulekile ukuqaphela ukuba uguqulelo lwe-beta (uguqulelo lwangaphambili) lusenokuba nenani elibalulekileyo lemiba eyaziwayo. Njengoko uguqulelo lwe-beta luqhubeka novavanyo, ukulungiswa kwebug kongezwa kuzo zombini ezi nguqulelo nakwi-master branch ngaxeshanye. Kwangaxeshanye, kusenokwenzeka ukuba isebe eliyintloko sele liqalisile ukwenza izinto ezintsha zenguqulelo elandelayo. Xa uvavanyo luphantse lugqitywe, ileyibhile yomgqatswa (rc) yongezwa kwisebe, ebonisa ukuba inokuba ngumgqatswa wokukhutshwa ngokusemthethweni, njenge-v4.3-rc1. Kule stage, isebe lihlala liyinguqulelo yangaphambili.
· Ukuba akukho ziphene zinkulu zifunyenweyo okanye zixeliweyo, ushicilelo olukhutshiweyo lwangaphambili ekugqibeleni lufumana ileyibhile enkulu yoguqulelo (umz., v5.0) okanye inguqulelo encinci yeleyibhile (umz., v4.3) ize ibe luguqulelo olusemthethweni, olushicilelweyo kwiphepha lamanqaku okukhululwa. Emva koko, naziphi na iimpazamo ezichongiweyo kolu guqulelo zilungiswa kwisebe lokukhululwa. Emva kokuba uvavanyo lwezandla lugqityiwe, isebe labelwe ileyibhile yoguqulelo lwe-bug-fix (umzekelo, v4.3.2), ekwaboniswa kwiphepha lamanqaku okukhululwa.
Isahluko 4. Ukumisela imo engqongileyo yoPhuhliso 33

4.1.3 Ukukhetha inguqulelo efanelekileyo
Ekubeni i-ESP-IDF yaqala ngokusemthethweni ukuxhasa i-ESP32-C3 kwi-version v4.3, kwaye i-v4.4 ayikakhululwa ngokusemthethweni ngexesha lokubhalwa kwale ncwadi, inguqulelo esetyenziswe kule ncwadi yi-v4.3.2, eyinguqulelo ehlaziyiweyo. ye v4.3. Nangona kunjalo, kubalulekile ukuqaphela ukuba ngelixa ufunda le ncwadi, i-v4.4 okanye iinguqulelo ezintsha zinokuba sele zikhona. Xa ukhetha inguqulelo, sicebisa oku kulandelayo:
· Kubaphuhlisi benqanaba lokungena, kuyacetyiswa ukuba ukhethe uhlobo oluzinzileyo lwe-v4.3 okanye uguqulelo lwayo oluhlaziyiweyo, oluhambelana ne-ex.ample inguqulelo esetyenziswe kule ncwadi.
· Ngeenjongo zokuvelisa ngobuninzi, kuyacetyiswa ukuba usebenzise inguqulelo yamva nje ezinzileyo ukuze uxhamle kweyona nkxaso yobugcisa yangoku.
· Ukuba ujonge ukuzama iitshiphusi ezintsha okanye ujonge izinto ezintsha zemveliso, nceda usebenzise isebe eliyintloko. Uguqulelo lwamva nje luqulathe zonke iimpawu zamva nje, kodwa khumbula ukuba kusenokubakho iibugs ezaziwayo okanye ezingaziwayo.
· Ukuba uguqulelo oluzinzileyo olusetyenziswayo alubandakanyi iimpawu ezintsha ezinqwenelekayo kwaye unqwenela ukunciphisa imingcipheko enxulumene ne-master branch, cinga ukusebenzisa isebe lokukhululwa elihambelanayo, elifana nokukhululwa/v4.4. I-Espressif's GitHub repository iya kuqala ukudala ukukhululwa / i-v4.4 yesebe kwaye emva koko ikhulule i-v4.4 version ezinzileyo esekelwe kwi-snapshot ethile yembali yeli sebe, emva kokugqiba yonke into yophuhliso kunye novavanyo.
4.1.4 Ngaphezuluview ye-ESP-IDF SDK Directory
I-SDK ye-ESP-IDF iqulathe abalawuli ababini abaphambili: esp-idf kunye .espressif. Eyangaphambili iqulethe ikhowudi yomthombo ye-ESP-IDF yovimba files kunye nemibhalo yokuqulunqa, ngelixa le yokugqibela ikakhulu igcina amatyathanga esixhobo sokuhlanganisa kunye nenye isoftware. Ukuqhelana naba balawuli babini kuya kunceda abaphuhlisi basebenzise kakuhle izixhobo ezikhoyo kunye nokukhawulezisa inkqubo yophuhliso. Ubume bolawulo lwe-ESP-IDF buchazwe ngezantsi:
(1) Uluhlu lwekhowudi yokugcina ye-ESP-IDF (/esp/esp-idf), njengoko kubonisiwe kuMfanekiso 4.2.
a. Amacandelo olawulo lwecandelo
Olu luhlu lungundoqo ludibanisa amacandelo amaninzi ayimfuneko esoftware ye-ESP-IDF. Akukho khowudi yeprojekthi inokuqulunqwa ngaphandle kokuxhomekeka kumacandelo angaphakathi kolu lawulo. Ibandakanya inkxaso yomqhubi kwiitshiphusi ezahlukeneyo ze-Espressif. Ukusuka kwithala leencwadi leLL kunye nethala leencwadi le-HAL ujongano lweeperipherals ukuya kwinqanaba eliphezulu lomqhubi kunye neVirtual File Inkqubo (VFS) inkxaso umaleko, abaphuhlisi banokukhetha amacandelo afanelekileyo kumanqanaba ahlukeneyo kwiimfuno zabo zophuhliso. I-ESP-IDF ikwaxhasa imigangatho emininzi yeprotocol esemgangathweni efana neTCP/IP, HTTP, MQTT, WebI-Socket, njl. Amacandelo anika ukuqonda-
34 I-ESP32-C3 i-Adventure ye-Wireless: Isikhokelo esiBanzi kwi-IoT

Umfanekiso 4.2. Uluhlu lwekhowudi yokugcina ye-ESP-IDF
ukusebenza okusebenzayo kwaye kunokudityaniswa ngokulula kwizicelo, ukuvumela abaphuhlisi ukuba bagxile kuphela kwingqiqo yeshishini. Amanye amalungu aqhelekileyo aquka: · umqhubi: Eli candelo liqulathe iinkqubo zomqhubi weperipheral ezahlukeneyo zeEspressif
chip series, ezifana GPIO, I2C, SPI, UART, LEDC (PWM), njl. Iinkqubo umqhubi peripheral kweli candelo zibonelela chip-ezimeleyo ujongano abstract. Iperipheral nganye ineheader eqhelekileyo file (ezifana ne-gpio.h), ukuphelisa imfuno yokujongana nemibuzo eyahlukeneyo yenkxaso ye-chip. · esp_wifi: Wi-Fi, njenge peripheral ekhethekileyo, iphathwa njengenxalenye eyahlukileyo. Iquka ii-API ezininzi ezifana nokuqaliswa kweendlela ezahlukeneyo zomqhubi we-Wi-Fi, uqwalaselo lwepharamitha, kunye nokuqhuba umcimbi. Imisebenzi ethile yeli candelo ibonelelwe ngohlobo lwamathala eencwadi angatshintshiyo. I-ESP-IDF ikwabonelela ngamaxwebhu abanzi okuqhuba ukuze kube lula ukusetyenziswa.
Isahluko 4. Ukumisela imo engqongileyo yoPhuhliso 35

· freertos: Eli candelo liqulathe ikhowudi epheleleyo yeFreeRTOS. Ngaphandle kokubonelela ngenkxaso ebanzi yale nkqubo yokusebenza, i-Espressif ikwandise inkxaso yayo kwiichips ezimbini ezingundoqo. Kwiichips ezimbini ezingundoqo ezifana ne-ESP32 kunye ne-ESP32-S3, abasebenzisi banokudala imisebenzi kwii-cores ezithile.
b. Amaxwebhu kavimba weefayili
Olu lawulo luqulathe amaxwebhu ophuhliso anxulumene ne-ESP-IDF, kuquka neSikhokelo sokuQalisa, i-API Reference Manual, iSikhokelo soPhuhliso, njl.
QAPHELA Emva kokuqulunqwa zizixhobo ezizenzekelayo, imixholo yolu lawulo ibekwa ku-https://docs.espressif.com/projects/esp-idf. Nceda uqinisekise ukutshintshela uxwebhu ekujoliswe kulo kwi-ESP32-C3 kwaye ukhethe inguqulelo echaziweyo ye-ESP-IDF.
c. Izixhobo zeSikripthi sesixhobo
Olu lawulo luqulathe izixhobo eziqhele ukusetyenziswa kwisiphelo sangaphambili ezifana ne-idf.py, kunye nesixhobo se-terminal esweni idf_monitor.py, njl njl. files yenkqubo yokuhlanganiswa, esebenza njengesiseko sokuphumeza imithetho yoqulunqo lwe-ESP-IDF. Xa udibanisa imo engqongileyo, imixholo engaphakathi kuluhlu lwezixhobo zongezwa kuguquguquko lwemeko-bume yenkqubo, ivumela idf.py ukuba iphunyezwe ngokuthe ngqo phantsi kwendlela yeprojekthi.
d. Eksample uvimba wenkqubo exampLes
Olu luhlu luquka ingqokelela enkulu ye-ESP-IDF example iinkqubo ezibonisa ukusetyenziswa kwecandelo APIs. ExampLes zicwangciswe zaba ngamacandelo angaphantsi ahlukeneyo ngokweendidi zawo:
· qalisa: Lo kavimba weefayili ubandakanya i-entry-level exampnjenge "Molo hlabathi" kunye "nokuqhwanyaza" ukunceda abasebenzisi baqonde iziseko.
· bluetooth: Ungafumana Bluetooth ezinxulumene examples apha, kuquka iBluetooth LE Mesh, Bluetooth LE HID, BluFi, kunye nokunye.
· wifi: Le sub-directory igxile Wi-Fi exampLes, kuquka iinkqubo ezisisiseko ezifana Wi-Fi SoftAP, Wi-Fi Station, espnow, kunye nonxibelelwano protocol exampngaphantsi kwe-Espressif. Ikwabandakanya umaleko wosetyenziso oluninzi exampLes isekelwe kwi-Wi-Fi, njenge-Iperf, i-Sniffer, kunye ne-Smart Config.
· iiperipherals: Eli candelwana libanzi lahlulahlulwe kwakhona laziifolda ezininzi ezisekwe kumagama eeperipheral. Iqukethe ikakhulu umqhubi weperipheral examples for Espressif chips, kunye ex nganyeample ebonisa ezininzi sub-examples. Umzekelo, i-sub-directory ye-gpio ibandakanya ezimbini zangaphambiliampOkuncinci: i-GPIO kunye ne-GPIO matrix keyboard. Kubalulekile ukuqaphela ukuba ayingabo bonke abangaphambiliampOkulandelayo kolu luhlu lusetyenziswa kwi-ESP32-C3.
36 I-ESP32-C3 i-Adventure ye-Wireless: Isikhokelo esiBanzi kwi-IoT

Umzekeloample, i exampi-les ku-usb/inginginya isebenza kuphela kwiiperipherals ezine-USB Host hardware (ezifana ne-ESP32-S3), kwaye i-ESP32-C3 ayinayo le peripheral. Isixokelelwano soqulunqo ngokuqhelekileyo sibonelela ngeengcebiso xa ubeka ithagethi. I FUNDA file kwi ex nganyeampudwelisa iitshiphusi ezixhaswayo. · Iiprothokholi: Le sub-directory iqulethe exampiiprothokholi ezahlukeneyo zonxibelelwano, kuquka iMQTT, HTTP, HTTP Server, PPPoS, Modbus, mDNS, SNTP, equka uluhlu olubanzi lweprotocol yonxibelelwano exampezifunekayo kuphuhliso lwe-IoT. · Unikezelo: Apha, uya kufumana ubonelelo exampiindlela ezahlukeneyo, ezifana nonikezelo lwe-Wi-Fi kunye nonikezelo lweBluetooth LE. · Inkqubo: Olu luhlu luquka ulungiso lweempazamo kwisixokelelwano examples (umzekelo, ukulandelela istaki, ukulandelela ixesha lokubaleka, ukujonga umsebenzi), ulawulo lwamandla umzamples (umz., iindlela ezahlukeneyo zokulala, abaqhubekisi bentsebenziswano), kunye umzampLes inxulumene namalungu enkqubo eqhelekileyo njengesiphelo sekhonsoli, iluphu yomsitho, kunye nesibali-xesha senkqubo. · ugcino: Ngaphakathi kolu luhlu, uya kufumana i-exampngaphantsi kwazo zonke file Iinkqubo kunye neendlela zokugcina ezixhaswa yi-ESP-IDF (ezifana nokufunda nokubhala iFlash, ikhadi le-SD kunye nezinye imidiya yokugcina), kunye ne-ex.ampi-les of non-volatile storage (NVS), FatFS, SPIFFS kunye nezinye file imisebenzi yenkqubo. · ukhuseleko: Le sub-directory iqulethe exampLes ezinxulumene noguqulelo oluntsonkothileyo oludanyazayo. (2) Uluhlu lwe-ESP-IDF lwesixhobo sokuhlanganisa (/.espressif), njengoko kubonisiwe kuMfanekiso 4.3.
Umfanekiso 4.3. Uluhlu lwekhonkco lwesixhobo sokuhlanganisa i-ESP-IDF
Isahluko 4. Ukumisela imo engqongileyo yoPhuhliso 37

a. Uluhlu lwenkqubo yokuhambisa isoftware
Ikhonkco lesixhobo se-ESP-IDF kunye nenye isoftware isasazwa ngohlobo lweepakethe ezicinezelweyo. Ngexesha lenkqubo yokufakela, isixhobo sokufakela sikhuphela kuqala ipakethe ecinezelweyo kwi-dist directory, kwaye emva koko siyikhuphe kulawulo oluchaziweyo. Nje ukuba ufakelo lugqityiwe, imixholo ekolu luhlu inokususwa ngokukhuselekileyo.
b. Python virtual environment directory python env
Iinguqulelo ezahlukeneyo ze-ESP-IDF zixhomekeke kwiinguqulelo ezithile zeepakethe zePython. Ukufakela ezi phakheji ngokuthe ngqo kumamkeli omnye kunokukhokelela kungquzulwano phakathi kweenguqulelo zephakheji. Ukulungisa oku, i-ESP-IDF isebenzisa imekobume yePython enenyani ukwahlula iinguqulelo zeephakheji ezahlukeneyo. Ngolu matshini, abaphuhlisi banokufaka iinguqulelo ezininzi ze-ESP-IDF kwinginginya enye kwaye batshintshe ngokulula phakathi kwabo ngokungenisa izinto ezahlukeneyo zemo engqongileyo.
c. I-ESP-IDF yokuhlanganisa izixhobo zolawulo lwekhonkco lwezixhobo
Olu lawulo luqulathe ikakhulu izixhobo ezidityanisiweyo zokuhlanganisa iiprojekthi ze-ESP-IDF, ezifana nezixhobo ze-CMake, izixhobo zokwakha ze-Ninja, kunye nekhonkco lesixhobo se-gcc esivelisa inkqubo yokugqibela ephunyeziweyo. Ukongeza, olu lawulo lugcina ilayibrari eqhelekileyo yolwimi lweC/C++ kunye nesihloko esihambelanayo files. Ukuba udweliso lwenkqubo lubhekisa kwiheader yenkqubo file njenge #quka , ikhonkco lesixhobo sokudibanisa liya kufumana indawo ye-stdio.h file ngaphakathi kolu lawulo.
4.2 Ukuseka i-ESP-IDF yokusiNgqongileyo yoPhuhliso
Indawo yophuhliso ye-ESP-IDF ixhasa iisistim zesiqhelo ezisebenza njengeWindows, Linux, kunye neMacOS. Eli candelo liza kwazisa indlela yokuseka imeko-bume yophuhliso kwinkqubo nganye. Kuyacetyiswa ukuba kuphuhliswe i-ESP32-C3 kwinkqubo yeLinux, eya kwaziswa ngokweenkcukacha apha. Imiyalelo emininzi iyasebenza kuwo wonke amaqonga ngenxa yokufana kwezixhobo zophuhliso. Ngoko ke, kucetyiswa ukuba ufunde ngokucophelela umxholo weli candelo.
QAPHELA Ungabhekisa kumaxwebhu e-intanethi afumanekayo ku-https://bookc3.espressif.com/esp32c3, abonelela ngemiyalelo ekhankanywe kweli candelo.
4.2.1 Ukuseka i-ESP-IDF yoPhuhliso lweNdawo kwi-Linux
Uphuhliso lwe-GNU kunye nezixhobo zolungiso lweempazamo ezifunekayo kwimeko-bume yophuhliso lwe-ESP-IDF zivela kwinkqubo yeLinux. Ukongeza, i-terminal yomgca womyalelo kwiLinux inamandla kwaye isebenziseka lula, iyenza ibe lolona khetho lufanelekileyo kuphuhliso lwe-ESP32-C3. Unga
38 I-ESP32-C3 i-Adventure ye-Wireless: Isikhokelo esiBanzi kwi-IoT

khetha unikezelo lweLinux olukhethayo, kodwa sicebisa ukuba usebenzise Ubuntu okanye ezinye iinkqubo eziseDebian. Eli candelo libonelela ngesikhokelo ekusekweni kwemekobume yophuhliso ye-ESP-IDF ku-Ubuntu 20.04.
1. Faka iipakethe ezifunekayo
Vula i-terminal entsha kwaye wenze lo myalelo ulandelayo ukufaka zonke iipakethe eziyimfuneko. Umyalelo uyakutsiba ngokuzenzekelayo iipakethe esele zifakiwe.
$ sudo apt-fumana ukufaka igit wget flex inyathi gperf python3 python3-pip python3setuptools cmake ninja-yakha ccache libffi-dev libssl-dev dfu-util libusb-1.0-0
IINGCEBISO Kufuneka usebenzise i-akhawunti yomlawuli kunye negama lokugqitha kulo myalelo ungasentla. Ngokungagqibekanga, akukho lwazi luya kuboniswa xa ufaka igama lokugqitha. Cofa nje iqhosha elithi "Enter" ukuqhubeka nenkqubo.
I-Git sisixhobo sokulawula ikhowudi engundoqo kwi-ESP-IDF. Emva kokuseta ngempumelelo imeko-bume yophuhliso, ungasebenzisa umyalelo welogi yegit ku view lonke utshintsho lwekhowudi ukususela ekudalweni kwe-ESP-IDF. Ukongeza, i-Git iphinda isetyenziswe kwi-ESP-IDF ukuqinisekisa ulwazi loguqulelo, oluyimfuneko ekufakeni ikhonkco lesixhobo esichanekileyo esihambelana neenguqulelo ezithile. Kunye neGit, ezinye izixhobo ezibalulekileyo zenkqubo ziquka iPython. I-ESP-IDF idibanisa ezininzi izikripthi ezizenzekelayo ezibhalwe kwiPython. Izixhobo ezifana ne-CMake, i-Ninja-build, kunye ne-Ccache zisetyenziswa ngokubanzi kwiiprojekthi ze-C / C ++ kwaye zisebenza njengekhowudi engagqibekanga yokuhlanganiswa kunye nezixhobo zokwakha kwi-ESP-IDF. I-libusb-1.0-0 kunye ne-dfu-util ngabaqhubi abaphambili abasetyenziselwa unxibelelwano lwe-serial ye-USB kunye nokutshiswa kwe-firmware. Nje ukuba iipakethe zesoftware zifakiwe, ungasebenzisa i-apt show umyalelo wokufumana iinkcazo ezineenkcukacha zomqulu ngamnye. UmzekeloampLe, sebenzisa i-apt show git ukuprinta ulwazi lwenkcazo yesixhobo seGit.
Umbuzo: Yintoni onokuyenza ukuba inguqulo yePython ayixhaswanga? A: I-ESP-IDF v4.3 ifuna inguqulelo yePython engekho ngaphantsi kwe-v3.6. Kwiinguqulelo ezindala ze-Ubuntu, nceda ukhuphele ngesandla kwaye ufake inguqulelo ephezulu yePython kwaye usete iPython3 njengendawo yePython engagqibekanga. Unokufumana imiyalelo eneenkcukacha ngokukhangela igama elingundoqo lokuhlaziya-alternatives python.
2. Khuphela ikhowudi yokugcina ye-ESP-IDF
Vula i-terminal kwaye wenze incwadi eneenkcukacha esp kulawulo lwakho lwasekhaya usebenzisa umyalelo we-mkdir. Ungakhetha igama elahlukileyo lencwadi eneenkcukacha ukuba uyakhetha. Sebenzisa umyalelo we-cd ukufaka isiqulathi seefayili.
Isahluko 4. Ukumisela imo engqongileyo yoPhuhliso 39

$ mkdir -p /esp $ cd /esp
Sebenzisa umyalelo we-git clone ukukhuphela ikhowudi yokugcina ye-ESP-IDF, njengoko kubonisiwe ngezantsi:
$ git clone -b v4.3.2 -recursive https://github.com/espressif/esp-idf.git
Kulo myalelo ungentla, iparameter -b v4.3.2 ichaza inguqulo yokukhuphela (kule meko, inguqulo 4.3.2). Ipharamitha-i-recursive iqinisekisa ukuba zonke ii-sub-repositories ze-ESP-IDF zikhutshelwa ngokuphindaphindiweyo. Ulwazi malunga neendawo zokugcina ezincinci zingafumaneka kwi-.gitmodules file.
3. Fakela ikhonkco lesixhobo sophuhliso lwe-ESP-IDF
I-Espressif ibonelela nge-automated script install.sh ukukhuphela kunye nokufaka ikhonkco lesixhobo. Esi script sijonga inguqulelo ye-ESP-IDF yangoku kunye nemeko-bume yenkqubo yokusebenza, kwaye emva koko ikhuphela kwaye ifakele uguqulelo olufanelekileyo lweepakethe zesixhobo sePython kunye namatyathanga esixhobo sokuhlanganisa. Umendo wofakelo olungagqibekanga lwekhonkco lesixhobo ngu /.espressif. Ekuphela kwento ekufuneka uyenzile kukuhamba uye kulawulo lwe-esp-idf kwaye usebenzise i-install.sh.
$ cd /esp/esp-idf $ ./install.sh
Ukuba ufaka ikhonkco lesixhobo ngempumelelo, i-terminal iya kubonisa:
Konke kwenzekile!
Kweli nqanaba, umise ngempumelelo imeko-bume yophuhliso ye-ESP-IDF.
4.2.2 Ukuseka i-ESP-IDF yoPhuhliso lweNdawo kwiiWindows
1. Khuphela isixhobo se-ESP-IDF sezixhobo
IINGCEBISO Kuyacetyiswa ukuseta imeko-bume yophuhliso ye-ESP-IDF Windows 10 okanye ngaphezulu. Unokukhuphela isifakeli ku-https://dl.espressif.com/dl/esp-idf/. I-installer ikwayi-software yomthombo ovulekileyo, kwaye ikhowudi yayo yomthombo ingaba viewihlelwe apha: //github.com/espressif/idf-installer.
· Isifakeli sezixhobo ze-ESP-IDF esikwi-Intanethi
Esi sifakeli sincinci, sijikeleze i-4 MB ngobukhulu, kwaye ezinye iipakethe kunye nekhowudi ziya kukhutshelwa ngexesha lofakelo. I-advantagI-e ye-installer ye-intanethi yeyokuba ayinakukhutshelwa kuphela iipakethe zesofthiwe kunye nekhowudi kwimfuno ngexesha lenkqubo yokufakela, kodwa ivumela ukufakwa kwazo zonke izinto ezikhutshwayo ze-ESP-IDF kunye nesebe lamva nje lekhowudi ye-GitHub (efana ne-master branch) . I-disadvantage kukuba ifuna uqhagamshelo lomsebenzi womnatha ngexesha lenkqubo yofako, enokubangela ukusilela kofakelo ngenxa yeengxaki zenethiwekhi.
40 I-ESP32-C3 i-Adventure ye-Wireless: Isikhokelo esiBanzi kwi-IoT

· Isifakeli sezixhobo ze-ESP-IDF esingaxhunyiwe kwi-intanethi Esi sifakeli sikhulu, malunga ne-1 GB ngobukhulu, kwaye siqulathe zonke iipakethe zesoftware kunye nekhowudi efunekayo yokusetwa kwendalo. Eyona advantagI-e ye-installer engaxhunyiwe kwi-intanethi yeyokuba inokusetyenziswa kwiikhomputha ngaphandle kokufikelela kwi-Intanethi, kwaye ngokubanzi inezinga eliphezulu lempumelelo yofakelo. Kufuneka kuqatshelwe ukuba umfaki ongekho kwi-intanethi unokufakela kuphela ukhupho oluzinzileyo lwe-ESP-IDF echongwe ngu-v*.* okanye v*.*.*.
2. Qhuba i-ESP-IDF izixhobo zokufakela Emva kokukhuphela uguqulelo olufanelekileyo lwesifakeli (thatha i-ESP-IDF Tools Offline 4.3.2 for ex.ample apha), cofa kabini i-exe file ukwazisa ujongano lofakelo lwe-ESP-IDF. Oku kulandelayo kubonisa indlela yokufakela i-ESP-IDF inguqulelo ezinzileyo ye-v4.3.2 usebenzisa isifakeli esingaxhunyiwe kwi-intanethi.
(1) Ku-"Khetha ulwimi lokufakela" ujongano oluboniswe kuMfanekiso 4.4, khetha ulwimi oluza kusetyenziswa kuluhlu lokuhla.
Umfanekiso 4.4. "Khetha ukufakela ulwimi" ujongano (2) Emva kokukhetha ulwimi, cofa u-"Kulungile" ukuze uvele "isivumelwano selayisensi" ujongano
(jonga umfanekiso 4.5). Emva kokufunda ngokucophelela isivumelwano selayisensi yokufakela, khetha "Ndiyasamkela isivumelwano" kwaye nqakraza "Okulandelayo".
Umfanekiso 4.5. “Isivumelwano selayisensi” ujongano lweSahluko sesi-4. Ukuseka iNdawo yoPhuhliso 41

(3) Review ukucwangciswa kwenkqubo kwi-"Pre-installation system check" ujongano (jonga umfanekiso 4.6). Jonga inguqulelo yeWindows kunye nolwazi olufakiweyo lwesoftware yeantivirus. Cofa "Okulandelayo" ukuba zonke izinto zoqwalaselo ziqhelekile. Ngaphandle koko, unokucofa "ilog epheleleyo" yezisombululo ezisekelwe kwizinto eziphambili.
Umfanekiso 4.6. "Khangela inkqubo ngaphambi kokufaka" i-interface TIPS
Ungathumela iilogi ku-https://github.com/espressif/idf-installer/issues ngoncedo. (4) Khetha uvimba wofakelo we-ESP-IDF. Apha, khetha D:/.espressif, njengoko kubonisiwe kwi
Umfanekiso 4.7, kwaye ucofe "Okulandelayo". Nceda qaphela ukuba .espressif nantsi incwadi efihliweyo. Emva kokuba ufakelo lugqityiwe, unako view imixholo ethile yolu lawulo ngokuvula i file umphathi kunye nokubonisa izinto ezifihliweyo.
Umfanekiso 4.7. Khetha i-ESP-IDF yofakelo lwesikhokelo 42 ESP32-C3 Wireless Adventure: Isikhokelo esiBanzi kwi-IoT

(5) Khangela amacandelo ekufuneka afakwe, njengoko kuboniswe kuMfanekiso 4.8. Kuyacetyiswa ukuba usebenzise ukhetho olungagqibekanga, oko kukuthi, ufakelo olupheleleyo, kwaye emva koko ucofe "Okulandelayo".
Umfanekiso 4.8. Khetha izinto oza kuzifaka (6) Qinisekisa izinto eziza kufakwa kwaye ucofe u- "Faka" ukuqalisa i-automated in-
inkqubo yokumisa, njengoko kubonisiwe kuMfanekiso 4.9. Inkqubo yokufakela ingathatha amashumi emizuzu kwaye ibha yenkqubela phambili yenkqubo yokufakela iboniswe kuMfanekiso 4.10. Nceda ulinde ngomonde.
Umfanekiso 4.9. Ukulungiselela ukufakela (7) Emva kokuba ufakelo lugqityiwe, kuyacetyiswa ukuba ujonge “Bhalisa i-ESP-IDF
Izixhobo eziphunyezwayo njengokukhutshwa kweWindows Defender…” ukunqanda isoftware ye-antivirus ekucimeni files. Ukongeza izinto zokukhutshelwa ngaphandle kunokutsiba iskeni rhoqo nge-antivirus
Isahluko 4. Ukumisela imo engqongileyo yoPhuhliso 43

Umfanekiso 4.10. Isoftware yebha yenkqubela phambili yokufakela, iphucula kakhulu ikhowudi yokuqulunqa ukusebenza kakuhle kwenkqubo yeWindows. Cofa "Gqiba" ukugqiba ukufakwa kwendawo yophuhliso, njengoko kuboniswe kuMfanekiso 4.11. Unokukhetha ukujonga "Sebenzisa imeko ye-ESP-IDF PowerShell" okanye "Sebenzisa i-ESP-IDF yomyalelo wokukhawuleza". Qhuba ifestile yoqulunqo ngqo emva kofakelo ukuqinisekisa ukuba imeko-bume yophuhliso isebenza ngokwesiqhelo.
Umfanekiso 4.11. Ufakelo lugqityiwe (8) Vula indawo engqongileyo yophuhliso efakiweyo kuluhlu lwenkqubo (mhlawumbi ESP-IDF 4.3)
I-CMD okanye i-ESP-IDF 4.3 i-terminal ye-PowerShell, njengoko kubonisiwe kwi-Figure 4.12), kunye ne-ESP-IDF eguquguqukayo yendawo iyakongezwa ngokuzenzekelayo xa isebenza kwi-terminal. Emva koko, ungasebenzisa umyalelo we-idf.py kwimisebenzi. I-ESP-IDF 4.3 CMD evuliwe iboniswe kuMfanekiso 4.13. I-44 ESP32-C3 i-Adventure engenazintambo: Isikhokelo esiBanzi kwi-IoT

Umfanekiso 4.12. Indawo yophuhliso ifakiwe
Umfanekiso 4.13. I-ESP-IDF 4.3 CMD
4.2.3 Ukuseka i-ESP-IDF yoPhuhliso lweNdalo kwi-Mac
Inkqubo yokuhlohla imeko-bume yophuhliso ye-ESP-IDF kwinkqubo ye-Mac iyafana naleyo ye-Linux. Imiyalelo yokukhuphela ikhowudi yogcino kunye nokufakela ikhonkco lesixhobo iyafana ncam. Kuphela yimiyalelo yokuhlohla imipakethe yokuxhomekeka eyahluke kancinane. 1. Faka iipakethe zokuxhomekeka Vula i-terminal, kwaye ufake umbhobho, isixhobo solawulo lwephakheji yePython, ngokwenza lo myalelo ulandelayo:
% sudo lula ukufaka ipip
Faka i-Homebrew, isixhobo sokulawula iphakheji ye-macOS, ngokuqhuba lo myalelo ulandelayo:
% /bin/bash -c “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/ HEAD/install.sh)”
Faka iipakethe ezifunekayo zokuxhomekeka ngokuqhuba lo myalelo ulandelayo:
% brew python3 fakela cmake ninja ccache dfu-util
2. Khuphela ikhowudi yogcino lwe-ESP-IDF Landela imiyalelo enikwe kwicandelo 4.2.1 ukuze ukhuphele ikhowudi yokugcina ye-ESP-IDF. Amanyathelo ayafana nawokukhuphela kwinkqubo yeLinux.
Isahluko 4. Ukumisela imo engqongileyo yoPhuhliso 45

3. Fakela ikhonkco lesixhobo sophuhliso lwe-ESP-IDF
Landela imiyalelo enikwe kwicandelo 4.2.1 yokufakela ikhonkco lesixhobo sophuhliso lwe-ESP-IDF. Amanyathelo ayafana nawokuhlohla kwinkqubo yeLinux.
4.2.4 Ukufakwa kweKhowudi yeVS
Ngokungagqibekanga, i-SDK ye-ESP-IDF ayiquki isixhobo sokuhlela ikhowudi (nangona isifakeli samva nje se-ESP-IDF seWindows sibonelela ngokhetho lokuhlohla i-ESP-IDF Eclipse). Ungasebenzisa nasiphi na isixhobo sokubhaliweyo esisikhethayo ukuhlela ikhowudi kwaye emva koko uyiqokelele usebenzisa imiyalelo yesiphelo.
Esinye isixhobo esidumileyo sokuhlela ikhowudi yiVS Code (iKhowudi yeSitudiyo esiBonakalayo), esimahla kunye nesityebi somhleli wekhowudi onojongano olusebenziseka lula. Inika ezahlukeneyo plugins ebonelela ngemisebenzi efana nokukhangela ikhowudi, ukuqaqambisa isintaksi, ulawulo lwenguqulelo yeGit, kunye nodibaniso lwesiphelo. Ukongezelela, i-Espressif iphuhlise iplagin ezinikeleyo ebizwa ngokuba yi-Espressif IDF ye-VS Code, eyenza kube lula ukucwangciswa kweprojekthi kunye nokulungiswa kweempazamo.
Ungasebenzisa umyalelo wekhowudi kwi-terminal ukuvula ngokukhawuleza ifolda yangoku kwi-VS Code. Kungenjalo, ungasebenzisa indlela emfutshane Ctrl+ ukuvula i-console ye-terminal yenkqubo ngaphakathi kweKhowudi yeVS.
IINGCEBISO Kucetyiswa ukuba usebenzise iKhowudi ye-VS yophuhliso lwekhowudi ye-ESP32-C3. Khuphela kwaye ufake inguqulelo yamva nje yeKhowudi yeVS apha https://code.visualstudio.com/.
4.2.5 Intshayelelo kwiiNdawo zoPhuhliso zeQela leSithathu
Ukongeza kwindawo esemthethweni yophuhliso lwe-ESP-IDF, esebenzisa ubukhulu becala ulwimi lwe-C, i-ESP32-C3 ikwaxhasa nezinye iilwimi zeprogramu eziqhelekileyo kunye noluhlu olubanzi lweendawo zophuhliso zomntu wesithathu. Ezinye iinketho eziphawulekayo ziquka:
I-Arduino: iqonga lomthombo ovulekileyo we-hardware kunye ne-software, exhasa ii-microcontrollers ezahlukeneyo, kuquka i-ESP32-C3.
Isebenzisa ulwimi lwe-C ++ kwaye inikezela nge-API elula kunye nesemgangathweni, eyaziwa ngokuba yi-Arduino ulwimi. I-Arduino isetyenziswa ngokubanzi kuphuhliso lweprototype kunye neemeko zemfundo. Ibonelela ngephakheji yesoftware eyandisiweyo kunye ne-IDE evumela ukuhlanganiswa okulula kunye nokukhanya.
I-MicroPython: Itoliki yolwimi lwe-Python ye-3 eyenzelwe ukusebenza kumaqonga e-microcontroller afakwe ngaphakathi.
Ngolwimi lweskripthi olulula, lunokufikelela ngokuthe ngqo kwimithombo ye-ESP32-C3 ye-peripheral (efana ne-UART, SPI, kunye ne-I2C) kunye nemisebenzi yonxibelelwano (efana ne-Wi-Fi kunye neBluetooth LE).
46 I-ESP32-C3 i-Adventure ye-Wireless: Isikhokelo esiBanzi kwi-IoT

Oku kwenza kube lula ukusebenzisana kwehardware. I-MicroPython, idibaniswe nelayibrari yokusebenza kwezibalo ebanzi yePython, yenza ukuba ukuphunyezwa kwe-algorithms enzima kwi-ESP32-C3, iququzelele ukuphuhliswa kwezicelo ezinxulumene ne-AI. Njengolwimi lwescript, akukho mfuneko yokuhlanganiswa okuphindaphindiweyo; uhlengahlengiso lungenziwa kwaye izikripthi zinokwenziwa ngokuthe ngqo.
I-NodeMCU: itoliki yolwimi ye-LUA ephuhliselwe iitshiphusi ze-ESP.
Ixhasa phantse yonke imisebenzi yeperipheral yeetshiphusi ze-ESP kwaye ikhaphukhaphu kuneMicroPython. Ngokufana ne-MicroPython, i-NodeMCU isebenzisa ulwimi lweskripthi, isusa isidingo sokuhlanganiswa ngokuphindaphindiweyo.
Ngaphaya koko, i-ESP32-C3 ikwaxhasa iinkqubo zokusebenza ze-NuttX kunye neZephyr. I-NuttX yinkqubo yexesha lokwenyani esebenzayo ebonelela nge-POSIX-ehambelanayo ujongano, ephucula ukuphatheka kwesicelo. I-Zephyr yinkqubo encinci yexesha lokwenyani eyenzelwe ngokukodwa izicelo ze-IoT. Ibandakanya iilayibrari ezininzi zesoftware ezifunekayo kuphuhliso lwe-IoT, ngokuthe ngcembe iguqukela kwi-ecosystem yesoftware.
Le ncwadi ayiboneleli ngeenkcukacha zofakelo lwemiyalelo yeemeko ezingqongileyo zophuhliso ezikhankanywe ngasentla. Ungafaka imeko-bume yophuhliso ngokusekelwe kwiimfuno zakho ngokulandela amaxwebhu kunye nemiyalelo efanelekileyo.
4.3 Inkqubo yokuHlanganisa i-ESP-IDF
4.3.1 IiNgcebiso zeSiseko seNkqubo yokuHlanganisa
Iprojekthi ye-ESP-IDF yingqokelela yenkqubo ephambili enomsebenzi wokungena kunye namacandelo amaninzi azimeleyo asebenzayo. Umzekeloample, iprojekthi elawula utshintsho lwe-LED ikakhulu luqulathe inkqubo yokungena engundoqo kunye necandelo lomqhubi elilawula i-GPIO. Ukuba ufuna ukuqaphela ulawulo olukude lwe-LED, kufuneka udibanise i-Wi-Fi, i-TCP / IP protocol stack, njl.
Inkqubo yoqulunqo inokuqokelela, ikhonkco, kwaye ivelise ephunyeziweyo files (.bin) yekhowudi ngokusebenzisa isethi yemithetho yokwakha. Inkqubo yokuhlanganiswa kwe-ESP-IDF v4.0 kunye neenguqulelo ezingentla zisekelwe kwi-CMake ngokungagqibekanga, kunye neskripthi sokudibanisa i-CMakeLists.txt ingasetyenziselwa ukulawula ukuziphatha kokuhlanganiswa kwekhowudi. Ukongeza ekuxhaseni i-syntax esisiseko ye-CMake, inkqubo yokuqulunqa i-ESP-IDF ikwachaza uluhlu lwemithetho engagqibekanga yokuhlanganiswa kunye nemisebenzi ye-CMake, kwaye ungabhala iskripthi sokuqulunqa ngeengxelo ezilula.
4.3.2 Iprojekthi File Ulwakhiwo
Iprojekthi yincwadi eneenkcukacha equlathe undoqo weprogram yokungena, amacandelo achazwe ngumsebenzisi, kunye files efunekayo ukwakha izicelo eziphunyeziweyo, ezinje ngemibhalo yoqulunqo, uqwalaselo
Isahluko 4. Ukumisela imo engqongileyo yoPhuhliso 47

files, iitheyibhile zokwahlula, njl. njl. file inokudityaniswa kwaye iveliswe koomatshini abanohlobo olufanayo lwemeko yophuhliso lwe-ESP-IDF. Iprojekthi eqhelekileyo ye-ESP-IDF file Ulwakhiwo luboniswe kuMfanekiso 4.14.
Umfanekiso 4.14. Iprojekthi ye-ESP-IDF eqhelekileyo file isakhiwo Ekubeni i-ESP-IDF isekela ii-chips ezininzi ze-IoT ezivela kwi-Espressif, kubandakanywa i-ESP32, i-ESP32-S series, i-ESP32-C series, i-ESP32-H series, njl., i-target idinga ukuqinisekiswa ngaphambi kokuqulunqa ikhowudi. Ithagethi zombini isixhobo se-hardware eqhuba inkqubo yesicelo kunye nethagethi yokwakha yenkqubo yokuhlanganisa. Ngokuxhomekeke kwiimfuno zakho, ungacacisa enye okanye ngaphezulu ekujoliswe kuyo kwiprojekthi yakho. Umzekeloample, ngomyalelo idf.py set-target esp32c3, ungacwangcisa uqokelelo ekujoliswe kuko kwi ESP32-C3, apho iparameters ezingagqibekanga kunye nendlela yokudibanisa isixhobo setsheyini ye ESP32C3 iya kulayishwa. Emva kokuhlanganiswa, inkqubo ephunyeziweyo inokuveliswa ye-ESP32C3. Unako kwakhona ukuqhuba umyalelo usete-thagethi kwakhona ukuseta ithagethi eyahlukileyo, kwaye inkqubo yokuqokelela iya kucoca ngokuzenzekelayo kwaye iphinde iqwalaselwe. Amacandelo
Amacandelo kwi-ESP-IDF ziiyunithi zeemodyuli nezizimeleyo zekhowudi ezilawulwa kwinkqubo yoqulunqo. Acwangciswa njengeefolda, kunye negama lesiqulathi seefayili elimele igama lecandelo ngokungagqibekanga. Icandelo ngalinye lineskripthi salo sokuqulunqa ukuba 48 ESP32-C3 Wireless Adventure: Isikhokelo esiBanzi kwi-IoT

ixela iiparamitha zokuhlanganiswa kwayo kunye nokuxhomekeka. Ngexesha lenkqubo yokuhlanganiswa, amacandelo aqulunqwa abe ngamathala eencwadi amileyo ahlukeneyo (.a files) kwaye ekugqibeleni kudityaniswe namanye amacandelo ukwenza inkqubo yesicelo.
I-ESP-IDF ibonelela ngemisebenzi ebalulekileyo, efana nenkqubo yokusebenza, abaqhubi be-peripheral, kunye ne-network protocol stack, ngokohlobo lwamacandelo. La malungu agcinwe kulawulo lwamacandelo abekwe ngaphakathi kwe-ESP-IDF yeengcambu ulawulo. Abaphuhlisi abafuni kukhuphela la macandelo kulawulo lwamacandelo e-myProject. Endaweni yoko, kufuneka bacacise kuphela ubudlelwane bokuxhomekeka kula macandelo kwiprojekthi yeCMakeLists.txt file usebenzisa i REQUIRES okanye PRIV_REQUIRES imiyalelo. Isistim yokudibanisa iya kufumana ngokuzenzekelayo kwaye iqulunqe amacandelo afunekayo.
Ngoko ke, ulawulo lwamacandelo phantsi kwe-myProject aluyomfuneko. Isetyenziselwa kuphela ukubandakanya amacandelo athile eprojekthi, anokuba ngamathala eencwadi angaphandle okanye ikhowudi echazwe ngumsebenzisi. Ukongeza, amacandelo anokufunyanwa kulo naluphi na uvimba weefayili ngaphandle kwe-ESP-IDF okanye iprojekthi yangoku, efana neprojekthi yomthombo ovulekileyo egcinwe komnye uvimba weefayili. Kulo mzekelo, udinga kuphela ukongeza umendo wecandelo ngokucwangcisa i-EXTRA_COMPONENT_DIRS eguquguqukayo kwi-CMakeLists.txt phantsi kolawulo lweengcambu. Olu luhlu luza kukhuphela ngaphezu kwalo naliphi na ilungu le-ESP-IDF elinegama elifanayo, liqinisekisa ukuba inxalenye echanekileyo iyasetyenziswa.
Inkqubo yokungena engundoqo Uvimba weefayili ongundoqo ngaphakathi kweprojekthi ulandela okufanayo file Ulwakhiwo njengamanye amalungu (umz., icandelo1). Nangona kunjalo, inokubaluleka okukhethekileyo njengoko ilicandelo elisisinyanzelo ekufuneka libekho kuyo yonke iprojekthi. Uluhlu oluphambili luqulethe ikhowudi yomthombo weprojekthi kunye nendawo yokungena yeprogram yomsebenzisi, ebizwa ngokuba yi-app_main. Ngokungagqibekanga, ukuphunyezwa kwenkqubo yomsebenzisi kuqala kule ndawo yokungena. Icandelo eliphambili likwahluka ngokuba lixhomekeke ngokuzenzekelayo kuwo onke amacandelo ngaphakathi kwendlela yokukhangela. Ngoko ke, akukho mfuneko yokubonisa ngokucacileyo ukuxhomekeka usebenzisa iREQUIRES okanye PRIV_REQUIRES imiyalelo kwi-CMakeLists.txt file.
Uqwalaselo file Uvimba weefayili weprojekthi uqulathe uqwalaselo file ebizwa ngokuba yi-sdkconfig, equlathe iiparamitha zoqwalaselo zawo onke amalungu ngaphakathi kweprojekthi. I-sdkconfig file yenziwe ngokuzenzekelayo yinkqubo yoqulunqo kwaye inokuguqulwa kwaye yenziwe ngokutsha ngomyalelo idf.py menuconfig. Ukhetho lwe menuconfig lusuka ikakhulu kwi Kconfig.projbuild yeprojekthi kunye ne Kconfig yamacandelo. Abaphuhlisi becandelo ngokubanzi bongeza imiba yoqwalaselo kwi Kconfig ukwenza ilungu libhetyebhetye kwaye liqwalaselwe.
Yakha uvimba weefayili Ngokungagqibekanga, ulawulo lolwakhiwo ngaphakathi kweprojekthi igcina phakathi files kunye ne-
Isahluko 4. Ukumisela imo engqongileyo yoPhuhliso 49

nal iinkqubo eziphunyeziweyo ezenziwe ngumyalelo wokwakha idf.py. Ngokubanzi, akuyimfuneko ukufikelela ngokuthe ngqo kwimixholo yoluhlu lokwakha. I-ESP-IDF ibonelela ngemiyalelo esele ichaziwe yokusebenzisana nolawulo, njengokusebenzisa i idf.py flash umyalelo wokufumana ngokuzenzekela indawo yokubini eqokelelweyo. file kwaye uyidanyazise kwidilesi ekhankanyiweyo, okanye usebenzisa i idf.py fullclean umyalelo ukucoca uvimba wokwakha wonke.
Itheyibhile yokwahlulahlula (izahlulo.csv) Iprojekthi nganye ifuna itheyibhile yokwahlula ukwahlula isithuba sombane kwaye ichaze ubungakanani kunye nedilesi yokuqala yenkqubo ephunyezwayo kunye nesithuba sedatha yomsebenzisi. Umyalelo idf.py flash okanye inkqubo yophuculo ye-OTA iya kukhanyisa i-firmware kwidilesi ehambelanayo ngokwale theyibhile. I-ESP-IDF ibonelela ngeetafile ezininzi zezahlulo ezingagqibekanga kumacandelo/ i-partition_table, njenge partitions_singleapp.csv kunye ne partitions_two_ ota.csv, enokuthi ikhethwe kwi-menuconfig.
Ukuba itheyibhile yolwahlulo olungagqibekanga lwenkqubo alukwazi ukuhlangabezana neemfuno zeprojekthi, i-partitions.csv yesiko inokongezwa kulawulo lweprojekthi kwaye ikhethwe kwi-menuconfig.
4.3.3 Ulwakhiwo oluMiselweyo lweMithetho yeNkqubo yokuHlanganisa
Imithetho yamacandelo angaphezulu anegama elifanayo Ngexesha lenkqubo yokukhangela icandelo, inkqubo yokudibanisa ilandela umyalelo othile. Iqala ikhangele amacandelo angaphakathi e-ESP-IDF, emva koko ijonge amacandelo eprojekthi yomsebenzisi, kwaye ekugqibeleni ikhangele amacandelo kwi-EXTRA_COMPONENT_DIRS. Kwiimeko apho oovimba bolawulo abaninzi bequlathe amacandelo anegama elifanayo, inxalenye efunyenwe kulawulo lokugqibela iya kugiba naliphi na ilungu langaphambili elinegama elifanayo. Lo mgaqo uvumela ukulungelelaniswa kwamacandelo e-ESP-IDF ngaphakathi kweprojekthi yomsebenzisi, ngelixa ugcina ikhowudi ye-ESP-IDF yokuqala.
Imithetho yokubandakanya amacandelo aqhelekileyo ngokungagqibekanga Njengoko kukhankanyiwe kwicandelo 4.3.2, amacandelo kufuneka acacise ngokuthe gca ukuxhomekeka kwawo kwamanye amacandelo kwi-CMakeLists.txt. Nangona kunjalo, amacandelo aqhelekileyo afana ne-freertos aqukwa ngokuzenzekelayo kwinkqubo yokwakha ngokungagqibekanga, nokuba ubudlelwane babo bokuxhomekeka abuchazwanga ngokucacileyo kwiskripthi soqulunqo. ESP-IDF amacandelo aqhelekileyo aquka freertos, Newlib, inqwaba, log, soc, esp_rom, esp_common, xtensa/riscv, kunye cxx. Ukusebenzisa la macandelo aqhelekileyo kuthintela umsebenzi ophindaphindayo xa ubhala i-CMakeLists.txt kwaye uyenze ibemfutshane ngakumbi.
Imigaqo yoqwalaselo olungaphezulu kwezinto Abaphuhlisi banokongeza uqwalaselo olungagqibekanga iparameters ngokongeza uqwalaselo olungagqibekanga. file ebizwa sdkconfig.defaults kwiprojekthi. Umzekeloample, idibanisa CONFIG_LOG_
50 I-ESP32-C3 i-Adventure ye-Wireless: Isikhokelo esiBanzi kwi-IoT

DEFAULT_LEVEL_NONE = y inokuqwalasela ujongano lwe-UART ukuze ingashicileli idatha yelog ngokungagqibekanga. Ngaphezu koko, ukuba iiparamitha ezithile kufuneka zimiselwe kwithagethi ethile, uqwalaselo file ebizwa sdkconfig.defaults.TARGET_NAME ingadityaniswa, apho iTARGET_NAME inokuba yi esp32s2, esp32c3, njalo njalo. Olu qwalaselo files zithathwa ngaphandle kwi sdkconfig ngexesha loqulunqo, ngoqwalaselo olungagqibekanga jikelele file sdkconfig.ukungagqibeki kuthathwe ngaphandle kuqala, kulandelwa luqwalaselo ekujoliswe kulo. file, njenge sdkconfig.defaults.esp32c3. Kwiimeko apho kukho izinto zoqwalaselo ezinegama elifanayo, uqwalaselo lokugqibela file iya kudlula eyokuqala.
4.3.4 Intshayelelo yescript sokuHlanganisa
Xa uphuhlisa iprojekthi usebenzisa i-ESP-IDF, abaphuhlisi abafuni nje ukubhala ikhowudi yomthombo kodwa kufuneka babhale i-CMakeLists.txt yeprojekthi kunye namacandelo. CMakeLists.txt sisicatshulwa file, eyaziwa ngokuba yiscript sokuqulunqa, esichaza uluhlu lwezinto ezidityanisiweyo, izinto zokuqulunqa uqwalaselo, kunye nemiyalelo yokukhokela inkqubo yokuhlanganiswa kwekhowudi yomthombo. Inkqubo yokuhlanganiswa kwe-ESP-IDF v4.3.2 isekelwe kwi-CMake. Ukongeza ekuxhaseni imisebenzi kunye nemiyalelo ye-CMake yomthonyama, ikwachaza uluhlu lwemisebenzi yesiko, ikwenza kube lula kakhulu ukubhala imibhalo yokudibanisa.
Iincwadi zeempendulo zoqulunqo lwe-ESP-IDF ziquka ubukhulu becala iscript soqulunqo lweprojekthi kunye nemibhalo yokuqulunqwa kwecandelo. I-CMakeLists.txt kulawulo lweengcambu zeprojekthi ibizwa ngokuba siskripthi soqulunqo lweprojekthi, ekhokela inkqubo yokuhlanganiswa kwayo yonke iprojekthi. Iskripthi esisisiseko soqulunqo lweprojekthi ngokuqhelekileyo siquka le migca mithathu ilandelayo:
1. cmake_minimum_required(VERSION 3.5) 2. bandakanya($ENV{IDF_PATH}/tools/cmake/project.cmake) 3. project(myProject)
Phakathi kwazo, i-cmake_minimum_required (VERSION 3.5) mayibekwe kumgca wokuqala, osetyenziselwa ukubonisa ubuncinane benombolo yenguqulo ye-CMake efunwa yiprojekthi. Iinguqulelo ezintsha ze-CMake ziqhelekile ngasemva zihambelana neenguqulelo ezindala, ke hlengahlengisa inombolo yenguqulelo ngokufanelekileyo xa usebenzisa imiyalelo emitsha ye-CMake ukuqinisekisa ukuhambelana.
zibandakanya($ENV {IDF_PATH}/tools/cmake/project.cmake) ingenisa izinto zoqwalaselo ezichazwe kwangaphambili kunye nemiyalelo yenkqubo yokuqulunqwa kwe-ESP-IDF, kubandakanywa nemithetho yokwakha engagqibekanga yenkqubo yoqulunqo echazwe kwiCandelo 4.3.3. project(myProject) yenza iprojekthi ngokwayo kwaye ichaze igama layo. Eli gama liza kusetyenziswa njengemveliso yokubini yokugqibela file igama, okt, myProject.elf kunye ne-myProject.bin.
Iprojekthi inokuba namacandelo amaninzi, kuquka icandelo eliphambili. Ulawulo oluphezulu lwecandelo ngalinye luqulethe iCMakeLists.txt file, ebizwa ngokuba siscript soqulunqo lwecandelo. Imibhalo yoqulunqo lwecandelo isetyenziswa ikakhulu ukucacisa uxhomekeko lwecandelo, iiparamitha zoqwalaselo, ikhowudi yemvelaphi. files, kunye nesihloko esibhalwe ngasentla files ye
Isahluko 4. Ukumisela imo engqongileyo yoPhuhliso 51

ukuhlanganiswa. Ngomsebenzi wesiko we-ESP-IDF idf_component_register, eyona khowudi isezantsi efunekayo yesikripthi soqulunqo lwecandelo yile ilandelayo:

1. idf_component_register(SRCS “src1.c”

2.

INCLUDE_DIRS "bandakanya"

3.

IFUNA icandelo1)

Iparameter yeSRCS ibonelela ngoluhlu lomthombo files kwicandelo, lahlulwe zizithuba ukuba kukho ezininzi files. I INCLUDE_DIRS ipharamitha ibonelela ngoluhlu lwesihloko esisentla yoluntu file abalawuli becandelo, abaza kudityaniswa kumendo wokukhangela amanye amacandelo axhomekeke kwicandelo langoku. I-REQUIRES parameter ichonga icandelo loluntu elixhomekeke kwicandelo langoku. Kuyimfuneko ukuba amacandelo achaze ngokucacileyo ukuba ngawaphi amacandelo axhomekeke kuwo, njengecandelo2 ngokuxhomekeke kwicandelo1. Nangona kunjalo, ngenxa yecandelo eliphambili, elixhomekeke kuwo onke amacandelo ngokungagqibekanga, i-REQUIRES parameter inokushiywa.

Ukongeza, imiyalelo yemveli ye-CMake inokusetyenziswa kwakhona kwiskripthi sokudibanisa. Umzekeloample, sebenzisa umyalelo omiselweyo ukuseta iinguqu, ezifana nokuseta(VARIABLE “VALUE”).

4.3.5 Intshayelelo yeMithetho eqhelekileyo
I-ESP-IDF isebenzisa i-CMake (isixhobo sokucwangcisa iprojekthi), i-Ninja (isixhobo sokwakha iprojekthi) kunye ne-esptool (isixhobo se-flash) kwinkqubo yokuhlanganiswa kwekhowudi. Isixhobo ngasinye sidlala indima eyahlukileyo ekuhlanganiseni, kwisakhiwo, nakwinkqubo ye-flash, kwaye ikwaxhasa imiyalelo eyahlukeneyo yokusebenza. Ukuququzelela ukusebenza komsebenzisi, i-ESP-IDF yongeza i-idf.py yesiphelo esidityanisiweyo esivumela le miyalelo ingasentla ukuba ibizwe ngokukhawuleza.
Ngaphambi kokusebenzisa idf.py, qiniseka ukuba:
· I-IDF_PATH yemo engqongileyo ye-ESP-IDF yongezwe kwitheminali yangoku. · Ulawulo lophumezo lomyalelo luluhlu lweengcambu zeprojekthi, eziquka i
iskripthi soqulunqo lweprojekthi CMakeLists.txt.
Imiyalelo eqhelekileyo ye idf.py yile ilandelayo:
· idf.py –help: ukubonisa uluhlu lwemiyalelo kunye nemiyalelo yokusetyenziswa kwayo. · idf.py set-thagethi : ukucwangcisa uqulunqo taidf.py fullcleanrget, enjalo
njengokutshintsha kunye esp32c3. · idf.py menuconfig: indulula uqwalaselo lwemenu, iterminal ubumbeko lomzobo
isixhobo, esinokukhetha okanye siguqule iinketho zoqwalaselo, kwaye iziphumo zoqwalaselo zigcinwa kwi sdkconfig. file. · idf.py ukwakha: ukuqaliswa kokuhlanganiswa kwekhowudi. Isiphakathi files kunye nenkqubo yokugqibela ephunyeziweyo eyenziwe ludibaniso iyakugcinwa kulawulo lolwakhiwo lweprojekthi ngokungagqibekanga. Inkqubo yokuhlanganiswa iyakhula, nto leyo ethetha ukuba umthombo omnye kuphela file ilungisiwe, kuphela ilungisiwe file iya kuhlanganiswa kwixesha elizayo.

52 I-ESP32-C3 i-Adventure ye-Wireless: Isikhokelo esiBanzi kwi-IoT

· idf.py coca: ukucoca indawo ephakathi files uveliswe kukuqulunqwa kweprojekthi. Iprojekthi iyonke iya kunyanzeliswa ukuba iqulunqwe kuluhlu olulandelayo. Qaphela ukuba uqwalaselo lwe-CMake kunye nohlengahlengiso lolungelelwaniso olwenziwe yi-menuconfig aluyi kususwa ngexesha lokucoca.
· idf.py fullclean: cima lonke ulawulo lolwakhiwo, kuquka yonke imveliso yoqwalaselo lwe CMake files. Xa usakha iprojekthi kwakhona, iCMake iya kumisela iprojekthi ukusuka ekuqaleni. Nceda uqaphele ukuba lo myalelo uya kuphinda ucime yonke into files kulawulo lokwakha, ngoko lusebenzise ngononophelo, kunye noqwalaselo lweprojekthi file ayizukucinywa.
· idf.py flash: idanyaza inkqubo yokubini ephunyeziweyo file iveliswe kukwakha kwithagethi ye-ESP32-C3. Iinketho-p kunye -b zisetyenziselwa ukuseta igama lesixhobo sothotho lwezibuko kunye nesantya sebhaud sokudanyaza, ngokulandelelanayo. Ukuba ezi zimbini iinketho azikhankanywanga, izibuko lothotho liza kuchongwa ngokuzenzekelayo kwaye umlinganiselo webhaud ongagqibekanga uya kusetyenziswa.
· idf.py monitor: ukubonisa uthotho lwemveliso yezibuko ekujoliswe kuko ESP32-C3. Ukhetho -p lunokusetyenziselwa ukukhankanya igama lesixhobo somthanyelo wecala lezibuko lothotho. Ngexesha loshicilelo lwe-serial port, cofa indibaniselwano yesitshixo Ctrl+] ukuphuma esweni.
Le miyalelo ingasentla ingadityaniswa njengoko kufuneka. UmzekeloampLe, umyalelo idf.py yakha isibane sombane siyakwenza uqokelelo lwekhowudi, idanyaze, kwaye ivule isisiriyali sezibuko esweni ngokulandelelanayo.
Ungandwendwela https://bookc3.espressif.com/build-system ukwazi ngakumbi malunga nenkqubo yokuhlanganiswa kwe-ESP-IDF.
4.4 Ukuziqhelanisa: Ukuqulunqa uMzeampkunye neNkqubo ethi "Blink"
4.4.1 Eksample Uhlalutyo
Eli candelo liza kuthatha inkqubo Blink njenge example ukuhlalutya i file Ulwakhiwo kunye nemithetho yokukhowuda yeprojekthi yokwenyani ngokweenkcukacha. Inkqubo yeBlink iphumeza isiphumo sokuqhwanyaza kwe-LED, kwaye iprojekthi ibekwe kulawulo exampi-les/get-start/blink, equlethe umthombo file, uqwalaselo files, kunye nemibhalo emininzi yoqulunqo.
Iprojekthi ukukhanya smart yaziswa kule ncwadi isekelwe kule example nkqubo. Imisebenzi iya kongezwa ngokuthe ngcembe kwizahluko ezilandelayo ukuze ekugqibeleni uyigqibe.
Ikhowudi yomthombo Ukuze ubonise yonke inkqubo yophuhliso, inkqubo ye-Blink ikopishwe kwi-esp32c3-iot-projects/device firmware/1 blink.
Ubume bolawulo lweprojekthi yokuqhwanyaza files iboniswe kuMfanekiso 4.15.
Iprojekthi yokuqhwanyaza iqulethe kuphela uvimba weefayili ophambili, oyinxalenye ekhethekileyo
Isahluko 4. Ukumisela imo engqongileyo yoPhuhliso 53

Umzobo 4.15. File Ubume bolawulo lweprojekthi yokuqhwanyaza

kufuneka zibandakanywe njengoko kuchaziwe kwicandelo 4.3.2. Ulawulo oluphambili lusetyenziswa ikakhulu ukugcina ukuphunyezwa kwe app_main() umsebenzi, oyindawo yokungena kwinkqubo yomsebenzisi.Iprojekthi yokuqhwanyaza ayibandakanyi uluhlu lwamacandelo, kuba loampLe ifuna kuphela ukusebenzisa amacandelo eza ne-ESP-IDF kwaye ayifuni malungu ongezelelweyo. I-CMakeLists.txt ebandakanyiweyo kwiprojekthi yokuqhwanyaza isetyenziselwa ukukhokela inkqubo yoqulunqo, ngelixa i-Kconfig.projbuild isetyenziselwa ukongeza izinto zoqwalaselo zale ex.ample nkqubo kwi menuconfig. Okunye okungeyomfuneko files aziyi kuchaphazela ukudityaniswa kwekhowudi, ngoko ke aziyi kuxoxwa apha. Intshayelelo eneenkcukacha yeprojekthi yokuqhwanyaza files imi ngolu hlobo lulandelayo.

1. /*blink.c ibandakanya okubhalwe ngasentla kwekhasi kulandelayo files*/

2. #zibandakanya

//Isihloko selayibrari esisemgangathweni C file

3. #bandakanya "freertos/freeRTOS.h" //FreeRTOS intloko ephambili file

4. #bandakanya "freertos/task.h"

//FreeRTOS Task header file

5. #bandakanya "sdkconfig.h"

//Uqwalaselo olungasentla file yenziwe yi kconfig

6. #bandakanya "umqhubi/gpio.h"

//GPIO iheader yomqhubi file

Umthombo file blink.c iqulathe uluhlu lweheader files ihambelana nesibhengezo somsebenzi-

tions. I-ESP-IDF ngokubanzi ilandela ulandelelwano lokuquka iheader yethala leencwadi eqhelekileyo files, FreeR-

Okubhalwe ngasentla kwe-TOS files, iheda yomqhubi files, esinye isihloko secandelo files, kunye nesihloko seprojekthi files.

Ulandelelwano lwesihloko files zibandakanyiwe zinokuchaphazela umphumo wokugqibela woqulunqo, ngoko zama uku

landela imithetho engagqibekanga. Kufuneka kuqatshelwe ukuba i-sdkconfig.h yenziwe ngokuzenzekelayo

nge kconfig kwaye ingaqwalaselwa kuphela ngomyalelo idf.py menuconfig.

Ukuguqulwa okuthe ngqo kwesi sihloko file iya kubhalwa ngaphezulu.

1. /*Ungakhetha i-GPIO ehambelana ne-LED kwi-idf.py menuconfig, kunye nesiphumo sokuguqulwa kwe-menuconfig kukuba ixabiso le-CONFIG_BLINK

_GPIO iza kutshintshwa. Ungaguqula ngokuthe ngqo inkcazo enkulu

apha, kwaye utshintshe CONFIG_BLINK_GPIO kwixabiso elimiselweyo.*/ 2. #define BLINK_GPIO CONFIG_BLINK_GPIO

3. i-app engasebenziyo_engundoqo(ingenanto)

4. {

5.

/* Qwalasela i-IO njengomsebenzi ongagqibekanga we-GPIO, yenza imowudi yokutsalela phezulu, kunye

6.

khubaza igalelo kunye neendlela zemveliso*/

7.

gpio_reset_pin(BLINK_GPIO);

54 I-ESP32-C3 i-Adventure ye-Wireless: Isikhokelo esiBanzi kwi-IoT

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

/*Seta iGPIO kwimowudi yemveliso*/ gpio_set_direction(BLINK_GPIO, GPIO_MODE_OUTPUT); ngelixa(1) {
/*Shicilela umbhalo*/ printf(“Ukucima i-LEDn”); /*Cima i-LED (imveliso ephantsi kwinqanaba)*/ gpio_set_level(BLINK_GPIO, 0); /*Libazisa (1000 ms)*/ vTaskDelay(1000 / portTICK_PERIOD_MS); printf(“Ukuvula i-LEDn”); /*Vula i-LED (imveliso ephezulu)*/ gpio_set_level(BLINK_GPIO, 1); vTaskDelay(1000 / portTICK_PERIOD_MS); }

I-app_main () umsebenzi kwi-Blink example nkqubo isebenza njengendawo yokungena yeenkqubo zabasebenzisi. Ngumsebenzi olula ongena parameters kwaye akukho xabiso lembuyekezo. Lo msebenzi ubizwa emva kokuba inkqubo igqibile ukuqaliswa, equka imisebenzi efana nokuqalisa i-port ye-serial port, ukuqwalasela isiseko esisodwa/ezimbini, kunye nokuqwalasela umlindi.

I-app_main () umsebenzi uqhuba kumxholo womsebenzi obizwa ngokuba ngundoqo. Ubungakanani besitaki kunye nokubaluleka kwalo msebenzi kunokuhlengahlengiswa kwi-menuconfig Componentconfig Common ESP enxulumene.

Kwimisebenzi elula efana nokuqhwanyaza kwe-LED, yonke ikhowudi efunekayo inokuphunyezwa ngokuthe ngqo kwi-app_main () umsebenzi. Oku kubandakanya ukuqala kwe-GPIO ehambelana ne-LED kunye nokusebenzisa i-loop (1) iluphu ukuguqula nokuvala i-LED. Kungenjalo, ungasebenzisa iFreeRTOS API ukwenza umsebenzi omtsha ophethe ukuqhwanyaza kwe-LED. Nje ukuba umsebenzi omtsha wenziwe ngempumelelo, unokuphuma kwi-app_main () umsebenzi.

Umxholo we-main/CMakeLists.txt file, ekhokela inkqubo yokuhlanganiswa kwecandelo eliphambili, ngolu hlobo lulandelayo:

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

Phakathi kwazo, i-main/CMakeLists.txt ibiza kuphela umsebenzi wenkqubo yokudibanisa enye, oko kukuthi idf_component_register. Ngokufana ne-CMakeLists.txt kuninzi lwamanye amacandelo, i-blink.c yongezwa kwi-SRCS, kunye nomthombo fileidityaniswe kwi-SRCS iya kuqulunqwa. Ngaxeshanye, ".", emele indlela apho iCMakeLists.txt ikhona, kufuneka yongezwe kwi INCLUDE_DIRS njengokukhangela abalawuli beheader. files. Umxholo we-CMakeLists.txt umi ngolu hlobo lulandelayo:
1. # Cacisa i-v3.5 njengolona guqulelo ludala lweCMake oluxhaswa yiprojekthi yangoku 2. #Iinguqulelo ezingaphantsi kwe-v3.5 kufuneka ziphuculwe phambi kokuba kuqhubeke ukuhlanganiswa 3. cmake_minimum_required(VERSION 3.5) 4. #Bandakanya uqwalaselo lweCMake olungagqibekanga lwe-ESP -I-IDF yokuhlanganisa inkqubo

Isahluko 4. Ukumisela imo engqongileyo yoPhuhliso 55

5. bandakanya($ENV{IDF_PATH}/tools/cmake/project.cmake) 6. #Yenza iprojekthi ebizwa ngokuba “blink” 7. project(myProject)
Phakathi kwazo, i CMakeLists.txt kulawulo lweengcambu lubandakanya ikakhulu i-$ENV{IDF_ PATH}/tools/cmake/project.cmake, elolona qwalaselo lweCMake file inikwe yi-ESP-IDF. Isetyenziselwa ukudibanisa

Amaxwebhu / Izibonelelo

Espressif Systems ESP32-C3 Wireless Adventure [pdf] Isikhokelo somsebenzisi
ESP32-C3 Wireless Adventure, ESP32-C3, Wireless Adventure, Adventure

Iimbekiselo

Shiya uluvo

Idilesi yakho ye-imeyile ayizupapashwa. Iindawo ezifunekayo ziphawulwe *