ESP32-C3 Fa'asalalauga uaealesi
ESP32-C3 Fa'asalalauga uaealesi
Ose Ta'iala Atoa ile IoT
Espressif Systems Iuni 12, 2023
Fa'amatalaga
- Oloa: ESP32-C3 Wireless Adventure
- Tufuga: Espressif Systems
- Aso: Iuni 12, 2023
Fa'atonuga o le Fa'aaogaina o Mea
Sauniuniga
A'o le'i fa'aogaina le ESP32-C3 Wireless Adventure, ia mautinoa o oe
masani i manatu ma fausaga o IoT. O le a fesoasoani lea
e te malamalama pe faʻafefea ona fetaui le masini i totonu o le faʻalapotopotoga tele o le IoT
ma ona fa'aoga talafeagai i fale atamai.
Folasaga ma Fa'ata'ita'iga o Poloketi IoT
I lenei vaega, o le a e aʻoaʻoina e uiga i galuega masani a IoT,
e aofia ai faʻavae faʻavae mo masini IoT masani, faʻavae autu
o talosaga a tagata o tausia, ma tulaga masani o ao IoT. O le a
tuuina atu ia te oe se faavae mo le malamalama ma le fatuina o lau
ia lava poloketi IoT.
Faataitai: Poloketi Malamalama Atamai
I lenei galuega faʻataʻitaʻiga, o le a e aʻoaʻo ai pe faʻapefea ona fatuina se atamai
moli e faʻaaoga ai le ESP32-C3 Wireless Adventure. Le fausaga o le poloketi,
galuega tauave, sauniuniga meafaigaluega, ma le faagasologa o atinae o le a
faʻamatala auiliili.
Fa'atulagaina o Poloketi
O le poloketi e aofia ai le tele o vaega, e aofia ai le
ESP32-C3 Wireless Adventure, LEDs, sensors, ma se ao
pito i tua.
Galuega Fa'atino
O le poloketi malamalama atamai e mafai ai ona e pulea le susulu ma
lanu o le LEDs mamao e ala i se telefoni feaveai po o web
feso'ota'iga.
Sauniuniga Meafaigaluega
Ina ia saunia mo le poloketi, e tatau ona e aoina mai le
vaega o meafaigaluega talafeagai, e pei ole ESP32-C3 Wireless
laupapa Adventure, LEDs, tetee, ma se sapalai eletise.
Atina'e Fa'agasologa
O le faagasologa o le atinae e aofia ai le faatuina o le atinae
siosiomaga, tusitusi code e pulea le LEDs, fesootai i le
backend ao, ma suʻesuʻeina le faʻatinoga o le atamai
malamalama.
Folasaga ile ESP RainMaker
ESP RainMaker ose fa'avae malosi mo le atina'eina o IoT
masini. I lenei vaega, o le a e aʻoaʻoina ai le ESP RainMaker ma
pe fa'apefea ona fa'atino i au galuega fa'atino.
O le a le ESP RainMaker?
ESP RainMaker o se fa'avae fa'avae ao e maua ai se seti o
meafaigaluega ma auaunaga mo le fausiaina ma le puleaina o masini IoT.
Le Fa'atinoga ole ESP RainMaker
O lenei vaega o loʻo faʻamatalaina vaega eseese o loʻo aofia ai
le fa'atinoina o le ESP RainMaker, e aofia ai le tautua o le tagi,
RainMaker Agent, cloud backend, ma RainMaker Client.
Faataitai: Manatu Autu mo le Atinae ma le ESP RainMaker
I lenei vaega faʻataʻitaʻiga, o le a e aʻoaʻoina e uiga i manatu autu i
mafaufau pe a atiaʻe ma le ESP RainMaker. E aofia ai masini
tagi, fa'amaopoopo fa'amaumauga, ma pulega fa'aoga.
Vaega o le ESP RainMaker
ESP RainMaker ofo atu vaega eseese mo le faʻaaogaina o tagata, faʻaiʻuga
tagata fa'aoga, ma pule. O nei vaega e mafai ai ona faigofie le masini
seti, pulea mamao, ma le mataituina.
Faatuina Atina'e Siosiomaga
O lenei vaega o loʻo tuʻuina atu se faʻaopoopogaview o le ESP-IDF (Espressif IoT
Ta'iala Atina'e), o le fa'avae aloa'ia o le atina'e
mo masini fa'avae ESP32. O lo'o fa'amatalaina ai fa'aliliuga eseese o
ESP-IDF ma pe fa'afefea ona fa'atūina le si'osi'omaga tau atina'e.
Atinae o Meafaigaluega ma Avetaavale
Fuafuaga Meafaigaluega o oloa Malamalama Matagofie e faavae ile ESP32-C3
O lenei vaega e taulaʻi i le faʻatulagaina o meafaigaluega o le malamalama atamai
oloa fa'avae ile ESP32-C3 Wireless Adventure. E aofia ai le
foliga ma le tuufaatasiga o oloa malamalama malamalama, faapea foi ma le
mamanu meafaigaluega o le faiga autu ESP32-C3.
Fa'aaliga ma Fa'atulagaina o Oloa Malamalama Atamai
O lenei vaega o lo'o fa'amatalaina uiga ma vaega e fai
luga oloa moli atamai. O lo'o talanoaina ai galuega eseese
ma fuafuaga fuafuaina mo le faia o moli atamai.
Fuafuaga Meafaigaluega o le ESP32-C3 Core System
O le faʻaogaina o meafaigaluega ole ESP32-C3 faʻaoga autu e aofia ai le mana
sapalai, fa'asologa o le eletise, toe setiina o le faiga, moli SPI, puna o le uati,
ma RF ma antenna iloiloga. O lenei faafuaiupu ua tuuina atu
fa'amatalaga auiliili i nei vaega.
FAQ
F: O le a le ESP RainMaker?
A: ESP RainMaker o se fa'avae fa'avae ao e maua ai meafaigaluega
ma auaunaga mo le fausiaina ma le puleaina o masini IoT. E faafaigofieina
le faʻagasologa o le atinaʻe ma faʻatagaina mo le faʻatulagaina o masini faigofie, mamao
pulea, ma mataituina.
Q: E mafai faapefea ona ou setiina le siosiomaga atinae mo
ESP32-C3?
A: Ina ia faʻatulagaina le siosiomaga atinaʻe mo ESP32-C3, e te manaʻomia
e faʻapipiʻi le ESP-IDF (Espressif IoT Development Framework) ma
fetuutuunai e tusa ai ma faatonuga ua tuuina mai. ESP-IDF o le
ta'iala tau atina'e aloa'ia mo masini fa'avae ESP32.
Q: O a foliga o le ESP RainMaker?
A: ESP RainMaker e ofoina atu vaega eseese, e aofia ai le tagata faʻaoga
pulega, vaega fa'au'uga fa'aoga, ma fa'auiga fa'atonu. Pulega a tagata fa'aoga
fa'ataga mo le fa'agofieina o masini ma fa'asoa fa'amaumauga. Tagata fa'ai'uga
foliga e mafai ai ona pulea mamao o masini e ala i se telefoni feaveai po o
web feso'ota'iga. Fa'atonu vaega e maua ai meafaigaluega mo le mata'ituina o masini
ma pulega.
ESP32-C3 Fa'asalalauga uaealesi
Ose Ta'iala Atoa ile IoT
Espressif Systems Iuni 12, 2023
Mataupu
I Sauniuniga
1
1 Folasaga ile IoT
3
1.1 Fausiaina o IoT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2 Talosaga IoT i Fale Atamai . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2 Folasaga ma Fa'ata'ita'iga o Poloketi IoT
9
2.1 Folasaga i Poloketi masani IoT . . . . . . . . . . . . . . . . . . . . . . . . 9
2.1.1 Fa'avae Fa'avae mo Meafaigaluega masani IoT . . . . . . . . . . . . . . . . . 9
2.1.2 Modules Autu o Talosaga Client . . . . . . . . . . . . . . . . . . . 10
2.1.3 Fa'atomuaga ile IoT Cloud Platforms masani . . . . . . . . . . . . . . 11
2.2 Faataitai: Poloketi Malamalama Atamai . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.2.1 Fa'atulagaina o Poloketi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.2.2 Galuega Faatino . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.2.3 Sauniuniga Meafaigaluega . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.2.4 Fa'agasologa o Atina'e . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.3 Aotelega . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
3 Folasaga ile ESP RainMaker
19
3.1 O le a le ESP RainMaker? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
3.2 Le Fa'atinoina o le ESP RainMaker . . . . . . . . . . . . . . . . . . . . . . 21
3.2.1 Talosaga Auaunaga . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3.2.2 Sui Usuaga . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3.2.3 Ao i tua . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.2.4 RainMaker Client . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.3 Faataitai: Manatu Autu mo le Atinae ma le ESP RainMaker . . . . . . . . . . . . 25
3.4 Vaega o le ESP RainMaker . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.4.1 Pulega o Tagata Fa'aoga . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.4.2 Fa'amatalaga Fa'ai'uga Fa'aaogā . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.4.3 Vaega Pule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.5 Aotelega . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
4 Fa'atulagaina o Atina'e Si'osi'omaga
31
4.1 ESP-IDF Ovaview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
4.1.1 ESP-IDF Versions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
3
4.1.2 ESP-IDF Git Galue Galuega . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 4.1.3 Filifilia o se Lomiga Talafeagai . . . . . . . . . . . . . . . . . . . . . . . . 34 4.1.4 Ovaview o le ESP-IDF SDK Directory . . . . . . . . . . . . . . . . . . . . 34 4.2 Fa'atulagaina le Siosiomaga o Atina'e ESP-IDF . . . . . . . . . . . . . . . . . 38 4.2.1 Fa'atulagaina le Siosiomaga o Atina'e ESP-IDF i Linux . . . . . . . . 38 4.2.2 Fa'atulagaina le Siosiomaga o Atina'e ESP-IDF i luga ole Windows . . . . . . 40 4.2.3 Fa'atulagaina le Siosiomaga o Atina'e ESP-IDF i le Mac. . . . . . . . . 45 4.2.4 Fa'apipi'i VS Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 4.2.5 Folasaga i Siosiomaga Atina'e Vaega Tolu . . . . . . . . 46 4.3 ESP-IDF Compilation System . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 4.3.1 Manatu Autu o Faiga Faaopoopo . . . . . . . . . . . . . . . . . . 47 4.3.2 Poloketi File Fauga . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 4.3.3 Tulafono Fausia Faufautua o le Faiga Faaopoopo . . . . . . . . . . . . . 50 4.3.4 Folasaga i le Mau Tuufaatasi . . . . . . . . . . . . . . . . . . 51 4.3.5 Folasaga i Poloaiga masani . . . . . . . . . . . . . . . . . . . 52 4.4 Faataitai: Tuufaatasia Eample Polokalama “Emo” . . . . . . . . . . . . . . . . . . 53 4.4.1 Esoample Iloiloga . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 4.4.2 Tuufaatasia o le Polokalama Emo . . . . . . . . . . . . . . . . . . . . . . . 56 4.4.3 Emo le Polokalama Emo . . . . . . . . . . . . . . . . . . . . . . . . 59 4.4.4 Su'esu'ega Fa'amaumauga o Fa'amaumauga Fa'asologa o le Polokalama Emo . . . . . . . . . . . . . . 60 4.5 Aotelega . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
II Meafaigaluega ma Avetaavale Atinae
65
5 Fuafuaga Meafaigaluega o oloa Malamalama atamai e faʻavae ile ESP32-C3
67
5.1 Fa'aaliga ma Fa'aputuga o Oloa Malamalama Atamai . . . . . . . . . . . . . . . 67
5.2 Fuafuaga Meafaigaluega o le ESP32-C3 Core System . . . . . . . . . . . . . . . . . . . 70
5.2.1 Sapalai Malosiaga . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
5.2.2 Fa'asologa o Malosiaga ma Toe Fa'atonu Faiga . . . . . . . . . . . . . . . . . . 74
5.2.3 SPI Flash . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
5.2.4 Punavai o le Uati . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
5.2.5 RF ma Antenna . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
5.2.6 Fa'amau Fa'amau . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
5.2.7 GPIO ma le PWM Pule . . . . . . . . . . . . . . . . . . . . . . . . . 79
5.3 Faʻataʻitaʻiga: Fausiaina o se Faʻatonuga Malamalama Faʻatasi ma le ESP32-C3 . . . . . . . . . . . . . 80
5.3.1 Filifilia o Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
5.3.2 Fa'atulagaina o GPIO o Fa'ailoga PWM . . . . . . . . . . . . . . . . . . . . 82
5.3.3 La'uina o Firmware ma Debugging Interface . . . . . . . . . . . . 82
5.3.4 Taiala mo le RF Design. . . . . . . . . . . . . . . . . . . . . . . . . . 84 5.3.5 Taiala mo le Fuafuaga o le Malosiaga . . . . . . . . . . . . . . . . . . . 86 5.4 Aotelega . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
6 Atinae Avetaavale
87
6.1 Fa'asologa o Atina'e Aveta'avale . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
6.2 ESP32-C3 Talosaga Fa'apitoa . . . . . . . . . . . . . . . . . . . . . . . . . 88
6.3 Fa'avae Aveta'avale LED . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
6.3.1 Avanoa Lanu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
6.3.2 Avetaavale LED . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
6.3.3 Fa'apupula . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
6.3.4 Folasaga ile PWM . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
6.4 Fa'atupuina Aveta'avale Fa'amumu fa'amumuni . . . . . . . . . . . . . . . . . . . . . . . . 96
6.4.1 Teuina e le-Volatile (NVS) . . . . . . . . . . . . . . . . . . . . . . . . 97
6.4.2 LED PWM Pule (LEDC) . . . . . . . . . . . . . . . . . . . . . . . 98
6.4.3 Polokalama PWM LED . . . . . . . . . . . . . . . . . . . . . . . . . . 100
6.5 Faʻataʻitaʻiga: Faʻaopoopoina Avetaʻavale ile Poloketi Malamalama Matagofie . . . . . . . . . . . . . . . . . 103
6.5.1 Fa'amau Aveta'avale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
6.5.2 Aveta'avale Fa'amumu fa'apouliuli . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
6.6 Aotelega . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
III Fesootaiga uaealesi ma le Pulea
109
7 Wi-Fi Fa'atulagaina ma So'oga
111
7.1 Fa'avae ole Wi-Fi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
7.1.1 Folasaga ile Wi-Fi . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
7.1.2 Evolution of IEEE 802.11 . . . . . . . . . . . . . . . . . . . . . . . . . 111
7.1.3 Manatu Wi-Fi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
7.1.4 So'oga Wi-Fi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
7.2 Fa'avae ole Bluetooth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
7.2.1 Folasaga ile Bluetooth . . . . . . . . . . . . . . . . . . . . . . . . . 123
7.2.2 Manatu Bluetooth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
7.2.3 Feso'ota'iga Bluetooth . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
7.3 Fesootaiga Wi-Fi Fesootaiga . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
7.3.1 Taiala o Fesootaiga Wi-Fi . . . . . . . . . . . . . . . . . . . . 131
7.3.2 SoftAP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
7.3.3 SmartConfig . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
7.3.4 Bluetooth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
7.3.5 Isi Metotia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
7.4 Polokalama Wi-Fi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139 7.4.1 Vaega Wi-Fi i le ESP-IDF . . . . . . . . . . . . . . . . . . . . . . . 139 7.4.2 Fa'amalositino: So'oga Wi-Fi . . . . . . . . . . . . . . . . . . . . . . . . 141 7.4.3 Fa'amalositino: So'oga Wi-Fi atamai . . . . . . . . . . . . . . . . . . . . . 145
7.5 Fa'ata'ita'i: Fa'atonu Wi-Fi i le Poloketi Malamalama Matagofie . . . . . . . . . . . . . . . 156 7.5.1 Feso'ota'iga Wi-Fi ile Poloketi Malamalama Matagofie . . . . . . . . . . . . . . . . . 156 7.5.2 Fa'atonuga Wi-Fi atamai . . . . . . . . . . . . . . . . . . . . . . . . . 157
7.6 Aotelega . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
8 Pulea Lotoifale
159
8.1 Folasaga ile Pulea Fa'alotoifale . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
8.1.1 Fa'aaogaina o le Pulea Fa'alotoifale . . . . . . . . . . . . . . . . . . . . . . . . 161
8.1.2 Avanetage o le Pulea Fa'alotoifale . . . . . . . . . . . . . . . . . . . . . . . . 161
8.1.3 Su'eina o Masini Puleaina e ala i Smartphones . . . . . . . . . . 161
8.1.4 Feso'ota'iga Fa'amatalaga i le Va o Telefoni Tele ma Masini . . . . . . . . 162
8.2 Metotia Fa'alotoifale Masani Su'esu'e . . . . . . . . . . . . . . . . . . . . . . . . 162
8.2.1 Faasalalauga . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
8.2.2 Telecast . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
8.2.3 Faatusatusaga i le Va o Faasalalauga ma Telecast. . . . . . . . . . . . . . 176
8.2.4 Multicast Application Protocol mDNS mo Su'esu'ega Fa'alotoifale . . . . . . . . 176
8.3 Fesootaiga masani Fesootaiga mo Fa'amatalaga Fa'alotoifale . . . . . . . . . . . . . . . 179
8.3.1 Feso'ota'iga Pulea Fa'atonu (TCP) . . . . . . . . . . . . . . . . . . . 179
8.3.2 Lafoa'iga Fa'aliliuga Fa'asolo (HTTP) . . . . . . . . . . . . . . . . . . . 185
8.3.3 Tagata Fa'aoga Datagram Protocol (UDP) . . . . . . . . . . . . . . . . . . . . . . 189
8.3.4 Polokalama Talosaga Fa'asalaina (CoAP) . . . . . . . . . . . . . . . . 192
8.3.5 Polokalama Bluetooth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
8.3.6 Aotelega o Fa'amaumauga Feso'ota'iga Fa'amaumauga . . . . . . . . . . . . . . . 203
8.4 Faʻamautinoaga o le Puipuiga o Faʻamatalaga . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205
8.4.1 Folasaga ile Saogalemu Laiti Felauaiga (TLS) . . . . . . . . . . . . . 207
8.4.2 Folasaga i Datagram Transport Layer Security (DTLS) . . . . . . . 213
8.5 Faʻataʻitaʻiga: Pulea Faʻalotoifale ile Poloketi Malamalama Matagofie . . . . . . . . . . . . . . . . . . 217
8.5.1 Fausiaina o le Wi-Fi e fa'atatau i le Pulea Fa'apitonu'u. . . . . . . . . . . . . . . 217
8.5.2 Fa'amaonia le Pulea Fa'alotoifale e fa'aaoga ai Fa'amatalaga . . . . . . . . . . . 221
8.5.3 Fausiaina o se Sa'oga Pulea Fa'alotoifale fa'avae Bluetooth . . . . . . . . . . . . 222
8.6 Aotelega . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
9 Pulea ao
225
9.1 Folasaga ile Pulea Mamao . . . . . . . . . . . . . . . . . . . . . . . . . . 225
9.2 Feso'ota'iga Fa'amaumauga o Ao . . . . . . . . . . . . . . . . . . . . . . 226
9.2.1 MQTT Folasaga . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226 9.2.2 Mataupu Faavae MQTT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227 9.2.3 MQTT Message Form . . . . . . . . . . . . . . . . . . . . . . . . . . 228 9.2.4 Fa'atusatusaga Fa'akomepiuta . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233 9.2.5 Seti MQTT Broker i Linux ma Pupuni . . . . . . . . . . . . 233 9.2.6 Fa'atulagaina le MQTT Client Fa'avae ile ESP-IDF . . . . . . . . . . . . . . . . 235 9.3 Faʻamautinoaina le Puipuiga o Faʻamatalaga MQTT . . . . . . . . . . . . . . . . . . . . . . . . . . . 237 9.3.1 Uiga ma Galuega o Tusipasi . . . . . . . . . . . . . . . . . . . 237 9.3.2 Fausiaina o Tusi Faamaonia i le Atunuu . . . . . . . . . . . . . . . . . . . . . . 239 9.3.3 Fa'atulaga le MQTT Broker . . . . . . . . . . . . . . . . . . . . . . . . . 241 9.3.4 Fa'atulagaina o le MQTT Client . . . . . . . . . . . . . . . . . . . . . . . . . 241 9.4 Faataitai: Pulea Mamao e ala i le ESP RainMaker . . . . . . . . . . . . . . . . 243 9.4.1 ESP RainMaker Basics . . . . . . . . . . . . . . . . . . . . . . . . . . . 243 9.4.2 Node ma Cloud Backend Feso'otaiga Protocol . . . . . . . . . . . . . . . . . . . . . . 244 9.4.3 Matafaioi a Tagata Faaaoga . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249 9.4.4 Auaunaga Autu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252 9.4.5 Malamalama Atamai Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255 9.4.7 RainMaker App ma Fa'atasiga Vaega Tolu . . . . . . . . . . . . . . . 262 9.5 Aotelega . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267
10 Atinae o le telefoni feaveai
269
10.1 Fa'atomuaga i le Atina'eina o le telefoni feavea'i . . . . . . . . . . . . . . . . . . 269
10.1.1 Ovaview o le Atina'eina o le telefoni feavea'i . . . . . . . . . . . . . . . 270
10.1.2 Fa'atulagaina o le Poloketi Android . . . . . . . . . . . . . . . . . . . . . . 270
10.1.3 Fa'atulagaina o le Poloketi iOS . . . . . . . . . . . . . . . . . . . . . . . . 271
10.1.4 Taamilosaga Olaga o se Gaoioiga Android . . . . . . . . . . . . . . . . . . . . . . 272
10.1.5 Taamilosaga o le olaga o iOS ViewPule . . . . . . . . . . . . . . . . . . . . . . 273
10.2 Fausiaina o se Poloketi Poloketi Talosaga Telefoni Fou . . . . . . . . . . . . . . . . . . . . . 275
10.2.1 Saunia mo Atinae Android . . . . . . . . . . . . . . . . . . . 275
10.2.2 Fausiaina o se Poloketi Fou Android . . . . . . . . . . . . . . . . . . . . . . 275
10.2.3 Fa'aopoopoina o Fa'alagolago mo MyRainmaker . . . . . . . . . . . . . . . . . 276
10.2.4 Talosaga Fa'atagaga ile Android . . . . . . . . . . . . . . . . . . . . . . 277
10.2.5 Saunia mo le Atinae o iOS . . . . . . . . . . . . . . . . . . . . . . 277
10.2.6 Fausiaina o se Poloketi Fou iOS . . . . . . . . . . . . . . . . . . . . . . . . 278
10.2.7 Fa'aopoopoina o Fa'alagolago mo MyRainmaker . . . . . . . . . . . . . . . . . 279
10.2.8 Talosaga Faatagaga i iOS . . . . . . . . . . . . . . . . . . . . . . . . . 280
10.3 Iloiloga o Manaoga Fa'atino a le App. . . . . . . . . . . . . . . . . . 281
10.3.1 Iloiloga o Manaoga Fa'atino a le Poloketi . . . . . . . . . . . . 282
10.3.2 Iloiloga o Manaoga o le Pulega o Tagata Fa'aaoga . . . . . . . . . . . . . . . 282 10.3.3 Iloiloga o le Tuuina atu o Masini ma Tulaga Manaoga . . . . . . . 283 10.3.4 Iloiloga o Manaoga Pule-mamao . . . . . . . . . . . . . . . . 283 10.3.5 Iloiloga o Tulaga Manaomia . . . . . . . . . . . . . . . . . . . 284 10.3.6 Iloiloga o Manaoga Nofoaga Autu mo Tagata Faaaoga . . . . . . . . . . . . . . . . . . 285 10.4 Atinae o le Pulega o Tagata Faaaoga . . . . . . . . . . . . . . . . . . . . . . . . 285 10.4.1 Folasaga i RainMaker APIs . . . . . . . . . . . . . . . . . . . . . . 285 10.4.2 Amataina Fesootaiga e ala i le Telefoni Tele . . . . . . . . . . . . . . . . 286 10.4.3 Faamauina o Teugatupe . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286 10.4.4 Fa'amatalaga Fa'amatalaga . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289 10.5 Atinae o le Tuuina atu o Masini . . . . . . . . . . . . . . . . . . . . . . . 292 10.5.1 Va'aiga Meafaigaluega . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293 10.5.2 Masini Feso'ota'i . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295 10.5.3 Fausiaina o Ki Lilo . . . . . . . . . . . . . . . . . . . . . . . . . . . 298 10.5.4 Mauaina Node ID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 298 10.5.5 Tuuina atu o Meafaigaluega . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300 10.6 Atina'e o le Puleaina o Masini . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302 10.6.1 Mauaina o se Lisi o Meafaigaluega . . . . . . . . . . . . . . . . . . . . . . . . . . 303 10.6.2 Mauaina o le Tulaga o Masini . . . . . . . . . . . . . . . . . . . . . . . . . . . 305 10.6.3 Suia le Tulaga o le Masini . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308 10.6.4 Fa'atinoina o Galuega Fa'atulagaina . . . . . . . . . . . . . . . . . . . . 310 10.7 Fa'atinoina o Tagata Nofoaga Autu . . . . . . . . . . . . . . . . . . . . . . . . . 313 10.7.1 Sili Ao APIs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313 10.7.2 Aotelega . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315
11 Fa'afou le Firmware ma le Pulea Fa'aliliuga
321
11.1 Fa'aleleia atili o Firmware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321
11.1.1 Ovaview o Laupapa Vaevaega . . . . . . . . . . . . . . . . . . . . . . . . 322
11.1.2 Fa'agasologa o le Fa'aosoina o Firmware . . . . . . . . . . . . . . . . . . . . . . . . . . . 324
11.1.3 Ovaview o le OTA Mechanism . . . . . . . . . . . . . . . . . . . . . 326
11.2 Pulea Faiga Fa'aumuumu . . . . . . . . . . . . . . . . . . . . . . . . . . 329
11.2.1 Faailoga Firmware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329
11.2.2 Toe faafoi i tua ma Anti-Taua i tua . . . . . . . . . . . . . . . . . . . . . . . . 331
11.3 Faataitai: I luga o le ea (OTA) Example . . . . . . . . . . . . . . . . . . . . . . . 332
11.3.1 Fa'aleleia le Firmware E ala i se Fa'alapotopotoga Fa'apitonu'u . . . . . . . . . . . . . . . . . 332
11.3.2 Fa'aleleia le Firmware E ala i le ESP RainMaker . . . . . . . . . . . . . . . 335
11.4 Aotelega . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342
IV Optimization ma Mass Production
343
12 Puleaina o le Malosiaga ma le Fa'asa'olotoga Maualalo
345
12.1 ESP32-C3 Pulea Malosiaga . . . . . . . . . . . . . . . . . . . . . . . . . . . 345
. . . . . . . . . . . . . . . . . . . . . . . . 12.1.1
12.1.2 Fa'atonuga Pulea Malosiaga . . . . . . . . . . . . . . . . . . . . 348
12.2 ESP32-C3 Faiga Maualalo Malosi . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348
12.2.1 Modem-moe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349
12.2.2 Faiga mama-moe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 351
12.2.3 Faiga moe loloto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356
12.2.4 Fa'aaogāina o lo'o iai i Tulaga Malosi Eseese . . . . . . . . . . . . . 358
12.3 Puleaina o le Malosiaga ma le Debugging Maualalo . . . . . . . . . . . . . . . . . 359
12.3.1 Debugging o ogalaau . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 360
12.3.2 GPIO Debugging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362
12.4 Faʻataʻitaʻiga: Puleaina o le Malosi i le Poloketi Malamalama Matagofie . . . . . . . . . . . . . . . 363
12.4.1 Fa'atulagaina o le Fa'atonuga o le Malosiaga . . . . . . . . . . . . . . . . . 364
12.4.2 Fa'aoga Loka Pulea Malosiaga . . . . . . . . . . . . . . . . . . . . . . 365
12.4.3 Fa'amaonia le Fa'aaogaina o le Malosiaga . . . . . . . . . . . . . . . . . . . . . . . 366
12.5 Aotelega . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367
13 Fa'aleleia Faiga Puipuiga o Meafaigaluega
369
13.1 Ovaview ole IoT Device Data Security . . . . . . . . . . . . . . . . . . . . . . . 369
13.1.1 Aisea e Puipuia ai Fa'amatalaga Mea Fa'atonu IoT? . . . . . . . . . . . . . . . . . . . . . . 370
13.1.2 Manaoga Autu mo IoT Device Data Security . . . . . . . . . . . . 371
13.2 Puipuiga o le Amiotonu o Faamatalaga . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 372
13.2.1 Folasaga i Metotia Faamaonia le Amiotonu . . . . . . . . . . . . . . 372
13.2.2 Fa'amaoni Fa'amaonia o Fa'amaumauga Fa'atonu . . . . . . . . . . . . . . . . . . 373
13.2.3 Esoample . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374
13.3 Puipuiga Fa'alilolilo Fa'amaumauga . . . . . . . . . . . . . . . . . . . . . . . . . . 374
13.3.1 Fa'atomuaga i Fa'ailoga Fa'amatalaga . . . . . . . . . . . . . . . . . . . . . . 374
13.3.2 Fa'atomuaga ile Flash Encryption Scheme . . . . . . . . . . . . . . . . . 376
13.3.3 Flash Encryption Teuina Ki . . . . . . . . . . . . . . . . . . . . . . . 379
13.3.4 Faiga Fa'atino ole Fa'ailoga Flash . . . . . . . . . . . . . . . . . . . . 380
13.3.5 Fa'agasologa o le Fa'ailoga o le Flash . . . . . . . . . . . . . . . . . . . . . . . . . . 381
13.3.6 Folasaga ile NVS Encryption . . . . . . . . . . . . . . . . . . . . . . 383
13.3.7 Esoampfa'ailoga o le Flash Encryption ma le NVS Encryption . . . . . . . . . . . 384
13.4 Puipuiga Fa'atulafonoina o Fa'amaumauga . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386
13.4.1 Folasaga i Saini Fa'atekinolosi . . . . . . . . . . . . . . . . . . . . . 386
13.4.2 Ovaview o Secure Boot Scheme . . . . . . . . . . . . . . . . . . . . . 388
13.4.3 Folasaga i Polokalama Saogalemu Boot . . . . . . . . . . . . . . . . . . . 388 13.4.4 Folasaga i Meafaigaluega Secure Boot . . . . . . . . . . . . . . . . . . 390 13.4.5 Esoamples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 394 13.5 Flash Encryption ma Secure Boot . . . . . . . . . . . . . . . . . . . . . . . . . . 396 13.5.1 Aotelega . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 396
14 Fufulu Firmware ma Su'ega mo Gaosiga Tele
399
14.1 Fufulu Firmware i Gaosiga Tele . . . . . . . . . . . . . . . . . . . . . . 399
14.1.1 Fa'amatalaina Vaevaega Fa'amatalaga . . . . . . . . . . . . . . . . . . . . . . . . . . 399
14.1.2 Fufulu Firmware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 402
14.2 Fa'ata'ita'iga o Gaosia Tele . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403
14.3 Faʻataʻitaʻiga: Faʻamatalaga Faʻasalalau Faʻasalalau i le Poloketi Malamalama Smart. . . . . . . . . . . . . 404
14.4 Aotelega . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404
15 ESP Insights: Va'aiga Mata'ituina Tulaga
405
15.1 Folasaga ile ESP Insights . . . . . . . . . . . . . . . . . . . . . . . . . . . . 405
15.2 Amata i le ESP Insights . . . . . . . . . . . . . . . . . . . . . . . . . 409
15.2.1 Amata i le ESP Insights i le esp-insights Project . . . . . . 409
15.2.2 Tamomoe Example i le esp-insights Project . . . . . . . . . . . . . . . 411
15.2.3 Lipoti o Faamatalaga Coredump . . . . . . . . . . . . . . . . . . . . . 411
15.2.4 Fa'avasegaina o ogalaau o Tului . . . . . . . . . . . . . . . . . . . . . . . . 412
15.2.5 Lipoti Mafuaaga Toe Toe Toe . . . . . . . . . . . . . . . . . . . . . . . . . 413
15.2.6 Lipoti Fuafuaga Fa'ale-aganu'u . . . . . . . . . . . . . . . . . . . . . . . . . 413
15.3 Fa'ata'ita'i: Fa'aaogaina o le ESP Insights i le Poloketi Malamalama Matagofie . . . . . . . . . . . . . . . 416
15.4 Aotelega . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417
Folasaga
O le ESP32-C3 o le Wi-Fi e tasi ma le Bluetooth 5 (LE) microcontroller SoC, faʻavae i luga o le faʻaogaina o le RISC-V architecture. E taia le paleni saʻo o le mana, I / O gafatia, ma le saogalemu, ma faʻapea ona ofoina atu le fofo sili ona lelei tau mo masini fesoʻotaʻi. Ina ia faʻaalia le tele o faʻaoga a le ESP32-C3 aiga, o lenei tusi a Espressif o le a ave oe i se malaga manaia e ala i AIoT, amata mai i faʻavae o le atinaʻeina o poloketi a le IoT ma le faʻatulagaina o le siosiomaga i le faʻatinoga masani.amples. O mataupu muamua e fa e talanoa e uiga i le IoT, ESP RainMaker ma ESP-IDF. Mataupu 5 ma le 6 fa'apuupuuga i le mamanu o meafaigaluega ma le atina'eina o aveta'avale. A'o e aga'i i luma, o le a e iloa pe fa'afefea ona fa'atulaga lau poloketi e ala i feso'otaiga Wi-Fi ma telefoni feavea'i. Ma le mea mulimuli, o le ae aʻoaʻo e faʻamalieina lau poloketi ma tuʻu i le gaosiga tele.
Afai o oe o se enisinia i matā'upu fa'afeso'ota'i, se tufuga faakomepiuta, se faia'oga, se tamaititi, po'o so'o se tasi e fiafia i le IoT, o lenei tusi e mo oe.
E mafai ona e sii maia le code exampLe faʻaaogaina i lenei tusi mai le upega tafaʻilagi a Espressif i GitHub. Mo faʻamatalaga lata mai i le atinaʻeina o IoT, faʻamolemole mulimuli i la matou tala aloaia.
Upu Tomua
Se Lalolagi Fa'amatalaga
O le tietie i luga ole galu ole Initaneti, Initaneti o Mea (IoT) na faia lona amataga sili e avea ma ituaiga fou o atinaʻe i le tamaoaiga numera. Ina ia faʻalatalata atu tekinolosi i tagata lautele, Espressif Systems e galue mo le faʻaaliga e mafai e tagata atiaʻe mai soʻo se ituaiga olaga ona faʻaogaina le IoT e foia ai nisi o faʻafitauli sili ona faigata o tatou taimi. O se lalolagi o le "Intelligent Network of All Things" o le mea lea o loʻo tatou faʻamoemoeina mai le lumanaʻi.
O le mamanuina o a tatou lava tupe meataalo e avea ma vaega taua o lena vaʻaiga. E tatau ona avea ma se malafoni, e manaʻomia ai le alualu i luma faifaipea e faasaga i tuaoi faatekinolosi. Mai le "Game Changer" ESP8266 i le ESP32 faʻasologa faʻapipiʻi Wi-Fi ma Bluetoothr (LE) fesoʻotaʻiga, sosoo ai ma le ESP32-S3 faʻapipiʻiina e AI faʻavavevave, Espressif e le taofia le suʻesuʻeina ma le atinaʻeina o oloa mo fofo AIoT. Faatasi ai ma a matou polokalama faʻapipiʻi, e pei o le IoT Development Framework ESP-IDF, Mesh Development Framework ESP-MDF, ma le Device Connectivity Platform ESP RainMaker, ua matou fatuina se taʻiala tutoatasi mo le fausiaina o talosaga AIoT.
E oʻo mai ia Iulai 2022, o le aofaʻi o uta a le Espressif's IoT chipsets ua sili atu i le 800 miliona, e taʻitaʻia ai le Wi-Fi MCU maketi ma faʻamalosia le tele o masini fesoʻotaʻi i le lalolagi atoa. O le tulituliloaina o le tulaga lelei ua avea ai oloa uma o Espressif ma se lave tele mo lona tulaga maualuga o le tuufaatasia ma le lelei tau. O le tatalaina o le ESP32-C3 o loʻo faʻailogaina ai se faʻailoga taua o le tekinolosi faʻavae a le Espressif. O se tasi-autu, 32-bit, RISC-V-faʻavae MCU ma 400KB o le SRAM, lea e mafai ona tamoe i le 160MHz. Ua tu'ufa'atasia le 2.4 GHz Wi-Fi ma le Bluetooth 5 (LE) fa'atasi ai ma se lagolago umi. E maua ai se paleni lelei o le malosi, I / O gafatia, ma le saogalemu, ma faʻapea ona ofoina atu le tali sili ona taugofie mo masini fesoʻotaʻi. Faʻavae i luga ole ESP32-C3 mamana, o lenei tusi ua faʻamoemoe e fesoasoani i le au faitau ia malamalama i le IoT faʻamatalaga faʻatasi ma faʻamatalaga auiliili ma faʻataʻitaʻiga masani.amples.
Aiseā na matou tusia ai lenei tusi?
Espressif Systems is more than a semiconductor company. It is also an IoT platform company, which always strives for breakthroughs and innovations in the field of technology. At the same time, Espressif has open-sourced and shared its self-developed operating system and software framework with the community, forming a unique ecosystem. Engineers, makers, and technology enthusiasts actively develop new software applications based on Espressif’s products, freely communicate, and share their experience. You can see developers’ fascinating ideas on various platforms all the time, such as YouTube and GitHub. The popularity of Espressif’s products has stimulated an increasing number of authors who have produced over 100 books based on Espressif chipsets, in more than ten languages, including English, Chinese, German, French, and Japanese.
O le lagolago ma le faʻatuatuaina o paaga a le nuʻu e faʻamalosia ai le faʻaauau pea o le faʻafouga a Espressif. "Matou te taumafai e fai a matou tupe meataalo, faiga faʻaogaina, faʻavae, fofo, Ao, faiga faʻapisinisi, meafaigaluega, faʻamaumauga, tusitusiga, manatu, ma isi, ia sili atu ona talafeagai i tali e manaʻomia e tagata i faʻafitauli sili ona faigata o le olaga nei. O le naunautaiga sili lea ma le tapasa o amioga lelei a Espressif. o le tala lea a Mr. Teo Swee Ann, Founder ma Pule Sili o Espressif.
E fa'atauaina e Espressif le faitau ma manatu. A'o fa'aauauina pea le fa'aleleia o tekinolosi a IoT e fa'atupuina ai mana'oga maualuga i inisinia, e fa'apefea ona tatou fesoasoani i le to'atele o tagata ina ia vave fa'ata'ita'iina tupe meataalo a le IoT, faiga fa'aogaina, faiga fa'akomepiuta, polokalame fa'aoga ma oloa tautua ao? Fai mai le upu, e sili le aoaoina o le tagata i le fagota nai lo le avatu ia te ia o i’a. I se sauniga palepalealuga, na oʻo mai ia i matou e mafai ona matou tusia se tusi e faʻavasega lelei ai le malamalama autu o le atinaʻeina o IoT. Na matou lavea, vave faʻapotopotoina se vaega o inisinia sinia, ma tuʻufaʻatasia le poto masani o le vaega faʻapitoa i polokalame faʻapipiʻi, IoT hardware ma le atinaʻeina o polokalama, o loʻo saofagā uma i le lolomiina o lenei tusi. I le faagasologa o le tusitusi, sa matou taumafai i le mea sili matou te mafaia ina ia saʻo ma saʻo, aveese le popo, ma faʻaoga faʻamatalaga pupuu e taʻu atu ai le lavelave ma le matagofie o le Initaneti o Mea. Na matou aoteleina ma le faaeteete fesili masani, faasino i manatu faaalia ma fautuaga a le nuu, ina ia mafai ona tali manino i fesili o loʻo feagai ma le faʻagasologa o le atinaʻe, ma tuʻuina atu taʻiala mo le atinaʻeina o IoT talafeagai mo tekinisia talafeagai ma fai filifiliga.
Fauga Tusi
O lenei tusi e ave se vaaiga faʻainisinia ma faʻamatalaina le malamalama talafeagai mo le atinaʻeina o poloketi a le IoT i lea laasaga ma lea laasaga. E fa vaega, e pei ona taua i lalo:
· Sauniuniga (Mataupu 1): O lenei vaega o loʻo faʻaalia ai le fausaga o le IoT, faʻataʻitaʻiga masani o le IoT project, le ESP RainMakerr cloud platform, ma le siosiomaga atinaʻe ESP-IDF, ina ia faʻavaeina se faavae mautu mo le atinaʻeina o poloketi a IoT.
· Atinaʻeina Meafaigaluega ma Avetaʻavale (Mataupu 5): Faʻavae i luga o le ESP6-C32 chipset, o lenei vaega o loʻo faʻamatalaina i luga o le faʻaogaina o masini komepiuta ma le atinaʻeina o avetaʻavale, ma faʻatinoina le faʻatonutonuina o le faanenefu, lanu lanu, ma fesoʻotaʻiga uaealesi.
· Fa'afeso'ota'i ma Fa'atonu (Mataupu 7): O lenei vaega o lo'o fa'amatalaina ai le fa'atulagaina o le Wi-Fi atamai e fa'avae i luga o le ESP11-C32 chip, fa'alotoifale & ao fa'atonu fa'atonuga, ma le fa'apitonu'u & mamao o masini. O lo'o tu'uina atu ai fo'i polokalame mo le atina'eina o polokalama telefoni, fa'aleleia o le firmware, ma le fa'atonutonuina o fa'amatalaga.
· Faʻatonuina ma le Mass Production (Mataupu 12-15): O lenei vaega e faʻamoemoe mo le faʻaogaina o le IoT faʻaoga, e taulaʻi i le faʻaleleia atili o oloa i le puleaina o le eletise, faʻamalosia le maualalo o le mana, ma le faʻaleleia atili o le saogalemu. O lo'o fa'ailoa mai ai fo'i le fa'amumuina o le firmware ma le su'ega i le tele o gaosiga, ma pe fa'apefea ona iloa le tulaga o lo'o fa'agaoioia ma ogalaau o masini firmware e ala i le va'aiga mata'ituina mamao ESP Insights.
E uiga i le Source Code
E mafai e le au faitau ona faʻatautaia le exampo polokalame i totonu o lenei tusi, a le o le tuʻuina atu o le code ma le lima poʻo le faʻaaogaina o le source code o loʻo faʻatasi ma le tusi. Matou te faʻamamafaina le tuʻufaʻatasia o aʻoaʻoga ma faʻataʻitaʻiga, ma faʻatutuina ai se vaega Faʻataʻitaʻi e faʻavae i luga o le Poloketi Smart Light i toetoe lava o mataupu uma. O fa'ailoga uma e tatala-sourced. E fa'afeiloa'i le aufaitau e la'u mai le code source ma talanoaina i vaega e feso'ota'i ma lenei tusi ile GitHub ma le matou fa'asalalauga aloaia esp32.com. O le fa'asinomaga tatala o lenei tusi e fa'atatau i aiaiga a Apache License 2.0.
Tusitala a le Tusitala
O lenei tusi o loʻo gaosia aloaia e Espressif Systems ma o loʻo tusia e inisinia sinia a le kamupani. E fetaui lelei mo pule ma tagata faigaluega R&D i pisinisi e fesoʻotaʻi ma IoT, faiaʻoga ma tamaiti aʻoga faʻapitoa e fesoʻotaʻi, ma tagata fiafia i le Initaneti o Mea. Matou te faʻamoemoe e mafai ona avea lenei tusi o se tusi lesona, o se faʻamatalaga, ma se tusi i tafatafa o le moega, e pei o se faiaoga lelei ma se uo.
A o tuʻufaʻatasia lenei tusi, matou te faʻatatau i nisi o suʻesuʻega talafeagai o tagata atamamai, tagata atamamai, ma tekinisia i le fale ma fafo, ma sa matou faia le mea sili matou te mafaia e taʻua ai e tusa ai ma tulaga faʻaleaʻoaʻoga. Ae ui i lea, e le maalofia le tatau ona i ai ni mea e le o faia, o lea e momoli atu ai le faʻaaloalo loloto ma le faʻafetai i tusitala talafeagai uma. E le gata i lea, ua matou sii maia faʻamatalaga mai le Initaneti, o lea matou te fia faʻafetai atu ai i uluai tusitala ma tagata faʻasalalau ma faʻamalie atu e le mafai ona matou faʻaalia le puna o faʻamatalaga uma.
Ina ia mafai ona maua se tusi e sili ona lelei, ua matou faʻatulagaina taʻamilosaga o talanoaga i totonu, ma aʻoaʻoina mai fautuaga ma faʻamatalaga a le au faitau faʻataʻitaʻiga ma le au faʻasalalau faʻasalalau. O iinei, matou te toe faafetai atu ai mo la outou fesoasoani na fesoasoani uma i lenei galuega manuia.
Mulimuli, ae sili ona taua, faafetai i tagata uma i Espressif oe na galue malosi mo le fanau mai ma le faʻalauiloaina oa tatou oloa.
O le atinaʻeina o poloketi IoT e aofia ai le tele o le malamalama. Fa'atapula'a i le umi o le tusi, fa'apea fo'i ma le maualuga ma le poto masani o le tusitala, e le mafai ona alofia le fa'aogaina. O le mea lea, matou te talosagaina ma le agalelei le au atamamai ma le au faitau e faitio ma faasaʻo a matou mea sese. Afai ei ai ni au fautuaga mo lenei tusi, faʻamolemole faʻafesoʻotaʻi matou i book@espressif.com. Matou te tulimatai atu i lau faʻamatalaga.
E fa'apefea ona fa'aoga lenei tusi?
O le fa'ailoga o galuega o lo'o i totonu o lenei tusi ua tatala fa'apogai. E mafai ona e sii maia mai le matou GitHub repository ma faʻasoa ou manatu ma fesili ile matou faʻasalalauga aloaia. GitHub: https://github.com/espressif/book-esp32c3-iot-projects Forum: https://www.esp32.com/bookc3 I le tusi atoa, o le ai ai ni vaega e faʻamaonia e pei ona faʻaalia i lalo.
Source code I totonu o lenei tusi, matou te faʻamamafaina le tuʻufaʻatasia o aʻoaʻoga ma faʻataʻitaʻiga, ma faʻapenaina ai se vaega Faʻataʻitaʻi e uiga i le Poloketi Smart Light i toetoe lava o mataupu uma. Laasaga tutusa ma itulau puna o le a makaina i le va o laina e lua e amata i le tag Source code.
FAAMANATU/FAUTUAGA O i'inei e te maua ai ni fa'amatalaga taua ma fa'amanatu mo le sologa lelei o lau polokalame. O le a faailogaina i le va o laina mafiafia e lua e amata i le tag FAAMANATU poʻo FAʻAALIGA.
O le tele o poloaiga i totonu o lenei tusi o loʻo faʻatinoina i lalo o Linux, faʻaosofia e le amio "$". Afai e manaʻomia e le faʻatonuga faʻapitoa faʻapitoa e faʻatino, o le a suia le vave i le "#". O le fa'atonuga fa'atonu i faiga Mac o le "%", e pei ona fa'aogaina i le Vaega 4.2.3 Fa'apipi'i ESP-IDF i le Mac.
O le tino tusitusiga i lenei tusi o le a lolomi i le Charter, ae o le code examples, vaega, galuega, fesuiaiga, code file igoa, code directories, ma manoa o le a i totonu Courier New.
Poloaiga poʻo tusitusiga e manaʻomia ona tuʻuina atu e le tagata faʻaoga, ma poloaiga e mafai ona ulufale i le oomiina o le "Enter" ki o le a lolomiina i le Courier New Bold. O ogalaau ma fa'ailoga poloka o le a tu'uina atu i pusa lanumoana malamalama.
ExampLe:
Lona lua, fa'aaoga le esp-idf/components/nvs flash/nvs partition generator/nvs partition gen.py e fa'atupu ai le NVS partition binary file i luga o le atinaʻe talimalo ma le poloaiga lenei:
$ python $IDF PATH/ituaiga/nvs flash/nvs vaeluaga generator/nvs vaeluaga gen.py –input mass prod.csv –output mass prod.bin –size NVS PARTITION SIZE
Mataupu 1
Folasaga
ia
IoT
I le faaiuga o le 20th seneturi, faatasi ai ma le siʻitia o fesoʻotaʻiga komepiuta ma tekinolosi fesoʻotaʻiga, ua vave ona faʻapipiʻi Initaneti i olaga o tagata. A'o fa'aauau pea le fa'atuputeleina o tekonolosi tau Initaneti, na fanau mai ai le manatu ole Initaneti o Mea (IoT). O le mea moni, IoT o lona uiga o se Initaneti e fesoʻotaʻi ai mea. E ui o le uluai Initaneti e talepeina le tapulaʻa o le avanoa ma le taimi ma faʻaitiʻitia le mamao i le va o le "tagata ma le tagata", IoT faia "mea" o se vaega taua, aumaia "tagata" ma "mea" vavalalata faʻatasi. I le lumanaʻi vaʻaia, IoT ua faʻatulagaina e avea ma faʻamalosi malosi o le alamanuia faʻamatalaga.
O le a la le Initaneti o Mea?
E faigata ona fa'amalamalama sa'o le Initaneti o Mea, ona o lona uiga ma le lautele o lo'o fa'asolosolo pea. I le 1995, na muaʻi aumaia ai e Bill Gates le manatu o le IoT i lana tusi The Road Ahead. I se faaupuga faigofie, IoT e mafai ai e mea faitino ona fesuiai faʻamatalaga ma isi e ala ile Initaneti. O lona sini autu o le faʻavaeina o se "Initaneti o mea uma". O se faʻamatalaga vave lea o le IoT, faʻapea foʻi ma se mafaufauga o tekinolosi i le lumanaʻi. I le tolusefulu tausaga mulimuli ane, faatasi ai ma le televave o le atinaʻeina o le tamaoaiga ma tekinolosi, ua oʻo mai le faʻalavelave. Mai masini atamai, fale atamai, aai atamai, Initaneti o Taʻavale ma masini faʻaogaina, i le "metaverse" o loʻo lagolagoina e tekinolosi IoT, o loʻo faʻaalia pea manatu fou. I totonu o lenei mataupu, o le a tatou amata i se faʻamatalaga o le fausaga o Initaneti o Mea, ona faʻalauiloa atu lea o le faʻaoga masani a le IoT, le fale atamai, ina ia fesoasoani ia te oe e maua se malamalamaga manino o IoT.
1.1 Fausia o le IoT
Initaneti o Mea e aofia ai le tele o tekonolosi e eseese manaʻoga ma fomu i pisinisi eseese. Ina ia mafai ona faʻavasegaina le fausaga, tekinolosi autu ma uiga faʻaogaina o le IoT, e tatau ona faʻavaeina se fausaga faʻatasi ma se faiga faʻapitoa faʻapitoa. I totonu o lenei tusi, o le fausaga o le IoT ua naʻo le vaevaeina i ni vaega se fa: faʻaaliga & faʻatonuga, faʻapipiʻi fesoʻotaʻiga, laulau faʻavae, ma le faʻaogaina o le faʻaoga.
Fa'aaliga & Pulea Layer I le avea ai ma elemene sili ona taua o le fausaga o le IoT, o le vaaiga ma le fa'atonuga o le autu lea e iloa ai le lagona atoatoa o le IoT. O lana galuega autu o le aoina, iloa ma pulea faʻamatalaga. E aofia ai masini eseese ma le gafatia o le malamalama,
3
fa'ailoaina, pulea ma le fa'atinoina, ma e nafa ma le toe aumai ma le au'ili'ili o fa'amaumauga e pei o meafaitino, aga masani, ma tulaga o masini. I lenei auala, e iloa ai e IoT le lalolagi faaletino moni. E le gata i lea, e mafai foi e le laulau ona pulea le tulaga o le masini.
O masini sili ona taatele o lenei laulau o masini eseese, lea e taua tele i le aoina o faʻamatalaga ma faʻamaonia. O masini e pei o totoga fa'aletagata, e pei o masini fa'afofoga e tutusa ma le va'ai, masini fa'alogo i le fa'alogo, fa'alogo kasa e sogisogi, ma masini e fa'afefete ma le vevela ile pa'i. Faatasi ai ma nei "totoga faʻalogo" uma, o mea faitino e avea ma "ola" ma mafai ona malamalama lelei, faʻaalia ma faʻaogaina le lalolagi faaletino.
Network Layer O le galuega autu a le network layer o le tuʻuina atu lea o faʻamatalaga, e aofia ai faʻamatalaga na maua mai le vaaiga ma le faʻatonuina o le faʻatonuga i le faʻamoemoega faʻapitoa, faʻapea foʻi ma faʻatonuga e tuʻuina atu mai le faʻasologa o talosaga e toe foʻi i le faʻaaliga & faʻatonuga. E avea o se alalaupapa fesoʻotaʻiga taua e fesoʻotaʻi ai faʻavae eseese o le IoT system. Ina ia faʻatulagaina se faʻataʻitaʻiga autu o le Initaneti o Mea, e aofia ai laasaga e lua e tuʻufaʻatasia ai mea i totonu o se fesoʻotaʻiga: avanoa ile Initaneti ma faʻasalalauga ile Initaneti.
Avanoa ile Initoneti Initaneti e mafai ai ona feso'ota'i i le va o le tagata ma le tagata, ae le mafai ona fa'aofi mea i totonu o le aiga tele. Aʻo leʻi oʻo mai le IoT, o le tele o mea e leʻo "faʻaogaina fesoʻotaʻiga". Faʻafetai i le faʻaauau pea o le atinaʻeina o tekinolosi, IoT e faʻatautaia e faʻafesoʻotaʻi mea i luga ole Initaneti, ma iloa ai le fesoʻotaʻiga i le va o "tagata ma mea", ma "mea ma mea". E lua auala masani e fa'atino ai feso'ota'iga Initaneti: avanoa feso'ota'iga uaea ma feso'ota'iga uaealesi.
O auala fa'aoga feso'ota'iga uaea e aofia ai le Ethernet, feso'ota'iga fa'asologa (fa'ata'ita'iga, RS-232, RS-485) ma le USB, a'o fa'aogaina feso'ota'iga uaealesi e fa'alagolago i feso'ota'iga uaealesi, lea e mafai ona vaevaeina atili i feso'ota'iga uaealesi pupuu ma feso'ota'iga mamao mamao.
Feso'ota'iga uaealesi pupuu e aofia ai le ZigBee, Bluetoothr, Wi-Fi, Feso'ota'iga Latalata (NFC), ma le Fa'ailoaina o Fa'asalalauga Fa'asalalau (RFID). Feso'ota'iga uaealesi mamao e aofia ai Feso'ota'iga Tulaga Fa'aleleia o masini (eMTC), LoRa, Narrow Band Internet of Things (NB-IoT), 2G, 3G, 4G, 5G, ma isi.
Feso'ota'iga e ala ile Initaneti O auala 'ese'ese ole fa'aogaina ole Initaneti e ta'ita'i atu ile feso'ota'iga fa'aletino o fa'amaumauga. O le isi mea o le filifili lea po'o fea feso'ota'iga feso'ota'iga e fa'aoga e fa'asalalau ai fa'amaumauga. A fa'atusatusa i laina Initaneti, o le tele o IoT e la'ititi i le taimi nei
4 ESP32-C3 Wireless Adventure: O se Ta'iala Atoa ile IoT
punaoa avanoa, e pei o le gaosiga o gaioiga, gafatia e teu ai, fua o fesoʻotaiga, ma isi, o lea e tatau ai ona filifili se fesoʻotaʻiga fesoʻotaʻiga e faʻaitiitia ai punaoa i talosaga IoT. E lua feso'ota'iga feso'ota'iga o lo'o fa'aaogaina lautele i aso nei: Fe'au Tu'i Telemetry Fela'uaiga (MQTT) ma Fa'agata Talosaga Protocol (CoAP).
Layer Layer Ole laiga fa'avae e fa'atatau ile IoT cloud platforms. A o'o ina feso'ota'i feso'otaiga uma a IoT, e mana'omia ona tu'ufa'atasia a latou fa'amaumauga i luga o se fa'atūlaga ao IoT e fuafua ma teu. O le fa'avae fa'avae e lagolago tele i talosaga a le IoT i le fa'afaigofieina o avanoa ma le puleaina o masini tetele. E fa'afeso'ota'i fa'amaufa'ailoga IoT i luga o le ao, aoina fa'amaumauga fa'amau, ma tu'uina atu fa'atonuga i fa'amau, ina ia fa'atino ai le fa'atonu mamao. I le avea ai o se 'auʻaunaga faʻapitoa e tuʻuina atu meafaigaluega i talosaga tau alamanuia, o le laulau faʻavae e taʻalo se sao faʻafesoʻotaʻi i le fausaga atoa o le IoT, o loʻo faʻauluina faʻamatalaga pisinisi faʻapitoa ma faʻataʻitaʻiga faʻataʻitaʻiga autu, lea e le gata ina mafai ona iloa vave le mauaina o masini, ae maua ai foi le malosi modular gafatia. e fa'amalieina mana'oga 'ese'ese i fa'ata'ita'iga fa'atatau o alamanuia. O le laulau fa'avae e masani ona aofia ai fa'aoga fa'atino e pei o le fa'aogaina o masini, pulega o masini, pulega o le puipuiga, feso'ota'iga fe'au, fa'agaioiga mata'ituina ma le tausiga, ma fa'amatalaga fa'amaumauga.
· Avanoa i le masini, iloa le fesoʻotaʻiga ma fesoʻotaʻiga i le va o faʻaupuga ma IoT cloud platforms.
· Puleaina o masini, e aofia ai galuega e pei o le fausiaina o masini, tausiga o masini, suiga o faʻamatalaga, faʻasologa o faʻamaumauga, ma le tufatufaina o masini.
· Pulea saogalemu, faʻamautinoaina le saogalemu o faʻamatalaga faʻamatalaga IoT mai vaʻaiga o le faʻamaoniga saogalemu ma le saogalemu o fesoʻotaʻiga.
· Fesoʻotaʻiga feʻau, e aofia ai faʻamatalaga faʻasalalau e tolu, o lona uiga, e tuʻuina atu e le laina faʻamatalaga i le IoT cloud platform, o le IoT cloud platform e tuʻuina atu faʻamatalaga i le itu o le server poʻo isi IoT cloud platforms, ma le itu server remotely pulea IoT masini.
· Mataʻituina o le O & M, e aofia ai le mataʻituina ma le suʻesuʻeina, faʻaleleia o le firmware, faʻapipiʻiina i luga ole laiga, tautua ogalaau, ma isi.
· Faʻamatalaga faʻamatalaga, e aofia ai le teuina, auiliiliga ma le faʻaogaina o faʻamaumauga.
Layer Layer E fa'aogaina e le fa'asologa o fa'amaumauga fa'amaumauga mai le laulau fa'avae e fa'atautaia ai le talosaga, fa'amama ma fa'agaoioia i meafaigaluega e pei o fa'amaumauga ma su'esu'ega polokalama. O faʻamaumauga e maua mai e mafai ona faʻaogaina mo talosaga a le IoT e pei o le soifua maloloina atamai, faʻatoʻaga atamai, fale atamai, ma taulaga atamai.
O le mea moni, o le fausaga o le IoT e mafai ona vaevaeina i le tele o laulau, ae tusa lava po o le a le tele o laulau e aofia ai, o le mataupu faavae e tumau pea le tutusa. Aoaoina
Mataupu 1. Folasaga ile IoT 5
e uiga i le fausaga o le IoT e fesoasoani e faʻalolotoina lo tatou malamalama i tekinolosi IoT ma fausia atoatoa galuega IoT poloketi.
1.2 Talosaga IoT i Fale Atamai
IoT ua ulu atu i soʻo se ituaiga o olaga, ma o le faʻaoga vavalalata IoT ia i matou o le fale atamai. O le tele o mea faigaluega masani ua faʻapipiʻiina nei i se tasi pe sili atu mea IoT, ma o le tele o fale fou ua mamanuina i tekinolosi IoT mai le amataga. Ata 1.1 o lo'o fa'aalia ai nisi o masini atamai fale masani.
Ata 1.1. Masini masani fale atamai O le atinaʻeina o fale atamai e mafai ona faʻavasegaina i oloa atamai stagu, va'aiga feso'ota'iga stagu ma le atamai stage, e pei ona faʻaalia i le Ata 1.2.
Ata 1.2. Atiina'e stage o le fale atamai 6 ESP32-C3 Wireless Adventure: O se Ta'iala Atoa ile IoT
O le stage uiga i oloa atamai. E ese mai fale masani, i totonu o fale atamai, IoT masini e maua faʻailoga ma masini, ma fesoʻotaʻi e ala i fesoʻotaʻiga fesoʻotaʻiga e pei ole Wi-Fi, Bluetooth LE, ma ZigBee. E mafai e tagata faʻaoga ona pulea oloa atamai i ni auala eseese, e pei o telefoni feaveaʻi, fesoasoani leo, faʻatautaia atamai failauga, ma isi.tage taula'i i le va'aiga va'aiga. I lenei stagu, e le o toe mafaufau le au atinaʻe e pulea se oloa atamai se tasi, ae faʻafesoʻotaʻi lua pe sili atu oloa atamai, faʻautometi i se tulaga faʻapitoa, ma iu ai ina fausia se faʻataʻitaʻiga masani. Mo example, pe a oomi e le tagata faʻaoga soʻo se faʻamau faʻaaliga, o moli, pupuni, ma ea malulu o le a otometi lava ona faʻafetaui i seti. Ioe, o lo'o i ai le mana'oga muamua e fa'atutuina le feso'ota'iga feso'ota'iga, e aofia ai tulaga fa'aoso ma gaioiga fa'atino. Va'ai faalemafaufau o le faiga fa'amafanafana ea e fa'aosoina pe a pa'ū le vevela i totonu ole 10°C; i le 7 i le taeao, e taina musika e fafagu ai le tagata faʻaoga, tatala pupuni atamai, ma le kuka araisa poʻo le falaoa falaoa e amata i se socket atamai; a o tu i luga le tagata faʻaoga ma faʻauma le fufulu, ua uma ona tuʻuina le taeao, ina ia leai se tuai e alu i le galuega. Ko oko eiloa i te faigofie o ‵tou olaga! O le lona tolu stage alu i le atamai stagu. A'o maua le tele o masini atamai ile fale, e fa'apea fo'i ituaiga fa'amaumauga e maua. Faatasi ai ma le fesoasoani a le cloud computing, tele faʻamatalaga ma le atamai faʻapitoa, e pei o se "faiʻai atamai" ua totoina i totonu o fale atamai, lea e le toe manaʻomia ai ni faʻatonuga masani mai le tagata faʻaoga. Latou te aoina mai faʻamatalaga mai fegalegaleaiga muamua ma aʻoaʻoina amioga a le tagata faʻaoga ma mea e fiafia i ai, ina ia otometi ai gaioiga, e aofia ai le tuʻuina atu o fautuaga mo le faia o filifiliga. I le taimi nei, o le tele o fale atamai o loʻo i le vaaiga fesoʻotaʻiga stagu. A'o fa'atupula'ia le fua fa'atatau ma le atamai o oloa atamai, ua fa'ate'a'eseina pa puipui i le va o feso'ota'iga. I le lumanaʻi, o fale atamai e tatau ona avea ma "atamai", pei o le AI system Jarvis i Iron Man, lea e le gata e mafai ona fesoasoani i le tagata faʻaoga e pulea masini eseese, faʻatautaia mataupu i aso uma, ae e iai foʻi le mana faʻapitoa ma le mafaufau. I le atamai stagu, o le a maua e tagata soifua auaunaga sili atu i le tele ma le lelei.
Mataupu 1. Folasaga ile IoT 7
8 ESP32-C3 Wireless Adventure: O se Ta'iala Atoa ile IoT
Mataupu Folasaga ma Fa'ata'ita'iga o 2 IoT Poloketi
I le Mataupu 1, na matou faʻalauiloaina le fausaga o le IoT, ma matafaioi ma fesoʻotaʻiga o le vaʻaiga ma le faʻatonuga, faʻapipiʻi fesoʻotaʻiga, laulau faʻavae, ma le faʻaogaina o le faʻaoga, faʻapea foʻi ma le atinaʻeina o fale atamai. Ae ui i lea, e pei lava o le taimi tatou te aʻoaʻo ai e vali, o le iloa o le malamalama faʻapitoa e le lava. E tatau ona "fa'aeleelea o tatou lima" e fa'atino ai galuega a le IoT ina ia mafai ai ona fa'atautaia le tekonolosi. E le gata i lea, pe a alu se poloketi i le gaosiga tele stagu, e tatau ona mafaufau i nisi mea e pei o fesoʻotaʻiga fesoʻotaʻiga, faʻatulagaina, fesoʻotaʻiga i luga o le ao o IoT, pulega faʻapitoa ma faʻafouga, pulega o gaosiga tele, ma le faʻaogaina o le puipuiga. O lea la, o le a le mea e tatau ona tatou faʻalogo i ai pe a atiaʻe se poloketi IoT atoatoa? I le Mataupu 1, na matou taʻua ai o le fale atamai o se tasi lea o faʻataʻitaʻiga masani a le IoT, ma o moli atamai o se tasi lea o mea faʻapitoa ma aoga, lea e mafai ona faʻaaogaina i fale, faletalimalo, gyms, falemaʻi, ma isi. O lenei tusi, o le a tatou faia le fausiaina o se poloketi malamalama atamai e avea ma amataga, faʻamatala ona vaega ma foliga, ma tuʻuina atu taʻiala i le atinaʻeina o galuega. Matou te faʻamoemoe e mafai ona e faia ni faʻamatalaga mai lenei mataupu e fausia ai nisi faʻaoga IoT.
2.1 Folasaga i Poloketi masani IoT
I tulaga o le atinaʻe, o faʻavae faʻaogaina o poloketi a IoT e mafai ona faʻavasegaina i polokalama faakomepiuta ma meafaigaluega faʻapipiʻi o masini IoT, atinaʻeina o talosaga a tagata, ma le atinaʻeina o tulaga o le ao o IoT. E taua tele le faʻamalamalamaina o faʻaoga faʻavae autu, lea o le a faʻamatalaina atili i lenei vaega.
2.1.1 Fa'avae Fa'avae mo Meafaigaluega masani IoT
O le atina'eina o polokalame ma meafaigaluega o masini IoT e aofia ai vaega fa'avae nei: Aoina o fa'amaumauga
I le tulaga pito i lalo ole fausaga o le IoT, o masini IoT ole va'aiga ma le fa'atonuga e feso'ota'i masini ma masini e ala ia latou meataalo ma peripheral e ausia ai le aoina o fa'amaumauga ma le fa'atonutonuina o galuega.
9
Fa'amauina o fa'amaumauga ma fa'asologa muamua Mo le tele o masini IoT, fa'amauina fa'amatalaga ma fa'atulaga muamua e fa'amae'aina i le tasi fa'agaioiga fa'agaioiga, mo le taimi muamua.ample, faʻafesoʻotaʻi masini ma tagata faʻaoga e ala i le faʻatulagaina o fesoʻotaiga Wi-Fi.
Fegalegaleaiga ma IoT cloud platforms Ina ia mataʻituina ma pulea masini IoT, e tatau foi ona faʻafesoʻotaʻi i latou ile IoT cloud platforms, ina ia tuʻuina atu faʻatonuga ma lipoti tulaga e ala i fegalegaleaiga i le va o le tasi ma le isi.
Pulea masini Pe a feso'ota'i ma IoT cloud platforms, e mafai ona feso'ota'i masini ma le ao ma fa'amauina, fusifusia, pe pulea. E mafai e tagata fa'aoga ona fesiligia le tulaga o oloa ma fa'atino isi gaioiga i luga o le telefoni feavea'i e ala ile IoT cloud platforms po'o feso'ota'iga fa'apitonu'u.
Faʻaleleia le faʻaleleia o masini IoT e mafai foi ona ausia le faʻaleleia o le firmware e faʻatatau i manaʻoga o tagata gaosi oloa. E ala i le mauaina o faʻatonuga na lafoina e le ao, faʻaleleia le firmware ma le pulega faʻasologa o le a iloa. Faatasi ai ma lenei faʻaleleia o le firmware, e mafai ona e faʻaauau pea ona faʻaleleia galuega a masini IoT, faʻaleleia mea faʻaletonu, ma faʻaleleia le poto masani o tagata.
2.1.2 Modules Autu o Talosaga Client
O talosaga a le aufaipisinisi (fa'ata'ita'iga, telefoni feavea'i) e masani ona aofia ai vaega autu nei:
Faiga fa'akomepiuta ma fa'atagaga E lagolagoina le fa'atagaina o fa'amatalaga ma masini.
Pulea masini O polokalame telefoni feavea'i e masani ona fa'apipi'iina i galuega fa'atonutonu. E faigofie ona faʻafesoʻotaʻi e tagata faʻaoga i masini IoT, ma faʻatautaia i soʻo se taimi, i soʻo se mea e ala i telefoni feaveaʻi. I totonu o se fale atamai i le lalolagi moni, o masini e tele lava ina pulea e ala i telefoni feaveaʻi, e le gata ina mafai ai ona faʻatautaia le atamai o masini, ae faʻasaoina foi le tau o tagata faigaluega. O le mea lea, o le pulea o masini o se mea tatau mo talosaga a tagata o tausia, e pei o le pulea o uiga o le masini, pulea vaaiga, faʻatulagaina, mamao mamao, fesoʻotaʻiga masini, ma isi. , ma isi mea, ina ia faafaigofie ma faigofie ai le olaga faaleaiga. E mafai ona latou fa'atulagaina le ea malulu, tape mamao, fa'apipi'i otometi le moli o le alatele pe a tatala le faitoto'a, pe fesuia'i i le "ta'aloga" fa'atasi ma le tasi fa'amau.
Fa'asilasilaga Fa'amatalaga Client e fa'afou le tulaga moni o masini IoT, ma auina atu fa'aaliga pe a fa'aletonu masini.
10 ESP32-C3 Wireless Adventure: O se Ta'iala Atoa ile IoT
Ina ua mae'a le fa'atau atu auaunaga fa'atau telefoni feavea'i e mafai ona tu'uina atu auaunaga pe a uma ona fa'atau atu mo oloa, e fo'ia ai fa'afitauli e feso'ota'i ma fa'aletonu masini IoT ma fa'agaioiga fa'atekinisi i se taimi talafeagai.
Galuega fa'apitoa Ina ia fa'amalieina mana'oga o tagata fa'aoga eseese, e mafai ona fa'aopoopo isi galuega, e pei o le Shake, NFC, GPS, ma isi. GPS e mafai ona fesoasoani e fa'atulaga le sa'o o fa'atinoga o vaaiga e tusa ai ma le nofoaga ma le mamao, ae o le galuega Fa'alulu e mafai ai e tagata fa'aoga ona fa'atulaga le poloa'iga e fa'atino mo masini fa'apitoa po'o se vaaiga e ala ile lulu.
2.1.3 Fa'atomuaga ile IoT Cloud Platforms masani
IoT cloud platform o se faʻavae uma-i-tasi lea e tuʻufaʻatasia galuega e pei o le puleaina o masini, fesoʻotaʻiga saogalemu o faʻamatalaga, ma le faʻasalalauga faʻasalalauga. E tusa ai ma la latou vaega faʻatatau ma avanoa, IoT cloud platforms e mafai ona vaevaeina i tulaga lautele IoT cloud platforms (o loʻo taʻua mulimuli ane o le "public cloud") ma tulaga tumaoti IoT cloud platforms (o loʻo taʻua mulimuli ane o le "private cloud").
O le ao lautele e masani ona faʻaalia le faʻasoa IoT cloud platforms mo atinaʻe poʻo tagata taʻitoʻatasi, faʻatautaia ma tausia e kamupani tuʻufaʻatasia, ma faʻasoa i luga ole Initaneti. E mafai ona maua fua pe maualalo tau, ma tuʻuina atu auaunaga i luga o fesoʻotaʻiga lautele lautele, e pei o Alibaba Cloud, Tencent Cloud, Baidu Cloud, AWS IoT, Google IoT, ma isi. tagata fa'au'uga pito i lalo e fa'atupu se filifili fou fa'atau ma fa'anatura.
Private cloud ua fausia mo na'o le fa'aogaina o atina'e, ma fa'amautinoa ai le pulea lelei o fa'amaumauga, saogalemu, ma le lelei o auaunaga. O ana 'au'aunaga ma atina'e o lo'o tausia fa'apitoa e atina'e, ma o meafaigaluega lagolago ma polokalama fa'apitoa e tu'ufa'atasia mo tagata fa'apitoa. E mafai e pisinisi ona fa'avasega auaunaga ao e fa'afetaui mana'oga o latou pisinisi. I le taimi nei, o nisi o fale gaosi fale atamai ua uma ona maua ni faʻasalalauga tutoʻatasi IoT cloud platforms ma atinaʻe faʻaoga atamai fale e faʻavae i luga.
O le ao lautele ma le ao tumaoti e iai a latou lava advantages, lea o le a faamatalaina mulimuli ane.
Ina ia ausia le fesoʻotaʻiga fesoʻotaʻiga, e manaʻomia le faʻamaeʻaina o atinaʻe faʻapipiʻi i luga o le itu o le masini, faʻatasi ai ma pisinisi pisinisi, IoT cloud platforms, ma telefoni feaveaʻi. O le feagai ai ma sea galuega tele, o le ao lautele e masani lava ona tuʻuina atu pusa atinaʻe polokalame mo masini-itu ma telefoni feaveaʻi e faʻavave ai le faagasologa. O ao lautele ma tagata tumaoti e tuʻuina atu auaunaga e aofia ai le faʻaogaina o masini, pulega o masini, ata o masini, ma le faʻaogaina ma le tausiga.
E mana'omia le fa'aogaina o masini IoT cloud platforms e le gata o feso'ota'iga mo le fa'aogaina o masini e fa'aoga ai fa'amaumauga
Vaega 2. Fa'atomuaga ma Fa'ata'ita'iga o Poloketi IoT 11
pei ole MQTT, CoAP, HTTPS, ma WebSocket, ae faʻapea foʻi ma le faʻaogaina o le faʻamaoniga o le saogalemu o masini e poloka ai masini faʻatau ma faʻatulafonoina, faʻaitiitia lelei le lamatiaga o le faʻafefe. O lea faʻamaoniga e masani ona lagolagoina auala eseese, o lea pe a faʻapipiʻiina masini, e tatau ona muaʻi tuʻuina atu le tusi faamaonia masini e tusa ai ma le masini faʻamaonia filifilia ma susunuina i totonu o masini.
Puleaina o masini O le faʻaogaina o masini e tuʻuina atu e IoT cloud platforms e le gata e mafai ona fesoasoani i tagata gaosi oloa e mataʻituina le faʻagaioiina o le tulaga ma le tulaga i luga ole laiga o latou masini i le taimi moni, ae faʻatagaina foi filifiliga e pei o le faʻaopoopo / aveese masini, toe maua, faʻaopoopo / tape vaega, faʻaleleia firmware. , ma le pulega fa'aliliuga.
Ata o masini IoT ao fa'avae e mafai ona fa'atupuina ai se fa'ata'ita'iga fa'akomepiuta (ataata o masini) mo masini ta'itasi, ma o le tulaga o le ata lafoia e mafai ona fa'amaopoopo ma maua mai i telefoni po'o isi masini e ala i fa'asalalauga fa'ainitaneti. O ata lafoia o masini e teu ai le tulaga lata mai ua lipotia ma tulaga faʻamoemoeina o masini taʻitasi, ma e tusa lava pe leai se initaneti, e mafai lava ona maua le tulaga e ala i le valaʻau API. O ata o masini e maua ai API i taimi uma, lea e faigofie ai ona fausia ni telefoni feaveaʻi e fegalegaleai ma masini.
Fa'agaioiina ma le tausiga Ole galuega ole O&M e aofia ai vaega e tolu: · Fa'aalia fa'amatalaga fa'afuainumera e uiga i masini IoT ma fa'amatalaga. · Fa'atonuga o fa'amaumauga e mafai ai ona toe maua mai fa'amatalaga e uiga i le amio a le masini, luga / lalo fe'au fe'au, ma fa'amatalaga savali. · Fa'apipi'i masini e lagolagoina le tu'uina atu o fa'atonuga, fa'afouga fa'afou, ma le siakiina o feso'ota'iga i le va o fa'atūlaga ao IoT ma fe'au masini.
2.2 Faataitai: Poloketi Malamalama Atamai
A maeʻa le faʻamatalaga faʻapitoa i mataupu taʻitasi, o le ae mauaina se vaega faʻataʻitaʻiga e fesoʻotaʻi ma le Poloketi Smart Light e fesoasoani ia te oe e maua ai le poto masani. O le poloketi e faʻavae i luga ole ESP32-C3 chip ma ESP RainMaker IoT Cloud Platform, ma faʻapipiʻi masini faʻapipiʻi uaealesi i oloa malamalama atamai, faʻapipiʻi polokalame mo masini atamai e faʻavae ile ESP32C3, telefoni feaveaʻi, ma le ESP RainMaker fegalegaleaiga.
Source code Mo le fa'aleleia atili o le a'oa'oina ma le atina'eina o le poto masani, o le poloketi o lo'o i totonu o lenei tusi ua fa'aavanoaina. E mafai ona e siiina mai le code source mai le matou GitHub faleoloa i https://github. com/espressif/book-esp32c3-iot-projects.
12 ESP32-C3 Wireless Adventure: O se Ta'iala Atoa ile IoT
2.2.1 Fa'atulagaina o Poloketi
O le Poloketi Smart Light e tolu vaega: i. O masini malamalama atamai e faʻavae i luga o le ESP32-C3, e nafa ma le fegalegaleai ma IoT cloud platforms, ma le puleaina o le ki, susulu ma le vevela lanu o le LED l.amp pulu. ii. Polokalama telefoni feaveai (e aofia ai polokalama papalama o loʻo taʻavale i luga o le Android ma iOS), e nafa ma le faʻatulagaina o fesoʻotaʻiga o oloa malamalama atamai, faʻapea foʻi ma le fesiligia ma le puleaina o latou tulaga.
iii. Ole IoT cloud platform fa'avae ile ESP RainMaker. Mo le faʻafaigofie, matou te mafaufau i le IoT cloud platform ma pisinisi pisinisi atoa i lenei tusi. O fa'amatalaga e uiga i le ESP RainMaker o le a tu'uina atu ile Mataupu 3.
O fesoʻotaʻiga i le va o le Smart Light project structure ma le fausaga o le IoT o loʻo faʻaalia i le Ata 2.1.
Ata 2.1. Fa'atulagaina o galuega malamalama malamalama
2.2.2 Galuega Fa'atino
Vaevaeina e tusa ai ma le fausaga, o galuega a vaega taʻitasi e faʻapea. Masini malamalama atamai
· Fesootaiga fesoʻotaʻiga ma fesoʻotaʻiga. · Pulea o le PWM LED, e pei o le ki, susulu, vevela lanu, ma isi. · Otometi po'o le vaaiga, eg, suiga taimi. · Fa'ailoga ma le fa'amaufa'ailoga o le Flash. · Faʻaleleia le firmware ma le faʻatonutonuina o faʻamatalaga.
Vaega 2. Fa'atomuaga ma Fa'ata'ita'iga o Poloketi IoT 13
Fa'aoga telefoni feavea'i · Feso'ota'iga feso'ota'iga ma le fusia o masini. · Faʻatonuga o oloa moli atamai, e pei o le ki, susulu, vevela lanu, ma isi. · Faʻatonuina poʻo le faʻatulagaina o vaaiga, faʻataʻitaʻiga, suiga taimi. · Fa'alotoifale/mamao. · Le resitalaina o tagata, faʻaoga, ma isi.
ESP RainMaker IoT cloud platform · Fa'ataga le avanoa i masini IoT. · Tuuina atu API fa'aoga masini e mafai ona maua i polokalama telefoni. · Faʻaleleia le firmware ma le faʻatonutonuina o faʻamatalaga.
2.2.3 Sauniuniga Meafaigaluega
Afai e te manaʻo e faʻatino le poloketi, e te manaʻomia foʻi meafaigaluega nei: moli atamai, smartphones, Wi-Fi routers, ma se komepiuta e fetaui ma manaʻoga faʻapipiʻi o le siosiomaga atinaʻe. Molī atamai
O moli atamai o se ituaiga fou o matauila, o lona foliga e tutusa ma le matauila lautele. O se moli atamai e aofia ai le capacitor step-down fa'atulafonoina sapalai eletise, module uaealesi (ma fausia-i totonu ESP32-C3), faʻatonutonu LED ma RGB LED matrix. A faʻafesoʻotaʻi i le mana, o le 15 V DC voltagu galuega faatino pe a uma le capacitor step-down, diode rectification, ma tulafono faatonutonu e maua ai le malosi i le LED pule ma le matrix LED. E mafai e le pule o le LED ona otometi lava ona auina atu tulaga maualuga ma maualalo i nisi taimi, fesuiai le RGB LED matrix i le va o tapuni (moila) ma tatala (momoli), ina ia mafai ona tuʻuina atu le cyan, samasama, lanumeamata, lanu viole, lanumoana, mumu, ma malamalama paepae. O le module uaealesi e nafa ma le faʻafesoʻotaʻi i le Wi-Fi router, mauaina ma lipotia le tulaga o moli atamai, ma le auina atu o poloaiga e pulea le LED.
Ata 2.2. Se moli atamai fa'atusa
I le amataga o atinae stage, e mafai ona e fa'atusaina se malamalama atamai e fa'aaoga ai le laupapa ESP32-C3DevKitM-1 e feso'ota'i ma le RGB LED lamp pulu (silasila i le Ata 2.2). Ae e tatau ona e
14 ESP32-C3 Wireless Adventure: O se Ta'iala Atoa ile IoT
ia maitauina e le na o le pau lea o le auala e faʻapipiʻi ai se moli atamai. O le mamanu o meafaigaluega o le poloketi i totonu o lenei tusi o loʻo i ai naʻo se module uaealesi (faʻatasi ai ma le ESP32-C3 faʻapipiʻi), ae le o se mamanu atoatoa o meafaigaluega malamalama malamalama. E le gata i lea, o loʻo tuʻuina atu foʻi e ESP32-C3 le ESP32-C3-based audio development board ESP2.3C32-Lyra mo le faʻatonutonuina o moli ma le leo. O le laupapa e iai feso'ota'iga mo masini faaleotele leo ma sipika ma e mafai ona pulea ta'iala LED. E mafai ona fa'aoga mo le atina'eina o fa'asalalauga fa'alogo leo e sili ona maualalo, ma fati moli. Ata 3 o lo'o fa'aalia ai se laupapa ESP40-CXNUMXLyra e feso'ota'i ma se fasi moli e XNUMX LED.
Ata 2.3. ESP32-C3-Lyra feso'ota'i ma se fasi moli 40 LED
Smartphones (Android/iOS) O le Poloketi Smart Light e aofia ai le atinaʻeina o se telefoni feaveaʻi mo le faʻatulagaina ma le faʻatonutonuina o oloa moli atamai.
Wi-Fi routers Wi-Fi routers fa'aliliuina fa'ailoga feso'ota'iga uaea ma fa'ailo feso'ota'iga fe'avea'i i fa'ailo feso'ota'iga uaealesi, mo komepiuta, smartphones, tablets, ma isi masini uaealesi e feso'ota'i i le feso'ota'iga. Mo example, broadband i totonu o le fale e na o le manaʻomia ona faʻafesoʻotaʻi i se alalaupapa Wi-Fi e ausia ai fesoʻotaʻiga uaealesi o masini Wi-Fi. O le fa'ata'ita'iga fa'apitoa e lagolagoina e alalaupapa Wi-Fi o le IEEE 802.11n, fa'atasi ai ma le TxRate o le 300 Mbps, po'o le 600 Mbps i le maualuga. E fetaui i tua ma le IEEE 802.11b ma le IEEE 802.11g. O le ESP32-C3 chip e Espressif e lagolagoina le IEEE 802.11b/g/n, o lea e mafai ai ona e filifilia se alalaupapa Wi-Fi e tasi-band (2.4 GHz) poʻo le lua-band (2.4 GHz ma 5 GHz).
O se komipiuta (Linux/macOS/Windows) Atina'e siosiomaga ole a fa'alauiloa ile Mataupu 4. Mataupu 2. Fa'atomuaga ma Fa'ata'ita'iga ole IoT Projects 15
2.2.4 Fa'agasologa o Atina'e
Ata 2.4. Laasaga ole atina'eina ole Poloketi Smart Light
Fuafuaga o meafaigaluega Fa'ailoga masini o masini IoT e taua tele i se poloketi IoT. O se poloketi malamalama atamai atoatoa ua faamoemoe e maua ai se lamp galue i lalo o sapalai autu. Eseese gaosi oloa gaosia lamps o sitaili eseese ma ituaiga avetaavale, ae o latou modules uaealesi e masani lava o le galuega tutusa. Ina ia faʻafaigofie le faʻagasologa o le atinaʻeina o le Smart Ligh project, o lenei tusi e naʻo le faʻaogaina o meafaigaluega ma le atinaʻeina o masini komepiuta o modules uaealesi.
IoT cloud platform configurations Mo le faʻaogaina o le IoT cloud platforms, e tatau ona e faʻatulagaina galuega i luga o le pito i tua, e pei o le fatuina o oloa, fatuina o masini, faʻatulagaina o mea tau masini, ma isi.
Faʻapipiʻiina polokalame faʻapipiʻi mo masini IoT Faʻatino galuega faʻamoemoeina ma le ESP-IDF, SDK itu-ituaiga a Espressif, e aofia ai le faʻafesoʻotaʻi i le IoT cloud platforms, atinaʻeina o avetaavale LED, ma le faʻaleleia o le firmware.
Atina'e telefoni feavea'i Atiae polokalama telefonipoto mo Android ma iOS faiga e iloa ai le resitalaina o tagata ma saini, pulea masini ma isi galuega.
IoT masini optimization A maeʻa le atinaʻeina autu o galuega a le IoT masini, e mafai ona e liliu atu i galuega faʻapitoa, e pei o le faʻaogaina o le eletise.
Fa'ata'ita'iga o le gaosiga fa'atele Fa'atino su'ega fa'atosina tele e tusa ai ma fa'ata'ita'iga fa'atatau, e pei o su'ega o mea faigaluega, su'ega matua, su'ega RF, ma isi.
E ui lava i laʻasaga o loʻo lisi atu i luga, o le Smart Light project e leʻo faʻatatau i ia faʻatonuga aua e mafai foi ona faia galuega eseese i le taimi e tasi. Mo example, fa'apipi'i polokalame ma telefonipoto e mafai ona atia'e fa'atasi. O nisi laʻasaga atonu e manaʻomia foi ona toe fai, pei ole IoT masini suʻesuʻe ma faʻataʻitaʻiga tele.
16 ESP32-C3 Wireless Adventure: O se Ta'iala Atoa ile IoT
2.3 Aotelega
I totonu o lenei mataupu, na matou faʻamatalaina muamua vaega autu ma faʻaoga faʻaogaina o se poloketi IoT, ona faʻaalia ai lea o le Smart Light case mo le faʻataʻitaʻiga, faʻasino i lona fausaga, galuega, sauniuniga meafaigaluega, ma le faʻagasologa o atinaʻe. E mafai e le au faitau ona maua ni faʻamatalaga mai le faʻataʻitaʻiga ma faʻamaonia le faʻatinoina o poloketi IoT ma ni mea sese laiti i le lumanaʻi.
Vaega 2. Fa'atomuaga ma Fa'ata'ita'iga o Poloketi IoT 17
18 ESP32-C3 Wireless Adventure: O se Ta'iala Atoa ile IoT
Mataupu 3
Folasaga
ia
ESP
RainMaker
Le Initaneti o Mea (IoT) e ofoina atu avanoa e le gata e suia ai le auala e ola ai tagata, ae o le atinaʻeina o le inisinia IoT e tumu i luitau. Faatasi ai ma ao lautele, e mafai e tagata gaosi oloa ona faʻatinoina galuega faʻatino e ala i fofo nei:
Fa'avae i luga o fa'aputuga ao tu'uina atu fofo I lenei auala, na'o le mana'omia e le au gaosi oloa e mamanuina meafaigaluega o oloa, ona fa'afeso'ota'i lea o meafaigaluega i le ao e fa'aaoga ai le module feso'ota'iga tu'uina atu, ma fa'atulaga galuega o oloa e mulimuli i ta'iala. Ole auala lelei lea talu ai e faʻaumatia ai le manaʻoga mo le atinaʻeina o le itu-aumau ma le itu-faʻaoga ma le faʻaogaina ma le tausiga (O&M). E mafai ai e le au gaosi oloa ona taulaʻi i le mamanu o meafaigaluega e aunoa ma le mafaufau i le faʻatinoina o ao. Ae ui i lea, o ia fofo (faʻataʻitaʻiga, masini firmware ma App) e masani lava e le o faʻamatalaga tatala, o lea o le a faʻatapulaʻaina galuega o oloa e le faʻapipiʻiina o le ao e le mafai ona faʻatulagaina. I le taimi nei, o le tagata faʻaoga ma faʻamatalaga masini e iai foi i luga o le ao.
Faʻavae i luga o oloa ao I lenei fofo, pe a maeʻa le mamanu o meafaigaluega, e le gata ina manaʻomia e le au gaosi oloa le faʻatinoina o galuega ao faʻaaogaina se tasi pe sili atu oloa ao saunia e le ao lautele, ae e manaʻomia foi ona faʻafesoʻotaʻi meafaigaluega ma le ao. Mo example, e faʻafesoʻotaʻi i le Amazon Web Au'aunaga (AWS), e mana'omia e le au gaosi oloa ona fa'aogaina oloa AWS e pei ole Amazon API Gateway, AWS IoT Core, ma le AWS Lambda e mafai ai ona maua le masini, fa'atonu mamao, teuina o fa'amaumauga, pulega fa'aoga, ma isi galuega fa'avae. E le gata ina fai atu i le au gaosi oloa ina ia fetuutuunai le faʻaogaina ma le faʻaogaina o oloa ao ma le loloto o le malamalama ma le poto masani, ae e manaʻomia foi latou e mafaufau i le fausiaina ma le tausiga o tau mo le amataga ma mulimuli ane.tagO lo'o tula'i mai ai ni lu'itau tetele i le malosi ma le tamaoaiga a le kamupani.
Pe a faʻatusatusa i ao lautele, o ao tumaoti e masani ona fausia mo galuega faʻapitoa ma oloa. O lo'o tu'uina atu i le au fa'atupuina o ao tuma'oti le tulaga maualuga o le sa'olotoga i fa'ata'ita'iga fa'akomepiuta ma fa'atinoga fa'atatau pisinisi. E mafai e le au gaosi oloa ona faia ni oloa ma mamanu mamanu i le loto, ma faigofie ona tuʻufaʻatasia ma faʻamalosia faʻamaumauga a tagata faʻaoga. Faʻatasia le maualuga o le saogalemu, faʻalauteleina ma le faʻatuatuaina o le ao lautele ma le advantages a private cloud, fa'alauiloa ESP
19
RainMaker, o se vaifofo ao tuʻufaʻatasia loloto faʻavae e faʻavae i luga o le ao Amazon. E mafai e tagata faʻaoga ona faʻapipiʻi le ESP RainMaker ma fausia le ao faʻapitoa i se faʻamatalaga AWS.
3.1 O le a le ESP RainMaker?
ESP RainMaker ose fa'avae AIoT atoatoa ua fausia i le tele o oloa AWS matutua. E tuʻuina atu auaunaga eseese e manaʻomia mo le tele o gaosiga e pei o le faʻaogaina o le ao, faʻaleleia o masini, pulega i tua, faʻaoga lona tolu, tuʻufaʻatasia leo, ma le pulega o tagata. I le fa'aogaina o le Serverless Application Repository (SAR) na saunia e le AWS, e mafai ona vave fa'aogaina e le au gaosi oloa le ESP RainMaker i a latou fa'amatalaga AWS, lea e fa'aogaina le taimi ma faigofie ona fa'agaoioia. Puleaina ma tausia e Espressif, o le SAR faʻaaogaina e le ESP RainMaker e fesoasoani i le au atinaʻe e faʻaitiitia le tau o le tausiga o ao ma faʻavaveina le atinaʻeina o oloa AIoT, faʻapea ona fausia ai le saogalemu, mautu, ma faʻapitoa AIoT fofo. Ata 3.1 o lo'o fa'aalia ai le fausaga o le ESP RainMaker.
Ata 3.1. Fausia o le ESP RainMaker
O le ESP RainMaker public server a Espressif e leai se totogi mo i latou uma e fiafia i ai le ESP, fai, ma faiaoga mo su'esu'ega fofo. E mafai e tagata atiaʻe ona faʻaoga faʻatasi ma Apple, Google, poʻo GitHub faʻamatalaga, ma vave fausia a latou lava faʻataʻitaʻiga talosaga IoT. O lo'o tu'ufa'atasia e le 'au'aunaga lautele le Alexa ma le Google Home, ma tu'uina atu auaunaga fa'atonutonu leo, lea e lagolagoina e Alexa Skill ma Google Actions. O lona fa'aogaina fa'asinomaga e fa'amalosia fo'i e isi vaega. RainMaker IoT masini na'o le tali atu i gaioiga fa'apitoa. Mo se lisi mae'ae'a o fa'atonuga leo lagolago, fa'amolemole siaki le fa'avae vaega lona tolu. E le gata i lea, e ofoina atu e Espressif se RainMaker App mo tagata faʻaoga e pulea oloa e ala i telefoni feaveaʻi. 20 ESP32-C3 Fefa'ataua'iga uaealesi: Ose Ta'iala Atoa ile IoT
3.2 Le Fa'atinoina o le ESP RainMaker
E pei ona fa'aalia i le Ata 3.2, ESP RainMaker o lo'o iai vaega e fa: · Talosaga Auaunaga, e mafai ai e masini RainMaker ona maua fa'amalosi tusi pasi. · RainMaker Cloud (faʻapitoa foʻi o le backend cloud), tuʻuina atu auaunaga e pei o le faʻamamaina o feʻau, pulega faʻaoga, teuina o faʻamaumauga, ma tuʻufaʻatasiga lona tolu. · RainMaker Agent, e mafai ai e masini RainMaker ona faʻafesoʻotaʻi i RainMaker Cloud. · RainMaker Client (RainMaker App poʻo CLI scripts), mo le tuʻuina atu, faʻaogaina o tagata, faʻafesoʻotaʻi masini ma le pulea, ma isi.
Ata 3.2. Fa'atulagaina o le ESP RainMaker
ESP RainMaker e tu'uina atu se seti atoa o meafaigaluega mo le atina'eina o oloa ma le tele o gaosiga, e aofia ai: RainMaker SDK
RainMaker SDK e fa'avae i luga ole ESP-IDF ma tu'uina atu le fa'ailoga fa'apogai ole sui o le itu-masini ma feso'ota'iga C APIs mo le atina'eina o firmware. E manaʻomia e le au atiaʻe le tusi o le faʻaogaina o le talosaga ma tuʻu le vaega o totoe i le RainMaker framework. Mo nisi fa'amatalaga e uiga i C API, fa'amolemole asiasi https://bookc3.espressif.com/rm/c-api-reference. RainMaker App O le fa'asalalauga lautele o le RainMaker App e mafai ai e tagata atia'e ona fa'atumu le tu'uina atu o masini, ma fa'atonutonu ma fesiligia le tulaga o masini (fa'ata'ita'iga, oloa moli atamai). O lo'o maua ile iOS ma le Android app stores. Mo nisi fa'amatalaga, fa'amolemole va'ai i le Mataupu 10. REST APIs REST API e fesoasoani i tagata fa'aoga e fausia a latou lava tusi talosaga e pei o le RainMaker App. Mo nisi faʻamatalaga, faʻamolemole asiasi https://swaggerapis.rainmaker.espressif.com/.
Mataupu 3. Folasaga ile ESP RainMaker 21
Python API O le Python-based CLI, lea e sau ma le RainMaker SDK, ua tuʻuina atu e faʻatino galuega uma e tutusa ma foliga telefoni. Mo nisi faʻamatalaga e uiga i Python API, faʻamolemole asiasi https://bookc3.espressif.com/rm/python-api-reference.
Admin CLI Admin CLI, faʻatasi ai ma le maualuga maualuga o avanoa, ua tuʻuina atu mo le ESP RainMaker faʻapipiʻi faʻapitoa e gaosia ai tusi faamaonia masini i le tele.
3.2.1 Talosaga Auaunaga
O feso'ota'iga uma i le va o masini RainMaker ma le ao i tua o lo'o fa'atinoina ile MQTT+TLS. I le tulaga o le ESP RainMaker, "Talosaga" o le faagasologa lea e maua ai e masini tusi faamaonia mai le Talosaga Auaunaga e faʻafesoʻotaʻi i tua o le ao. Manatua o le Talosaga Auaunaga e na'o le auaunaga a le RainMaker a le lautele, ae mo le fa'apipi'iina e le tagata lava ia, e mana'omia le fa'atupu tele o tusi pasi e ala i le Admin CLI. E lagolagoina e le ESP RainMaker ituaiga e tolu o Auaunaga Talosaga: Talosaga a le Tagata Lava Ia
O le masini lava ia e aumai tusi faamaonia e ala i se ki faalilolilo na muaʻi faʻapipiʻiina i le eFuse pe a uma ona fesoʻotaʻi i le Initaneti. Host Driven Claiming O tusi pasi e maua mai le atina'e talimalo ma le RainMaker account. Talosaga Fesoasoani O tusi pasi e maua mai i telefoni feavea'i a'o tu'uina atu.
3.2.2 Sui Su'esu'e RainMaker
Ata 3.3. Fa'atonuga o le RainMaker SDK O le galuega autu a le RainMaker Agent o le tu'uina atu lea o feso'ota'iga ma fesoasoani i le vaega o talosaga e fa'agasolo ai fa'amaumauga o le ao i luga/lalo. Ua fausia e ala i le RainMaker SDK 22 ESP32-C3 Wireless Adventure: O se Ta'iala Atoa ile IoT
ma atiae e faavae i luga o le ESP-IDF auivi faamaonia, e faaaoga ai vaega ESP-IDF e pei ole RTOS, NVS, ma le MQTT. Ata 3.3 o lo'o fa'aalia ai le fausaga o le RainMaker SDK.
O le RainMaker SDK e aofia ai vaega tetele e lua.
So'oga
i. Galulue faʻatasi ma le Talosaga Auaunaga e maua ai tusipasi masini.
ii. Faʻafesoʻotaʻi i tua o le ao e faʻaaoga ai le MQTT protocol saogalemu e tuʻuina atu ai fesoʻotaʻiga mamao ma faʻatino le mamao mamao, lipoti o feʻau, pulega faʻaoga, pulega masini, ma isi. fa'aputuga protocol.
iii. Tuuina atu o vaega ole WiFi mo feso'ota'iga Wi-Fi ma le tu'uina atu, esp https ota vaega mo fa'aleleia OTA, ma le vaega ctrl fa'apitonu'u mo su'esu'ega ma feso'ota'iga masini. O nei sini uma e mafai ona ausia e ala i le faʻatulagaina faigofie.
Fa'asologa o fa'amaumauga
i. Fa'asaoina o tusipasi masini na tu'uina atu e le Claiming Service ma fa'amaumauga e mana'omia pe a fa'agaoioia RainMaker, e ala i le fa'aogaina o le fa'aoga o lo'o tu'uina mai e le vaega o le nvs flash, ma tu'uina atu API mo tagata atia'e mo le fa'aoga sa'o.
ii. Fa'aaogāina o le telefoni e fa'agasolo ai fa'amaumauga o le uplink/downlink ma fa'a otometi le tatalaina o fa'amaumauga i le fa'asologa o talosaga mo le fa'agaoioiga faigofie e tagata atia'e. Mo example, o le RainMaker SDK e maua ai fesoʻotaʻiga tele mo le faʻavaeina o faʻamatalaga TSL (Thing Specification Language), lea e manaʻomia e faʻamalamalamaina ai faʻataʻitaʻiga TSL e faʻamatala ai masini IoT ma faʻatino galuega e pei o le taimi, countdown, ma le leo pulea. Mo vaega fa'avae feso'ota'iga e pei ole taimi, ua saunia e RainMaker SDK se fofo e leai se atina'e lea e mafai ona fa'agaoioia pe a mana'omia. Ona, o le RainMaker Agent o le a faʻagasolo saʻo ia faʻamaumauga, lafo i le ao e ala i le MQTT autu e fesoʻotaʻi, ma fafaga i tua suiga o faʻamatalaga i le ao i tua e ala i le telefoni.
3.2.3 Ao i tua
O le pito i tua o le ao o loʻo fausia i luga ole AWS Serverless Computing ma ausia e ala i le AWS Cognito (faiga faʻasinomaga), Amazon API Gateway, AWS Lambda (serverless computing service), Amazon DynamoDB (NoSQL database), AWS IoT Core (IoT access core e maua ai le MQTT avanoa. ma le faʻavasegaina o tulafono), Amazon Simple Email Service (SES faigofie meli auaunaga), Amazon CloudFront (vave faʻapipiʻi fesoʻotaʻiga), Amazon Simple Queue Service (SQS message queuing), ma le Amazon S3 (auaunaga teuina pakete). O lo'o fa'amoemoe e fa'asilisiliina le fa'alauteleina ma le saogalemu. Faatasi ai ma le ESP RainMaker, e mafai e tagata atiaʻe ona faʻatautaia masini e aunoa ma le tusia o code i le ao. O fe'au na lipotia mai e masini e fa'ailoa manino atu i
Mataupu 3. Folasaga ile ESP RainMaker 23
tagata talosaga po'o isi au'aunaga isi vaega. Laulau 3.1 o loʻo faʻaalia ai oloa AWS ao ma galuega o loʻo faʻaaogaina i tua o le ao, faʻatasi ai ma le tele o oloa ma foliga o loʻo i lalo o le atinaʻe.
Laulau 3.1. AWS cloud oloa ma galuega faʻaaogaina e le ao i tua
AWS Cloud Product Fa'aaogaina e RainMaker
Galuega
AWS Cognito
Puleaina o fa'amatalaga a tagata fa'aoga ma le lagolagoina o saini a isi vaega
AWS Lambda
Fa'atinoina o le fa'atonuga fa'atauva'a fa'apisinisi o le ao i tua
Amazon Timestream Teuina fa'amaumauga fa'asologa o taimi
Amazon DynamoDB Teuina faʻamatalaga patino a tagata faʻatau
AWS IoT Core
Lagolagoina MQTT fesootaiga
Amazon SES
Tuuina atu auaunaga imeli
Amazon CloudFront Faʻavaveina le puleaina o le pito i tua webavanoa nofoaga
Amazon SQS
Tu'u atu fe'au mai le AWS IoT Core
3.2.4 RainMaker Client
O tagata fa'atau a le RainMaker, pei o le App ma le CLI, e feso'ota'i ma le ao i tua e ala i REST API. O faʻamatalaga auiliili ma faʻatonuga e uiga i REST API e mafai ona maua i le Swagger faʻamaumauga na saunia e Espressif. O lo'o avanoa le tagata fa'aoga telefoni feavea'i a RainMaker mo iOS ma faiga Android. E fa'ataga ai le tu'uina atu o masini, fa'atonutonu, ma fefa'asoaa'i, fa'apea fo'i ma le fa'atupuina ma le fa'aagaaga o galuega o le faitau i lalo ma feso'ota'i atu i fa'avae isi vaega. E mafai ona otometi ona utaina le UI ma ata e tusa ai ma le faʻatulagaina na lipotia mai e masini ma faʻaalia atoatoa le masini TSL.
Mo example, pe afai e fausia se moli atamai i luga o le RainMaker SDK-ua saunia muamuaamples, o le aikona ma le UI o le matauila moli o le a otometi lava ona utaina pe a maeʻa le tuʻuina atu. E mafai e tagata fa'aoga ona suia le lanu ma le susulu o le malamalama e ala i le atina'e ma ausia le pulega lona tolu e ala i le feso'ota'iina o le Alexa Smart Home Skill po'o le Google Smart Home Actions ia latou tala ESP RainMaker. Ata 3.4 o lo'o fa'aalia ai le fa'ailoga ma le UI example'i o le matauila i luga ole Alexa, Google Home, ma le ESP RainMaker App.
24 ESP32-C3 Wireless Adventure: O se Ta'iala Atoa ile IoT
(a) Esoample – Alexa
(e) Esoample – Google Home
(i) Esoample – ESP RainMaker
Ata 3.4. Esample ata o le ata ma le UI ole moli moli ile Alexa, Google Home, ma le ESP RainMaker App
3.3 Faataitai: Manatu Autu mo le Atinae ma le ESP RainMaker
A mae'a loa le vaega aveta'avale masini, e mafai ona amata faia e le au atina'e ni fa'ata'ita'iga TSL ma fa'agasolo fa'amaumauga i lalo e fa'aaoga ai API na saunia e RainMaker SDK, ma mafai ai ona fa'aogaina auaunaga fa'avae a le ESP RainMaker e fa'atatau i fa'amatalaga o oloa ma mana'oga.
Mataupu 3. Folasaga ile ESP RainMaker 25
Vaega 9.4 o lenei tusi o le a faʻamatalaina le faʻatinoina o le moli malamalama LED i RainMaker. I le taimi o le debugging, e mafai e le au atinaʻe ona faʻaogaina meafaigaluega CLI i le RainMaker SDK e fesoʻotaʻi ma le malamalama atamai (pe valaʻau REST API mai Swagger).
O le Vaega 10 o le a fa'amatala auiliili ai le fa'aogaina o REST APIs i le atina'eina o talosaga telefoni. O le faʻaleleia o le OTA o moli atamai LED o le a aofia i le Mataupu 11. Afai na mafai e le au atinaʻe le mataʻituina mamao o le ESP Insights, o le ESP RainMaker pulega pito i tua o le a faʻaalia le ESP Insights data. O le a talanoaina auʻiliʻiliga i le Mataupu e 15.
E lagolagoina e le ESP RainMaker le fa'apipi'iina o tagata, e ese mai le server RainMaker lautele i auala nei:
Talosaga Auaunaga Ina ia fa'atupu tusi pasi i galuega tumaoti, e mana'omia le fa'aogaina o le RainMaker Admin CLI nai lo le Talosaga. Faatasi ai ma tagata lautele, e tatau ona tuʻuina atu i le au atinaʻe aia tatau e faʻatino ai le faʻaleleia o le firmware, ae e le manaʻomia i faʻasalalauga faʻapisinisi. O le mea lea, e le mafai ona tu'uina atu se 'au'aunaga fa'amaonia tu'ueseese mo le fa'atosina a le tagata lava ia, po'o le pule fa'atonu mo le fa'atonuina o le talimalo po'o le fesoasoani.
Fa'aoga telefoni I fa'atonuga fa'apitoa, e mana'omia ona fa'atulaga ma tu'ufa'atasia talosaga ina ia mautinoa e le felagolagoma'i faiga fa'amatalaga.
3rd party logins ma le leo tu'ufa'atasiga E tatau i tagata atia'e ona fa'apipi'i ese'ese e ala i Google ma Apple Developer accounts ina ia mafai ai ona saini fa'ailoga lona 3, fa'apea fo'i ma le Alexa Skill ma le Google Voice Assistant tu'ufa'atasia.
TIPS Mo fa'amatalaga e uiga i le fa'apipi'iina o ao, fa'amolemole asiasi https://customer.rainmaker.espressif. com. I tulaga o le firmware, o le femalagaiga mai le server a le malo i le server tumaoti e manaʻomia ai le suia o tusi faamaonia o masini, lea e faʻaleleia atili ai le lelei o femalagaiga ma faʻaitiitia ai le tau o le femalagaiga ma le faʻailoga lua.
3.4 Vaega o le ESP RainMaker
O foliga o le ESP RainMaker o loʻo faʻatatau i vaega e tolu - pulega faʻaoga, tagata faʻauʻu, ma pule. O vaega uma e lagolagoina i totonu o tagata lautele ma tagata tumaoti se'i vagana ua ta'ua.
3.4.1 Pulega o Tagata Fa'aoga
Ole fa'aogaina ole pulega fa'aoga e mafai ai e tagata fa'au'uga ona lesitala, saini i totonu, suia upu fa'aulu, toe aumai fa'aupuga, ma isi.
26 ESP32-C3 Wireless Adventure: O se Ta'iala Atoa ile IoT
Resitala ma saini i totonu O le resitalaina ma auala e saini e lagolagoina e RainMaker e aofia ai: · Email id + Password · Numera Telefoni + Password · Google account · Apple account · GitHub account (public server) · Amazon account (private server)
FAAMANATU Saini e fa'aaoga Google/Amazon fa'asoa le tuatusi imeli ole tagata fa'aoga ile RainMaker. Fa'ailoga e fa'aaoga e Apple e fa'asoa se tuatusi fa'ailoga e tu'u atu e Apple mo le tagata fa'aoga fa'apitoa mo le auaunaga RainMaker. O le RainMaker account o le a otometi lava ona fatuina mo tagata e saini i totonu ma Google, Apple, poʻo Amazon account mo le taimi muamua.
Suia le upu fa'ataga e aoga mo na'o imeli id/Numera Telefoni e fa'atatau i saini. O isi sauniga fa'agaoioi uma o le a logo i fafo pe a uma ona suia le fa'aupuga. E tusa ai ma le amio a le AWS Cognito, e mafai ona fa'agaoioia sauniga e o'o i le 1 itula.
Toe aumai upu faataga Fa'amaonia mo na'o Email ID/Numera Telefoni saini e fa'atatau.
3.4.2 Fa'ai'uga Fa'aaogā Fa'amatalaga
O vaega e tatala i tagata fa'au'uga e aofia ai le fa'alotoifale ma le mamao mamao ma le mata'ituina, fa'atulagaina, fa'avasegaina o masini, fefa'asoaa'i masini, fa'asalalauga tu'i, ma tu'ufa'atasiga isi vaega.
Fa'atonu mamao ma mata'itū · Fa'atonuga o fesili, fa'ailoga fa'atatau, ma tulaga feso'ota'iga mo se tasi po'o masini uma. · Seti ta'iala mo masini e tasi pe tele.
Pulea fa'apitonu'u ma mata'ituina Telefoni fe'avea'i ma le masini e mana'omia ona fa'afeso'ota'i i le feso'ota'iga tutusa mo le fa'atonuga i le lotoifale.
Fa'atulagaina · E fa'aogaina muamua e tagata fa'aoga ni gaioiga i se taimi patino. · Leai se feso'ota'iga Initaneti mana'omia mo le masini a'o fa'atinoina le fa'asologa. · Tasi le taimi pe toe fai (e ala i le faʻamaonia o aso) mo masini tasi pe tele.
Tu'ufa'atasiga o masini Lagolagoina le fa'avasegaina o fa'avasegaga fa'avasegaga e mafai ona fa'aogaina metadata a le vaega e fai ai se fausaga o le Potu Fale.
Mataupu 3. Folasaga ile ESP RainMaker 27
Fa'asoa masini E mafai ona fa'asoa se tasi pe sili atu masini i se tasi pe sili atu tagata fa'aoga.
Fa'amatalaga Push O le a maua e tagata fa'au'u fa'amatalaga fa'aoso mo mea e tutupu e pei o · Masini fou ua fa'aopoopo/ave'esea · Meafaigaluega e feso'ota'i i le ao · Motu le feso'ota'iga o masini mai le ao · Talosaga e fa'asoa ai masini na faia/talia/te'ena · Fa'ailoa savali na lipotia mai e masini.
Tolu vaega tu'ufa'atasiga Alexa ma Google Voice Fesoasoani e lagolagoina e pulea ai masini RainMaker, e aofia ai moli, ki, sockets, fan, ma masini vevela.
3.4.3 Vaega Pule
Fa'atonu vaega e mafai ai e pule ona fa'atino le resitalaina o masini, fa'avasegaina o masini, ma fa'aleleia OTA, ma le view fa'amaumauga ma fa'amaumauga a le ESP Insights.
Le resitalaina o masini Fa'atupu tusipasi masini ma resitala ile Admin CLI (na'o le server tumaoti).
Tu'ufa'atasiga o masini Fa'atupu kulupu fa'apitoa pe fa'atulagaina e fa'atatau i fa'amatalaga o masini (na'o le server tumaoti).
Fa'alelei i luga ole Ea (OTA) Auina atu le firmware e fa'atatau i le fa'ata'ita'iga ma le fa'ata'ita'iga, i se tasi pe sili atu masini po'o se vaega Mata'ituina, fa'alēaogāina, po'o le fa'amaumauga o galuega OTA.
View fuainumera Viewfa'amaumauga e mafai ona aofia ai: · Fa'amauina o masini (tusi fa'amaonia ua resitalaina e le pulega) · Fa'agaoioiga o masini (meafaigaluega e feso'ota'i mo le taimi muamua) · Fa'amatalaga a le tagata fa'aoga
View ESP Insights fa'amaumauga ViewESP Insights fa'amaumauga e aofia ai: · Fa'aletonu, lapata'iga, ma fa'amaumauga masani · Fa'alavelave fa'afuase'i ma au'ili'iliga · Toe fa'afouina mafua'aga · Fuafuaga e pei o le fa'aogaina o manatuaga, RSSI, ma isi.
28 ESP32-C3 Wireless Adventure: O se Ta'iala Atoa ile IoT
3.5 Aotelega
I lenei mataupu, na matou faʻaalia nisi o eseesega taua i le va o le faʻapipiʻiina o le RainMaker lautele ma le faʻapipiʻiina tumaoti. Ole fofo tumaoti ole ESP RainMaker na fa'alauiloaina e Espressif e matua fa'atuatuaina ma fa'alautele. O meataalo uma ESP32 faasologa ua fesoʻotaʻi ma faʻafetaui i le AWS, lea e faʻaitiitia ai le tau. E mafai e tagata atiaʻe ona taulaʻi i faʻamaoniga faʻataʻitaʻiga e aunoa ma le aʻoaʻoina e uiga i oloa AWS ao. Na matou faʻamatalaina foi le faʻatinoga ma foliga o le ESP RainMaker, ma nisi o mea taua mo le atinaʻe e faʻaaoga ai le faʻavae.
Va'aiga e la'u mai ai le ESP RainMaker mo le Android Siaki e la'u mai ai le ESP RainMaker mo iOS
Mataupu 3. Folasaga ile ESP RainMaker 29
30 ESP32-C3 Wireless Adventure: O se Ta'iala Atoa ile IoT
Mataupu Faavae 4 Atinae Siosiomaga
O lenei mataupu o loʻo taulaʻi i le ESP-IDF, le faʻavae faʻavae polokalame mo le ESP32-C3. O le a matou faʻamatalaina pe faʻapefea ona faʻatulagaina le siosiomaga i luga o faiga faʻaoga eseese, ma faʻalauiloa le fausaga o le poloketi ma fausia le faiga o le ESP-IDF, faʻapea foʻi ma le faʻaogaina o meafaigaluega tau atinaʻe. Ona matou tuʻuina atu lea o le tuʻufaʻatasia ma le faʻagasologa o le faʻagasologa o se example poloketi, a'o ofoina atu se fa'amatalaga auiliili o le ogalaau o galuega faatino i s taitasitage.
4.1 ESP-IDF Ovaview
ESP-IDF (Espressif IoT Development Framework) o se fa'avae fa'atupuina o le IoT e tasi e tu'uina mai e Espressif Technology. E fa'aogaina le C/C++ e fai ma gagana autu o le atina'e ma lagolagoina le tu'ufa'atasia i lalo ole faiga fa'aoga masani e pei ole Linux, Mac, ma le Windows. O le exampO polokalame o lo'o aofia i totonu o lenei tusi o lo'o fausia e fa'aaoga ai le ESP-IDF, lea e ofoina mai ai vaega nei: · SoC system-level drivers. ESP-IDF e aofia ai avetaavale mo ESP32, ESP32-S2, ESP32-C3,
ma isi tupe meataalo. O nei aveta'avale e aofia ai le potutusi pito i lalo (LL), faletusi fa'apipi'i masini (HAL), faletusi a le RTOS ma masini fa'apipi'i pito i luga, ma isi. · Vaega taua. ESP-IDF o lo'o tu'ufa'atasia vaega taua e mana'omia mo le atina'eina o IoT. E aofia ai le tele o upega fesoʻotaʻiga faʻapipiʻi e pei o le HTTP ma le MQTT, o se faʻatonuga o le pulega o le eletise ma le faʻaogaina o taimi masani, ma foliga e pei o le Flash Encryption ma Secure Boot, ma isi. ESP-IDF o lo'o tu'uina atu meafaigaluega e masani ona fa'aogaina mo le faufale, moli, ma le fa'apipi'iina i le taimi o le atina'e ma le tele o gaosiga (silasila i le Ata 4.1), e pei o le faiga faufale e fa'avae i luga o CMake, o le filifili mea faigaluega fa'asaga i le GCC, ma le J.TAG mea faigaluega fa'apipi'i e fa'avae i luga o OpenOCD, ma isi. E taua le matauina o le ESP-IDF code e fa'apipi'i muamua lava ile Apache 2.0 tatala-puna laisene. E mafai e tagata fa'aoga ona atia'e polokalama fa'apitoa po'o pisinisi fa'apisinisi e aunoa ma ni fa'atapula'aina a'o tausisia aiaiga o le laisene tatala puna'oa. E le gata i lea, e tu'uina atu i tagata fa'aoga laisene pateni tumau e aunoa ma se totogi, e aunoa ma se noataga e tatala-puna so'o se suiga ua faia i le source code.
31
Ata 4.1.
Fausiaina, moli, ma debug-
ging meafaigaluega mo le atinae ma le tele o gaosiga
4.1.1 ESP-IDF Versions
O le ESP-IDF code o loʻo faʻafeiloaʻi ile GitHub e avea o se poloketi tatala. I le taimi nei, e tolu lomiga tetele e maua: v3, v4, ma v5. O fa'aliliuga tetele ta'itasi e masani ona iai fa'aliliuga eseese, pei ole v4.2, v4.3, ma isi. E fa'amautinoaina e Espressif Systems se lagolago mo le 30-masina mo fa'amaufa'ailoga pusa ma fa'amaufa'ailoga saogalemu mo fa'asalalauga ta'itasi. O le mea lea, o le toe faʻaleleia o suiga o loʻo tuʻuina atu i taimi uma, e pei o le v4.3.1, v4.2.2, ma isi. O le Siata 4.1 o loʻo faʻaalia ai le tulaga lagolago o lomiga eseese ESP-IDF mo tupe meataalo Espressif, e faʻaalia pe o loʻo i totonuview stage (tuuina atu le lagolago mo preview fa'aliliuga, atonu e leai ni fa'amatalaga po'o ni fa'amaumauga) pe lagolagoina aloa'ia.
Laulau 4.1. Lagolago tulaga o ituaiga eseese ESP-IDF mo meataalo Espressif
Fa'asologa ESP32 ESP32-S2 ESP32-C3 ESP32-S3 ESP32-C2 ESP32-H2
v4.1 lagolagoina
v4.2 lagolago lagolago
v4.3 lagolago lagolago lagolago lagolago
v4.4 lagolago lagolago lagolago lagolago lagolago
muaiview
v5.0 lagolago lagolago lagolago lagolago lagolago muaiview
32 ESP32-C3 Wireless Adventure: O se Ta'iala Atoa ile IoT
O le su'esu'eina o fa'aliliuga tetele e masani ona aofia ai fetu'una'iga i le fausaga fa'avae ma fa'afouga i le faiga tu'ufa'atasi. Mo example, o le suiga tele mai le v3.* i le v4.* o le faasolosolo malie o le faiga o le fausiaina mai le Make i le CMake. I le isi itu, o le suʻesuʻeina o faʻamatalaga laiti e masani ona aofia ai le faʻaopoopoina o foliga fou poʻo le lagolago mo tupe meataalo fou.
E taua le iloa ma malamalama i le sootaga i le va o lomiga mautu ma lala GitHub. O fa'aliliuga ua fa'aigoaina o le v*.* po'o le v*.*.* o lo'o fa'atusalia ai fa'amaumauga mautu ua pasi uma su'ega fa'alotoifale a Espressif. O le taimi lava e faʻamautu ai, o le code, filifili meafaigaluega, ma faʻamaumauga tuʻuina atu mo le lomiga lava e tasi e tumau pea e le suia. Ae ui i lea, o lala GitHub (faʻataʻitaʻiga, le faʻamalolo / v4.3 lala) e masani ona faia tulafono faʻamaonia, masani i aso taʻitasi. O le mea lea, e lua snippet code i lalo o le lala e tasi e ono eseese, e manaʻomia ai le au atiaʻe e faʻafouina a latou code e tusa ai.
4.1.2 ESP-IDF Git Galue Galuega
O lo'o mulimulita'ia e Espressif se fa'asologa o galuega a Git mo le ESP-IDF, fa'amatala fa'apea:
· O suiga fou o loʻo faia i luga o le matai lala, lea e avea ma lala atinaʻe autu. O le ESP-IDF version i luga o le paranesi matai e masani ona tauaveina se -dev tag e faʻaalia ai o loʻo i lalo o le atinaʻe, pei o le v4.3-dev. Suiga i luga o le paranesi matai o le a muamua toeviewed ma faʻataʻitaʻiina i totonu o le fale teu oloa a Espressif, ona tuleia lea i GitHub pe a maeʻa suʻega faʻapitoa.
· O le taimi lava e maeʻa ai se faʻataʻitaʻiga fou i le atinaʻeina o ata i luga o le paranesi matai ma faʻamalieina taʻiala mo le ulufale atu i suʻega beta, ona suia loa lea i se lala fou, e pei o le tatalaina / v4.3. E le gata i lea, o lenei lala fou e tagged e avea o se fa'asalalauga muamua, pei o le v4.3-beta1. E mafai e le au atinaʻe ona faʻafesoʻotaʻi le GitHub platform e maua ai le lisi atoa o lala ma tags mo ESP-IDF. E taua le maitauina o le beta version (mua'i tu'uina atu) atonu o lo'o i ai pea se numera tele o fa'afitauli iloa. A'o fa'aauau su'ega fa'aauau le beta version, o lo'o fa'aopoopoina fo'i fa'atonuga i lenei fa'ata'ita'iga ma le lala matua i le taimi e tasi. I le taimi nei, atonu ua amata ona atiaʻe foliga fou mo le isi lomiga. Pe a toeitiiti atoa le suʻega, e faʻapipiʻi le igoa o le sui tauva (rc) i le lala, e faʻaalia ai o se sui tauva mo le tatalaina aloaia, e pei o le v4.3-rc1. I lenei stagu, o le lala o loʻo tumau pea le faʻasalalauga muamua.
· Afai e leai ni fa'aletonu tetele e maua pe lipotia, o le lomiga a'o le'i tu'uina atu e iu lava ina maua se fa'ailoga tele (fa'ata'ita'iga, v5.0) po'o se fa'ailoga laiti (fa'ata'ita'iga, v4.3) ma avea ma fa'amaumauga fa'asao aloaia, lea e fa'amaumauina i le itulau o fa'amatalaga fa'asalalau. Mulimuli ane, soʻo se faʻailoga e iloa i lenei faʻasologa o loʻo faʻapipiʻiina i luga o le lala faʻamalolo. A maeʻa suʻega tusi lesona, e tuʻuina atu i le paranesi se faʻailoga faʻapipiʻi faʻapipiʻi (faʻataʻitaʻiga, v4.3.2), lea o loʻo faʻaalia foi i luga o le itulau faʻamatalaga faʻasalalau.
Mataupu 4. Fa'atulagaina o Atina'e Si'osi'omaga 33
4.1.3 Filifilia o se Fa'aliliuga Talafeagai
Talu ai na amata aloaia e le ESP-IDF ona lagolagoina le ESP32-C3 mai le version v4.3, ma le v4.4 e leʻi tatalaina aloaia i le taimi na tusia ai lenei tusi, o le faʻaoga o loʻo faʻaaogaina i lenei tusi o le v4.3.2, o se lomiga toe faʻafouina. o le v4.3. Ae ui i lea, e taua le matauina o le taimi e te faitau ai i lenei tusi, v4.4 poʻo lomiga fou atonu ua uma ona maua. Pe a filifilia se lomiga, matou te fautuaina mea nei:
· Mo atina'e tulaga ulufale, e fautuaina e filifili le v4.3 fa'amautu version po'o lona toe fa'afouina, lea e fetaui ma le example lomiga o loʻo faʻaaogaina i lenei tusi.
· Mo le tele o fa'amoemoega o le gaosiga, e fautuaina e fa'aoga le lomiga fa'amaumau aupito lata mai ina ia manuia mai le lagolago fa'atekinisi sili ona lata mai.
· Afai e te manaʻo e faʻataʻitaʻi i tupe meataalo fou pe suʻesuʻe foliga fou o oloa, faʻamolemole faʻaaoga le lala matua. O le lomiga lata mai o lo'o i ai fa'amatalaga lata mai uma, ae ia manatua o lo'o i ai ni mea e iloa pe le iloa o lo'o iai.
· Afai o le faʻaoga mautu o loʻo faʻaaogaina e le o aofia ai foliga fou e manaʻomia ma e te manaʻo e faʻaititia le lamatiaga e fesoʻotaʻi ma le master branch, mafaufau e faʻaaoga le lala faʻamalolo talafeagai, e pei o le faʻamalolo / v4.4 lala. Espressif's GitHub repository o le a muamua fatuina le tatalaina / v4.4 lala ma mulimuli ane faʻasaʻo le faʻamautu v4.4 version e faʻavae i luga o se faʻamatalaga faʻasolopito patino o lenei lala, pe a uma ona faʻamaeʻaina uma atinaʻe ma suʻega.
4.1.4 Ovaview o le ESP-IDF SDK Directory
O le ESP-IDF SDK o lo'o aofia ai fa'atonuga autu se lua: esp-idf ma le .espressif. O le mea muamua o loʻo i ai le faʻailoga puna a le ESP-IDF files ma faʻamaumauga tuʻufaʻatasia, ae o le vaega mulimuli e tele lava ina teuina filifili meafaigaluega tuʻufaʻatasia ma isi polokalama. O le masani i nei lisi e lua o le a fesoasoani i le au atinaʻe e faʻaoga lelei punaoa avanoa ma faʻavaveina le faagasologa o le atinaʻe. O lo'o fa'amatalaina i lalo le fa'asologa o fa'amaumauga a le ESP-IDF:
(1) ESP-IDF fa'amaumauga fa'ailoga (/esp/esp-idf), e pei ona fa'aalia i le Ata 4.2.
a. Vaega fa'asinomaga vaega
O lenei lisi autu o lo'o tu'ufa'atasia ai le tele o vaega fa'akomepiuta taua ole ESP-IDF. E leai se fa'ailoga o poloketi e mafai ona tu'ufa'atasia e aunoa ma le fa'alagolago i vaega o lo'o i totonu o lenei lisi. E aofia ai le aveta'avale lagolago mo mea eseese Espressif. Mai le faletusi LL ma le faletusi HAL feso'ota'iga mo peripherals i le tulaga maualuga Aveta'avale ma Virtual File System (VFS) lagolago layer, e mafai e le au atinaʻe ona filifili vaega talafeagai i tulaga eseese mo latou manaʻoga atinaʻe. E fa'apea fo'i ona lagolagoina e le ESP-IDF le tele o fa'aputuga o feso'ota'iga masani e pei ole TCP/IP, HTTP, MQTT, WebSocket, ma isi. E mafai e tagata atiaʻe ona faʻaogaina fesoʻotaʻiga masani e pei o Socket e fausia ai fesoʻotaʻiga. O vaega e maua ai le malamalama-
34 ESP32-C3 Wireless Adventure: O se Ta'iala Atoa ile IoT
Ata 4.2. ESP-IDF fa'amaumauga fa'ailoga fa'amaumauga
galuega fa'atino ma e mafai ona faigofie ona tu'ufa'atasia i totonu o talosaga, fa'ataga ai le au atina'e e taula'i na'o le fa'atatau pisinisi. O nisi o vaega masani e aofia ai: · aveta'avale: O lenei vaega o lo'o iai polokalame fa'ata'ita'i fa'apitoa mo Espressif eseese
faasologa chip, e pei o le GPIO, I2C, SPI, UART, LEDC (PWM), ma isi. E tofu le peripheral ma le ulutala masani file (pei o le gpio.h), faʻaumatia le manaʻoga e faʻatautaia fesili lagolago faʻapitoa faʻapitoa. · esp_wifi: Wi-Fi, e pei o se peripheral faʻapitoa, e faʻaogaina o se vaega e ese mai. E aofia ai le tele o API e pei o le amataina o auala eseese avetaʻavale Wi-Fi, faʻasologa o faʻasologa, ma le gaioiga o mea na tupu. O nisi o galuega a lenei vaega o lo'o tu'uina atu i le tulaga o faletusi feso'ota'iga. ESP-IDF o lo'o tu'uina atu fo'i fa'amaumauga ta'avale uma mo le fa'afaigofieina o le fa'aoga.
Mataupu 4. Fa'atulagaina o Atina'e Si'osi'omaga 35
· freertos: O lenei vaega o loʻo i ai le faʻailoga atoa o le FreeRTOS. E ese mai i le tuʻuina atu o le lagolago atoatoa mo lenei faiga faʻaogaina, ua faʻalauteleina foi e Espressif lana lagolago i tupe meataalo lua. Mo tupe meataalo lua-autu e pei o le ESP32 ma le ESP32-S3, e mafai e tagata fa'aoga ona faia ni galuega i luga o 'au fa'apitoa.
e. Fa'ailoga tusi fa'amaumauga
O lenei lisi o loʻo i ai pepa faʻavae e fesoʻotaʻi ma le ESP-IDF, e aofia ai le Get Started Guide, API Reference Manual, Development Guide, etc.
FAAMANATU A maeʻa ona tuʻufaʻatasia e meafaigaluega faʻapitoa, o mea o loʻo i totonu o lenei lisi o loʻo faʻapipiʻiina i https://docs.espressif.com/projects/esp-idf. Fa'amolemole ia mautinoa e sui le fa'atatau o le pepa i le ESP32-C3 ma filifili le fa'ailoga ESP-IDF.
i. Meafaigaluega meafaigaluega tusitusiga
O lenei lisi o lo'o i ai mea faigaluega pito i luma e masani ona fa'aogaina e pei ole idf.py, ma le meafaigaluega mata'itu idf_monitor.py, ma isi. O le sub-directory cmake o lo'o iai fo'i tusitusiga autu. files o le faiga tu'ufa'atasiga, o lo'o avea ma fa'avae mo le fa'atinoina o tulafono fa'aopoopo ESP-IDF. Pe a faʻaopoopo le fesuiaiga o le siosiomaga, o mea o loʻo i totonu o le lisi o meafaigaluega e faʻaopoopoina i le fesuiaiga o le siosiomaga, faʻatagaina le idf.py e faʻatinoina saʻo i lalo o le ala o le poloketi.
o. Example polokalame directory examples
O lenei lisi e aofia ai se aofa'iga tele o le ESP-IDF examppolokalame e fa'aalia ai le fa'aogaina o vaega API. O le exampo lo'o fa'atulagaina i subdirectories eseese e fa'atatau i a latou vaega:
· Amata: O lenei sub-directory e aofia ai tulaga ulufale exampe pei o le "hello world" ma le "blink" e fesoasoani ai i tagata faaaoga ia malamalama i mea autu.
· Bluetooth: E mafai ona e mauaina Bluetooth feso'ota'i muamuaampo iinei, e aofia ai le Bluetooth LE Mesh, Bluetooth LE HID, BluFi, ma isi mea.
· wifi: O lenei sub-directory e taulaʻi i le Wi-Fi example, e aofia ai polokalame fa'avae e pei o le Wi-Fi SoftAP, Wi-Fi Station, espnow, fa'apea fo'i ma feso'ota'iga fa'apitoa fa'atasi.amples mai Espressif. O lo'o aofia ai fo'i le tele o fa'aoga fa'aogaampfa'avae i luga ole Wi-Fi, pei ole Iperf, Sniffer, ma Smart Config.
· peripherals: O le tele o sub-directory ua toe vaevaeina i le tele o subfolders e faavae i luga o igoa pito i luga. E tele lava ina iai aveta'avale peripheral examples mo tupe meataalo Espressif, faatasi ai ma example fa'aalia nisi o sub-examples. Mo se faʻataʻitaʻiga, o le gpio sub-directory e aofia ai le lua example: GPIO ma GPIO matrix keyboard. E taua le matauina e le o ex umaampO tusi i totonu o lenei lisi e fa'atatau ile ESP32-C3.
36 ESP32-C3 Wireless Adventure: O se Ta'iala Atoa ile IoT
Mo example, le examples i usb/host e na'o le fa'aoga i peripherals o lo'o i ai masini USB Host (e pei o le ESP32-S3), ma ESP32-C3 e le o iai lenei peripheral. O le faiga fa'aopoopo e masani lava ona tu'uina atu fa'ailo pe a fa'atulaga le sini. Le README file o ex taitasiample lisi o tupe meataalo lagolago. · protocols: O lenei sub-directory e aofia ai exampmo fesoʻotaʻiga fesoʻotaʻiga eseese, e aofia ai le MQTT, HTTP, HTTP Server, PPPoS, Modbus, mDNS, SNTP, e aofia ai le tele o fesoʻotaʻiga fesoʻotaʻiga ex.ampmea e manaʻomia mo le atinaʻeina o IoT. · saunia: O iinei, e te maua ai le tuʻuina atuamples mo auala eseese, e pei o le Wi-Fi provisioning ma le Bluetooth LE provisioning. · faiga: O lenei sub-directory e aofia ai le faʻaogaina o le faʻaogainaamples (fa'ata'ita'iga, su'ega fa'aputuga, su'esu'e taimi ta'avale, mata'ituina galuega), pulega fa'aletino fa'apeaamples (fa'ata'ita'iga, ituaiga moe eseese, co-processors), ma exampmea e feso'ota'i ma vaega masani o le faiga e pei o le fa'amafanafanaga, fa'alavelave fa'alavelave, ma le taimi fa'atulagaina. · teuina: I totonu o lenei sub-directory, e te mauaina exampitiiti o mea uma file faiga ma auala teu oloa e lagolagoina e le ESP-IDF (e pei o le faitau ma le tusitusi o le Flash, SD card ma isi mea e teu ai), faapea foiampo le teuina o mea e le faʻafefe (NVS), FatFS, SPIFFS ma isi file faiga faiga. · saogalemu: O lenei sub-directory e aofia ai exampmea e feso'ota'i ma fa'amalamalamaga flash. (2) ESP-IDF compilation tool chain directory (/.espressif), e pei ona faaalia i le Ata 4.3.
Ata 4.3. ESP-IDF tu'ufa'atasiga meafaigaluega filifili filifili
Mataupu 4. Fa'atulagaina o Atina'e Si'osi'omaga 37
a. Dist
O le filifili meafaigaluega ESP-IDF ma isi polokalama faʻapipiʻi e tufatufaina i foliga o pusa faʻapipiʻi. I le faagasologa o le faʻapipiʻiina, o le mea faigaluega faʻapipiʻi e muamua laʻuina le afifi faʻapipiʻi i le dist directory, ona aveese lea i le lisi faʻapitoa. A mae'a loa le fa'apipi'iina, e mafai ona aveese ma le saogalemu mea o lo'o i totonu o lenei lisi.
e. Python virtual environment directory python env
O fa'aliliuga 'ese'ese o le ESP-IDF fa'alagolago i fa'amatalaga patino o pusa Python. O le fa'apipi'i sa'o o nei afifi i luga o le 'au e tasi e mafai ona tula'i mai ai fete'ena'iga i le va o fa'asologa o afifi. Ina ia faʻatalanoaina lenei mea, e faʻaogaina e le ESP-IDF le Python virtual environments e faʻamavae ai faʻasalalauga eseese. Faatasi ai ma lenei masini, e mafai e le au atinaʻe ona faʻapipiʻi le tele o lomiga o le ESP-IDF i luga o le talimalo e tasi ma faigofie ona fesuiaʻi i le va oi latou e ala i le faʻaulufaleina mai o fesuiaiga o siosiomaga eseese.
i. ESP-IDF tu'ufa'atasiga meafaigaluega filifili filifili meafaigaluega
O lenei fa'atonuga e tele lava ina iai mea faigaluega fa'atutusa e mana'omia e tu'ufa'atasia ai poloketi ESP-IDF, e pei o meafaigaluega CMake, mea faigaluega fau Ninja, ma le filifili meafaigaluega gcc e fa'atupuina ai le polokalame fa'atino mulimuli. E le gata i lea, o lenei lisi o loʻo i ai le faletusi masani o le C/C++ gagana faʻatasi ai ma le ulutala fetaui files. Afai e fa'asino e se polokalame se ulutala faiga file pei o #include , o le filifili meafaigaluega tu'ufa'atasiga o le a maua ai le stdio.h file i totonu o lenei lisi.
4.2 Fa'atulagaina le Siosiomaga o Atina'e ESP-IDF
Ole siosiomaga ole atina'e ole ESP-IDF e lagolagoina faiga fa'aoga masani e pei ole Windows, Linux, ma macOS. O lenei vaega o le a faʻaalia ai le faʻatulagaina o le siosiomaga atinaʻe i faiga taʻitasi. E fautuaina e atiaʻe le ESP32-C3 i luga o le Linux system, lea o le a faʻaalia auiliili iinei. E tele fa'atonuga e fa'aoga i luga o fa'avae ona o le tutusa o meafaigaluega fa'atupuina. O le mea lea, e fautuaina e faitau ma le faaeteete le anotusi o lenei vaega.
FAAMANATU E mafai ona e vaʻai i pepa i luga ole laiga o loʻo maua ile https://bookc3.espressif.com/esp32c3, lea e tuʻuina atu ai poloaiga o loʻo taʻua i lenei vaega.
4.2.1 Fa'atulagaina le Siosiomaga o Atina'e ESP-IDF i Linux
O le atinaʻeina o le GNU ma meafaigaluega faʻapipiʻi e manaʻomia mo le siosiomaga o le atinaʻeina o le ESP-IDF e masani lava i le Linux system. E le gata i lea, o le laina laina laina i Linux e malosi ma faʻaoga-faʻaoga, ma avea ai ma filifiliga lelei mo le atinaʻeina o le ESP32-C3. E te mafaia
38 ESP32-C3 Wireless Adventure: O se Ta'iala Atoa ile IoT
filifili lau tufatufaina Linux e sili ona e fiafia i ai, ae matou te fautuaina le faʻaogaina o le Ubuntu poʻo isi faiga faʻavae Debian. O lenei vaega o loʻo tuʻuina atu ai le taʻiala i le faʻatulagaina o le siosiomaga atinaʻe ESP-IDF ile Ubuntu 20.04.
1. Fa'apipi'i afifi mana'omia
Tatala se laina fou ma faʻatino le poloaiga lenei e faʻapipiʻi uma afifi talafeagai. O le fa'atonuga o le a otometi lava ona fa'ase'e afifi ua uma ona fa'apipi'i.
$ sudo apt-get install git wget flex bison gperf python3 python3-pip python3setuptools cmake ninja-build ccache libffi-dev libssl-dev dfu-util libusb-1.0-0
TIPS E te mana'omia le fa'aogaina o le tala fa'atonu ma le fa'aupuga mo le fa'atonuga o lo'o i luga. E ala i le faaletonu, e leai se faʻamatalaga o le a faʻaalia pe a ulufale i le faʻaupuga. Na'o le oomiina o le ki "Enter" e fa'aauau ai le faiga.
Git o se meafaigaluega faʻatonutonu tulafono autu ile ESP-IDF. A maeʻa ona faʻatulagaina le siosiomaga atinaʻe, e mafai ona e faʻaogaina le git log command i view suiga code uma na faia talu mai le foafoaina o le ESP-IDF. E le gata i lea, o loʻo faʻaaogaina foi Git i le ESP-IDF e faʻamaonia ai faʻamatalaga faʻamatalaga, lea e manaʻomia mo le faʻapipiʻiina o le filifili meafaigaluega saʻo e fetaui ma faʻamatalaga patino. Faʻatasi ai ma Git, o isi meafaigaluega faʻaoga taua e aofia ai le Python. ESP-IDF o lo'o tu'ufa'atasia le tele o fa'amaumauga fa'aautomatika tusia i le Python. Meafaigaluega e pei o CMake, Ninja-build, ma Ccache o loʻo faʻaaogaina lautele i galuega C / C ++ ma avea ma faʻasologa o tulafono faʻapipiʻi ma meafaigaluega faufale i le ESP-IDF. libusb-1.0-0 ma le dfu-util o avetaʻavale autu ia e faʻaaogaina mo fesoʻotaʻiga faʻasalalau USB ma faʻamumuina firmware. O le taimi lava e faʻapipiʻi ai pusa polokalama, e mafai ona e faʻaogaina le apt show poloaiga e maua ai faʻamatalaga auiliili o afifi taʻitasi. Mo example, faʻaaoga apt show git e lolomi ai faʻamatalaga faʻamatalaga mo le meafaigaluega Git.
Q: O le a le mea e fai pe a le lagolagoina le Python version? A: ESP-IDF v4.3 mana'omia se Python version e le maualalo ifo nai lo v3.6. Mo lomiga tuai o le Ubuntu, fa'amolemole download ma fa'apipi'i ma fa'apipi'i se pito maualuga o le Python ma tu'u le Python3 e fai ma si'osi'omaga le Python. E mafai ona e mauaina faʻamatalaga auʻiliʻili e ala i le suʻeina o le upu faʻafouina-alternatives python.
2. La'i mai le ESP-IDF fa'ailoga fa'amaumauga
Tatala se laina ma fatuina se faila e igoa esp i lau lisi o fale e faʻaaoga ai le mkdir poloaiga. E mafai ona e filifilia se isi igoa mo le faila pe a e mana'o ai. Fa'aaoga le cd command e ulufale ai i le faila.
Mataupu 4. Fa'atulagaina o Atina'e Si'osi'omaga 39
$ mkdir -p /esp $ cd /esp
Faʻaaoga le git clone command e sii mai ai le ESP-IDF fale teu oloa, e pei ona faʻaalia i lalo:
$ git clone -b v4.3.2 –recursive https://github.com/espressif/esp-idf.git
I le poloaiga o loʻo i luga, o le parakalafa -b v4.3.2 o loʻo faʻamaonia ai le faʻasologa e sii mai (i lenei tulaga, version 4.3.2). O le parakalafa -recursive faʻamautinoaina o loʻo faʻapipiʻi faʻatasi uma fale teu oloa a le ESP-IDF. O fa'amatalaga e uiga i sub-repositories e mafai ona maua i le .gitmodules file.
3. Fa'apipi'i le filifili meafaigaluega tau atina'e ESP-IDF
Espressif o lo'o tu'uina atu se fa'amaumauga otometi install.sh e la'u mai ma fa'apipi'i le filifili meafaigaluega. O lenei tusitusiga e siaki ai le ESP-IDF o loʻo iai nei ma le faʻaogaina o le siosiomaga, ona sii mai lea ma faʻapipiʻi faʻaoga talafeagai o pusa meafaigaluega Python ma filifili meafaigaluega tuʻufaʻatasia. Ole ala fa'apipi'i fa'aletonu mo le filifili meafaigaluega ole /.espressif. Pau lava le mea e tatau ona e faia o le faʻafeiloaʻi i le esp-idf directory ma tamoʻe install.sh.
$ cd /esp/esp-idf $ ./install.sh
Afai e te faʻapipiʻiina le filifili meafaigaluega, o le a faʻaalia le laina:
Ua mae'a uma!
I le taimi lea, ua e fa'atulaga lelei le siosiomaga o le atina'eina o le ESP-IDF.
4.2.2 Fa'atulagaina le Siosiomaga o Atina'e ESP-IDF i luga ole Windows
1. Sii mai le ESP-IDF meafaigaluega fa'apipi'i
TIPS E fautuaina e fa'atūina le si'osi'omaga atina'e ESP-IDF Windows 10 po'o luga. E mafai ona e siiina mai le faʻapipiʻi mai https://dl.espressif.com/dl/esp-idf/. O le faʻapipiʻi o se polokalama faʻapipiʻi matala, ma o lona faʻailoga puna e mafai viewed ile https: //github.com/espressif/idf-installer.
· Faʻapipiʻi meafaigaluega ESP-IDF i luga ole laiga
O lenei mea faʻapipiʻi e laʻititi laʻititi, e tusa ma le 4 MB le lapopoa, ma isi afifi ma code o le a sii mai i le taimi o le faʻapipiʻiina. Le advantage o le faʻapipiʻiina i luga ole laiga e le gata e mafai ona sii mai pusa komepiuta ma code i luga ole manaʻoga i le taimi o le faʻapipiʻiina, ae faʻatagaina foi le faʻapipiʻiina o faʻasalalauga uma o loʻo avanoa o le ESP-IDF ma le lala lata mai o le GitHub code (e pei o le lala matua) . Le disadvantage e manaʻomia se fesoʻotaʻiga fesoʻotaʻiga i le taimi o le faʻapipiʻiina, lea e ono mafua ai le le faʻapipiʻiina ona o faʻafitauli o fesoʻotaiga.
40 ESP32-C3 Wireless Adventure: O se Ta'iala Atoa ile IoT
· Fa'apipi'i meafaigaluega a le ESP-IDF e leai se initaneti O lenei mea fa'apipi'i e lapo'a atu, e tusa ma le 1 GB le lapopoa, ma o lo'o i ai uma pusa polokalama ma fa'ailoga e mana'omia mo le fa'atulagaina o le si'osi'omaga. O le advan aututago le fa'apipi'i tuusa'o e mafai ona fa'aoga i komepiuta e aunoa ma se initaneti, ma e masani lava e maualuga atu lona fua fa'atatau. E tatau ona maitauina e na'o le fa'apipi'i tuusao e mafai ona fa'apipi'i fa'amaumauga mautu o le ESP-IDF fa'ailoa e v*.* po o v*.*.*.
2. Fa'agasolo le ESP-IDF meafaigaluega fa'apipi'i A uma ona la'uina mai se fa'aoga talafeagai o le fa'apipi'i (ave ESP-IDF Tools Offline 4.3.2 mo ex.ample iinei), kiliki faalua le exe file e fa'alauiloa le fa'apipi'iina o le ESP-IDF. O lo'o fa'aalia i lalo pe fa'apefea ona fa'apipi'i le ESP-IDF stable version v4.3.2 fa'aoga le fa'apipi'i offline.
(1) I le "Filifili gagana faʻapipiʻi" faʻaalia o loʻo faʻaalia i le Ata 4.4, filifili le gagana e faʻaaogaina mai le lisi pa'ū.
Ata 4.4. "Filifili gagana faʻapipiʻi" atinaʻe (2) A maeʻa ona filifilia le gagana, kiliki "OK" e faʻaalia ai le faʻaoga "License agreement"
(tagai i le Ata 4.5). A maeʻa ona faitau ma le totoa le maliega faʻapipiʻi laisene, filifili "Ou te talia le maliega" ma kiliki "Next".
Ata 4.5. “Feagaiga Laisene” fa'afeso'ota'i Mataupu 4. Fa'atulagaina o Atina'e Si'osi'omaga 41
(3) Review le faʻatulagaina o le faʻaogaina i le faʻaogaina o le "Pre-installation system check" (silasila i le Ata 4.6). Siaki le Windows version ma le faʻapipiʻiina o faʻamatalaga software antivirus. Kiliki "Next" pe a fai o mea uma faʻatulagaina e masani. A leai, e mafai ona e kiliki "Full log" mo fofo e faʻatatau i mea autu.
Ata 4.6. "System check before installation" fa'aoga TIPS
E mafai ona e tuʻuina atu ogalaau ile https://github.com/espressif/idf-installer/issues mo se fesoasoani. (4) Filifili le lisi faʻapipiʻi ESP-IDF. O iinei, filifili D:/.espressif, e pei ona faaalia i
Ata 4.7, ma kiliki le "Next". Faamolemole ia matau o le .espressif iinei o se lisi natia. A maeʻa le faʻapipiʻiina, e mafai view mea fa'apitoa o lenei lisi e ala i le tatalaina o le file pule ma fa'aali mea natia.
Ata 4.7. Filifili le ESP-IDF fa'apipi'i fa'atonuga 42 ESP32-C3 Wireless Adventure: O se Ta'iala Atoa ile IoT
(5) Siaki vaega e manaʻomia ona faʻapipiʻi, e pei ona faʻaalia i le Ata 4.8. E fautuaina e faʻaaoga le filifiliga le lelei, o lona uiga, faʻapipiʻi atoatoa, ona kiliki lea o le "Next".
Ata 4.8. Filifili vaega e faʻapipiʻi (6) Faʻamautu vaega e faʻapipiʻi ma kiliki "Install" e amata ai le faʻaogaina otometi-
faiga fa'aletonu, e pei ona fa'aalia i le Ata 4.9. O le faagasologa o le faʻapipiʻiina e mafai ona umi le sefulu minute ma o le alualu i luma o le faʻagasologa o le faʻapipiʻiina o loʻo faʻaalia i le Ata 4.10. Faamolemole faatali ma le onosai.
Ata 4.9. Saunia mo le faʻapipiʻiina (7) A maeʻa le faʻapipiʻiina, e fautuaina e siaki le "Resitala le ESP-IDF
Meafaigaluega e mafai ona faʻatinoina e pei o le Windows Defender tuusaunoaga…” e puipuia ai le polokalame antivirus mai le tapeina files. O le fa'aopoopoina o aitema e le aofia e mafai fo'i ona fa'ase'e su'esu'ega faifaipea e antivirus
Mataupu 4. Fa'atulagaina o Atina'e Si'osi'omaga 43
Ata 4.10. Fa'apipi'i polokalame pa'u alualu i luma, fa'aleleia atili le lelei o le tu'ufa'atasiga o tulafono a le polokalama Pupuni. Kiliki "Faauma" e faʻamaeʻa ai le faʻapipiʻiina o le siosiomaga atinaʻe, e pei ona faʻaalia i le Ata 4.11. E mafai ona e filifili e siaki le "Run ESP-IDF PowerShell environment" poʻo le "Run ESP-IDF command prompt". Fa'asolo sa'o le fa'amalama tu'ufa'atasi pe a mae'a fa'apipi'i ina ia mautinoa o lo'o fa'agaoioia le si'osi'omaga o le atina'e.
Ata 4.11. Ua mae'a le fa'apipi'iina (8) Tatala le si'osi'omaga o atina'e fa'apipi'i i le lisi o polokalame (po'o le ESP-IDF 4.3
CMD poʻo le ESP-IDF 4.3 PowerShell terminal, e pei ona faʻaalia i le Ata 4.12), ma o le ESP-IDF suiga o le siosiomaga o le a otometi lava ona faʻaopoopo pe a tamoʻe i le laina. A maeʻa lena, e mafai ona e faʻaogaina le idf.py poloaiga mo gaioiga. Ole ESP-IDF 4.3 CMD ua tatala o lo'o fa'aalia ile Ata 4.13. 44 ESP32-C3 Ta'amilosaga Uaealesi: Ose Ta'iala Atoa ile IoT
Ata 4.12. Atina'e siosiomaga fa'apipi'iina
Ata 4.13. ESP-IDF 4.3 CMD
4.2.3 Fa'atulagaina le Siosiomaga o Atina'e ESP-IDF i le Mac
O le faʻagasologa o le faʻapipiʻiina o le siosiomaga o le atinaʻeina o le ESP-IDF i luga o le Mac system e tutusa ma le faʻaogaina o le Linux system. O faʻatonuga mo le laʻuina o le faʻailoga faʻamaumauga ma faʻapipiʻi le filifili meafaigaluega e tutusa lelei. Na'o le fa'atonuga mo le fa'apipi'iina o afifi fa'alagolago e fai si ese'ese. 1. Fa'apipi'i afifi fa'alagolago Tatala se fa'amau, ma fa'apipi'i le pip, le meafaigaluega e fa'atonutonu ai pusa Python, e ala i le fa'atinoina o le fa'atonuga lea:
% sudo faigofie faʻapipiʻi pip
Faʻapipiʻi le Homebrew, o se meafaigaluega e pulea ai pusa mo macOS, e ala i le faʻatinoina o le poloaiga lenei:
% /bin/bash -c “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/ HEAD/install.sh)”
Faʻapipiʻi pusa faʻalagolago e manaʻomia e ala i le faʻatinoina o le poloaiga lenei:
% brew python3 fa'apipi'i cmake ninja ccache dfu-util
2. La'i mai le ESP-IDF fa'ailoga fa'aputuga Fa'asolo mulimuli i fa'atonuga o lo'o tu'uina atu i le vaega 4.2.1 e la'u mai ai le fa'ailoga ESP-IDF. O laasaga e tutusa ma le downloadina i luga o se Linux system.
Mataupu 4. Fa'atulagaina o Atina'e Si'osi'omaga 45
3. Fa'apipi'i le filifili meafaigaluega tau atina'e ESP-IDF
Mulimuli i faʻatonuga o loʻo tuʻuina atu i le vaega 4.2.1 e faʻapipiʻi ai le filifili meafaigaluega faʻaleleia ESP-IDF. O laasaga e tutusa ma le faʻapipiʻiina i luga o le Linux system.
4.2.4 Fa'apipi'i VS Code
Ona o le faaletonu, o le ESP-IDF SDK e le o aofia ai se meafaigaluega e teuteu ai tulafono (e ui o le ESP-IDF faʻapipiʻi fou mo Windows e ofoina atu le filifiliga e faʻapipiʻi ai le ESP-IDF Eclipse). E mafai ona e fa'aogaina so'o se meafaigāluega e fa'asa'o ai tusitusiga o lau filifiliga e fa'asa'o ai le fa'ailoga ona fa'apipi'i lea e fa'aaoga ai fa'atonuga fa'amau.
O se tasi o meafaigaluega fa'apipi'i fa'ailoga ta'uta'ua o le VS Code (Visual Studio Code), o se fa'atonu fa'ailoga e leai se totogi ma fa'apitoa fa'atasi ai ma se fa'aoga fa'aoga-tagata. E ofoina atu eseese plugins e maua ai galuega fa'atino e pei o le fa'asinomaga code, fa'ailoga fa'asologa, fa'atonuga o le Git, ma le tu'ufa'atasiga fa'amau. E le gata i lea, ua atiaʻe e Espressif se faʻapipiʻi tuʻufaʻatasia e taʻua o Espressif IDF mo le VS Code, lea e faʻafaigofie ai le faʻatulagaina o galuega ma le faʻapipiʻiina.
E mafai ona e faʻaogaina le tulafono code i le laina e vave tatala ai le faila i le VS Code. I le isi itu, e mafai ona e faʻaogaina le ala pupuu Ctrl + e tatala ai le faʻaogaina o le faʻaogaina o le faʻaogaina i totonu ole VS Code.
TIPS E fautuaina e fa'aoga le VS Code mo le atina'eina o code ESP32-C3. La'u mai ma fa'apipi'i le lomiga lata mai ole VS Code ile https://code.visualstudio.com/.
4.2.5 Folasaga i Siosiomaga Atina'e Vaega Tolu
E fa'aopoopo i le siosiomaga fa'atupuina o le ESP-IDF, lea e fa'aaoga muamua ai le gagana C, o lo'o lagolagoina fo'i e le ESP32-C3 isi gagana fa'apolokalame fa'apitoa ma le tele o si'osi'omaga atina'e lona tolu. O nisi o filifiliga iloga e aofia ai:
Arduino: o se faʻamatalaga tatala-puna mo meafaigaluega uma ma polokalama, lagolago microcontrollers eseese, e aofia ai le ESP32-C3.
E fa'aogaina le gagana C ++ ma ofoina atu se API fa'afaigofie ma fa'asalaina, e masani ona ta'ua o le gagana Arduino. Arduino e faʻaaogaina lautele i le atinaʻeina o faʻataʻitaʻiga ma tulaga faʻaleaʻoaʻoga. O lo'o tu'uina atu ai se fa'apipi'i fa'apipi'i fa'apipi'i ma se IDE e mafai ai ona fa'afaigofie ona tu'ufa'atasia ma emo.
MicroPython: o se fa'aliliuga gagana Python 3 ua fuafuaina e tamo'e i luga o fa'avae microcontroller fa'apipi'i.
Faatasi ai ma se gagana tusitusi faigofie, e mafai ona maua saʻo le ESP32-C3's peripheral resources (e pei o le UART, SPI, ma le I2C) ma fesoʻotaʻiga galuega (e pei o le Wi-Fi ma le Bluetooth LE).
46 ESP32-C3 Wireless Adventure: O se Ta'iala Atoa ile IoT
E fa'afaigofieina ai feso'ota'iga meafaigaluega. MicroPython, faʻatasi ma le Python's tele mathematical operation library, faʻatagaina le faʻatinoina o algorithms lavelave ile ESP32-C3, faʻafaigofieina le atinaʻeina o talosaga e fesoʻotaʻi ma AI. I le avea ai o se gagana tusitusi, e le manaʻomia le toe tuʻufaʻatasia; e mafai ona fai suiga ma e mafai ona fa'atino sa'o tusitusiga.
NodeMCU: ose fa'aliliu gagana LUA na atia'e mo chips fa'asologa o le ESP.
E lagolagoina toetoe lava o galuega lautele uma o tupe meataalo ESP ma e mama nai lo MicroPython. E tutusa ma MicroPython, e faʻaaogaina e NodeMCU se gagana tusitusi, faʻaumatia ai le manaʻoga mo le faʻaopoopoina faifaipea.
E le gata i lea, e lagolagoina foi e le ESP32-C3 le NuttX ma Zephyr operating system. O le NuttX o se faiga fa'aoga-taimi e tu'uina atu feso'ota'iga feso'ota'i POSIX, fa'aleleia atili le fa'aogaina o talosaga. O le Zephyr o se faiga faʻaoga faʻapitoa faʻapitoa mo le IoT. E aofia ai le tele o faletusi faakomepiuta e manaʻomia i le atinaʻeina o IoT, faʻasolosolo faʻasolosolo i se faʻalapotopotoga faʻanatura faakomepiuta.
O lenei tusi e le o maua mai ai fa'atonuga fa'apipi'i mo si'osi'omaga tau atina'e ua ta'ua muamua. E mafai ona e fa'apipi'i se si'osi'omaga atina'e e fa'atatau i ou mana'oga e ala i le mulimuli i fa'amaumauga ma fa'atonuga.
4.3 ESP-IDF Compilation System
4.3.1 Manatu Autu o Faiga Fa'aopoopo
O se poloketi ESP-IDF o se fa'aputuga o se polokalame 'autu fa'atasi ma se galuega fa'aofi ma le tele o vaega fa'atino tuto'atasi. Mo example, o se poloketi e pulea ai sui o le LED e masani lava ona aofia ai se polokalama autu ma se vaega avetaavale e pulea le GPIO. Afai e te manaʻo e iloa le faʻaogaina mamao ole LED, e te manaʻomia foʻi le faʻaopoopoina o le Wi-Fi, TCP / IP protocol stack, ma isi.
E mafai e le faiga tu'ufa'atasiga ona fa'apipi'i, feso'ota'i, ma fa'atupuina le fa'atinoina files (.bin) mo le code e ala i se seti o tulafono faufale. O le faiga tu'ufa'atasiga o le ESP-IDF v4.0 ma fa'asologa i luga e fa'avae i luga o le CMake e le mafai, ma o le fa'asologa o le CMakeLists.txt e mafai ona fa'aoga e pulea ai le tu'ufa'atasiga o amioga o le code. I le faaopoopo atu i le lagolagoina o le syntax faavae o CMake, o le ESP-IDF compilation system o loʻo faʻamalamalamaina ai foi se seti o tulafono faʻapipiʻi faʻaletonu ma galuega CMake, ma e mafai ona e tusia le faʻasologa o tusitusiga ma faʻamatalaga faigofie.
4.3.2 Poloketi File Fauga
O se poloketi o se faila o loʻo i ai se polokalame faʻapipiʻi autu, vaega e faʻamalamalamaina e tagata faʻaoga, ma files mana'omia e fausia ai talosaga fa'atino, e pei o fa'amaumauga tu'ufa'atasia, fa'atulagaina
Mataupu 4. Fa'atulagaina o Atina'e Si'osi'omaga 47
files, laulau vaeluaga, ma isi. Poloketi e mafai ona kopiina ma pasi atu, ma tutusa le faatinoga file e mafai ona tu'ufa'atasia ma fa'atupuina i masini fa'atasi ma le fa'ata'ita'iga o le si'osi'omaga atina'e ESP-IDF. Ose poloketi masani ESP-IDF file fausaga o lo'o fa'aalia ile Ata 4.14.
Ata 4.14. Poloketi masani ESP-IDF file fausaga Talu ai e lagolagoina e le ESP-IDF le tele o meataalo IoT mai Espressif, e aofia ai le ESP32, ESP32-S series, ESP32-C series, ESP32-H series, ma isi mea, e manaʻomia ona fuafua se sini aʻo leʻi tuufaatasia le code. O le faʻamoemoe o le masini masini e faʻatautaia le polokalama faʻaoga ma le faʻatulagaina o le faʻaogaina o le faiga. Fa'alagolago i ou mana'oga, e mafai ona e fa'ama'oti se tasi pe sili atu fa'amoemoe mo lau poloketi. Mo example, e ala i le poloaiga idf.py seti-taulai esp32c3, e mafai ona e setiina le taulaiga tuufaatasia i le ESP32-C3, i le taimi o le a utaina le tapulaa faaletonu ma le tuufaatasia meafaigaluega filifili ala mo ESP32C3. A maeʻa le tuʻufaʻatasia, e mafai ona faia se polokalame faʻatinoina mo le ESP32C3. E mafai fo'i ona e toe fa'ata'ita'iina le fa'atonuga fa'atonu e fa'atulaga se isi fa'amoemoega, ma o le a otometi lava ona fa'amama ma toe fa'aopoopo le faiga fa'aopoopo. Vaega
O vaega i totonu ole ESP-IDF o iunite fa'apitoa ma tuto'atasi e pulea i totonu ole faiga fa'aopoopo. O lo'o fa'atulagaina e pei o faila, fa'atasi ai ma le igoa o le faila e fai ma sui o le igoa vaega e ala i le faaletonu. O vaega taʻitasi e iai a latou lava faʻamaumauga tuʻufaʻatasia e 48 ESP32-C3 Wireless Adventure: O se Taʻiala Malamalama i IoT
o lo'o fa'ama'oti ai ona tu'ufa'atasiga ma fa'alagolago. I le faagasologa o le tuufaatasia, o vaega e tuufaatasia i faletusi tulaga eseese (.a files) ma mulimuli ane tu'ufa'atasia ma isi vaega e fausia ai le polokalame talosaga.
ESP-IDF o lo'o tu'uina atu galuega taua, e pei o le faiga fa'aoga, ta'avale lautele, ma le fa'aputuga o feso'ota'iga, i le tulaga o vaega. O vaega nei o lo'o teuina i totonu o le lisi o vaega o lo'o i totonu o le ESP-IDF root directory. E le manaʻomia e le au atiaʻe ona kopi nei vaega i le lisi o vaega o myProject. Nai lo lena, latou te manaʻomia le faʻamaonia o sootaga faʻalagolago o nei vaega i le CMakeLists.txt o le poloketi file fa'aaogā fa'atonuga REQUIRES po'o PRIV_REQUIRES. O le a otometi lava ona su'e ma tu'ufa'atasia vaega e mana'omia.
O le mea lea, o le lisi o vaega i lalo o myProject e le manaʻomia. E na'o le fa'aaogaina e aofia ai nisi o vaega fa'ale-aganu'u o le poloketi, lea e mafai ona avea ma faletusi lona tolu po'o fa'ailoga fa'aoga-tagata. E le gata i lea, o vaega e mafai ona maua mai so'o se lisi e ese mai i le ESP-IDF po'o le poloketi o lo'o i ai nei, e pei o se galuega tatala-puna fa'asaoina i se isi tusi. I lenei tulaga, e tatau ona e faʻaopoopoina le ala o le vaega e ala i le setiina o le EXTRA_COMPONENT_DIRS fesuiaiga i le CMakeLists.txt i lalo o le root directory. Ole lisi lea ole a fa'amalo so'o se vaega ole ESP-IDF ile igoa tutusa, fa'amautinoa ole fa'aoga sa'o le vaega.
Polokalama ulufale autu O le tusi autu i totonu o le poloketi e mulimulita'i tutusa file fausaga e pei o isi vaega (faataitaiga, vaega1). Ae ui i lea, o loʻo i ai se taua faʻapitoa ona o se vaega faʻamalosia e tatau ona iai i galuega uma. O le lisi autu o loʻo i ai le faʻailoga autu o le poloketi ma le mea e ulufale ai le tagata faʻaoga, e masani ona taʻua app_main. O le fa'aletonu, o le fa'atinoina o le polokalame a le tagata fa'aoga e amata mai i lenei mea e ulufale ai. O le vaega autu e ese foi i le otometi lava ona faalagolago i vaega uma i totonu o le auala suʻesuʻe. O le mea lea, e leai se mana'oga e fa'ailoa manino atu fa'alagolago ile fa'aogaina ole REQUIRES po'o PRIV_REQUIRES fa'atonuga ile CMakeLists.txt file.
Fa'atonuga file O le lisi autu o le poloketi o loʻo i ai se faʻatulagaga file ua taʻua o le sdkconfig, lea o loʻo i ai faʻamaufaʻailoga faʻatulagaina mo vaega uma i totonu o le poloketi. O le sdkconfig file e otometi lava ona fa'atupuina e le faiga tu'ufa'atasiga ma e mafai ona fa'aleleia ma toe fa'afouina e le fa'atonuga idf.py menuconfig. O filifiliga menuconfig e masani lava ona afua mai i le Kconfig.projbuild o le poloketi ma le Kconfig o vaega. E masani ona fa'aopoopo e le au atina'e mea fa'apipi'i mea fa'aopoopo i Kconfig e fa'afaigofie ai le vaega ma fa'atulaga.
Fausia le fa'atonuga I le fa'aletonu, o le fa'atonuga faufale i totonu o le poloketi e teu i totonu o le fale files ma le fi-
Mataupu 4. Fa'atulagaina o Atina'e Si'osi'omaga 49
nal polokalame fa'atinoina na faia e le idf.py build command. I se tulaga lautele, e le manaʻomia le faʻaogaina saʻo o mea o loʻo i totonu o le lisi o le fausiaina. ESP-IDF o lo'o tu'uina atu ni fa'atonuga fa'atonu e fegalegaleai ma le lisi, e pei o le fa'aogaina o le idf.py flash command e otometi ona su'e le binary tu'ufa'atasi. file ma faʻamalama i le tuatusi flash faʻamaonia, poʻo le faʻaaogaina o le idf.py fullclean poloaiga e faʻamama ai le lisi atoa o le fausiaina.
Vaevae laulau (partitions.csv) E manaʻomia e poloketi taʻitasi se laulau vaeluaga e vaelua ai le avanoa o le moli ma faʻamaonia le tele ma le tuatusi amata o le polokalame faʻatinoina ma le avanoa o faʻamatalaga tagata. Poloaiga idf.py flash poʻo le OTA faʻaleleia polokalame o le a moli le firmware i le tuatusi fetaui e tusa ai ma lenei laulau. ESP-IDF e maua ai le tele o laulau vaeluaga e le mafai ona fa'aogaina i vaega/ partition_table, e pei o partitions_singleapp.csv ma partitions_two_ ota.csv, lea e mafai ona filifilia i le menuconfig.
Afai e le mafai e le laulau vaeluaga o le faiga e le mafai ona ausia manaʻoga o le poloketi, e mafai ona faʻaopoopo se partitions.csv masani i le lisi o galuega ma filifilia i le menuconfig.
4.3.3 Tulafono Faufale Fa'aletonu ole Faiga Fa'aopoopo
Tulafono mo le fa'asili o vaega i le igoa tutusa I le faagasologa o le sailiga o vaega, o le faiga fa'aopoopo e mulimulita'i i se fa'atonuga fa'apitoa. E su'e muamua vaega i totonu ole ESP-IDF, ona su'e lea mo vaega ole galuega fa'aoga, ma mulimuli ane su'e vaega ile EXTRA_COMPONENT_DIRS. I mataupu e tele tusitaiala o lo'o i ai vaega e tutusa le igoa, o le vaega o lo'o maua i le lisi mulimuli o le a fa'amalo so'o se vaega muamua ma le igoa tutusa. O lenei tulafono e fa'atagaina ai le fa'avasegaina o vaega o le ESP-IDF i totonu o le poloketi a le tagata fa'aoga, a'o fa'atumauina pea le ulua'i fa'ailoga ESP-IDF.
Tulafono mo le aofia ai o vaega masani e ala i le faaletonu E pei ona taʻua i le vaega 4.3.2, vaega e manaʻomia ona faʻamaonia manino lo latou faʻalagolago i isi vaega i le CMakeLists.txt. Ae ui i lea, o vaega masani e pei o freertos e otometi lava ona aofia i totonu o le faiga faufale e ala i le faaletonu, e tusa lava pe le o faʻamalamalamaina manino a latou sootaga faʻalagolago i le faʻasologa o tusitusiga. O vaega masani ole ESP-IDF e aofia ai freertos, Newlib, heap, log, soc, esp_rom, esp_common, xtensa/riscv, ma cxx. O le fa'aogaina o nei vaega masani e 'alofia ai galuega fai fai pe a tusia le CMakeLists.txt ma fa'apuupuu atili.
Tulafono mo le fa'asili o mea fa'atulagaina E mafai e le au atia'e ona fa'aopoopo fa'amaufa'ailoga fa'aletonu e ala i le fa'aopoopoina o se fa'atonuga fa'aletonu file igoa sdkconfig.defaults i le poloketi. Mo example, fa'aopoopo CONFIG_LOG_
50 ESP32-C3 Wireless Adventure: O se Ta'iala Atoa ile IoT
DEFAULT_LEVEL_NONE = y e mafai ona fetuutuunai le UART interface e le lolomi faamaumauga ogalaau e ala i le faaletonu. E le gata i lea, afai e manaʻomia ona faʻatulagaina ni faʻamaufaʻailoga faapitoa mo se faʻamoemoega faapitoa, o se faʻatulagaga file igoa sdkconfig.defaults.TARGET_NAME e mafai ona faaopoopo, lea TARGET_NAME e mafai ona esp32s2, esp32c3, ma isi. O nei faatulagaga files ua faaulufale mai i totonu o le sdkconfig i le taimi o le tuufaatasia, faatasi ai ma le faatulagaga masani masani file sdkconfig.defaults o lo'o fa'aulufale muamua mai, soso'o ai ma le fa'atonuga fa'apitoa file, pei o le sdkconfig.defaults.esp32c3. I tulaga o loʻo i ai mea faʻatulagaina ma le igoa tutusa, o le faʻasologa mulimuli file o le a sili atu le muamua.
4.3.4 Fa'atomuaga i le Tusi Fa'atasi
Pe a atiaʻe se poloketi e faʻaaoga ai le ESP-IDF, e le gata ina manaʻomia e le au atinaʻe le tusia o faʻamatalaga puna ae e manaʻomia foi ona tusi CMakeLists.txt mo le poloketi ma vaega. CMakeLists.txt ose tusitusiga file, e taʻua foi o se tusitusiga tuʻufaʻatasia, lea e faʻamatalaina ai se faasologa o mea faʻapipiʻi, mea faʻapipiʻi faʻapipiʻi, ma faʻatonuga e taʻitaʻia ai le faʻagasologa o le faʻaogaina o le code source. O le faʻapipiʻiina o le ESP-IDF v4.3.2 e faʻavae ile CMake. I le faaopoopo atu i le lagolagoina o galuega ma poloaiga a le CMake, o loʻo faʻamatalaina ai foi se faasologa o galuega faʻapitoa, faʻafaigofie atili le tusia o tusitusiga faʻapipiʻi.
O fa'amaumauga tu'ufa'atasi i le ESP-IDF e tele lava ina aofia ai fa'amaumauga tu'ufa'atasiga o poloketi ma fa'amaumauga tu'ufa'atasiga vaega. O le CMakeLists.txt i le root directory o le poloketi e taʻua o le faʻasologa o le faʻatulagaina o galuega, lea e taʻitaʻia ai le faʻagasologa o le faʻatulagaina o le galuega atoa. O se fa'asologa fa'asologa o galuega faatino e masani ona aofia ai laina nei e tolu:
1. cmake_minimum_required(VERSION 3.5) 2. aofia($ENV{IDF_PATH}/tools/cmake/project.cmake) 3. project(myProject)
Faatasi ai ma i latou, o le cmake_minimum_required (VERSION 3.5) e tatau ona tuʻu i luga o le laina muamua, lea e faʻaaogaina e faʻaalia ai le numera laʻititi o le CMake e manaʻomia e le poloketi. O lomiga fou o le CMake e masani lava ona fetaui i tua ma lomiga tuai, o lea ia fetuutuunai le numera numera e tusa ai pe a faʻaaoga tulafono CMake fou e faʻamautinoa le fetaui.
aofia($ENV {IDF_PATH}/tools/cmake/project.cmake) fa'aulufale mai mea fa'atulagaina muamua ma fa'atonuga a le ESP-IDF faiga tu'ufa'atasiga, e aofia ai tulafono faufau fa'aletonu o le faiga tu'ufa'atasi o lo'o fa'amatalaina i le Vaega 4.3.3. project(myProject) fatuina le poloketi lava ia ma faʻamaonia lona igoa. O lenei igoa ole a fa'aogaina e fai ma fa'auiga fa'ai'u fa'alua file igoa, o lona uiga, myProject.elf ma myProject.bin.
O se poloketi e mafai ona tele vaega, e aofia ai le vaega autu. O le lisi pito i luga o vaega ta'itasi o lo'o iai le CMakeLists.txt file, lea e ta'ua o le vaega fa'aopoopo tusitusiga. O fa'amaumauga tu'ufa'atasiga e fa'aaogaina e fa'amaoti ai fa'alagolago i vaega, fa'asologa o fa'asologa, fa'ailoga puna files, ma aofia ai ulutala filemo
Mataupu 4. Fa'atulagaina o Atina'e Si'osi'omaga 51
fa'atasiga. Faatasi ai ma le galuega masani a le ESP-IDF idf_component_register, o le numera aupito maualalo e manaʻomia mo se vaega faʻapipiʻi tusitusiga e faʻapea:
1. idf_component_register(SRCS “src1.c”
2.
INCLUDE_DIRS “aofia ai”
3.
Manaomia vaega1)
O le SRCS parameter e maua ai se lisi o puna'oa files i le vaega, tuueseese e avanoa pe a tele files. Ole fa'ailoga INCLUDE_DIRS e maua ai se lisi o fa'aulutala lautele file directories mo le vaega, lea o le a faaopoopo i le auala e aofia ai suʻesuʻega mo isi vaega e faʻalagolago i le vaega o loʻo iai nei. O le fa'ailoga REQUIRES e fa'ailoa ai fa'alagolago vaega lautele mo le vaega o iai nei. E mana'omia mo vaega e fa'ailoa manino mai po'o fea vaega latou te fa'alagolago i ai, pei o le vaega2 fa'alagolago ile vaega1. Ae ui i lea, mo le vaega autu, lea e faʻalagolago i vaega uma e ala i le faaletonu, o le REQUIRES parameter e mafai ona faʻaumatia.
E le gata i lea, e mafai foi ona faʻaaogaina tulafono CMake i le faʻasologa o tusitusiga. Mo example, faʻaaoga le faʻatonuga seti e seti ai fesuiaiga, e pei o le seti (VARIABLE "VALUE").
4.3.5 Folasaga i Poloaiga masani
ESP-IDF fa'aoga CMake (mea faigaluega fa'atulagaina o galuega), Ninja (mea faigaluega fau fale) ma le esptool (meafaigaluega moli) i le fa'agasologa o le tu'ufa'atasiga o tulafono. O meafaigaluega taʻitasi e faia se sao eseese i le tuʻufaʻatasia, fausiaina, ma le faʻagasologa o le moli, ma e lagolagoina foi tulafono faʻaogaina eseese. Ina ia faʻafaigofie le faʻaogaina o tagata, ESP-IDF faʻaopoopo se idf.py faʻatasi i luma e faʻatagaina ai poloaiga o loʻo i luga e valaau vave.
Aʻo leʻi faʻaaogaina idf.py, ia mautinoa e:
· O le suiga o le siosiomaga IDF_PATH o le ESP-IDF ua faʻaopoopoina i le laina o loʻo iai nei. · O le fa'atonuga o fa'atonuga o le fa'atonuga a'a o le poloketi, lea e aofia ai le
fa'asologa o galuega faatino CMakeLists.txt.
O tulafono masani a idf.py e faʻapea:
· idf.py –fesoasoani: fa'aali se lisi o fa'atonuga ma latou fa'atonuga fa'aoga. · idf.py set-target : fa'atulaga le tu'ufa'atasiga taidf.py fullcleanrget, fa'apea
e pei o le suia i le esp32c3. · idf.py menuconfig: fa'alauiloa le menuconfig, se fa'asologa fa'asologa o ata
meafaigaluega, lea e mafai ona filifili pe fesuiai filifiliga faatulagaga, ma o taunuuga faatulagaina e faasaoina i le sdkconfig file. · idf.py fausia: amataina le tuufaatasia o code. Le vaeluagalemu files ma le polokalama faʻataunuʻu mulimuli na fatuina e le tuʻufaʻatasiga o le a faʻasaoina i totonu o le lisi o le fausiaina o le poloketi e le mafai. O le fa'agasologa fa'aopoopo e fa'aopoopo, o lona uiga pe a na'o le tasi le puna file ua suia, na o le suia file o le a tuufaatasia i le isi taimi.
52 ESP32-C3 Wireless Adventure: O se Ta'iala Atoa ile IoT
· idf.py mama: faʻamamāina le vaeluagalemu files fa'atupuina e le tu'ufa'atasiga o poloketi. O le galuega atoa o le a faamalosia e tuufaatasia i le isi tuufaatasiga. Manatua o le CMake faʻatulagaina ma suiga faʻatulagaina e faia e le menuconfig o le a le tapeina i le taimi o le faʻamamaina.
· idf.py fullclean: tape le lisi atoa o le fausiaina, e aofia uma ai le faʻatulagaina o le CMake files. A toe fausia le poloketi, CMake o le a faʻapipiʻi le poloketi mai le sasa. Faamolemole ia matau o lenei poloaiga o le a toe tape uma files i totonu o le lisi o le fausiaina, o lea ia faʻaaoga ma le faʻaeteete, ma le faʻatulagaina o galuega file o le a le tapeina.
· idf.py flash: emo le binary polokalame faatino file fa'atupuina e ala ile fausiaina ile sini ole ESP32-C3. O filifiliga -p ma le -b e fa'aogaina e seti ai le igoa masini o le telefoni fa'asologa ma le fua fa'atatau mo le emo. Afai o nei filifiliga e lua e le o faʻamaonia, o le a otometi lava ona iloa le laina telefoni ma o le a faʻaaogaina le faʻaogaina o le paʻu fua.
· idf.py mataʻituina: faʻaalia le faʻasologa o le taulaga o le ESP32-C3. O le filifiliga -p e mafai ona faʻaaoga e faʻamaonia ai le igoa o le masini o le fale talimalo itu tau telefoni. I le taimi o le lolomiga o le port serial, oomi le ki Ctrl+] e alu ese ai mai le mata'itu.
E mafai fo'i ona tu'ufa'atasia fa'atonuga i luga pe a mana'omia. Mo example, o le poloaiga idf.py fausia flash mataʻituina o le a faia code compilation, moli, ma tatala le mataʻituina uafu serial i le faasologa.
E mafai ona e asiasi https://bookc3.espressif.com/build-system e iloa atili ai le ESP-IDF compilation system.
4.4 Faataitai: Tuufaatasia Example Polokalame "Emo"
4.4.1 Esoample Iloiloga
O lenei vaega o le a avea le polokalame Blink e pei o se example e iloilo le file faʻatulagaina ma tulafono faʻatulagaina o se galuega moni i auiliiliga. O le polokalame Blink o lo'o fa'atinoina le fa'aaliga emo o le LED, ma o lo'o iai le poloketi i totonu o le fa'atonugaamples/get-start/blink, lea e iai se puna file, faatulagaga files, ma le tele o tusitusiga tuufaatasia.
O le poloketi malamalama atamai na faʻaofiina i lenei tusi e faʻavae i luga o lenei example polokalame. O galuega o le a fa'aopoopo malie i isi mataupu e fa'amae'a ai.
Source code Ina ia faʻaalia le faagasologa atoa o le atinaʻe, ua kopi le polokalame Blink i le esp32c3-iot-projects/device firmware/1 emo.
Le fa'asologa o fa'atonuga o le galuega emo files o loʻo faʻaalia i le Ata 4.15.
O le poloketi emo e na'o le tasi le lisi autu, o se vaega fa'apitoa lea
Mataupu 4. Fa'atulagaina o Atina'e Si'osi'omaga 53
Ata 4.15. File fa'atonuga fa'atonuga o le poloketi emo
e tatau ona aofia ai e pei ona faamatalaina i le vaega 4.3.2. O le lisi autu e masani ona faʻaaogaina e teu ai le faʻatinoga o le app_main() galuega, o le mea e ulufale ai i le polokalame tagata faʻaoga.O le faʻataʻitaʻiga emo e le aofia ai le lisi o vaega, aua o lenei exampE na'o le mana'omia o le fa'aogaina o vaega e sau ma le ESP-IDF ma e le mana'omia ni vaega fa'aopoopo. O le CMakeLists.txt o loʻo aofia i totonu o le emoemo poloketi e faʻaaogaina e taʻitaʻia ai le faʻagasologa o le tuʻufaʻatasia, aʻo Kconfig.projbuild e faʻaaogaina e faʻaopoopo ai mea faʻatulagaina mo lenei ex.ample polokalame ile menuconfig. O isi mea e le mana'omia files o le a le afaina ai le tuʻufaʻatasia o le code, o lea o le a le talanoaina iinei. O se fa'amatalaga auiliili i le poloketi emo files e faapea.
1. /*blink.c e aofia ai le ulutala lea files*/
2. #include
// Ulutala faletusi masani C file
3. #include “freeertos/freeRTOS.h” //FreeRTOS ulutala autu file
4. #include “freeertos/task.h”
//FreeRTOS Task ulutala file
5. #include “sdkconfig.h”
// Fa'aulutala fa'atutu file gaosia e kconfig
6. #include “taavale/gpio.h”
// Ulutala avetaavale GPIO file
Le puna file blink.c o lo'o iai se fa'asologa o ulutala filee fetaui ma galuega fa'ailoa-
tions. E masani ona mulimulita'i le ESP-IDF i le fa'atonuga o le fa'aulutalaina o le faletusi masani files, FreeR-
Ulutala TOS files, ulutala aveta'avale files, isi ulutala vaega files, ma le ulutala galuega files.
Le fa'asologa o le ulutala files o lo'o aofia ai e ono a'afia ai le fa'ai'uga tu'ufa'atasiga mulimuli, o lea taumafai e
mulimuli i tulafono masani. E tatau ona maitauina o le sdkconfig.h e otometi lava ona gaosia
e le kconfig ma e mafai ona faʻatulagaina e ala i le faʻatonuga idf.py menuconfig.
Suiga tuusao o lenei ulutala file o le a suia.
1. /*E mafai ona e filifilia le GPIO e fetaui ma le LED i idf.py menuconfig, ma o le suiga o le menuconfig o le tau o CONFIG_BLINK.
_GPIO o le a suia. E mafai fo'i ona e suia sa'o le fa'amatalaga macro
iinei, ma sui CONFIG_BLINK_GPIO i se tau tumau.*/ 2. #define BLINK_GPIO CONFIG_BLINK_GPIO
3. void app_main(vale)
4. {
5.
/* Fa'atulaga le IO e pei o le GPIO galuega fa'aletonu, fa'agaoioi le toso i luga, ma
6.
fa'agata le fa'aogaina ma le fa'aogaina o auala*/
7.
gpio_reset_pin(BLINK_GPIO);
54 ESP32-C3 Wireless Adventure: O se Ta'iala Atoa ile IoT
8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. }
/* Seti le GPIO i le faiga o galuega */ gpio_set_direction(BLINK_GPIO, GPIO_MODE_OUTPUT); a'o(1) {
/*Lomitusi ogalaau*/ printf(“Tape le LEDn”); /*Tape le LED (tulaga maualalo maualalo)*/ gpio_set_level(BLINK_GPIO, 0); /*Tuai (1000 ms)*/ vTaskDelay(1000 / portTICK_PERIOD_MS); printf(“Suia le LEDn”); /* Fa'aola le LED (tulaga maualuga maualuga)*/ gpio_set_level(BLINK_GPIO, 1); vTaskDelay(1000 / portTICK_PERIOD_MS); }
Ole app_main() galue ile Blink example polokalame e avea ma nofoaga e ulufale ai mo polokalame fa'aoga. O se galuega faigofie e leai ni fa'amaufa'ailoga ma leai se tau toe fa'afo'i. O lenei galuega e vala'au pe a mae'a ona fa'aulufaleina le faiga, lea e aofia ai galuega e pei o le amataina o le log serial port, configuring tasi/dual core, ma le configured the watchdog.
O le app_main() galuega e tamoʻe i le tulaga o se galuega e taʻua autu. Ole tele ole fa'aputuga ma le fa'amuamua o lenei galuega e mafai ona fetu'una'i ile menuconfig Componentconfig Common ESP e feso'ota'i.
Mo galuega faigofie e pei o le emo o le LED, e mafai ona faʻatinoina uma tulafono talafeagai i le app_main() galuega. E masani lava ona aofia ai le amataina o le GPIO e fetaui ma le LED ma le faʻaogaina o se taimi(1) matasele e sui ai le LED i luga ma tape. I le isi itu, e mafai ona e fa'aogaina le FreeRTOS API e fai ai se galuega fou e fa'atautaia ai le emo o le LED. A maeʻa loa le galuega fou, e mafai ona e alu ese mai le app_main() galuega.
O mea o lo'o i totonu ole main/CMakeLists.txt file, lea e taʻitaʻia ai le faʻagasologa o le tuʻufaʻatasia mo le vaega autu, e faʻapea:
1. idf_component_register(SRCS “blink.c” INCLUDE_DIRS “.” )
Faatasi ai ma i latou, autu/CMakeLists.txt e na'o le tasi le tu'ufa'atasiga o le fa'aogaina, o le idf_component_register. E tutusa ma le CMakeLists.txt mo le tele o isi vaega, blink.c ua faaopoopo i le SRCS, ma le puna. files fa'aopoopo i le SRCS o le a tu'ufa'atasia. I le taimi lava e tasi, ".", o loʻo faʻatusalia le ala o loʻo i ai CMakeLists.txt, e tatau ona faʻaopopo i INCLUDE_DIRS e avea ma suʻesuʻega suʻesuʻe mo ulutala. files. Ole mea ole CMakeLists.txt e fa'apea:
1. #Specify v3.5 o le CMake version tuai e lagolagoina e le poloketi o loʻo iai nei 2. #Versions laʻititi nai lo le v3.5 e tatau ona faʻaleleia aʻo leʻi faʻaauau le tuʻufaʻatasia 3. cmake_minimum_required(VERSION 3.5) 4. #Include the default CMake configuration of the ESP -IDF faiga tu'ufa'atasi
Mataupu 4. Fa'atulagaina o Atina'e Si'osi'omaga 55
5. aofia($ENV{IDF_PATH}/tools/cmake/project.cmake) 6. #Fausia se poloketi e igoa “emo” 7. poloketi(myProject)
Faatasi ai ma i latou, o le CMakeLists.txt i le root directory e masani ona aofia ai le $ENV{IDF_ PATH}/tools/cmake/project.cmake, o le faʻatonuga autu CMake. file saunia e le ESP-IDF. E fa'aaogaina e con
Pepa / Punaoa
![]() |
Espressif Systems ESP32-C3 Wireless Adventure [pdf] Taiala mo Tagata Fa'aoga ESP32-C3 Fa'ata'ita'iga uaealesi, ESP32-C3, Fa'asalalauga uaealesi, Fa'asalalauga |




