ഉള്ളടക്കം മറയ്ക്കുക
2 ESP32-C3 വയർലെസ് അഡ്വഞ്ചർ
2.1 IoT-യിലേക്കുള്ള ഒരു സമഗ്ര ഗൈഡ്

ESP32-C3 വയർലെസ് അഡ്വഞ്ചർ

ESP32-C3 വയർലെസ് അഡ്വഞ്ചർ

IoT-യിലേക്കുള്ള ഒരു സമഗ്ര ഗൈഡ്

എസ്പ്രെസിഫ് സിസ്റ്റംസ് ജൂൺ 12, 2023

സ്പെസിഫിക്കേഷനുകൾ

  • ഉൽപ്പന്നം: ESP32-C3 വയർലെസ് അഡ്വഞ്ചർ
  • നിർമ്മാതാവ്: എസ്പ്രെസിഫ് സിസ്റ്റംസ്
  • തീയതി: ജൂൺ 12, 2023

ഉൽപ്പന്ന ഉപയോഗ നിർദ്ദേശങ്ങൾ

തയ്യാറാക്കൽ

ESP32-C3 വയർലെസ് അഡ്വഞ്ചർ ഉപയോഗിക്കുന്നതിന് മുമ്പ്, നിങ്ങളാണെന്ന് ഉറപ്പാക്കുക
IoT യുടെ ആശയങ്ങളും വാസ്തുവിദ്യയും പരിചിതമാണ്. ഇത് സഹായിക്കും
വലിയ IoT ഇക്കോസിസ്റ്റത്തിലേക്ക് ഉപകരണം എങ്ങനെ യോജിക്കുന്നുവെന്ന് നിങ്ങൾ മനസ്സിലാക്കുന്നു
സ്മാർട്ട് ഹോമുകളിൽ അതിൻ്റെ സാധ്യതയുള്ള ആപ്ലിക്കേഷനുകളും.

IoT പദ്ധതികളുടെ ആമുഖവും പരിശീലനവും

ഈ വിഭാഗത്തിൽ, നിങ്ങൾ സാധാരണ IoT പ്രോജക്ടുകളെക്കുറിച്ച് പഠിക്കും,
സാധാരണ IoT ഉപകരണങ്ങൾക്കുള്ള അടിസ്ഥാന മൊഡ്യൂളുകൾ, അടിസ്ഥാന മൊഡ്യൂളുകൾ എന്നിവ ഉൾപ്പെടെ
ക്ലയൻ്റ് ആപ്ലിക്കേഷനുകൾ, സാധാരണ IoT ക്ലൗഡ് പ്ലാറ്റ്‌ഫോമുകൾ. ഇത് ചെയ്യും
നിങ്ങളെ മനസ്സിലാക്കുന്നതിനും സൃഷ്ടിക്കുന്നതിനുമുള്ള ഒരു അടിസ്ഥാനം നിങ്ങൾക്ക് നൽകുന്നു
സ്വന്തം ഐഒടി പദ്ധതികൾ.

പരിശീലനം: സ്മാർട്ട് ലൈറ്റ് പദ്ധതി

ഈ പ്രാക്ടീസ് പ്രോജക്റ്റിൽ, ഒരു സ്മാർട്ട് എങ്ങനെ സൃഷ്ടിക്കാമെന്ന് നിങ്ങൾ പഠിക്കും
ESP32-C3 വയർലെസ് അഡ്വഞ്ചർ ഉപയോഗിച്ച് പ്രകാശം. പദ്ധതിയുടെ ഘടന,
പ്രവർത്തനങ്ങൾ, ഹാർഡ്‌വെയർ തയ്യാറാക്കൽ, വികസന പ്രക്രിയ എന്നിവ ആയിരിക്കും
വിശദമായി വിശദീകരിച്ചു.

പ്രോജക്റ്റ് ഘടന

പദ്ധതിയിൽ ഉൾപ്പെടെ നിരവധി ഘടകങ്ങൾ ഉൾപ്പെടുന്നു
ESP32-C3 വയർലെസ് അഡ്വഞ്ചർ, LED-കൾ, സെൻസറുകൾ, ഒരു ക്ലൗഡ്
പിൻഭാഗം.

പ്രോജക്റ്റ് പ്രവർത്തനങ്ങൾ

തെളിച്ചം നിയന്ത്രിക്കാനും സ്മാർട്ട് ലൈറ്റ് പ്രോജക്റ്റ് നിങ്ങളെ അനുവദിക്കുന്നു
ഒരു മൊബൈൽ ആപ്പ് വഴി വിദൂരമായി LED-കളുടെ നിറം അല്ലെങ്കിൽ web
ഇൻ്റർഫേസ്.

ഹാർഡ്‌വെയർ തയ്യാറാക്കൽ

പ്രോജക്റ്റിനായി തയ്യാറെടുക്കാൻ, നിങ്ങൾ ശേഖരിക്കേണ്ടതുണ്ട്
ESP32-C3 വയർലെസ് പോലുള്ള ആവശ്യമായ ഹാർഡ്‌വെയർ ഘടകങ്ങൾ
സാഹസിക ബോർഡ്, LED-കൾ, റെസിസ്റ്ററുകൾ, ഒരു പവർ സപ്ലൈ.

വികസന പ്രക്രിയ

വികസന പ്രക്രിയയിൽ വികസനം സജ്ജീകരിക്കുന്നത് ഉൾപ്പെടുന്നു
പരിസ്ഥിതി, LED- കൾ നിയന്ത്രിക്കാൻ കോഡ് എഴുതുക, എന്നിവയുമായി ബന്ധിപ്പിക്കുന്നു
ക്ലൗഡ് ബാക്കെൻഡ്, കൂടാതെ സ്മാർട്ടിൻ്റെ പ്രവർത്തനക്ഷമത പരിശോധിക്കുന്നു
വെളിച്ചം.

ESP റെയിൻമേക്കറിനുള്ള ആമുഖം

IoT വികസിപ്പിക്കുന്നതിനുള്ള ശക്തമായ ഒരു ചട്ടക്കൂടാണ് ESP RainMaker
ഉപകരണങ്ങൾ. ഈ വിഭാഗത്തിൽ, ESP റെയിൻമേക്കർ എന്താണെന്നും എന്താണെന്നും നിങ്ങൾ പഠിക്കും
നിങ്ങളുടെ പ്രോജക്ടുകളിൽ ഇത് എങ്ങനെ നടപ്പിലാക്കാം.

എന്താണ് ഇഎസ്പി റെയിൻമേക്കർ?

ഒരു കൂട്ടം നൽകുന്ന ക്ലൗഡ് അധിഷ്‌ഠിത പ്ലാറ്റ്‌ഫോമാണ് ESP റെയിൻമേക്കർ
IoT ഉപകരണങ്ങൾ നിർമ്മിക്കുന്നതിനും നിയന്ത്രിക്കുന്നതിനുമുള്ള ഉപകരണങ്ങളും സേവനങ്ങളും.

ഇഎസ്പി റെയിൻമേക്കറിൻ്റെ നടപ്പാക്കൽ

ഇതിൽ ഉൾപ്പെട്ടിരിക്കുന്ന വിവിധ ഘടകങ്ങളെ ഈ വിഭാഗം വിശദീകരിക്കുന്നു
ക്ലെയിം ചെയ്യുന്ന സേവനം ഉൾപ്പെടെ, ESP റെയിൻമേക്കർ നടപ്പിലാക്കുന്നു,
റെയിൻമേക്കർ ഏജൻ്റ്, ക്ലൗഡ് ബാക്കെൻഡ്, റെയിൻമേക്കർ ക്ലയൻ്റ്.

പരിശീലിക്കുക: ESP റെയിൻമേക്കർ ഉപയോഗിച്ച് വികസിപ്പിക്കുന്നതിനുള്ള പ്രധാന പോയിൻ്റുകൾ

ഈ പരിശീലന വിഭാഗത്തിൽ, പ്രധാന പോയിൻ്റുകളെക്കുറിച്ച് നിങ്ങൾ പഠിക്കും
ESP റെയിൻമേക്കർ ഉപയോഗിച്ച് വികസിപ്പിക്കുമ്പോൾ പരിഗണിക്കുക. ഇതിൽ ഉപകരണം ഉൾപ്പെടുന്നു
ക്ലെയിം ചെയ്യൽ, ഡാറ്റ സിൻക്രൊണൈസേഷൻ, ഉപയോക്തൃ മാനേജ്മെൻ്റ്.

ESP റെയിൻമേക്കറിൻ്റെ സവിശേഷതകൾ

ESP RainMaker ഉപയോക്തൃ മാനേജ്മെൻ്റിനായി വിവിധ സവിശേഷതകൾ വാഗ്ദാനം ചെയ്യുന്നു, അവസാനം
ഉപയോക്താക്കൾ, അഡ്മിനിസ്ട്രേറ്റർമാർ. ഈ സവിശേഷതകൾ എളുപ്പത്തിൽ ഉപകരണം അനുവദിക്കുന്നു
സജ്ജീകരണം, വിദൂര നിയന്ത്രണം, നിരീക്ഷണം.

വികസന പരിസ്ഥിതി സജ്ജീകരിക്കുന്നു

ഈ വിഭാഗം ഒരു ഓവർ നൽകുന്നുview ഇഎസ്പി-ഐഡിഎഫിൻ്റെ (എസ്പ്രെസിഫ് ഐഒടി
വികസന ചട്ടക്കൂട്), ഇത് ഔദ്യോഗിക വികസന ചട്ടക്കൂടാണ്
ESP32 അടിസ്ഥാനമാക്കിയുള്ള ഉപകരണങ്ങൾക്കായി. ഇത് വ്യത്യസ്ത പതിപ്പുകൾ വിശദീകരിക്കുന്നു
ഇഎസ്പി-ഐഡിഎഫും വികസന അന്തരീക്ഷം എങ്ങനെ സജ്ജീകരിക്കാം.

ഹാർഡ്‌വെയറും ഡ്രൈവർ വികസനവും

ESP32-C3 അടിസ്ഥാനമാക്കിയുള്ള സ്മാർട്ട് ലൈറ്റ് ഉൽപ്പന്നങ്ങളുടെ ഹാർഡ്‌വെയർ ഡിസൈൻ

ഈ വിഭാഗം സ്മാർട്ട് ലൈറ്റിൻ്റെ ഹാർഡ്‌വെയർ ഡിസൈനിൽ ശ്രദ്ധ കേന്ദ്രീകരിക്കുന്നു
ESP32-C3 വയർലെസ് അഡ്വഞ്ചറിനെ അടിസ്ഥാനമാക്കിയുള്ള ഉൽപ്പന്നങ്ങൾ. ഇത് കവർ ചെയ്യുന്നു
സ്മാർട്ട് ലൈറ്റ് ഉൽപ്പന്നങ്ങളുടെ സവിശേഷതകളും ഘടനയും, അതുപോലെ
ESP32-C3 കോർ സിസ്റ്റത്തിൻ്റെ ഹാർഡ്‌വെയർ ഡിസൈൻ.

സ്മാർട്ട് ലൈറ്റ് ഉൽപ്പന്നങ്ങളുടെ സവിശേഷതകളും ഘടനയും

ഈ ഉപവിഭാഗം നിർമ്മിക്കുന്ന സവിശേഷതകളും ഘടകങ്ങളും വിശദീകരിക്കുന്നു
സ്മാർട്ട് ലൈറ്റ് ഉൽപ്പന്നങ്ങൾ. ഇത് വിവിധ പ്രവർത്തനങ്ങളെ കുറിച്ച് ചർച്ച ചെയ്യുന്നു
സ്മാർട്ട് ലൈറ്റുകൾ സൃഷ്ടിക്കുന്നതിനുള്ള ഡിസൈൻ പരിഗണനകളും.

ESP32-C3 കോർ സിസ്റ്റത്തിൻ്റെ ഹാർഡ്‌വെയർ ഡിസൈൻ

ESP32-C3 കോർ സിസ്റ്റത്തിൻ്റെ ഹാർഡ്‌വെയർ രൂപകൽപ്പനയിൽ പവർ ഉൾപ്പെടുന്നു
വിതരണം, പവർ-ഓൺ സീക്വൻസ്, സിസ്റ്റം റീസെറ്റ്, SPI ഫ്ലാഷ്, ക്ലോക്ക് ഉറവിടം,
കൂടാതെ RF, ആൻ്റിന പരിഗണനകൾ. ഈ ഉപവിഭാഗം നൽകുന്നു
ഈ വശങ്ങളെക്കുറിച്ചുള്ള വിശദമായ വിവരങ്ങൾ.

പതിവുചോദ്യങ്ങൾ

ചോദ്യം: എന്താണ് ESP റെയിൻ മേക്കർ?

A: ടൂളുകൾ നൽകുന്ന ക്ലൗഡ് അധിഷ്‌ഠിത പ്ലാറ്റ്‌ഫോമാണ് ESP റെയിൻമേക്കർ
IoT ഉപകരണങ്ങൾ നിർമ്മിക്കുന്നതിനും നിയന്ത്രിക്കുന്നതിനുമുള്ള സേവനങ്ങളും. ഇത് ലളിതമാക്കുന്നു
ഡെവലപ്‌മെൻ്റ് പ്രോസസ്, റിമോട്ട്, എളുപ്പത്തിലുള്ള ഉപകരണ സജ്ജീകരണം അനുവദിക്കുന്നു
നിയന്ത്രണം, നിരീക്ഷണം.

ചോദ്യം: എനിക്ക് എങ്ങനെ വികസന അന്തരീക്ഷം സജ്ജീകരിക്കാനാകും
ESP32-C3?

ഉത്തരം: ESP32-C3-നുള്ള വികസന അന്തരീക്ഷം സജ്ജീകരിക്കുന്നതിന്, നിങ്ങൾക്കാവശ്യമുണ്ട്
ESP-IDF (Espressif IoT ഡവലപ്മെൻ്റ് ഫ്രെയിംവർക്ക്) ഇൻസ്റ്റാൾ ചെയ്യാൻ
നൽകിയിരിക്കുന്ന നിർദ്ദേശങ്ങൾക്കനുസൃതമായി ഇത് ക്രമീകരിക്കുക. ESP-IDF ആണ്
ESP32-അധിഷ്ഠിത ഉപകരണങ്ങൾക്കുള്ള ഔദ്യോഗിക വികസന ചട്ടക്കൂട്.

ചോദ്യം: ESP റെയിൻമേക്കറിൻ്റെ സവിശേഷതകൾ എന്തൊക്കെയാണ്?

A: ESP RainMaker ഉപയോക്താവ് ഉൾപ്പെടെ വിവിധ സവിശേഷതകൾ വാഗ്ദാനം ചെയ്യുന്നു
മാനേജ്മെൻ്റ്, അന്തിമ ഉപയോക്തൃ സവിശേഷതകൾ, അഡ്മിൻ സവിശേഷതകൾ. ഉപയോക്തൃ മാനേജ്മെൻ്റ്
എളുപ്പത്തിൽ ഉപകരണ ക്ലെയിം ചെയ്യുന്നതിനും ഡാറ്റ സമന്വയത്തിനും അനുവദിക്കുന്നു. അന്തിമ ഉപയോക്താവ്
ഫീച്ചറുകൾ ഒരു മൊബൈൽ ആപ്പ് വഴിയോ ഉപകരണങ്ങളുടെ റിമോട്ട് കൺട്രോൾ പ്രവർത്തനക്ഷമമാക്കുന്നു
web ഇൻ്റർഫേസ്. അഡ്‌മിൻ ഫീച്ചറുകൾ ഉപകരണ നിരീക്ഷണത്തിനുള്ള ടൂളുകൾ നൽകുന്നു
മാനേജ്മെൻ്റും.

ESP32-C3 വയർലെസ് അഡ്വഞ്ചർ
IoT-യിലേക്കുള്ള ഒരു സമഗ്ര ഗൈഡ്
എസ്പ്രെസിഫ് സിസ്റ്റംസ് ജൂൺ 12, 2023

ഉള്ളടക്കം

ഐ തയ്യാറെടുപ്പ്

1

1 IoT-യുടെ ആമുഖം

3

1.1 ഐഒടിയുടെ വാസ്തുവിദ്യ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

സ്മാർട്ട് ഹോമുകളിലെ 1.2 IoT ആപ്ലിക്കേഷൻ. . . . . . . . . . . . . . . . . . . . . . . . . . 6

2 ഐഒടി പദ്ധതികളുടെ ആമുഖവും പരിശീലനവും

9

2.1 സാധാരണ IoT പ്രോജക്ടുകളുടെ ആമുഖം. . . . . . . . . . . . . . . . . . . . . . . . 9

2.1.1 സാധാരണ IoT ഉപകരണങ്ങൾക്കുള്ള അടിസ്ഥാന മൊഡ്യൂളുകൾ. . . . . . . . . . . . . . . . . 9

2.1.2 ക്ലയൻ്റ് ആപ്ലിക്കേഷനുകളുടെ അടിസ്ഥാന മൊഡ്യൂളുകൾ. . . . . . . . . . . . . . . . . . . 10

2.1.3 സാധാരണ IoT ക്ലൗഡ് പ്ലാറ്റ്‌ഫോമുകളിലേക്കുള്ള ആമുഖം. . . . . . . . . . . . . . 11

2.2 പ്രാക്ടീസ്: സ്മാർട്ട് ലൈറ്റ് പ്രോജക്റ്റ്. . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

2.2.1 പദ്ധതി ഘടന. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

2.2.2 പദ്ധതി പ്രവർത്തനങ്ങൾ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

2.2.3 ഹാർഡ്‌വെയർ തയ്യാറാക്കൽ. . . . . . . . . . . . . . . . . . . . . . . . . . . 14

2.2.4 വികസന പ്രക്രിയ. . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

2.3 സംഗ്രഹം. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

3 ESP റെയിൻമേക്കറിലേക്കുള്ള ആമുഖം

19

3.1 എന്താണ് ESP റെയിൻ മേക്കർ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

3.2 ഇഎസ്പി റെയിൻമേക്കറിൻ്റെ നടപ്പാക്കൽ. . . . . . . . . . . . . . . . . . . . . . 21

3.2.1 ക്ലെയിമിംഗ് സേവനം. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

3.2.2 റെയിൻമേക്കർ ഏജൻ്റ്. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

3.2.3 ക്ലൗഡ് ബാക്കെൻഡ്. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

3.2.4 റെയിൻമേക്കർ ക്ലയൻ്റ്. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

3.3 പ്രാക്ടീസ്: ESP റെയിൻമേക്കർ ഉപയോഗിച്ച് വികസിപ്പിക്കുന്നതിനുള്ള പ്രധാന പോയിൻ്റുകൾ. . . . . . . . . . . . 25

3.4 ESP റെയിൻമേക്കറിൻ്റെ സവിശേഷതകൾ. . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

3.4.1 ഉപയോക്തൃ മാനേജ്മെൻ്റ്. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

3.4.2 അന്തിമ ഉപയോക്തൃ സവിശേഷതകൾ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

3.4.3 അഡ്മിൻ സവിശേഷതകൾ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

3.5 സംഗ്രഹം. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

4 വികസന പരിസ്ഥിതി സജ്ജീകരിക്കുക

31

4.1 ESP-IDF കഴിഞ്ഞുview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

4.1.1 ESP-IDF പതിപ്പുകൾ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

3

4.1.2 ESP-IDF Git വർക്ക്ഫ്ലോ . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 4.1.3 അനുയോജ്യമായ ഒരു പതിപ്പ് തിരഞ്ഞെടുക്കുന്നു. . . . . . . . . . . . . . . . . . . . . . . . 34 4.1.4 ഓവർview ESP-IDF SDK ഡയറക്ടറിയുടെ . . . . . . . . . . . . . . . . . . . . 34 4.2 ESP-IDF വികസന പരിസ്ഥിതി സജ്ജീകരിക്കുന്നു. . . . . . . . . . . . . . . . . 38 4.2.1 Linux-ൽ ESP-IDF ഡവലപ്മെൻ്റ് എൻവയോൺമെൻ്റ് സജ്ജീകരിക്കുന്നു. . . . . . . . 38 4.2.2 വിൻഡോസിൽ ESP-IDF ഡവലപ്മെൻ്റ് എൻവയോൺമെൻ്റ് സജ്ജീകരിക്കുന്നു. . . . . . 40 4.2.3 Mac-ൽ ESP-IDF വികസന പരിസ്ഥിതി സജ്ജീകരിക്കുന്നു. . . . . . . . . 45 4.2.4 VS കോഡ് ഇൻസ്റ്റാൾ ചെയ്യുന്നു. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 4.2.5 മൂന്നാം കക്ഷി വികസന പരിസ്ഥിതിയുടെ ആമുഖം. . . . . . . . 46 4.3 ESP-IDF കംപൈലേഷൻ സിസ്റ്റം . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 4.3.1 കംപൈലേഷൻ സിസ്റ്റത്തിൻ്റെ അടിസ്ഥാന ആശയങ്ങൾ. . . . . . . . . . . . . . . . . . 47 4.3.2 പദ്ധതി File ഘടന . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 4.3.3 കംപൈലേഷൻ സിസ്റ്റത്തിൻ്റെ ഡിഫോൾട്ട് ബിൽഡ് നിയമങ്ങൾ. . . . . . . . . . . . . 50 4.3.4 സമാഹാര സ്ക്രിപ്റ്റിലേക്കുള്ള ആമുഖം. . . . . . . . . . . . . . . . . . 51 4.3.5 കോമൺ കമാൻഡുകൾക്കുള്ള ആമുഖം. . . . . . . . . . . . . . . . . . . 52 4.4 പ്രാക്ടീസ്: കംപൈലിംഗ് Exampലെ പ്രോഗ്രാം "ബ്ലിങ്ക്" . . . . . . . . . . . . . . . . . . 53 4.4.1 ഉദാampലെ വിശകലനം. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 4.4.2 ബ്ലിങ്ക് പ്രോഗ്രാം കംപൈൽ ചെയ്യുന്നു. . . . . . . . . . . . . . . . . . . . . . . 56 4.4.3 ബ്ലിങ്ക് പ്രോഗ്രാം മിന്നുന്നു. . . . . . . . . . . . . . . . . . . . . . . . 59 4.4.4 ബ്ലിങ്ക് പ്രോഗ്രാമിൻ്റെ സീരിയൽ പോർട്ട് ലോഗ് വിശകലനം. . . . . . . . . . . . . . 60 4.5 സംഗ്രഹം. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63

II ഹാർഡ്‌വെയറും ഡ്രൈവർ വികസനവും

65

5 ESP32-C3 അടിസ്ഥാനമാക്കിയുള്ള സ്മാർട്ട് ലൈറ്റ് ഉൽപ്പന്നങ്ങളുടെ ഹാർഡ്‌വെയർ ഡിസൈൻ

67

5.1 സ്മാർട്ട് ലൈറ്റ് ഉൽപ്പന്നങ്ങളുടെ സവിശേഷതകളും ഘടനയും. . . . . . . . . . . . . . . 67

5.2 ESP32-C3 കോർ സിസ്റ്റത്തിൻ്റെ ഹാർഡ്‌വെയർ ഡിസൈൻ. . . . . . . . . . . . . . . . . . . 70

5.2.1 വൈദ്യുതി വിതരണം. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74

5.2.2 പവർ-ഓൺ സീക്വൻസും സിസ്റ്റം റീസെറ്റും. . . . . . . . . . . . . . . . . . 74

5.2.3 എസ്പിഐ ഫ്ലാഷ്. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

5.2.4 ക്ലോക്ക് സോഴ്സ്. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

5.2.5 RF ഉം ആൻ്റിനയും . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76

5.2.6 സ്ട്രാപ്പിംഗ് പിന്നുകൾ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79

5.2.7 GPIO, PWM കൺട്രോളർ. . . . . . . . . . . . . . . . . . . . . . . . . 79

5.3 പരിശീലനം: ESP32-C3 ഉപയോഗിച്ച് ഒരു സ്മാർട്ട് ലൈറ്റ് സിസ്റ്റം നിർമ്മിക്കൽ. . . . . . . . . . . . . 80

5.3.1 മൊഡ്യൂളുകൾ തിരഞ്ഞെടുക്കുന്നു. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80

5.3.2 PWM സിഗ്നലുകളുടെ GPIO-കൾ ക്രമീകരിക്കുന്നു. . . . . . . . . . . . . . . . . . . . 82

5.3.3 ഫേംവെയറും ഡീബഗ്ഗിംഗ് ഇൻ്റർഫേസും ഡൗൺലോഡ് ചെയ്യുന്നു. . . . . . . . . . . . 82

5.3.4 RF ഡിസൈനിനുള്ള മാർഗ്ഗനിർദ്ദേശങ്ങൾ. . . . . . . . . . . . . . . . . . . . . . . . . . 84 5.3.5 പവർ സപ്ലൈ ഡിസൈനിനുള്ള മാർഗ്ഗനിർദ്ദേശങ്ങൾ. . . . . . . . . . . . . . . . . . . 86 5.4 സംഗ്രഹം. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86

6 ഡ്രൈവർ വികസനം

87

6.1 ഡ്രൈവർ വികസന പ്രക്രിയ. . . . . . . . . . . . . . . . . . . . . . . . . . . . 87

6.2 ESP32-C3 പെരിഫറൽ ആപ്ലിക്കേഷനുകൾ . . . . . . . . . . . . . . . . . . . . . . . . . 88

6.3 LED ഡ്രൈവർ അടിസ്ഥാനങ്ങൾ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89

6.3.1 വർണ്ണ ഇടങ്ങൾ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89

6.3.2 LED ഡ്രൈവർ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94

6.3.3 LED ഡിമ്മിംഗ്. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94

6.3.4 PWM-ൻ്റെ ആമുഖം. . . . . . . . . . . . . . . . . . . . . . . . . . . . 95

6.4 LED ഡിമ്മിംഗ് ഡ്രൈവർ വികസനം. . . . . . . . . . . . . . . . . . . . . . . . 96

6.4.1 അസ്ഥിരമല്ലാത്ത സംഭരണം (NVS) . . . . . . . . . . . . . . . . . . . . . . . . 97

6.4.2 LED PWM കൺട്രോളർ (LEDC) . . . . . . . . . . . . . . . . . . . . . . . 98

6.4.3 LED PWM പ്രോഗ്രാമിംഗ്. . . . . . . . . . . . . . . . . . . . . . . . . . 100

6.5 പരിശീലനം: സ്മാർട്ട് ലൈറ്റ് പ്രോജക്റ്റിലേക്ക് ഡ്രൈവറുകൾ ചേർക്കുന്നു. . . . . . . . . . . . . . . . . 103

6.5.1 ബട്ടൺ ഡ്രൈവർ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103

6.5.2 എൽഇഡി ഡിമ്മിംഗ് ഡ്രൈവർ. . . . . . . . . . . . . . . . . . . . . . . . . . . . 104

6.6 സംഗ്രഹം. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108

III വയർലെസ് കമ്മ്യൂണിക്കേഷനും നിയന്ത്രണവും

109

7 Wi-Fi കോൺഫിഗറേഷനും കണക്ഷനും

111

7.1 വൈഫൈയുടെ അടിസ്ഥാനകാര്യങ്ങൾ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111

7.1.1 Wi-Fi-യിലേക്കുള്ള ആമുഖം . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111

7.1.2 ഐഇഇഇയുടെ പരിണാമം 802.11. . . . . . . . . . . . . . . . . . . . . . . . . 111

7.1.3 Wi-Fi ആശയങ്ങൾ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112

7.1.4 Wi-Fi കണക്ഷൻ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115

7.2 ബ്ലൂടൂത്തിൻ്റെ അടിസ്ഥാനകാര്യങ്ങൾ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122

7.2.1 ബ്ലൂടൂത്തിലേക്കുള്ള ആമുഖം. . . . . . . . . . . . . . . . . . . . . . . . . 123

7.2.2 ബ്ലൂടൂത്ത് ആശയങ്ങൾ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124

7.2.3 ബ്ലൂടൂത്ത് കണക്ഷൻ. . . . . . . . . . . . . . . . . . . . . . . . . . . 127

7.3 Wi-Fi നെറ്റ്‌വർക്ക് കോൺഫിഗറേഷൻ . . . . . . . . . . . . . . . . . . . . . . . . . . . 131

7.3.1 Wi-Fi നെറ്റ്‌വർക്ക് കോൺഫിഗറേഷൻ ഗൈഡ്. . . . . . . . . . . . . . . . . . . . 131

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

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

7.3.4 ബ്ലൂടൂത്ത്. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135

7.3.5 മറ്റ് രീതികൾ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137

7.4 വൈഫൈ പ്രോഗ്രാമിംഗ്. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139 7.4.1 ESP-IDF-ലെ Wi-Fi ഘടകങ്ങൾ . . . . . . . . . . . . . . . . . . . . . . . 139 7.4.2 വ്യായാമം: Wi-Fi കണക്ഷൻ . . . . . . . . . . . . . . . . . . . . . . . . 141 7.4.3 വ്യായാമം: സ്മാർട്ട് വൈഫൈ കണക്ഷൻ . . . . . . . . . . . . . . . . . . . . . 145
7.5 പ്രാക്ടീസ്: സ്മാർട്ട് ലൈറ്റ് പ്രോജക്റ്റിലെ വൈഫൈ കോൺഫിഗറേഷൻ . . . . . . . . . . . . . . . 156 7.5.1 സ്മാർട്ട് ലൈറ്റ് പ്രോജക്റ്റിലെ Wi-Fi കണക്ഷൻ. . . . . . . . . . . . . . . . . 156 7.5.2 സ്മാർട്ട് വൈഫൈ കോൺഫിഗറേഷൻ . . . . . . . . . . . . . . . . . . . . . . . . . 157
7.6 സംഗ്രഹം. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158

8 പ്രാദേശിക നിയന്ത്രണം

159

8.1 പ്രാദേശിക നിയന്ത്രണത്തിൻ്റെ ആമുഖം. . . . . . . . . . . . . . . . . . . . . . . . . . . 159

8.1.1 പ്രാദേശിക നിയന്ത്രണത്തിൻ്റെ പ്രയോഗം. . . . . . . . . . . . . . . . . . . . . . . . 161

8.1.2 അഡ്വാൻtagപ്രാദേശിക നിയന്ത്രണം . . . . . . . . . . . . . . . . . . . . . . . . 161

8.1.3 സ്മാർട്ട്ഫോണുകളിലൂടെ നിയന്ത്രിത ഉപകരണങ്ങൾ കണ്ടെത്തുന്നു. . . . . . . . . . 161

8.1.4 സ്മാർട്ട്ഫോണുകളും ഉപകരണങ്ങളും തമ്മിലുള്ള ഡാറ്റാ ആശയവിനിമയം. . . . . . . . 162

8.2 പൊതുവായ പ്രാദേശിക കണ്ടെത്തൽ രീതികൾ. . . . . . . . . . . . . . . . . . . . . . . . 162

8.2.1 പ്രക്ഷേപണം. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163

8.2.2 മൾട്ടികാസ്റ്റ്. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169

8.2.3 ബ്രോഡ്കാസ്റ്റും മൾട്ടികാസ്റ്റും തമ്മിലുള്ള താരതമ്യം. . . . . . . . . . . . . . 176

8.2.4 പ്രാദേശിക കണ്ടെത്തലിനായുള്ള മൾട്ടികാസ്റ്റ് ആപ്ലിക്കേഷൻ പ്രോട്ടോക്കോൾ mDNS. . . . . . . . 176

8.3 പ്രാദേശിക ഡാറ്റയ്ക്കുള്ള പൊതു ആശയവിനിമയ പ്രോട്ടോക്കോളുകൾ. . . . . . . . . . . . . . . 179

8.3.1 ട്രാൻസ്മിഷൻ കൺട്രോൾ പ്രോട്ടോക്കോൾ (TCP) . . . . . . . . . . . . . . . . . . . 179

8.3.2 ഹൈപ്പർടെക്സ്റ്റ് ട്രാൻസ്ഫർ പ്രോട്ടോക്കോൾ (HTTP) . . . . . . . . . . . . . . . . . . . 185

8.3.3 യൂസർ ഡാtagറാം പ്രോട്ടോക്കോൾ (UDP) . . . . . . . . . . . . . . . . . . . . . . 189

8.3.4 കൺസ്ട്രെയിൻഡ് ആപ്ലിക്കേഷൻ പ്രോട്ടോക്കോൾ (CoAP) . . . . . . . . . . . . . . . . 192

8.3.5 ബ്ലൂടൂത്ത് പ്രോട്ടോക്കോൾ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197

8.3.6 ഡാറ്റാ കമ്മ്യൂണിക്കേഷൻ പ്രോട്ടോക്കോളുകളുടെ സംഗ്രഹം. . . . . . . . . . . . . . . 203

8.4 ഡാറ്റ സുരക്ഷയുടെ ഗ്യാരണ്ടി. . . . . . . . . . . . . . . . . . . . . . . . . . . . 205

8.4.1 ട്രാൻസ്പോർട്ട് ലെയർ സെക്യൂരിറ്റി (TLS) ആമുഖം . . . . . . . . . . . . . 207

8.4.2 ഡയുടെ ആമുഖംtagറാം ട്രാൻസ്പോർട്ട് ലെയർ സെക്യൂരിറ്റി (DTLS) . . . . . . . 213

8.5 പ്രാക്ടീസ്: സ്മാർട്ട് ലൈറ്റ് പ്രോജക്റ്റിലെ പ്രാദേശിക നിയന്ത്രണം. . . . . . . . . . . . . . . . . . 217

8.5.1 ഒരു Wi-Fi അടിസ്ഥാനമാക്കിയുള്ള ലോക്കൽ കൺട്രോൾ സെർവർ സൃഷ്ടിക്കുന്നു. . . . . . . . . . . . . . . 217

8.5.2 സ്ക്രിപ്റ്റുകൾ ഉപയോഗിച്ച് പ്രാദേശിക നിയന്ത്രണ പ്രവർത്തനം പരിശോധിക്കുന്നു. . . . . . . . . . . 221

8.5.3 ബ്ലൂടൂത്ത് അടിസ്ഥാനമാക്കിയുള്ള ലോക്കൽ കൺട്രോൾ സെർവർ സൃഷ്ടിക്കുന്നു. . . . . . . . . . . . 222

8.6 സംഗ്രഹം. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224

9 ക്ലൗഡ് നിയന്ത്രണം

225

9.1 റിമോട്ട് കൺട്രോളിനുള്ള ആമുഖം. . . . . . . . . . . . . . . . . . . . . . . . . . 225

9.2 ക്ലൗഡ് ഡാറ്റ കമ്മ്യൂണിക്കേഷൻ പ്രോട്ടോക്കോളുകൾ. . . . . . . . . . . . . . . . . . . . . . 226

9.2.1 MQTT ആമുഖം. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226 9.2.2 MQTT തത്വങ്ങൾ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227 9.2.3 MQTT സന്ദേശ ഫോർമാറ്റ്. . . . . . . . . . . . . . . . . . . . . . . . . . 228 9.2.4 പ്രോട്ടോക്കോൾ താരതമ്യം. . . . . . . . . . . . . . . . . . . . . . . . . . . . 233 9.2.5 ലിനക്സിലും വിൻഡോസിലും MQTT ബ്രോക്കർ സജ്ജീകരിക്കുന്നു. . . . . . . . . . . . 233 9.2.6 ESP-IDF അടിസ്ഥാനമാക്കി MQTT ക്ലയൻ്റ് സജ്ജീകരിക്കുന്നു. . . . . . . . . . . . . . . . 235 9.3 MQTT ഡാറ്റ സുരക്ഷ ഉറപ്പാക്കുന്നു. . . . . . . . . . . . . . . . . . . . . . . . . . . 237 9.3.1 സർട്ടിഫിക്കറ്റുകളുടെ അർത്ഥവും പ്രവർത്തനവും. . . . . . . . . . . . . . . . . . . 237 9.3.2 പ്രാദേശികമായി സർട്ടിഫിക്കറ്റുകൾ സൃഷ്ടിക്കുന്നു. . . . . . . . . . . . . . . . . . . . . . 239 9.3.3 MQTT ബ്രോക്കർ ക്രമീകരിക്കുന്നു. . . . . . . . . . . . . . . . . . . . . . . . . 241 9.3.4 MQTT ക്ലയൻ്റ് കോൺഫിഗർ ചെയ്യുന്നു. . . . . . . . . . . . . . . . . . . . . . . . . 241 9.4 പ്രാക്ടീസ്: ESP റെയിൻമേക്കർ വഴിയുള്ള വിദൂര നിയന്ത്രണം. . . . . . . . . . . . . . . . 243 9.4.1 ESP റെയിൻമേക്കർ അടിസ്ഥാനങ്ങൾ. . . . . . . . . . . . . . . . . . . . . . . . . . . 243 9.4.2 നോഡും ക്ലൗഡ് ബാക്കെൻഡ് കമ്മ്യൂണിക്കേഷൻ പ്രോട്ടോക്കോളും. . . . . . . . . . . 244 9.4.3 ക്ലയൻ്റും ക്ലൗഡ് ബാക്കെൻഡും തമ്മിലുള്ള ആശയവിനിമയം. . . . . . . . . . . 249 9.4.4 ഉപയോക്തൃ റോളുകൾ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252 9.4.5 അടിസ്ഥാന സേവനങ്ങൾ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253 9.4.6 സ്മാർട്ട് ലൈറ്റ് എക്സ്ampഎൽ. . . . . . . . . . . . . . . . . . . . . . . . . . . . 255 9.4.7 റെയിൻമേക്കർ ആപ്പും മൂന്നാം കക്ഷി സംയോജനവും. . . . . . . . . . . . . . . 262 9.5 സംഗ്രഹം. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267

10 സ്മാർട്ട്ഫോൺ ആപ്പ് വികസനം

269

10.1 സ്‌മാർട്ട്‌ഫോൺ ആപ്പ് വികസനത്തിൻ്റെ ആമുഖം. . . . . . . . . . . . . . . . . . 269

10.1.1 ഓവർview സ്മാർട്ട്ഫോൺ ആപ്പ് വികസനം. . . . . . . . . . . . . . . 270

10.1.2 ആൻഡ്രോയിഡ് പ്രോജക്റ്റിൻ്റെ ഘടന. . . . . . . . . . . . . . . . . . . . . . 270

10.1.3 iOS പ്രോജക്റ്റിൻ്റെ ഘടന. . . . . . . . . . . . . . . . . . . . . . . . 271

10.1.4 ഒരു Android പ്രവർത്തനത്തിൻ്റെ ജീവിതചക്രം. . . . . . . . . . . . . . . . . . . . . . 272

10.1.5 iOS-ൻ്റെ ജീവിതചക്രം Viewകണ്ട്രോളർ . . . . . . . . . . . . . . . . . . . . . . 273

10.2 ഒരു പുതിയ സ്മാർട്ട്ഫോൺ ആപ്പ് പ്രോജക്റ്റ് സൃഷ്ടിക്കുന്നു. . . . . . . . . . . . . . . . . . . . . 275

10.2.1 ആൻഡ്രോയിഡ് വികസനത്തിനായി തയ്യാറെടുക്കുന്നു. . . . . . . . . . . . . . . . . . . 275

10.2.2 ഒരു പുതിയ ആൻഡ്രോയിഡ് പ്രോജക്റ്റ് സൃഷ്ടിക്കുന്നു. . . . . . . . . . . . . . . . . . . . . . 275

10.2.3 MyRainmaker-നുള്ള ആശ്രിതത്വം ചേർക്കുന്നു. . . . . . . . . . . . . . . . . 276

10.2.4 ആൻഡ്രോയിഡിൽ അനുമതി അഭ്യർത്ഥന. . . . . . . . . . . . . . . . . . . . . . 277

10.2.5 iOS വികസനത്തിനായി തയ്യാറെടുക്കുന്നു. . . . . . . . . . . . . . . . . . . . . . 277

10.2.6 ഒരു പുതിയ iOS പ്രോജക്റ്റ് സൃഷ്ടിക്കുന്നു. . . . . . . . . . . . . . . . . . . . . . . . 278

10.2.7 MyRainmaker-നുള്ള ആശ്രിതത്വം ചേർക്കുന്നു. . . . . . . . . . . . . . . . . 279

10.2.8 iOS-ൽ അനുമതി അഭ്യർത്ഥന. . . . . . . . . . . . . . . . . . . . . . . . . 280

10.3 ആപ്പിൻ്റെ പ്രവർത്തനപരമായ ആവശ്യകതകളുടെ വിശകലനം. . . . . . . . . . . . . . . . . . 281

10.3.1 പദ്ധതിയുടെ പ്രവർത്തനപരമായ ആവശ്യകതകളുടെ വിശകലനം. . . . . . . . . . . . 282

10.3.2 ഉപയോക്തൃ മാനേജ്മെൻ്റ് ആവശ്യകതകളുടെ വിശകലനം. . . . . . . . . . . . . . . 282 10.3.3 ഡിവൈസ് പ്രൊവിഷനിംഗിൻ്റെയും ബൈൻഡിംഗ് ആവശ്യകതകളുടെയും വിശകലനം. . . . . . . 283 10.3.4 റിമോട്ട് കൺട്രോൾ ആവശ്യകതകളുടെ വിശകലനം. . . . . . . . . . . . . . . . 283 10.3.5 ഷെഡ്യൂളിംഗ് ആവശ്യകതകളുടെ വിശകലനം. . . . . . . . . . . . . . . . . . . 284 10.3.6 ഉപയോക്തൃ കേന്ദ്രത്തിൻ്റെ ആവശ്യകതകളുടെ വിശകലനം. . . . . . . . . . . . . . . . . . 285 10.4 ഉപയോക്തൃ മാനേജ്മെൻ്റിൻ്റെ വികസനം. . . . . . . . . . . . . . . . . . . . . . . . 285 10.4.1 റെയിൻമേക്കർ എപിഐകളിലേക്കുള്ള ആമുഖം. . . . . . . . . . . . . . . . . . . . . . 285 10.4.2 സ്മാർട്ട്ഫോൺ വഴിയുള്ള ആശയവിനിമയം ആരംഭിക്കുന്നു. . . . . . . . . . . . . . . . 286 10.4.3 അക്കൗണ്ട് രജിസ്ട്രേഷൻ. . . . . . . . . . . . . . . . . . . . . . . . . . . . 286 10.4.4 അക്കൗണ്ട് ലോഗിൻ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289 10.5 ഡിവൈസ് പ്രൊവിഷനിംഗിൻ്റെ വികസനം. . . . . . . . . . . . . . . . . . . . . . . 292 10.5.1 സ്കാനിംഗ് ഉപകരണങ്ങൾ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293 10.5.2 കണക്റ്റുചെയ്യുന്ന ഉപകരണങ്ങൾ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295 10.5.3 രഹസ്യ കീകൾ സൃഷ്ടിക്കുന്നു. . . . . . . . . . . . . . . . . . . . . . . . . . . 298 10.5.4 നോഡ് ഐഡി ലഭിക്കുന്നു. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 298 10.5.5 പ്രൊവിഷനിംഗ് ഉപകരണങ്ങൾ. . . . . . . . . . . . . . . . . . . . . . . . . . . . 300 10.6 ഉപകരണ നിയന്ത്രണത്തിൻ്റെ വികസനം. . . . . . . . . . . . . . . . . . . . . . . . . . 302 10.6.1 ക്ലൗഡ് അക്കൗണ്ടുകളിലേക്ക് ഉപകരണങ്ങൾ ബന്ധിപ്പിക്കുന്നു. . . . . . . . . . . . . . . . . . . . 303 10.6.2 ഉപകരണങ്ങളുടെ ഒരു ലിസ്റ്റ് ലഭിക്കുന്നു. . . . . . . . . . . . . . . . . . . . . . . . . . 305 10.6.3 ഉപകരണ നില നേടുന്നു. . . . . . . . . . . . . . . . . . . . . . . . . . . 308 10.6.4 ഉപകരണ നില മാറ്റുന്നു. . . . . . . . . . . . . . . . . . . . . . . . . . 310 10.7 ഷെഡ്യൂളിംഗിൻ്റെയും ഉപയോക്തൃ കേന്ദ്രത്തിൻ്റെയും വികസനം. . . . . . . . . . . . . . . . . . . 313 10.7.1 ഷെഡ്യൂളിംഗ് ഫംഗ്ഷൻ നടപ്പിലാക്കുന്നു. . . . . . . . . . . . . . . . . . . . 313 10.7.2 ഉപയോക്തൃ കേന്ദ്രം നടപ്പിലാക്കുന്നു. . . . . . . . . . . . . . . . . . . . . . . . . 315 10.7.3 കൂടുതൽ ക്ലൗഡ് API-കൾ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318 10.8 സംഗ്രഹം. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319

11 ഫേംവെയർ നവീകരണവും പതിപ്പ് മാനേജ്മെൻ്റും

321

11.1 ഫേംവെയർ അപ്ഗ്രേഡ്. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321

11.1.1 ഓവർview പാർട്ടീഷൻ ടേബിളുകൾ. . . . . . . . . . . . . . . . . . . . . . . . 322

11.1.2 ഫേംവെയർ ബൂട്ട് പ്രക്രിയ. . . . . . . . . . . . . . . . . . . . . . . . . . . 324

11.1.3 ഓവർview ഒടിഎ മെക്കാനിസത്തിൻ്റെ. . . . . . . . . . . . . . . . . . . . . 326

11.2 ഫേംവെയർ പതിപ്പ് മാനേജ്മെൻ്റ്. . . . . . . . . . . . . . . . . . . . . . . . . . 329

11.2.1 ഫേംവെയർ അടയാളപ്പെടുത്തൽ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329

11.2.2 റോൾബാക്കും ആൻ്റി-റോൾബാക്കും. . . . . . . . . . . . . . . . . . . . . . . . 331

11.3 പ്രാക്ടീസ്: ഓവർ-ദി-എയർ (OTA) Exampഎൽ. . . . . . . . . . . . . . . . . . . . . . . 332

11.3.1 ഒരു ലോക്കൽ ഹോസ്റ്റ് വഴി ഫേംവെയർ നവീകരിക്കുക. . . . . . . . . . . . . . . . . 332

11.3.2 ESP റെയിൻമേക്കർ വഴി ഫേംവെയർ നവീകരിക്കുക. . . . . . . . . . . . . . . 335

11.4 സംഗ്രഹം. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342

IV ഒപ്റ്റിമൈസേഷനും വൻതോതിലുള്ള ഉൽപ്പാദനവും

343

12 പവർ മാനേജ്മെൻ്റും ലോ-പവർ ഒപ്റ്റിമൈസേഷനും

345

12.1 ESP32-C3 പവർ മാനേജ്മെൻ്റ് . . . . . . . . . . . . . . . . . . . . . . . . . . . 345

12.1.1 ഡൈനാമിക് ഫ്രീക്വൻസി സ്കെയിലിംഗ്. . . . . . . . . . . . . . . . . . . . . . . . 346

12.1.2 പവർ മാനേജ്മെൻ്റ് കോൺഫിഗറേഷൻ. . . . . . . . . . . . . . . . . . . . 348

12.2 ESP32-C3 ലോ-പവർ മോഡ് . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348

12.2.1 മോഡം-സ്ലീപ്പ് മോഡ് . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349

12.2.2 ലൈറ്റ്-സ്ലീപ്പ് മോഡ്. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 351

12.2.3 ഡീപ്-സ്ലീപ്പ് മോഡ് . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356

12.2.4 വ്യത്യസ്ത പവർ മോഡുകളിലെ നിലവിലെ ഉപഭോഗം. . . . . . . . . . . . . 358

12.3 പവർ മാനേജ്‌മെൻ്റും ലോ-പവർ ഡീബഗ്ഗിംഗും. . . . . . . . . . . . . . . . . 359

12.3.1 ലോഗ് ഡീബഗ്ഗിംഗ്. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 360

12.3.2 GPIO ഡീബഗ്ഗിംഗ്. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362

12.4 പ്രാക്ടീസ്: സ്മാർട്ട് ലൈറ്റ് പ്രോജക്റ്റിലെ പവർ മാനേജ്മെൻ്റ്. . . . . . . . . . . . . . . 363

12.4.1 പവർ മാനേജ്മെൻ്റ് ഫീച്ചർ ക്രമീകരിക്കുന്നു. . . . . . . . . . . . . . . . . 364

12.4.2 പവർ മാനേജ്മെൻ്റ് ലോക്കുകൾ ഉപയോഗിക്കുക. . . . . . . . . . . . . . . . . . . . . . 365

12.4.3 വൈദ്യുതി ഉപഭോഗം പരിശോധിക്കുന്നു. . . . . . . . . . . . . . . . . . . . . . . 366

12.5 സംഗ്രഹം. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367

13 മെച്ചപ്പെടുത്തിയ ഉപകരണ സുരക്ഷാ സവിശേഷതകൾ

369

13.1 ഓവർview IoT ഉപകരണ ഡാറ്റ സുരക്ഷ . . . . . . . . . . . . . . . . . . . . . . . 369

13.1.1 എന്തുകൊണ്ട് IoT ഉപകരണ ഡാറ്റ സുരക്ഷിതമാക്കുന്നു? . . . . . . . . . . . . . . . . . . . . . . 370

13.1.2 IoT ഉപകരണ ഡാറ്റ സുരക്ഷയ്ക്കുള്ള അടിസ്ഥാന ആവശ്യകതകൾ. . . . . . . . . . . . 371

13.2 ഡാറ്റ സമഗ്രത സംരക്ഷണം. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 372

13.2.1 ഇൻ്റഗ്രിറ്റി വെരിഫിക്കേഷൻ രീതിയുടെ ആമുഖം. . . . . . . . . . . . . . 372

13.2.2 ഫേംവെയർ ഡാറ്റയുടെ സമഗ്രത പരിശോധിച്ചുറപ്പിക്കൽ. . . . . . . . . . . . . . . . . . 373

13.2.3 ഉദാampഎൽ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374

13.3 ഡാറ്റ രഹസ്യാത്മക സംരക്ഷണം. . . . . . . . . . . . . . . . . . . . . . . . . . 374

13.3.1 ഡാറ്റ എൻക്രിപ്ഷൻ്റെ ആമുഖം. . . . . . . . . . . . . . . . . . . . . . 374

13.3.2 ഫ്ലാഷ് എൻക്രിപ്ഷൻ സ്കീമിലേക്കുള്ള ആമുഖം. . . . . . . . . . . . . . . . . 376

13.3.3 ഫ്ലാഷ് എൻക്രിപ്ഷൻ കീ സ്റ്റോറേജ്. . . . . . . . . . . . . . . . . . . . . . . 379

13.3.4 ഫ്ലാഷ് എൻക്രിപ്ഷൻ്റെ പ്രവർത്തന രീതി. . . . . . . . . . . . . . . . . . . . 380

13.3.5 ഫ്ലാഷ് എൻക്രിപ്ഷൻ പ്രക്രിയ. . . . . . . . . . . . . . . . . . . . . . . . . . 381

13.3.6 എൻവിഎസ് എൻക്രിപ്ഷൻ്റെ ആമുഖം. . . . . . . . . . . . . . . . . . . . . . 383

13.3.7 ഉദാampഫ്ലാഷ് എൻക്രിപ്ഷനും എൻവിഎസ് എൻക്രിപ്ഷനും. . . . . . . . . . . 384

13.4 ഡാറ്റ നിയമസാധുത സംരക്ഷണം. . . . . . . . . . . . . . . . . . . . . . . . . . . . 386

13.4.1 ഡിജിറ്റൽ സിഗ്നേച്ചറിനുള്ള ആമുഖം. . . . . . . . . . . . . . . . . . . . . 386

13.4.2 ഓവർview സുരക്ഷിത ബൂട്ട് സ്കീമിൻ്റെ. . . . . . . . . . . . . . . . . . . . . 388

13.4.3 സോഫ്റ്റ്‌വെയർ സെക്യൂർ ബൂട്ടിൻ്റെ ആമുഖം. . . . . . . . . . . . . . . . . . . 388 13.4.4 ഹാർഡ്‌വെയർ സെക്യൂർ ബൂട്ടിൻ്റെ ആമുഖം. . . . . . . . . . . . . . . . . . 390 13.4.5 ഉദാampലെസ്. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 394 13.5 പ്രാക്ടീസ്: മാസ് പ്രൊഡക്ഷനിലെ സുരക്ഷാ സവിശേഷതകൾ. . . . . . . . . . . . . . . . . . 396 13.5.1 ഫ്ലാഷ് എൻക്രിപ്ഷനും സുരക്ഷിത ബൂട്ടും. . . . . . . . . . . . . . . . . . . . . 396 13.5.2 ബാച്ച് ഫ്ലാഷ് ടൂളുകൾ ഉപയോഗിച്ച് ഫ്ലാഷ് എൻക്രിപ്ഷനും സുരക്ഷിത ബൂട്ടും പ്രവർത്തനക്ഷമമാക്കുന്നു. . 397 13.5.3 സ്മാർട്ട് ലൈറ്റ് പ്രോജക്റ്റിൽ ഫ്ലാഷ് എൻക്രിപ്ഷനും സുരക്ഷിത ബൂട്ടും പ്രവർത്തനക്ഷമമാക്കുന്നു. . . 398 13.6 സംഗ്രഹം. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 398

14 വൻതോതിലുള്ള ഉൽപ്പാദനത്തിനായുള്ള ഫേംവെയർ ബേണിംഗും ടെസ്റ്റിംഗും

399

14.1 വൻതോതിലുള്ള ഉൽപ്പാദനത്തിൽ ഫേംവെയർ കത്തിക്കുന്നു. . . . . . . . . . . . . . . . . . . . . . 399

14.1.1 ഡാറ്റ പാർട്ടീഷനുകൾ നിർവചിക്കുന്നു. . . . . . . . . . . . . . . . . . . . . . . . . . 399

14.1.2 ഫേംവെയർ ബേണിംഗ്. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 402

14.2 മാസ് പ്രൊഡക്ഷൻ ടെസ്റ്റിംഗ്. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403

14.3 പ്രാക്ടീസ്: സ്മാർട്ട് ലൈറ്റ് പ്രോജക്റ്റിലെ മാസ് പ്രൊഡക്ഷൻ ഡാറ്റ. . . . . . . . . . . . . 404

14.4 സംഗ്രഹം. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404

15 ESP സ്ഥിതിവിവരക്കണക്കുകൾ: റിമോട്ട് മോണിറ്ററിംഗ് പ്ലാറ്റ്ഫോം

405

15.1 ESP ഇൻസൈറ്റുകൾക്കുള്ള ആമുഖം. . . . . . . . . . . . . . . . . . . . . . . . . . . . 405

15.2 ESP സ്ഥിതിവിവരക്കണക്കുകൾ ഉപയോഗിച്ച് ആരംഭിക്കുക. . . . . . . . . . . . . . . . . . . . . . . . . 409

15.2.1 esp-insights പ്രോജക്റ്റിലെ ESP സ്ഥിതിവിവരക്കണക്കുകൾ ഉപയോഗിച്ച് ആരംഭിക്കുന്നു. . . . . . 409

15.2.2 റണ്ണിംഗ് എക്സ്ampesp-ഇൻസൈറ്റ്സ് പ്രോജക്റ്റിൽ le. . . . . . . . . . . . . . . 411

15.2.3 Coredump വിവരങ്ങൾ റിപ്പോർട്ടുചെയ്യുന്നു. . . . . . . . . . . . . . . . . . . . . 411

15.2.4 താൽപ്പര്യ രേഖകൾ ഇഷ്ടാനുസൃതമാക്കൽ. . . . . . . . . . . . . . . . . . . . . . . . 412

15.2.5 റീബൂട്ട് കാരണം റിപ്പോർട്ടുചെയ്യുന്നു. . . . . . . . . . . . . . . . . . . . . . . . . 413

15.2.6 കസ്റ്റം മെട്രിക്‌സ് റിപ്പോർട്ടുചെയ്യുന്നു. . . . . . . . . . . . . . . . . . . . . . . . . 413

15.3 പരിശീലിക്കുക: സ്മാർട്ട് ലൈറ്റ് പ്രോജക്റ്റിൽ ESP ഇൻസൈറ്റുകൾ ഉപയോഗിക്കുന്നു. . . . . . . . . . . . . . . 416

15.4 സംഗ്രഹം. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417

ആമുഖം
ESP32-C3 എന്നത് ഓപ്പൺ സോഴ്‌സ് RISC-V ആർക്കിടെക്ചറിനെ അടിസ്ഥാനമാക്കിയുള്ള ഒരു സിംഗിൾ-കോർ Wi-Fi, ബ്ലൂടൂത്ത് 5 (LE) മൈക്രോകൺട്രോളർ SoC ആണ്. ഇത് പവർ, I/O കഴിവുകൾ, സുരക്ഷ എന്നിവയുടെ ശരിയായ ബാലൻസ് അടിച്ചേൽപ്പിക്കുന്നു, അങ്ങനെ ബന്ധിപ്പിച്ച ഉപകരണങ്ങൾക്ക് ഒപ്റ്റിമൽ ചെലവ് കുറഞ്ഞ പരിഹാരം വാഗ്ദാനം ചെയ്യുന്നു. ESP32-C3 കുടുംബത്തിൻ്റെ വിവിധ ആപ്ലിക്കേഷനുകൾ കാണിക്കുന്നതിന്, Espressif-ൻ്റെ ഈ പുസ്തകം, IoT പ്രോജക്റ്റ് വികസനത്തിൻ്റെയും പരിസ്ഥിതി സജ്ജീകരണത്തിൻ്റെയും അടിസ്ഥാനകാര്യങ്ങൾ മുതൽ പ്രാക്ടിക്കൽ എക്‌സ് വരെ AIoT-യിലൂടെ രസകരമായ ഒരു യാത്രയിലേക്ക് നിങ്ങളെ കൊണ്ടുപോകും.ampലെസ്. ആദ്യ നാല് അധ്യായങ്ങൾ IoT, ESP റെയിൻമേക്കർ, ESP-IDF എന്നിവയെക്കുറിച്ച് സംസാരിക്കുന്നു. ഹാർഡ്‌വെയർ ഡിസൈനും ഡ്രൈവർ ഡെവലപ്‌മെൻ്റും സംബന്ധിച്ച 5-ഉം 6-ഉം അധ്യായങ്ങൾ സംക്ഷിപ്തമാണ്. നിങ്ങൾ പുരോഗമിക്കുമ്പോൾ, Wi-Fi നെറ്റ്‌വർക്കുകളും മൊബൈൽ ആപ്പുകളും വഴി നിങ്ങളുടെ പ്രോജക്‌റ്റ് എങ്ങനെ കോൺഫിഗർ ചെയ്യാമെന്ന് നിങ്ങൾ കണ്ടെത്തും. അവസാനമായി, നിങ്ങളുടെ പ്രോജക്റ്റ് ഒപ്റ്റിമൈസ് ചെയ്യാനും അത് വൻതോതിൽ ഉൽപ്പാദിപ്പിക്കാനും നിങ്ങൾ പഠിക്കും.
നിങ്ങൾ ബന്ധപ്പെട്ട മേഖലകളിലെ എഞ്ചിനീയർ, ഒരു സോഫ്റ്റ്വെയർ ആർക്കിടെക്റ്റ്, ഒരു അധ്യാപകൻ, ഒരു വിദ്യാർത്ഥി അല്ലെങ്കിൽ IoT-യിൽ താൽപ്പര്യമുള്ള ആരെങ്കിലും ആണെങ്കിൽ, ഈ പുസ്തകം നിങ്ങൾക്കുള്ളതാണ്.
നിങ്ങൾക്ക് കോഡ് ഡൗൺലോഡ് ചെയ്യാം exampGitHub-ലെ Espressif-ൻ്റെ സൈറ്റിൽ നിന്ന് ഈ പുസ്തകത്തിൽ le ഉപയോഗിച്ചിരിക്കുന്നു. IoT വികസനത്തെക്കുറിച്ചുള്ള ഏറ്റവും പുതിയ വിവരങ്ങൾക്ക്, ഞങ്ങളുടെ ഔദ്യോഗിക അക്കൗണ്ട് പിന്തുടരുക.

മുഖവുര
ഒരു വിവരദായക ലോകം
ഇൻ്റർനെറ്റിൻ്റെ തരംഗത്തെ മറികടന്ന്, ഡിജിറ്റൽ സമ്പദ്‌വ്യവസ്ഥയിലെ ഒരു പുതിയ തരം ഇൻഫ്രാസ്ട്രക്ചറായി ഇൻ്റർനെറ്റ് ഓഫ് തിംഗ്‌സ് (IoT) അതിൻ്റെ മഹത്തായ അരങ്ങേറ്റം നടത്തി. സാങ്കേതികവിദ്യയെ പൊതുജനങ്ങളിലേക്ക് അടുപ്പിക്കുന്നതിന്, നമ്മുടെ കാലത്തെ ഏറ്റവും പ്രധാനപ്പെട്ട ചില പ്രശ്‌നങ്ങൾ പരിഹരിക്കാൻ ജീവിതത്തിൻ്റെ എല്ലാ മേഖലകളിൽ നിന്നുമുള്ള ഡെവലപ്പർമാർക്ക് IoT ഉപയോഗിക്കാമെന്ന കാഴ്ചപ്പാടിനായി എസ്പ്രെസ്സിഫ് സിസ്റ്റംസ് പ്രവർത്തിക്കുന്നു. "എല്ലാ കാര്യങ്ങളുടെയും ഇൻ്റലിജൻ്റ് നെറ്റ്‌വർക്ക്" എന്ന ലോകമാണ് ഭാവിയിൽ നിന്ന് നമ്മൾ പ്രതീക്ഷിക്കുന്നത്.
നമ്മുടെ സ്വന്തം ചിപ്പുകൾ രൂപകൽപ്പന ചെയ്യുന്നത് ആ കാഴ്ചയുടെ നിർണായക ഘടകമാണ്. ഇത് ഒരു മാരത്തൺ ആകണം, സാങ്കേതിക അതിരുകൾക്കെതിരെ നിരന്തരമായ മുന്നേറ്റങ്ങൾ ആവശ്യമാണ്. "ഗെയിം ചേഞ്ചർ" ESP8266 മുതൽ Wi-Fi, Bluetoothr (LE) കണക്റ്റിവിറ്റികൾ സമന്വയിപ്പിക്കുന്ന ESP32 സീരീസ് വരെ, തുടർന്ന് AI ആക്‌സിലറേഷൻ സജ്ജീകരിച്ചിരിക്കുന്ന ESP32-S3 വരെ, AIoT സൊല്യൂഷനുകൾക്കായി ഉൽപ്പന്നങ്ങൾ ഗവേഷണം ചെയ്യുന്നതും വികസിപ്പിക്കുന്നതും Espressif ഒരിക്കലും നിർത്തുന്നില്ല. IoT ഡെവലപ്‌മെൻ്റ് ഫ്രെയിംവർക്ക് ESP-IDF, Mesh Development Framework ESP-MDF, ഡിവൈസ് കണക്റ്റിവിറ്റി പ്ലാറ്റ്‌ഫോം ESP RainMaker എന്നിവ പോലുള്ള ഞങ്ങളുടെ ഓപ്പൺ സോഴ്‌സ് സോഫ്‌റ്റ്‌വെയർ ഉപയോഗിച്ച്, AIoT ആപ്ലിക്കേഷനുകൾ നിർമ്മിക്കുന്നതിന് ഞങ്ങൾ ഒരു സ്വതന്ത്ര ചട്ടക്കൂട് സൃഷ്‌ടിച്ചിരിക്കുന്നു.
2022 ജൂലൈ വരെ, എസ്‌പ്രെസിഫിൻ്റെ IoT ചിപ്‌സെറ്റുകളുടെ ക്യുമുലേറ്റീവ് ഷിപ്പ്‌മെൻ്റുകൾ 800 ദശലക്ഷം കവിഞ്ഞു, ഇത് Wi-Fi MCU വിപണിയിൽ മുന്നിട്ടുനിൽക്കുകയും ലോകമെമ്പാടുമുള്ള കണക്റ്റുചെയ്‌ത നിരവധി ഉപകരണങ്ങളെ ശക്തിപ്പെടുത്തുകയും ചെയ്യുന്നു. മികവിനായുള്ള പിന്തുടരൽ എല്ലാ എസ്പ്രെസിഫ് ഉൽപ്പന്നത്തെയും അതിൻ്റെ ഉയർന്ന നിലവാരത്തിലുള്ള സംയോജനത്തിനും ചെലവ് കാര്യക്ഷമതയ്ക്കും വലിയ വിജയമാക്കുന്നു. ESP32-C3 യുടെ പ്രകാശനം എസ്പ്രെസിഫിൻ്റെ സ്വയം വികസിപ്പിച്ച സാങ്കേതികവിദ്യയുടെ ഒരു സുപ്രധാന നാഴികക്കല്ലാണ്. 32MHz-ൽ പ്രവർത്തിക്കാൻ കഴിയുന്ന 400KB SRAM ഉള്ള ഒരു സിംഗിൾ-കോർ, 160-ബിറ്റ്, RISC-V അടിസ്ഥാനമാക്കിയുള്ള MCU ആണ് ഇത്. ഇത് 2.4 GHz വൈ-ഫൈയും ബ്ലൂടൂത്ത് 5 (LE) ഉം ദീർഘദൂര പിന്തുണയോടെ സംയോജിപ്പിച്ചിരിക്കുന്നു. ഇത് പവർ, I/O കഴിവുകൾ, സുരക്ഷ എന്നിവയുടെ മികച്ച ബാലൻസ് ഉണ്ടാക്കുന്നു, അങ്ങനെ കണക്റ്റുചെയ്‌ത ഉപകരണങ്ങൾക്ക് ഒപ്റ്റിമൽ ചെലവ്-ഫലപ്രദമായ പരിഹാരം വാഗ്ദാനം ചെയ്യുന്നു. അത്തരം ശക്തമായ ESP32-C3 അടിസ്ഥാനമാക്കി, ഈ പുസ്തകം വിശദമായ ചിത്രീകരണവും പ്രായോഗിക മുൻകൂർ സഹിതവും IoT- യുമായി ബന്ധപ്പെട്ട അറിവ് മനസ്സിലാക്കാൻ വായനക്കാരെ സഹായിക്കാൻ ഉദ്ദേശിച്ചുള്ളതാണ്.ampലെസ്.
എന്തുകൊണ്ടാണ് ഞങ്ങൾ ഈ പുസ്തകം എഴുതിയത്?
എസ്പ്രെസിഫ് സിസ്റ്റംസ് ഒരു അർദ്ധചാലക കമ്പനിയേക്കാൾ കൂടുതലാണ്. ഇത് ഒരു IoT പ്ലാറ്റ്‌ഫോം കമ്പനിയാണ്, അത് സാങ്കേതിക മേഖലയിലെ മുന്നേറ്റങ്ങൾക്കും പുതുമകൾക്കും വേണ്ടി എപ്പോഴും പരിശ്രമിക്കുന്നു. അതേ സമയം, Espressif അതിൻ്റെ സ്വയം വികസിപ്പിച്ച ഓപ്പറേറ്റിംഗ് സിസ്റ്റവും സോഫ്റ്റ്‌വെയർ ചട്ടക്കൂടും ഓപ്പൺ സോഴ്‌സ് ചെയ്യുകയും കമ്മ്യൂണിറ്റിയുമായി പങ്കിടുകയും ചെയ്തു, ഇത് ഒരു അദ്വിതീയ ആവാസവ്യവസ്ഥയ്ക്ക് രൂപം നൽകി. എഞ്ചിനീയർമാർ, നിർമ്മാതാക്കൾ, സാങ്കേതിക താൽപ്പര്യമുള്ളവർ എന്നിവർ എസ്പ്രെസിഫിൻ്റെ ഉൽപ്പന്നങ്ങളെ അടിസ്ഥാനമാക്കി പുതിയ സോഫ്റ്റ്‌വെയർ ആപ്ലിക്കേഷനുകൾ സജീവമായി വികസിപ്പിക്കുകയും സ്വതന്ത്രമായി ആശയവിനിമയം നടത്തുകയും അവരുടെ അനുഭവം പങ്കിടുകയും ചെയ്യുന്നു. YouTube, GitHub എന്നിവ പോലുള്ള വിവിധ പ്ലാറ്റ്‌ഫോമുകളിൽ നിങ്ങൾക്ക് ഡവലപ്പർമാരുടെ ആകർഷകമായ ആശയങ്ങൾ എല്ലായ്‌പ്പോഴും കാണാൻ കഴിയും. ഇംഗ്ലീഷ്, ചൈനീസ്, ജർമ്മൻ, ഫ്രഞ്ച്, ജാപ്പനീസ് എന്നിവയുൾപ്പെടെ പത്തിലധികം ഭാഷകളിൽ എസ്പ്രെസിഫ് ചിപ്‌സെറ്റുകളെ അടിസ്ഥാനമാക്കി 100-ലധികം പുസ്‌തകങ്ങൾ നിർമ്മിച്ചിട്ടുള്ള എഴുത്തുകാരുടെ എണ്ണം വർദ്ധിക്കുന്നതിന് എസ്പ്രെസിഫിൻ്റെ ഉൽപ്പന്നങ്ങളുടെ ജനപ്രീതി പ്രചോദനം നൽകിയിട്ടുണ്ട്.

കമ്മ്യൂണിറ്റി പങ്കാളികളുടെ പിന്തുണയും വിശ്വാസവുമാണ് എസ്പ്രെസിഫിൻ്റെ തുടർച്ചയായ നവീകരണത്തെ പ്രോത്സാഹിപ്പിക്കുന്നത്. “ഞങ്ങളുടെ ചിപ്പുകൾ, ഓപ്പറേറ്റിംഗ് സിസ്റ്റങ്ങൾ, ചട്ടക്കൂടുകൾ, പരിഹാരങ്ങൾ, ക്ലൗഡ്, ബിസിനസ്സ് സമ്പ്രദായങ്ങൾ, ടൂളുകൾ, ഡോക്യുമെൻ്റേഷൻ, എഴുത്തുകൾ, ആശയങ്ങൾ മുതലായവ സമകാലിക ജീവിതത്തിലെ ഏറ്റവും ഞെരുക്കമുള്ള പ്രശ്‌നങ്ങളിൽ ആളുകൾക്ക് ആവശ്യമുള്ള ഉത്തരങ്ങൾക്ക് കൂടുതൽ പ്രസക്തമാക്കാൻ ഞങ്ങൾ ശ്രമിക്കുന്നു. ഇതാണ് എസ്പ്രെസിഫിൻ്റെ ഏറ്റവും ഉയർന്ന അഭിലാഷവും ധാർമ്മിക കോമ്പസും. എസ്പ്രെസിഫിൻ്റെ സ്ഥാപകനും സിഇഒയുമായ മിസ്റ്റർ ടിയോ സ്വീ ആൻ പറഞ്ഞു.
Espressif വായനയെയും ആശയങ്ങളെയും വിലമതിക്കുന്നു. IoT സാങ്കേതികവിദ്യയുടെ തുടർച്ചയായ നവീകരണം എഞ്ചിനീയർമാർക്ക് ഉയർന്ന ആവശ്യകതകൾ സൃഷ്ടിക്കുന്നതിനാൽ, IoT ചിപ്പുകൾ, ഓപ്പറേറ്റിംഗ് സിസ്റ്റങ്ങൾ, സോഫ്റ്റ്‌വെയർ ചട്ടക്കൂടുകൾ, ആപ്ലിക്കേഷൻ സ്കീമുകൾ, ക്ലൗഡ് സേവന ഉൽപ്പന്നങ്ങൾ എന്നിവയിൽ വേഗത്തിൽ വൈദഗ്ദ്ധ്യം നേടാൻ കൂടുതൽ ആളുകളെ എങ്ങനെ സഹായിക്കാനാകും? മനുഷ്യന് മീൻ കൊടുക്കുന്നതിനേക്കാൾ നല്ലത് മീൻ പിടിക്കാൻ പഠിപ്പിക്കുന്നതാണ് എന്ന പഴഞ്ചൊല്ല്. ഒരു ബ്രെയിൻസ്റ്റോമിംഗ് സെഷനിൽ, ഐഒടി വികസനത്തിൻ്റെ പ്രധാന അറിവ് വ്യവസ്ഥാപിതമായി അടുക്കാൻ ഞങ്ങൾക്ക് ഒരു പുസ്തകം എഴുതാമെന്ന് ഞങ്ങൾക്ക് തോന്നി. ഞങ്ങൾ അത് വിജയിച്ചു, ഒരു കൂട്ടം മുതിർന്ന എഞ്ചിനീയർമാരെ വേഗത്തിൽ ശേഖരിച്ചു, എംബഡഡ് പ്രോഗ്രാമിംഗ്, IoT ഹാർഡ്‌വെയർ, സോഫ്റ്റ്‌വെയർ വികസനം എന്നിവയിലെ സാങ്കേതിക ടീമിൻ്റെ അനുഭവം സംയോജിപ്പിച്ചു, എല്ലാം ഈ പുസ്തകത്തിൻ്റെ പ്രസിദ്ധീകരണത്തിന് സംഭാവന നൽകി. എഴുത്തിൻ്റെ പ്രക്രിയയിൽ, വസ്തുനിഷ്ഠവും നീതിയുക്തവുമാകാൻ ഞങ്ങൾ പരമാവധി ശ്രമിച്ചു, കൊക്കൂൺ ഒഴിവാക്കി, ഇൻറർനെറ്റ് ഓഫ് തിംഗ്സിൻ്റെ സങ്കീർണ്ണതയും ആകർഷണീയതയും പറയാൻ സംക്ഷിപ്തമായ പദപ്രയോഗങ്ങൾ ഉപയോഗിക്കുന്നു. വികസന പ്രക്രിയയിൽ നേരിടുന്ന ചോദ്യങ്ങൾക്ക് വ്യക്തമായി ഉത്തരം നൽകുന്നതിനും പ്രസക്തമായ സാങ്കേതിക വിദഗ്ധർക്കും തീരുമാനമെടുക്കുന്നവർക്കും പ്രായോഗിക IoT വികസന മാർഗ്ഗനിർദ്ദേശങ്ങൾ നൽകുന്നതിനുമായി, കമ്മ്യൂണിറ്റിയുടെ ഫീഡ്‌ബാക്കും നിർദ്ദേശങ്ങളും പരാമർശിക്കുന്ന പൊതുവായ ചോദ്യങ്ങൾ ഞങ്ങൾ ശ്രദ്ധാപൂർവ്വം സംഗ്രഹിച്ചു.
പുസ്തക ഘടന
ഈ പുസ്തകം എഞ്ചിനീയർ കേന്ദ്രീകൃത വീക്ഷണം എടുക്കുകയും IoT പ്രോജക്റ്റ് വികസനത്തിന് ആവശ്യമായ അറിവ് ഘട്ടം ഘട്ടമായി വിശദീകരിക്കുകയും ചെയ്യുന്നു. ഇത് ഇനിപ്പറയുന്ന രീതിയിൽ നാല് ഭാഗങ്ങൾ ഉൾക്കൊള്ളുന്നു:
· തയ്യാറാക്കൽ (അധ്യായം 1): IoT പ്രോജക്റ്റ് വികസനത്തിന് ശക്തമായ അടിത്തറ പാകുന്നതിനായി ഈ ഭാഗം IoT യുടെ ആർക്കിടെക്ചർ, സാധാരണ IoT പ്രോജക്റ്റ് ഫ്രെയിംവർക്ക്, ESP റെയിൻമേക്കർ ക്ലൗഡ് പ്ലാറ്റ്ഫോം, വികസന പരിസ്ഥിതി ESP-IDF എന്നിവ അവതരിപ്പിക്കുന്നു.
· ഹാർഡ്‌വെയർ ആൻഡ് ഡ്രൈവർ ഡെവലപ്‌മെൻ്റ് (അധ്യായം 5): ESP6-C32 ചിപ്‌സെറ്റിനെ അടിസ്ഥാനമാക്കി, ഈ ഭാഗം മിനിമം ഹാർഡ്‌വെയർ സിസ്റ്റത്തെയും ഡ്രൈവർ ഡെവലപ്‌മെൻ്റിനെയും കുറിച്ച് വിശദീകരിക്കുന്നു, കൂടാതെ ഡിമ്മിംഗ്, കളർ ഗ്രേഡിംഗ്, വയർലെസ് കമ്മ്യൂണിക്കേഷൻ എന്നിവയുടെ നിയന്ത്രണം നടപ്പിലാക്കുന്നു.
· വയർലെസ് കമ്മ്യൂണിക്കേഷനും നിയന്ത്രണവും (അധ്യായം 7): ESP11-C32 ചിപ്പ്, ലോക്കൽ & ക്ലൗഡ് കൺട്രോൾ പ്രോട്ടോക്കോളുകൾ, ഉപകരണങ്ങളുടെ ലോക്കൽ & റിമോട്ട് കൺട്രോൾ എന്നിവ അടിസ്ഥാനമാക്കിയുള്ള ഇൻ്റലിജൻ്റ് വൈഫൈ കോൺഫിഗറേഷൻ സ്കീമിനെ ഈ ഭാഗം വിശദീകരിക്കുന്നു. സ്‌മാർട്ട്‌ഫോൺ ആപ്പുകൾ വികസിപ്പിക്കുന്നതിനും ഫേംവെയർ അപ്‌ഗ്രേഡ് ചെയ്യുന്നതിനും പതിപ്പ് മാനേജ്‌മെൻ്റിനുമുള്ള സ്കീമുകളും ഇത് നൽകുന്നു.
ഒപ്റ്റിമൈസേഷനും വൻതോതിലുള്ള ഉൽപ്പാദനവും (അധ്യായം 12-15): പവർ മാനേജ്മെൻ്റ്, ലോ-പവർ ഒപ്റ്റിമൈസേഷൻ, മെച്ചപ്പെടുത്തിയ സുരക്ഷ എന്നിവയിൽ ഉൽപ്പന്നങ്ങളുടെ ഒപ്റ്റിമൈസേഷനിൽ ശ്രദ്ധ കേന്ദ്രീകരിക്കുന്ന വിപുലമായ IoT ആപ്ലിക്കേഷനുകൾക്കായി ഈ ഭാഗം ഉദ്ദേശിച്ചുള്ളതാണ്. ഇത് ഫേംവെയർ ബേണിംഗും വൻതോതിലുള്ള ഉൽപ്പാദനത്തിൽ ടെസ്റ്റിംഗും അവതരിപ്പിക്കുന്നു, കൂടാതെ റിമോട്ട് മോണിറ്ററിംഗ് പ്ലാറ്റ്ഫോം ESP ഇൻസൈറ്റുകൾ വഴി ഉപകരണ ഫേംവെയറിൻ്റെ റണ്ണിംഗ് സ്റ്റാറ്റസും ലോഗുകളും എങ്ങനെ നിർണ്ണയിക്കും.

സോഴ്സ് കോഡിനെ കുറിച്ച്
വായനക്കാർക്ക് പഴയത് പ്രവർത്തിപ്പിക്കാംampഈ പുസ്തകത്തിലെ പ്രോഗ്രാമുകൾ, ഒന്നുകിൽ കോഡ് സ്വമേധയാ നൽകിയോ അല്ലെങ്കിൽ പുസ്തകത്തോടൊപ്പമുള്ള സോഴ്സ് കോഡ് ഉപയോഗിച്ചോ. ഞങ്ങൾ സിദ്ധാന്തത്തിൻ്റെയും പരിശീലനത്തിൻ്റെയും സംയോജനത്തിന് ഊന്നൽ നൽകുന്നു, അങ്ങനെ മിക്കവാറും എല്ലാ അധ്യായങ്ങളിലും സ്മാർട്ട് ലൈറ്റ് പ്രോജക്റ്റിനെ അടിസ്ഥാനമാക്കി ഒരു പരിശീലന വിഭാഗം സജ്ജമാക്കുന്നു. എല്ലാ കോഡുകളും ഓപ്പൺ സോഴ്‌സ് ആണ്. സോഴ്‌സ് കോഡ് ഡൗൺലോഡ് ചെയ്യാനും GitHub-ലെ ഈ പുസ്തകവുമായി ബന്ധപ്പെട്ട വിഭാഗങ്ങളിലും ഞങ്ങളുടെ ഔദ്യോഗിക ഫോറമായ esp32.com-ലും ചർച്ച ചെയ്യാനും വായനക്കാർക്ക് സ്വാഗതം. ഈ പുസ്തകത്തിൻ്റെ ഓപ്പൺ സോഴ്‌സ് കോഡ് അപ്പാച്ചെ ലൈസൻസ് 2.0-ൻ്റെ നിബന്ധനകൾക്ക് വിധേയമാണ്.
രചയിതാവിൻ്റെ കുറിപ്പ്
ഈ പുസ്തകം ഔദ്യോഗികമായി നിർമ്മിച്ചിരിക്കുന്നത് എസ്പ്രെസിഫ് സിസ്റ്റംസ് ആണ്, കമ്പനിയുടെ മുതിർന്ന എഞ്ചിനീയർമാർ എഴുതിയതാണ്. IoT-യുമായി ബന്ധപ്പെട്ട വ്യവസായങ്ങളിലെ മാനേജർമാർക്കും R&D ഉദ്യോഗസ്ഥർക്കും, ബന്ധപ്പെട്ട മേജർമാരുടെ അധ്യാപകർക്കും വിദ്യാർത്ഥികൾക്കും, ഇൻ്റർനെറ്റ് ഓഫ് തിംഗ്സ് മേഖലയിലെ താൽപ്പര്യമുള്ളവർക്കും ഇത് അനുയോജ്യമാണ്. ഒരു നല്ല അദ്ധ്യാപകനെയും സുഹൃത്തിനെയും പോലെയാകാൻ ഈ പുസ്തകത്തിന് ഒരു വർക്ക് മാനുവൽ, ഒരു റഫറൻസ്, ഒരു ബെഡ്‌സൈഡ് ബുക്ക് ആയി പ്രവർത്തിക്കാൻ കഴിയുമെന്ന് ഞങ്ങൾ പ്രതീക്ഷിക്കുന്നു.
ഈ പുസ്തകം സമാഹരിക്കുന്ന സമയത്ത്, സ്വദേശത്തും വിദേശത്തുമുള്ള വിദഗ്ധർ, പണ്ഡിതന്മാർ, സാങ്കേതിക വിദഗ്ധർ എന്നിവരുടെ പ്രസക്തമായ ചില ഗവേഷണ ഫലങ്ങൾ ഞങ്ങൾ പരാമർശിച്ചു, അക്കാദമിക് മാനദണ്ഡങ്ങൾക്കനുസൃതമായി അവ ഉദ്ധരിക്കാൻ ഞങ്ങൾ പരമാവധി ശ്രമിച്ചു. എന്നിരുന്നാലും, ചില വിട്ടുവീഴ്ചകൾ ഉണ്ടാകുന്നത് ഒഴിവാക്കാനാവാത്തതാണ്, അതിനാൽ പ്രസക്തമായ എല്ലാ രചയിതാക്കൾക്കും ഞങ്ങളുടെ അഗാധമായ ആദരവും നന്ദിയും അറിയിക്കാൻ ഞങ്ങൾ ആഗ്രഹിക്കുന്നു. കൂടാതെ, ഞങ്ങൾ ഇൻറർനെറ്റിൽ നിന്നുള്ള വിവരങ്ങൾ ഉദ്ധരിച്ചിട്ടുണ്ട്, അതിനാൽ യഥാർത്ഥ രചയിതാക്കൾക്കും പ്രസാധകരോടും നന്ദി അറിയിക്കുകയും എല്ലാ വിവരങ്ങളുടെയും ഉറവിടം സൂചിപ്പിക്കാൻ ഞങ്ങൾക്ക് കഴിയില്ലെന്നതിൽ ക്ഷമ ചോദിക്കുകയും ചെയ്യുന്നു.
ഉയർന്ന നിലവാരമുള്ള ഒരു പുസ്തകം നിർമ്മിക്കുന്നതിനായി, ഞങ്ങൾ ആന്തരിക ചർച്ചകളുടെ റൗണ്ട് സംഘടിപ്പിച്ചു, കൂടാതെ ട്രയൽ റീഡർമാരുടെയും പ്രസാധക എഡിറ്റർമാരുടെയും നിർദ്ദേശങ്ങളിൽ നിന്നും ഫീഡ്‌ബാക്കിൽ നിന്നും പഠിച്ചു. ഇവിടെ, ഈ വിജയകരമായ പ്രവർത്തനത്തിന് എല്ലാവരും സംഭാവന നൽകിയ നിങ്ങളുടെ സഹായത്തിന് ഞങ്ങൾ വീണ്ടും നന്ദി പറയുന്നു.
അവസാനത്തേത്, എന്നാൽ ഏറ്റവും പ്രധാനമായി, ഞങ്ങളുടെ ഉൽപ്പന്നങ്ങളുടെ ജനനത്തിനും ജനപ്രീതിക്കും വേണ്ടി കഠിനാധ്വാനം ചെയ്ത Espressif-ലെ എല്ലാവർക്കും നന്ദി.
IoT പ്രോജക്ടുകളുടെ വികസനം വിപുലമായ അറിവുകൾ ഉൾക്കൊള്ളുന്നു. പുസ്‌തകത്തിൻ്റെ ദൈർഘ്യത്തിലും രചയിതാവിൻ്റെ നിലവാരത്തിലും അനുഭവത്തിലും പരിമിതപ്പെടുത്തിയിരിക്കുന്ന ഒഴിവാക്കലുകൾ ഒഴിവാക്കാനാവില്ല. ആയതിനാൽ വിദഗ്ധരും വായനക്കാരും ഞങ്ങളുടെ തെറ്റുകൾ വിമർശിക്കുകയും തിരുത്തുകയും ചെയ്യണമെന്ന് വിനീതമായി അഭ്യർത്ഥിക്കുന്നു. ഈ പുസ്‌തകത്തിന് എന്തെങ്കിലും നിർദ്ദേശങ്ങൾ ഉണ്ടെങ്കിൽ, ദയവായി book@espressif.com എന്ന വിലാസത്തിൽ ഞങ്ങളെ ബന്ധപ്പെടുക. നിങ്ങളുടെ ഫീഡ്‌ബാക്കിനായി ഞങ്ങൾ കാത്തിരിക്കുകയാണ്.

ഈ പുസ്തകം എങ്ങനെ ഉപയോഗിക്കാം?
ഈ പുസ്‌തകത്തിലെ പ്രോജക്‌റ്റുകളുടെ കോഡ് ഓപ്പൺ സോഴ്‌സ് ചെയ്‌തതാണ്. ഞങ്ങളുടെ GitHub ശേഖരണത്തിൽ നിന്ന് നിങ്ങൾക്ക് ഇത് ഡൗൺലോഡ് ചെയ്യാനും ഞങ്ങളുടെ ഔദ്യോഗിക ഫോറത്തിൽ നിങ്ങളുടെ ചിന്തകളും ചോദ്യങ്ങളും പങ്കിടാനും കഴിയും. GitHub: https://github.com/espressif/book-esp32c3-iot-projects ഫോറം: https://www.esp32.com/bookc3 പുസ്തകത്തിലുടനീളം, ചുവടെ കാണിച്ചിരിക്കുന്നതുപോലെ ഹൈലൈറ്റ് ചെയ്ത ഭാഗങ്ങൾ ഉണ്ടാകും.
സോഴ്സ് കോഡ് ഈ പുസ്തകത്തിൽ, ഞങ്ങൾ സിദ്ധാന്തത്തിൻ്റെയും പരിശീലനത്തിൻ്റെയും സംയോജനത്തിന് ഊന്നൽ നൽകുന്നു, അങ്ങനെ മിക്കവാറും എല്ലാ അധ്യായങ്ങളിലും സ്മാർട്ട് ലൈറ്റ് പ്രോജക്റ്റിനെക്കുറിച്ച് ഒരു പരിശീലന വിഭാഗം സജ്ജമാക്കി. എന്നതിൽ തുടങ്ങുന്ന രണ്ട് വരികൾക്കിടയിൽ അനുബന്ധ ഘട്ടങ്ങളും ഉറവിട പേജും അടയാളപ്പെടുത്തും tag ഉറവിട കോഡ്.
കുറിപ്പ്/നുറുങ്ങുകൾ നിങ്ങളുടെ പ്രോഗ്രാം വിജയകരമായി ഡീബഗ്ഗ് ചെയ്യുന്നതിനുള്ള ചില നിർണായക വിവരങ്ങളും ഓർമ്മപ്പെടുത്തലും ഇവിടെയാണ്. മുതൽ ആരംഭിക്കുന്ന കട്ടിയുള്ള രണ്ട് വരികൾക്കിടയിൽ അവ അടയാളപ്പെടുത്തും tag കുറിപ്പ് അല്ലെങ്കിൽ നുറുങ്ങുകൾ.
ഈ പുസ്‌തകത്തിലെ മിക്ക കമാൻഡുകളും ലിനക്‌സിന് കീഴിലാണ് നടപ്പിലാക്കുന്നത്, “$” എന്ന അക്ഷരം ആവശ്യപ്പെടുന്നു. കമാൻഡിന് എക്സിക്യൂട്ട് ചെയ്യുന്നതിന് സൂപ്പർ യൂസർ പ്രത്യേകാവകാശങ്ങൾ ആവശ്യമാണെങ്കിൽ, പ്രോംപ്റ്റിന് പകരം "#" നൽകും. Mac സിസ്റ്റങ്ങളിലെ കമാൻഡ് പ്രോംപ്റ്റ് "%" ആണ്, Mac-ൽ ESP-IDF ഇൻസ്റ്റോൾ ചെയ്യുന്ന വിഭാഗം 4.2.3-ൽ ഉപയോഗിച്ചിരിക്കുന്നു.
ഈ പുസ്തകത്തിലെ ബോഡി ടെക്‌സ്‌റ്റ് ചാർട്ടറിൽ അച്ചടിക്കും, അതേസമയം കോഡ് എക്‌സ്ampലെസ്, ഘടകങ്ങൾ, പ്രവർത്തനങ്ങൾ, വേരിയബിളുകൾ, കോഡ് file പേരുകൾ, കോഡ് ഡയറക്‌ടറികൾ, സ്ട്രിംഗുകൾ എന്നിവ കൊറിയർ ന്യൂയിലായിരിക്കും.
ഉപയോക്താവിന് ഇൻപുട്ട് ചെയ്യേണ്ട കമാൻഡുകൾ അല്ലെങ്കിൽ ടെക്‌സ്‌റ്റുകൾ, "Enter" കീ അമർത്തി നൽകാവുന്ന കമാൻഡുകൾ കൊറിയർ ന്യൂ ബോൾഡിൽ പ്രിൻ്റ് ചെയ്യും. ലോഗുകളും കോഡ് ബ്ലോക്കുകളും ഇളം നീല ബോക്സുകളിൽ അവതരിപ്പിക്കും.
ExampLe:
രണ്ടാമതായി, NVS പാർട്ടീഷൻ ബൈനറി ജനറേറ്റുചെയ്യാൻ esp-idf/components/nvs flash/nvs പാർട്ടീഷൻ ജനറേറ്റർ/nvs പാർട്ടീഷൻ gen.py ഉപയോഗിക്കുക. file ഇനിപ്പറയുന്ന കമാൻഡ് ഉപയോഗിച്ച് ഡെവലപ്‌മെൻ്റ് ഹോസ്റ്റിൽ:
$ പൈത്തൺ $IDF PATH/components/nvs ഫ്ലാഷ്/nvs പാർട്ടീഷൻ ജനറേറ്റർ/nvs പാർട്ടീഷൻ gen.py –ഇൻപുട്ട് മാസ് prod.csv –ഔട്ട്‌പുട്ട് മാസ് prod.bin –size NVS പാർട്ടീഷൻ സൈസ്

അധ്യായം 1

ആമുഖം

വരെ

ഐഒടി

20-ആം നൂറ്റാണ്ടിൻ്റെ അവസാനത്തിൽ, കമ്പ്യൂട്ടർ നെറ്റ്‌വർക്കുകളുടെയും ആശയവിനിമയ സാങ്കേതികവിദ്യകളുടെയും ഉയർച്ചയോടെ, ഇൻ്റർനെറ്റ് അതിവേഗം ജനങ്ങളുടെ ജീവിതത്തിലേക്ക് സമന്വയിച്ചു. ഇൻ്റർനെറ്റ് സാങ്കേതികവിദ്യ പക്വത പ്രാപിച്ചുകൊണ്ടിരിക്കുമ്പോൾ, ഇൻ്റർനെറ്റ് ഓഫ് തിംഗ്സ് (IoT) എന്ന ആശയം ജനിച്ചു. അക്ഷരാർത്ഥത്തിൽ, IoT എന്നാൽ കാര്യങ്ങൾ ബന്ധിപ്പിച്ചിരിക്കുന്ന ഇൻ്റർനെറ്റ് എന്നാണ് അർത്ഥമാക്കുന്നത്. യഥാർത്ഥ ഇൻ്റർനെറ്റ് സ്ഥലത്തിൻ്റെയും സമയത്തിൻ്റെയും പരിധികൾ ലംഘിക്കുകയും "വ്യക്തിയും വ്യക്തിയും" തമ്മിലുള്ള അകലം കുറയ്ക്കുകയും ചെയ്യുമ്പോൾ, IoT "കാര്യങ്ങളെ" ഒരു പ്രധാന പങ്കാളിയാക്കുന്നു, "ആളുകളും" "കാര്യങ്ങളും" കൂടുതൽ അടുപ്പിക്കുന്നു. ഭാവിയിൽ, IoT വിവര വ്യവസായത്തിൻ്റെ ചാലകശക്തിയായി മാറും.
അപ്പോൾ എന്താണ് ഇൻ്റർനെറ്റ് ഓഫ് തിംഗ്സ്?
ഇൻ്റർനെറ്റ് ഓഫ് തിംഗ്‌സിനെ കൃത്യമായി നിർവചിക്കുക പ്രയാസമാണ്, കാരണം അതിൻ്റെ അർത്ഥവും വ്യാപ്തിയും നിരന്തരം വികസിച്ചുകൊണ്ടിരിക്കുന്നു. 1995-ൽ ബിൽ ഗേറ്റ്‌സ് തൻ്റെ ദി റോഡ് എഹെഡ് എന്ന പുസ്തകത്തിലാണ് IoT എന്ന ആശയം ആദ്യമായി അവതരിപ്പിച്ചത്. ലളിതമായി പറഞ്ഞാൽ, ഇൻ്റർനെറ്റ് വഴി പരസ്പരം വിവരങ്ങൾ കൈമാറാൻ IoT വസ്തുക്കളെ പ്രാപ്തമാക്കുന്നു. അതിൻ്റെ ആത്യന്തിക ലക്ഷ്യം "എല്ലാത്തിൻ്റെയും ഇൻ്റർനെറ്റ്" സ്ഥാപിക്കുക എന്നതാണ്. ഇത് IoT യുടെ ആദ്യകാല വ്യാഖ്യാനവും ഭാവി സാങ്കേതികവിദ്യയുടെ ഒരു ഫാൻ്റസിയുമാണ്. മുപ്പത് വർഷത്തിന് ശേഷം, സമ്പദ്‌വ്യവസ്ഥയുടെയും സാങ്കേതികവിദ്യയുടെയും ദ്രുതഗതിയിലുള്ള വികാസത്തോടെ, ഫാൻ്റസി യാഥാർത്ഥ്യത്തിലേക്ക് വരുന്നു. സ്മാർട്ട് ഉപകരണങ്ങൾ, സ്മാർട്ട് ഹോമുകൾ, സ്മാർട്ട് സിറ്റികൾ, വാഹനങ്ങളുടെ ഇൻ്റർനെറ്റ്, ധരിക്കാവുന്ന ഉപകരണങ്ങൾ എന്നിവ മുതൽ IoT സാങ്കേതികവിദ്യകൾ പിന്തുണയ്ക്കുന്ന "മെറ്റാവേസ്" വരെ, പുതിയ ആശയങ്ങൾ നിരന്തരം ഉയർന്നുവരുന്നു. ഈ അധ്യായത്തിൽ, ഇൻ്റർനെറ്റ് ഓഫ് തിംഗ്സിൻ്റെ ആർക്കിടെക്ചറിൻ്റെ വിശദീകരണത്തോടെ ഞങ്ങൾ ആരംഭിക്കും, തുടർന്ന് IoT-യെ കുറിച്ച് വ്യക്തമായ ധാരണ ലഭിക്കാൻ നിങ്ങളെ സഹായിക്കുന്നതിന് ഏറ്റവും സാധാരണമായ IoT ആപ്ലിക്കേഷനായ സ്മാർട്ട് ഹോം അവതരിപ്പിക്കും.
1.1 ഐഒടിയുടെ വാസ്തുവിദ്യ
വ്യത്യസ്‌ത വ്യവസായങ്ങളിൽ വ്യത്യസ്‌ത ആപ്ലിക്കേഷൻ ആവശ്യങ്ങളും ഫോമുകളും ഉള്ള ഒന്നിലധികം സാങ്കേതികവിദ്യകൾ ഇൻ്റർനെറ്റ് ഓഫ് തിംഗ്‌സിൽ ഉൾപ്പെടുന്നു. ഐഒടിയുടെ ഘടന, പ്രധാന സാങ്കേതിക വിദ്യകൾ, ആപ്ലിക്കേഷൻ സവിശേഷതകൾ എന്നിവ ക്രമപ്പെടുത്തുന്നതിന്, ഒരു ഏകീകൃത ആർക്കിടെക്ചറും ഒരു സാധാരണ സാങ്കേതിക സംവിധാനവും സ്ഥാപിക്കേണ്ടത് ആവശ്യമാണ്. ഈ പുസ്തകത്തിൽ, IoT യുടെ ആർക്കിടെക്ചർ നാല് ലെയറുകളായി തിരിച്ചിരിക്കുന്നു: പെർസെപ്ഷൻ & കൺട്രോൾ ലെയർ, നെറ്റ്‌വർക്ക് ലെയർ, പ്ലാറ്റ്ഫോം ലെയർ, ആപ്ലിക്കേഷൻ ലെയർ.
പെർസെപ്ഷൻ & കൺട്രോൾ ലെയർ IoT ആർക്കിടെക്ചറിൻ്റെ ഏറ്റവും അടിസ്ഥാന ഘടകമെന്ന നിലയിൽ, IoT യുടെ സമഗ്രമായ സംവേദനം സാക്ഷാത്കരിക്കുന്നതിനുള്ള കാതലാണ് പെർസെപ്ഷൻ & കൺട്രോൾ ലെയർ. വിവരങ്ങൾ ശേഖരിക്കുകയും തിരിച്ചറിയുകയും നിയന്ത്രിക്കുകയും ചെയ്യുക എന്നതാണ് ഇതിൻ്റെ പ്രധാന പ്രവർത്തനം. ഗ്രഹിക്കാനുള്ള കഴിവുള്ള വിവിധ ഉപകരണങ്ങൾ ഇതിൽ അടങ്ങിയിരിക്കുന്നു,
3

തിരിച്ചറിയൽ, നിയന്ത്രണം, നിർവ്വഹണം, കൂടാതെ മെറ്റീരിയൽ പ്രോപ്പർട്ടികൾ, പെരുമാറ്റ പ്രവണതകൾ, ഉപകരണ നില എന്നിവ പോലുള്ള ഡാറ്റ വീണ്ടെടുക്കുന്നതിനും വിശകലനം ചെയ്യുന്നതിനും ഉത്തരവാദിത്തമുണ്ട്. ഈ രീതിയിൽ, IoT യഥാർത്ഥ ഭൗതിക ലോകത്തെ തിരിച്ചറിയുന്നു. കൂടാതെ, ഉപകരണത്തിൻ്റെ നില നിയന്ത്രിക്കാനും ലേയറിന് കഴിയും.
ഈ ലെയറിൻ്റെ ഏറ്റവും സാധാരണമായ ഉപകരണങ്ങൾ വിവിധ സെൻസറുകളാണ്, അവ വിവര ശേഖരണത്തിലും തിരിച്ചറിയലിലും ഒരു പ്രധാന പങ്ക് വഹിക്കുന്നു. കാഴ്ചയ്ക്ക് തുല്യമായ ഫോട്ടോസെൻസിറ്റീവ് സെൻസറുകൾ, കേൾവിക്ക് അക്കോസ്റ്റിക് സെൻസറുകൾ, മണത്തിലേക്കുള്ള ഗ്യാസ് സെൻസറുകൾ, സ്പർശനത്തിനുള്ള മർദ്ദവും താപനിലയും സെൻസിറ്റീവ് സെൻസറുകൾ എന്നിങ്ങനെയുള്ള സെൻസറുകൾ മനുഷ്യ സെൻസറി അവയവങ്ങൾ പോലെയാണ്. ഈ എല്ലാ "ഇന്ദ്രിയാവയവങ്ങളും" ഉപയോഗിച്ച്, വസ്തുക്കൾ "ജീവനോടെ" മാറുകയും ഭൗതിക ലോകത്തെ ബുദ്ധിപരമായി മനസ്സിലാക്കാനും തിരിച്ചറിയാനും കൈകാര്യം ചെയ്യാനും പ്രാപ്തരാക്കുന്നു.
നെറ്റ്‌വർക്ക് ലെയർ പെർസെപ്ഷൻ & കൺട്രോൾ ലെയറിൽ നിന്ന് ലഭിച്ച ഡാറ്റയും ആപ്ലിക്കേഷൻ ലെയറിൽ നിന്ന് തിരിച്ച് പെർസെപ്ഷൻ & കൺട്രോൾ ലെയറിലേക്ക് നൽകുന്ന കമാൻഡുകളും ഉൾപ്പെടെയുള്ള വിവരങ്ങൾ കൈമാറുക എന്നതാണ് നെറ്റ്‌വർക്ക് ലെയറിൻ്റെ പ്രധാന പ്രവർത്തനം. IoT സിസ്റ്റത്തിൻ്റെ വിവിധ പാളികളെ ബന്ധിപ്പിക്കുന്ന ഒരു പ്രധാന ആശയവിനിമയ പാലമായി ഇത് പ്രവർത്തിക്കുന്നു. ഇൻ്റർനെറ്റ് ഓഫ് തിംഗ്സിൻ്റെ അടിസ്ഥാന മോഡൽ സജ്ജീകരിക്കുന്നതിന്, ഒബ്ജക്റ്റുകളെ ഒരു നെറ്റ്‌വർക്കിലേക്ക് സംയോജിപ്പിക്കുന്നതിന് രണ്ട് ഘട്ടങ്ങൾ ഉൾപ്പെടുന്നു: ഇൻ്റർനെറ്റിലേക്കുള്ള ആക്‌സസ്, ഇൻ്റർനെറ്റ് വഴിയുള്ള പ്രക്ഷേപണം.
ഇൻ്റർനെറ്റ് ഇൻറർനെറ്റിലേക്കുള്ള പ്രവേശനം വ്യക്തിയും വ്യക്തിയും തമ്മിലുള്ള പരസ്പരബന്ധം പ്രാപ്തമാക്കുന്നു, എന്നാൽ വലിയ കുടുംബത്തിലേക്ക് കാര്യങ്ങൾ ഉൾപ്പെടുത്തുന്നതിൽ പരാജയപ്പെടുന്നു. IoT യുടെ ആവിർഭാവത്തിന് മുമ്പ്, മിക്ക കാര്യങ്ങളും "നെറ്റ്‌വർക്കിന് കഴിയുന്നത്" ആയിരുന്നില്ല. സാങ്കേതികവിദ്യയുടെ തുടർച്ചയായ വികസനത്തിന് നന്ദി, IoT കാര്യങ്ങൾ ഇൻ്റർനെറ്റിലേക്ക് കണക്റ്റുചെയ്യുന്നു, അങ്ങനെ "ആളുകളും കാര്യങ്ങളും", "കാര്യങ്ങളും കാര്യങ്ങളും" എന്നിവ തമ്മിലുള്ള പരസ്പരബന്ധം മനസ്സിലാക്കുന്നു. ഇൻ്റർനെറ്റ് കണക്ഷൻ നടപ്പിലാക്കാൻ രണ്ട് പൊതു വഴികളുണ്ട്: വയർഡ് നെറ്റ്‌വർക്ക് ആക്‌സസ്, വയർലെസ് നെറ്റ്‌വർക്ക് ആക്‌സസ്.
വയർഡ് നെറ്റ്‌വർക്ക് ആക്‌സസ് രീതികളിൽ ഇഥർനെറ്റ്, സീരിയൽ കമ്മ്യൂണിക്കേഷൻ (ഉദാഹരണത്തിന്, RS-232, RS-485), USB എന്നിവ ഉൾപ്പെടുന്നു, അതേസമയം വയർലെസ് നെറ്റ്‌വർക്ക് ആക്‌സസ് വയർലെസ് ആശയവിനിമയത്തെ ആശ്രയിച്ചിരിക്കുന്നു, ഇത് ഹ്രസ്വ-ദൂര വയർലെസ് കമ്മ്യൂണിക്കേഷൻ, ലോംഗ് റേഞ്ച് വയർലെസ് കമ്മ്യൂണിക്കേഷൻ എന്നിങ്ങനെ വിഭജിക്കാം.
ഷോർട്ട് റേഞ്ച് വയർലെസ് കമ്മ്യൂണിക്കേഷനിൽ ZigBee, Bluetoothr, Wi-Fi, Near-Field Communication (NFC), റേഡിയോ ഫ്രീക്വൻസി ഐഡൻ്റിഫിക്കേഷൻ (RFID) എന്നിവ ഉൾപ്പെടുന്നു. ദീർഘദൂര വയർലെസ് ആശയവിനിമയത്തിൽ എൻഹാൻസ്ഡ് മെഷീൻ ടൈപ്പ് കമ്മ്യൂണിക്കേഷൻ (eMTC), LoRa, നാരോ ബാൻഡ് ഇൻ്റർനെറ്റ് ഓഫ് തിംഗ്സ് (NB-IoT), 2G, 3G, 4G, 5G മുതലായവ ഉൾപ്പെടുന്നു.
ഇൻ്റർനെറ്റ് വഴിയുള്ള സംപ്രേക്ഷണം ഇൻ്റർനെറ്റ് ആക്‌സസിൻ്റെ വ്യത്യസ്ത രീതികൾ ഡാറ്റയുടെ അനുബന്ധ ഫിസിക്കൽ ട്രാൻസ്മിഷൻ ലിങ്കിലേക്ക് നയിക്കുന്നു. ഡാറ്റ കൈമാറാൻ ഏത് ആശയവിനിമയ പ്രോട്ടോക്കോൾ ഉപയോഗിക്കണമെന്ന് തീരുമാനിക്കുക എന്നതാണ് അടുത്ത കാര്യം. ഇൻ്റർനെറ്റ് ടെർമിനലുകളുമായി താരതമ്യപ്പെടുത്തുമ്പോൾ, മിക്ക IoT ടെർമിനലുകൾക്കും നിലവിൽ കുറവാണ്
4 ESP32-C3 വയർലെസ് അഡ്വഞ്ചർ: IoT-യിലേക്കുള്ള ഒരു സമഗ്ര ഗൈഡ്

പ്രോസസ്സിംഗ് പ്രകടനം, സംഭരണ ​​ശേഷി, നെറ്റ്‌വർക്ക് നിരക്ക് മുതലായവ പോലുള്ള ലഭ്യമായ ഉറവിടങ്ങൾ, അതിനാൽ IoT ആപ്ലിക്കേഷനുകളിൽ കുറച്ച് ഉറവിടങ്ങൾ ഉൾക്കൊള്ളുന്ന ഒരു ആശയവിനിമയ പ്രോട്ടോക്കോൾ തിരഞ്ഞെടുക്കേണ്ടത് ആവശ്യമാണ്. ഇന്ന് വ്യാപകമായി ഉപയോഗിക്കുന്ന രണ്ട് കമ്മ്യൂണിക്കേഷൻ പ്രോട്ടോക്കോളുകൾ ഉണ്ട്: മെസേജ് ക്യൂയിംഗ് ടെലിമെട്രി ട്രാൻസ്പോർട്ട് (MQTT), കൺസ്ട്രെയിൻഡ് ആപ്ലിക്കേഷൻ പ്രോട്ടോക്കോൾ (CoAP).
പ്ലാറ്റ്ഫോം ലെയർ പ്ലാറ്റ്ഫോം ലെയർ പ്രധാനമായും ഐഒടി ക്ലൗഡ് പ്ലാറ്റ്ഫോമുകളെയാണ് സൂചിപ്പിക്കുന്നത്. എല്ലാ IoT ടെർമിനലുകളും നെറ്റ്‌വർക്കുചെയ്യുമ്പോൾ, അവയുടെ ഡാറ്റ കണക്കാക്കാനും സംഭരിക്കാനും ഒരു IoT ക്ലൗഡ് പ്ലാറ്റ്‌ഫോമിൽ സംഗ്രഹിക്കേണ്ടതുണ്ട്. പ്ലാറ്റ്‌ഫോം ലെയർ പ്രധാനമായും ഐഒടി ആപ്ലിക്കേഷനുകളെ വലിയ ഉപകരണങ്ങളുടെ ആക്‌സസ് ചെയ്യുന്നതിനും മാനേജ് ചെയ്യുന്നതിനും സഹായിക്കുന്നു. ഇത് ഐഒടി ടെർമിനലുകളെ ക്ലൗഡ് പ്ലാറ്റ്‌ഫോമിലേക്ക് ബന്ധിപ്പിക്കുന്നു, ടെർമിനൽ ഡാറ്റ ശേഖരിക്കുന്നു, വിദൂര നിയന്ത്രണം നടപ്പിലാക്കുന്നതിനായി ടെർമിനലുകളിലേക്ക് കമാൻഡുകൾ നൽകുന്നു. വ്യവസായ ആപ്ലിക്കേഷനുകൾക്ക് ഉപകരണങ്ങൾ നൽകുന്നതിനുള്ള ഒരു ഇൻ്റർമീഡിയറ്റ് സേവനമെന്ന നിലയിൽ, പ്ലാറ്റ്ഫോം ലെയർ മുഴുവൻ ഐഒടി ആർക്കിടെക്ചറിലും ബന്ധിപ്പിക്കുന്ന പങ്ക് വഹിക്കുന്നു, അമൂർത്തമായ ബിസിനസ്സ് ലോജിക്കും സ്റ്റാൻഡേർഡ് കോർ ഡാറ്റ മോഡലും വഹിക്കുന്നു, ഇത് ഉപകരണങ്ങളുടെ ദ്രുത പ്രവേശനം തിരിച്ചറിയാൻ മാത്രമല്ല, ശക്തമായ മോഡുലാർ കഴിവുകൾ നൽകാനും കഴിയും. വ്യവസായ ആപ്ലിക്കേഷൻ സാഹചര്യങ്ങളിൽ വിവിധ ആവശ്യങ്ങൾ നിറവേറ്റുന്നതിന്. പ്ലാറ്റ്ഫോം ലെയറിൽ പ്രധാനമായും ഡിവൈസ് ആക്സസ്, ഡിവൈസ് മാനേജ്മെൻ്റ്, സെക്യൂരിറ്റി മാനേജ്മെൻ്റ്, മെസേജ് കമ്മ്യൂണിക്കേഷൻ, മോണിറ്ററിംഗ് ഓപ്പറേഷൻ ആൻഡ് മെയിൻ്റനൻസ്, ഡാറ്റ ആപ്ലിക്കേഷനുകൾ തുടങ്ങിയ ഫംഗ്ഷണൽ മൊഡ്യൂളുകൾ ഉൾപ്പെടുന്നു.
· ഉപകരണ ആക്സസ്, ടെർമിനലുകളും IoT ക്ലൗഡ് പ്ലാറ്റ്ഫോമുകളും തമ്മിലുള്ള കണക്ഷനും ആശയവിനിമയവും മനസ്സിലാക്കുന്നു.
· ഉപകരണ നിർമ്മാണം, ഉപകരണ പരിപാലനം, ഡാറ്റ പരിവർത്തനം, ഡാറ്റ സമന്വയം, ഉപകരണ വിതരണം തുടങ്ങിയ പ്രവർത്തനങ്ങൾ ഉൾപ്പെടെയുള്ള ഉപകരണ മാനേജ്മെൻ്റ്.
· സുരക്ഷാ മാനേജ്മെൻ്റ്, സുരക്ഷാ പ്രാമാണീകരണത്തിൻ്റെയും ആശയവിനിമയ സുരക്ഷയുടെയും വീക്ഷണകോണിൽ നിന്ന് IoT ഡാറ്റാ ട്രാൻസ്മിഷൻ്റെ സുരക്ഷ ഉറപ്പാക്കുന്നു.
· മൂന്ന് ട്രാൻസ്മിഷൻ ദിശകൾ ഉൾപ്പെടെയുള്ള സന്ദേശ ആശയവിനിമയം, അതായത്, ടെർമിനൽ IoT ക്ലൗഡ് പ്ലാറ്റ്‌ഫോമിലേക്ക് ഡാറ്റ അയയ്‌ക്കുന്നു, IoT ക്ലൗഡ് പ്ലാറ്റ്‌ഫോം സെർവർ സൈഡിലേക്കോ മറ്റ് IoT ക്ലൗഡ് പ്ലാറ്റ്‌ഫോമുകളിലേക്കോ ഡാറ്റ അയയ്ക്കുന്നു, കൂടാതെ സെർവർ സൈഡ് വിദൂരമായി IoT ഉപകരണങ്ങളെ നിയന്ത്രിക്കുന്നു.
· നിരീക്ഷണവും രോഗനിർണ്ണയവും, ഫേംവെയർ അപ്‌ഗ്രേഡ്, ഓൺലൈൻ ഡീബഗ്ഗിംഗ്, ലോഗ് സേവനങ്ങൾ മുതലായവ ഉൾപ്പെടുന്ന O&M മോണിറ്ററിംഗ്.
· ഡാറ്റയുടെ സംഭരണം, വിശകലനം, പ്രയോഗം എന്നിവ ഉൾപ്പെടുന്ന ഡാറ്റ ആപ്ലിക്കേഷനുകൾ.
ആപ്ലിക്കേഷൻ ലെയർ ആപ്ലിക്കേഷൻ മാനേജ് ചെയ്യാനും ഡാറ്റാബേസുകളും വിശകലന സോഫ്റ്റ്വെയറും പോലുള്ള ടൂളുകൾ ഉപയോഗിച്ച് അവയെ ഫിൽട്ടർ ചെയ്യാനും പ്രോസസ്സ് ചെയ്യാനും പ്ലാറ്റ്ഫോം ലെയറിൽ നിന്നുള്ള ഡാറ്റ ആപ്ലിക്കേഷൻ ലെയർ ഉപയോഗിക്കുന്നു. തത്ഫലമായുണ്ടാകുന്ന ഡാറ്റ, സ്‌മാർട്ട് ഹെൽത്ത്‌കെയർ, സ്‌മാർട്ട് അഗ്രികൾച്ചർ, സ്‌മാർട്ട് ഹോമുകൾ, സ്‌മാർട്ട് സിറ്റികൾ എന്നിങ്ങനെയുള്ള യഥാർത്ഥ ലോക IoT ആപ്ലിക്കേഷനുകൾക്കായി ഉപയോഗിക്കാനാകും.
തീർച്ചയായും, IoT യുടെ വാസ്തുവിദ്യയെ കൂടുതൽ ലെയറുകളായി വിഭജിക്കാം, എന്നാൽ അതിൽ എത്ര പാളികൾ അടങ്ങിയിട്ടുണ്ടെങ്കിലും, അടിസ്ഥാന തത്വം അടിസ്ഥാനപരമായി തന്നെ തുടരും. പഠിക്കുന്നു
അധ്യായം 1. IoT 5-ൻ്റെ ആമുഖം

IoT യുടെ ആർക്കിടെക്ചറിനെക്കുറിച്ച്, IoT സാങ്കേതികവിദ്യകളെക്കുറിച്ചുള്ള നമ്മുടെ ഗ്രാഹ്യം വർദ്ധിപ്പിക്കാനും പൂർണ്ണമായും പ്രവർത്തനക്ഷമമായ IoT പ്രോജക്റ്റുകൾ നിർമ്മിക്കാനും സഹായിക്കുന്നു.
സ്മാർട്ട് ഹോമുകളിലെ 1.2 IoT ആപ്ലിക്കേഷൻ
IoT ജീവിതത്തിൻ്റെ എല്ലാ മേഖലകളിലേക്കും കടന്നുകയറി, ഞങ്ങളുമായി ഏറ്റവും അടുത്ത ബന്ധമുള്ള IoT ആപ്ലിക്കേഷൻ സ്മാർട്ട് ഹോമാണ്. പല പരമ്പരാഗത വീട്ടുപകരണങ്ങളും ഇപ്പോൾ ഒന്നോ അതിലധികമോ IoT ഉപകരണങ്ങളുമായി സജ്ജീകരിച്ചിരിക്കുന്നു, കൂടാതെ പുതുതായി നിർമ്മിച്ച പല വീടുകളും തുടക്കത്തിൽ തന്നെ IoT സാങ്കേതികവിദ്യകൾ ഉപയോഗിച്ചാണ് രൂപകൽപ്പന ചെയ്തിരിക്കുന്നത്. ചിത്രം 1.1 ചില സാധാരണ സ്മാർട്ട് ഹോം ഉപകരണങ്ങൾ കാണിക്കുന്നു.
ചിത്രം 1.1. സാധാരണ സ്മാർട്ട് ഹോം ഉപകരണങ്ങൾ സ്‌മാർട്ട് ഹോമിൻ്റെ വികസനത്തെ സ്‌മാർട്ട് ഉൽപ്പന്നങ്ങളായി വിഭജിക്കാംtagഇ, സീൻ ഇൻ്റർകണക്ഷൻ എസ്tagഇ, ബുദ്ധിമാനായ എസ്tage, ചിത്രം 1.2 ൽ കാണിച്ചിരിക്കുന്നത് പോലെ.
ചിത്രം 1.2. വികസനം എസ്tagസ്മാർട്ട് ഹോം 6 ESP32-C3 വയർലെസ് അഡ്വഞ്ചർ: IoT-യിലേക്കുള്ള ഒരു സമഗ്ര ഗൈഡ്

ആദ്യ എസ്tagഇ സ്മാർട്ട് ഉൽപ്പന്നങ്ങളെ കുറിച്ചാണ്. പരമ്പരാഗത വീടുകളിൽ നിന്ന് വ്യത്യസ്തമായി, സ്മാർട്ട് ഹോമുകളിൽ, IoT ഉപകരണങ്ങൾ സെൻസറുകൾ ഉപയോഗിച്ച് സിഗ്നലുകൾ സ്വീകരിക്കുന്നു, കൂടാതെ Wi-Fi, Bluetooth LE, ZigBee തുടങ്ങിയ വയർലെസ് കമ്മ്യൂണിക്കേഷൻ സാങ്കേതികവിദ്യകളിലൂടെ നെറ്റ്‌വർക്ക് ചെയ്യുന്നു. സ്‌മാർട്ട്‌ഫോൺ ആപ്പുകൾ, വോയ്‌സ് അസിസ്റ്റൻ്റുകൾ, സ്‌മാർട്ട് സ്‌പീക്കർ കൺട്രോൾ തുടങ്ങിയ വിവിധ മാർഗങ്ങളിലൂടെ ഉപയോക്താക്കൾക്ക് സ്‌മാർട്ട് ഉൽപ്പന്നങ്ങൾ നിയന്ത്രിക്കാനാകും.tagഇ സീൻ ഇൻ്റർകണക്ഷനിൽ ശ്രദ്ധ കേന്ദ്രീകരിക്കുന്നു. ഇതിൽ എസ്tagഇ, ഡവലപ്പർമാർ ഇനി ഒരൊറ്റ സ്മാർട്ട് ഉൽപ്പന്നം നിയന്ത്രിക്കുന്നതിനെ കുറിച്ച് പരിഗണിക്കുന്നില്ല, എന്നാൽ രണ്ടോ അതിലധികമോ സ്മാർട്ട് ഉൽപ്പന്നങ്ങൾ പരസ്പരം ബന്ധിപ്പിക്കുന്നതും ഒരു പരിധി വരെ ഓട്ടോമേറ്റ് ചെയ്യുന്നതും ഒടുവിൽ ഒരു ഇഷ്‌ടാനുസൃത സീൻ മോഡ് രൂപീകരിക്കുന്നതും ആണ്. ഉദാampലെ, ഉപയോക്താവ് ഏതെങ്കിലും സീൻ മോഡ് ബട്ടൺ അമർത്തുമ്പോൾ, ലൈറ്റുകൾ, കർട്ടനുകൾ, എയർ കണ്ടീഷണറുകൾ എന്നിവ സ്വയമേവ പ്രീസെറ്റുകൾക്ക് അനുയോജ്യമാകും. തീർച്ചയായും, ട്രിഗർ വ്യവസ്ഥകളും നിർവ്വഹണ പ്രവർത്തനങ്ങളും ഉൾപ്പെടെ, ലിങ്കേജ് ലോജിക് എളുപ്പത്തിൽ സജ്ജീകരിക്കുന്നതിന് ഒരു മുൻവ്യവസ്ഥയുണ്ട്. ഇൻഡോർ താപനില 10 ഡിഗ്രി സെൽഷ്യസിൽ താഴെയാകുമ്പോൾ എയർ കണ്ടീഷനിംഗ് തപീകരണ മോഡ് പ്രവർത്തനക്ഷമമാകുമെന്ന് സങ്കൽപ്പിക്കുക; രാവിലെ 7 മണിക്ക്, ഉപയോക്താവിനെ ഉണർത്താൻ സംഗീതം പ്ലേ ചെയ്യുന്നു, സ്മാർട്ട് കർട്ടനുകൾ തുറക്കുന്നു, കൂടാതെ റൈസ് കുക്കറോ ബ്രെഡ് ടോസ്റ്ററോ ഒരു സ്മാർട്ട് സോക്കറ്റിലൂടെ ആരംഭിക്കുന്നു; ഉപയോക്താവ് എഴുന്നേറ്റ് കഴുകൽ പൂർത്തിയാക്കുമ്പോൾ, പ്രഭാതഭക്ഷണം ഇതിനകം വിളമ്പിക്കഴിഞ്ഞു, അതിനാൽ ജോലിക്ക് പോകാൻ കാലതാമസം ഉണ്ടാകില്ല. നമ്മുടെ ജീവിതം എത്ര സൗകര്യപ്രദമായിരിക്കുന്നു! മൂന്നാമത്തെ എസ്tagഇ ഇൻ്റലിജൻസ് പോകുന്നുtagഇ. കൂടുതൽ സ്‌മാർട്ട് ഹോം ഉപകരണങ്ങൾ ആക്‌സസ് ചെയ്യപ്പെടുന്നതിനാൽ, സൃഷ്‌ടിക്കുന്ന ഡാറ്റയുടെ തരങ്ങളും ലഭിക്കും. ക്ലൗഡ് കമ്പ്യൂട്ടിംഗ്, ബിഗ് ഡാറ്റ, ആർട്ടിഫിഷ്യൽ ഇൻ്റലിജൻസ് എന്നിവയുടെ സഹായത്തോടെ, സ്മാർട്ട് ഹോമുകളിൽ ഒരു "സ്മാർട്ടർ ബ്രെയിൻ" നട്ടുപിടിപ്പിച്ചതുപോലെയാണ് ഇത്, ഉപയോക്താവിൽ നിന്ന് പതിവ് കമാൻഡുകൾ ആവശ്യമില്ല. തീരുമാനങ്ങൾ എടുക്കുന്നതിനുള്ള ശുപാർശകൾ നൽകുന്നതുൾപ്പെടെയുള്ള പ്രവർത്തനങ്ങൾ ഓട്ടോമേറ്റ് ചെയ്യുന്നതിനായി അവർ മുമ്പത്തെ ഇടപെടലുകളിൽ നിന്ന് ഡാറ്റ ശേഖരിക്കുകയും ഉപയോക്താവിൻ്റെ പെരുമാറ്റ രീതികളും മുൻഗണനകളും പഠിക്കുകയും ചെയ്യുന്നു. നിലവിൽ, മിക്ക സ്മാർട്ട് ഹോമുകളും സീൻ ഇൻ്റർകണക്ഷനിലാണ്tagഇ. സ്മാർട്ട് ഉൽപ്പന്നങ്ങളുടെ നുഴഞ്ഞുകയറ്റ നിരക്കും ബുദ്ധിശക്തിയും വർദ്ധിക്കുന്നതിനനുസരിച്ച്, ആശയവിനിമയ പ്രോട്ടോക്കോളുകൾ തമ്മിലുള്ള തടസ്സങ്ങൾ നീക്കം ചെയ്യപ്പെടുന്നു. ഭാവിയിൽ, സ്മാർട്ട് ഹോമുകൾ അയൺമാനിലെ AI സിസ്റ്റം ജാർവിസ് പോലെ തന്നെ ശരിക്കും "സ്മാർട്ട്" ആയി മാറും, ഇത് ഉപയോക്താവിനെ വിവിധ ഉപകരണങ്ങളെ നിയന്ത്രിക്കാനും ദൈനംദിന കാര്യങ്ങൾ കൈകാര്യം ചെയ്യാനും മാത്രമല്ല, സൂപ്പർ കമ്പ്യൂട്ടിംഗ് ശക്തിയും ചിന്താശേഷിയും ഉള്ളവയാണ്. ബുദ്ധിജീവികളിൽ എസ്tagഇ, മനുഷ്യർക്ക് അളവിലും ഗുണനിലവാരത്തിലും മെച്ചപ്പെട്ട സേവനങ്ങൾ ലഭിക്കും.
അധ്യായം 1. IoT 7-ൻ്റെ ആമുഖം

8 ESP32-C3 വയർലെസ് അഡ്വഞ്ചർ: IoT-യിലേക്കുള്ള ഒരു സമഗ്ര ഗൈഡ്

2 IoT പ്രോജക്ടുകളുടെ അധ്യായം ആമുഖവും പരിശീലനവും
അദ്ധ്യായം 1-ൽ, IoT യുടെ ആർക്കിടെക്ചറും, പെർസെപ്ഷൻ & കൺട്രോൾ ലെയർ, നെറ്റ്‌വർക്ക് ലെയർ, പ്ലാറ്റ്ഫോം ലെയർ, ആപ്ലിക്കേഷൻ ലെയർ എന്നിവയുടെ റോളുകളും പരസ്പര ബന്ധങ്ങളും അതുപോലെ തന്നെ സ്മാർട്ട് ഹോമിൻ്റെ വികസനവും ഞങ്ങൾ അവതരിപ്പിച്ചു. എന്നിരുന്നാലും, നമ്മൾ വരയ്ക്കാൻ പഠിക്കുന്നതുപോലെ, സൈദ്ധാന്തിക പരിജ്ഞാനം വളരെ അകലെയാണ്. സാങ്കേതികവിദ്യയിൽ യഥാർത്ഥത്തിൽ വൈദഗ്ദ്ധ്യം നേടുന്നതിന് IoT പ്രോജക്ടുകൾ പ്രാവർത്തികമാക്കാൻ "നമ്മുടെ കൈകൾ വൃത്തികേടാക്കണം". കൂടാതെ, ഒരു പ്രോജക്റ്റ് ബഹുജന ഉൽപാദനത്തിലേക്ക് നീങ്ങുമ്പോൾ എസ്tage, നെറ്റ്‌വർക്ക് കണക്ഷൻ, കോൺഫിഗറേഷൻ, IoT ക്ലൗഡ് പ്ലാറ്റ്‌ഫോം ഇടപെടൽ, ഫേംവെയർ മാനേജ്‌മെൻ്റും അപ്‌ഡേറ്റുകളും, മാസ് പ്രൊഡക്ഷൻ മാനേജ്‌മെൻ്റ്, സെക്യൂരിറ്റി കോൺഫിഗറേഷൻ തുടങ്ങിയ കൂടുതൽ ഘടകങ്ങൾ പരിഗണിക്കേണ്ടത് ആവശ്യമാണ്. അതിനാൽ, ഒരു സമ്പൂർണ്ണ IoT പ്രോജക്റ്റ് വികസിപ്പിക്കുമ്പോൾ നമ്മൾ എന്താണ് ശ്രദ്ധിക്കേണ്ടത്? അദ്ധ്യായം 1-ൽ, സ്മാർട്ട് ഹോം എന്നത് ഏറ്റവും സാധാരണമായ IoT ആപ്ലിക്കേഷൻ രംഗങ്ങളിൽ ഒന്നാണെന്നും, വീടുകളിലും ഹോട്ടലുകളിലും ജിമ്മുകളിലും ആശുപത്രികളിലും മറ്റും ഉപയോഗിക്കാവുന്ന ഏറ്റവും അടിസ്ഥാനപരവും പ്രായോഗികവുമായ ഉപകരണങ്ങളിൽ ഒന്നാണ് സ്മാർട്ട് ലൈറ്റുകൾ എന്നും ഞങ്ങൾ സൂചിപ്പിച്ചു. ഈ പുസ്‌തകത്തിൽ, ഞങ്ങൾ ഒരു സ്‌മാർട്ട് ലൈറ്റ് പ്രോജക്‌റ്റിൻ്റെ നിർമ്മാണം ആരംഭ പോയിൻ്റായി എടുക്കുകയും അതിൻ്റെ ഘടകങ്ങളും സവിശേഷതകളും വിശദീകരിക്കുകയും പ്രോജക്‌റ്റ് വികസനത്തിൽ മാർഗ്ഗനിർദ്ദേശം നൽകുകയും ചെയ്യും. കൂടുതൽ IoT ആപ്ലിക്കേഷനുകൾ സൃഷ്ടിക്കുന്നതിന് നിങ്ങൾക്ക് ഈ കേസിൽ നിന്ന് അനുമാനങ്ങൾ എടുക്കാനാകുമെന്ന് ഞങ്ങൾ പ്രതീക്ഷിക്കുന്നു.
2.1 സാധാരണ IoT പ്രോജക്ടുകളുടെ ആമുഖം
വികസനത്തിൻ്റെ കാര്യത്തിൽ, IoT പ്രോജക്റ്റുകളുടെ അടിസ്ഥാന പ്രവർത്തന മൊഡ്യൂളുകളെ IoT ഉപകരണങ്ങളുടെ സോഫ്റ്റ്‌വെയർ, ഹാർഡ്‌വെയർ വികസനം, ക്ലയൻ്റ് ആപ്ലിക്കേഷൻ വികസനം, IoT ക്ലൗഡ് പ്ലാറ്റ്‌ഫോം വികസനം എന്നിങ്ങനെ തരംതിരിക്കാം. അടിസ്ഥാന പ്രവർത്തന മൊഡ്യൂളുകൾ വ്യക്തമാക്കേണ്ടത് പ്രധാനമാണ്, അത് ഈ വിഭാഗത്തിൽ കൂടുതൽ വിവരിക്കും.
2.1.1 സാധാരണ IoT ഉപകരണങ്ങൾക്കുള്ള അടിസ്ഥാന മൊഡ്യൂളുകൾ
IoT ഉപകരണങ്ങളുടെ സോഫ്റ്റ്‌വെയർ, ഹാർഡ്‌വെയർ വികസനത്തിൽ ഇനിപ്പറയുന്ന അടിസ്ഥാന മൊഡ്യൂളുകൾ ഉൾപ്പെടുന്നു: ഡാറ്റ ശേഖരണം
IoT ആർക്കിടെക്ചറിൻ്റെ താഴത്തെ പാളി എന്ന നിലയിൽ, പെർസെപ്ഷൻ & കൺട്രോൾ ലെയറിൻ്റെ IoT ഉപകരണങ്ങൾ ഡാറ്റാ ശേഖരണവും പ്രവർത്തന നിയന്ത്രണവും നേടുന്നതിന് സെൻസറുകളെയും ഉപകരണങ്ങളെയും അവയുടെ ചിപ്പുകളും പെരിഫറലുകളും വഴി ബന്ധിപ്പിക്കുന്നു.
9

അക്കൗണ്ട് ബൈൻഡിംഗും പ്രാരംഭ കോൺഫിഗറേഷനും മിക്ക IoT ഉപകരണങ്ങൾക്കും, അക്കൗണ്ട് ബൈൻഡിംഗും പ്രാരംഭ കോൺഫിഗറേഷനും ഒരു പ്രവർത്തന പ്രക്രിയയിൽ പൂർത്തിയാക്കുന്നു, ഉദാഹരണത്തിന്ample, Wi-Fi നെറ്റ്‌വർക്ക് കോൺഫിഗർ ചെയ്തുകൊണ്ട് ഉപയോക്താക്കളുമായി ഉപകരണങ്ങൾ ബന്ധിപ്പിക്കുന്നു.
IoT ക്ലൗഡ് പ്ലാറ്റ്‌ഫോമുകളുമായുള്ള ഇടപെടൽ IoT ഉപകരണങ്ങൾ നിരീക്ഷിക്കുന്നതിനും നിയന്ത്രിക്കുന്നതിനും, കമാൻഡുകൾ നൽകുന്നതിനും പരസ്പരം ഇടപഴകുന്നതിലൂടെ സ്റ്റാറ്റസ് റിപ്പോർട്ടുചെയ്യുന്നതിനും, IoT ക്ലൗഡ് പ്ലാറ്റ്‌ഫോമുകളിലേക്ക് അവയെ ബന്ധിപ്പിക്കേണ്ടതും ആവശ്യമാണ്.
ഉപകരണ നിയന്ത്രണം IoT ക്ലൗഡ് പ്ലാറ്റ്‌ഫോമുകളുമായി കണക്റ്റുചെയ്യുമ്പോൾ, ഉപകരണങ്ങൾക്ക് ക്ലൗഡുമായി ആശയവിനിമയം നടത്താനും രജിസ്റ്റർ ചെയ്യാനോ ബന്ധിക്കാനോ നിയന്ത്രിക്കാനോ കഴിയും. ഉപയോക്താക്കൾക്ക് IoT ക്ലൗഡ് പ്ലാറ്റ്‌ഫോമുകൾ വഴിയോ പ്രാദേശിക ആശയവിനിമയ പ്രോട്ടോക്കോളുകൾ വഴിയോ ഉൽപ്പന്ന നില അന്വേഷിക്കാനും സ്മാർട്ട്‌ഫോൺ ആപ്പിൽ മറ്റ് പ്രവർത്തനങ്ങൾ നടത്താനും കഴിയും.
ഫേംവെയർ അപ്‌ഗ്രേഡ് IoT ഉപകരണങ്ങൾക്ക് നിർമ്മാതാക്കളുടെ ആവശ്യങ്ങൾ അടിസ്ഥാനമാക്കി ഫേംവെയർ അപ്‌ഗ്രേഡ് നേടാനും കഴിയും. ക്ലൗഡ് അയച്ച കമാൻഡുകൾ സ്വീകരിക്കുന്നതിലൂടെ, ഫേംവെയർ അപ്‌ഗ്രേഡും പതിപ്പ് മാനേജ്മെൻ്റും സാക്ഷാത്കരിക്കപ്പെടും. ഈ ഫേംവെയർ അപ്‌ഗ്രേഡ് സവിശേഷത ഉപയോഗിച്ച്, നിങ്ങൾക്ക് IoT ഉപകരണങ്ങളുടെ പ്രവർത്തനങ്ങൾ തുടർച്ചയായി മെച്ചപ്പെടുത്താനും തകരാറുകൾ പരിഹരിക്കാനും ഉപയോക്തൃ അനുഭവം മെച്ചപ്പെടുത്താനും കഴിയും.
2.1.2 ക്ലയൻ്റ് ആപ്ലിക്കേഷനുകളുടെ അടിസ്ഥാന മൊഡ്യൂളുകൾ
ക്ലയൻ്റ് ആപ്ലിക്കേഷനുകളിൽ (ഉദാ, സ്മാർട്ട്‌ഫോൺ ആപ്പുകൾ) പ്രധാനമായും ഇനിപ്പറയുന്ന അടിസ്ഥാന മൊഡ്യൂളുകൾ ഉൾപ്പെടുന്നു:
അക്കൗണ്ട് സിസ്റ്റവും അംഗീകാരവും ഇത് അക്കൗണ്ടിൻ്റെയും ഉപകരണത്തിൻ്റെയും അംഗീകാരത്തെ പിന്തുണയ്ക്കുന്നു.
ഡിവൈസ് കൺട്രോൾ സ്മാർട്ട്ഫോൺ ആപ്പുകൾ സാധാരണയായി നിയന്ത്രണ പ്രവർത്തനങ്ങൾ കൊണ്ട് സജ്ജീകരിച്ചിരിക്കുന്നു. ഉപയോക്താക്കൾക്ക് IoT ഉപകരണങ്ങളിലേക്ക് എളുപ്പത്തിൽ കണക്‌റ്റ് ചെയ്യാനും സ്‌മാർട്ട്‌ഫോൺ ആപ്പുകൾ വഴി എപ്പോൾ വേണമെങ്കിലും എവിടെയും അവ നിയന്ത്രിക്കാനും കഴിയും. ഒരു യഥാർത്ഥ സ്‌മാർട്ട് ഹോമിൽ, ഉപകരണങ്ങൾ കൂടുതലും നിയന്ത്രിക്കുന്നത് സ്‌മാർട്ട്‌ഫോൺ ആപ്പുകൾ വഴിയാണ്, ഇത് ഉപകരണങ്ങളുടെ ബുദ്ധിപരമായ മാനേജ്‌മെൻ്റ് പ്രാപ്‌തമാക്കുക മാത്രമല്ല, മനുഷ്യശക്തിയുടെ ചിലവ് ലാഭിക്കുകയും ചെയ്യുന്നു. അതിനാൽ, ഡിവൈസ് ഫംഗ്ഷൻ ആട്രിബ്യൂട്ട് കൺട്രോൾ, സീൻ കൺട്രോൾ, ഷെഡ്യൂളിംഗ്, റിമോട്ട് കൺട്രോൾ, ഡിവൈസ് ലിങ്കേജ് തുടങ്ങിയ ക്ലയൻ്റ് ആപ്ലിക്കേഷനുകൾക്ക് ഉപകരണ നിയന്ത്രണം നിർബന്ധമാണ്. സ്മാർട്ട് ഹോം ഉപയോക്താക്കൾക്ക് വ്യക്തിഗത ആവശ്യങ്ങൾക്കനുസരിച്ച് ദൃശ്യങ്ങൾ ഇഷ്ടാനുസൃതമാക്കാനും ലൈറ്റിംഗ്, ഗൃഹോപകരണങ്ങൾ, പ്രവേശനം എന്നിവ നിയന്ത്രിക്കാനും കഴിയും. ഗൃഹജീവിതം കൂടുതൽ സുഖകരവും സൗകര്യപ്രദവുമാക്കാൻ മുതലായവ. അവർക്ക് എയർ കണ്ടീഷനിംഗ് സമയം നൽകാനും വിദൂരമായി അത് ഓഫാക്കാനും വാതിൽ അൺലോക്ക് ചെയ്‌താൽ ഹാൾവേ ലൈറ്റ് സ്വയമേവ ഓണാക്കാനും അല്ലെങ്കിൽ ഒരൊറ്റ ബട്ടൺ ഉപയോഗിച്ച് "തീയറ്റർ" മോഡിലേക്ക് മാറാനും കഴിയും.
അറിയിപ്പ് ക്ലയൻ്റ് ആപ്ലിക്കേഷനുകൾ IoT ഉപകരണങ്ങളുടെ തത്സമയ സ്റ്റാറ്റസ് അപ്ഡേറ്റ് ചെയ്യുകയും ഉപകരണങ്ങൾ അസാധാരണമാകുമ്പോൾ അലേർട്ടുകൾ അയയ്ക്കുകയും ചെയ്യുന്നു.
10 ESP32-C3 വയർലെസ് അഡ്വഞ്ചർ: IoT-യിലേക്കുള്ള ഒരു സമഗ്ര ഗൈഡ്

വിൽപ്പനാനന്തര ഉപഭോക്തൃ സേവനം സ്മാർട്ട്‌ഫോൺ ആപ്പുകൾക്ക് ഉൽപ്പന്നങ്ങൾക്ക് വിൽപ്പനാനന്തര സേവനങ്ങൾ നൽകാൻ കഴിയും, IoT ഉപകരണ പരാജയങ്ങളും സാങ്കേതിക പ്രവർത്തനങ്ങളുമായി ബന്ധപ്പെട്ട പ്രശ്നങ്ങൾ സമയബന്ധിതമായി പരിഹരിക്കാൻ കഴിയും.
ഫീച്ചർ ചെയ്‌ത ഫംഗ്‌ഷനുകൾ വ്യത്യസ്ത ഉപയോക്താക്കളുടെ ആവശ്യങ്ങൾ നിറവേറ്റുന്നതിനായി, ഷേക്ക്, എൻഎഫ്‌സി, ജിപിഎസ് മുതലായവ പോലുള്ള മറ്റ് ഫംഗ്‌ഷനുകൾ ചേർത്തേക്കാം. ലൊക്കേഷനും ദൂരവും അനുസരിച്ച് സീൻ ഓപ്പറേഷനുകളുടെ കൃത്യത ക്രമീകരിക്കാൻ ജിപിഎസ് സഹായിക്കും, അതേസമയം ഷേക്ക് ഫംഗ്‌ഷൻ ഉപയോക്താക്കളെ സജ്ജീകരിക്കാൻ അനുവദിക്കുന്നു. കുലുക്കത്തിലൂടെ നിർദ്ദിഷ്‌ട ഉപകരണത്തിനോ ദൃശ്യത്തിനോ വേണ്ടി എക്‌സിക്യൂട്ട് ചെയ്യേണ്ട കമാൻഡുകൾ.
2.1.3 സാധാരണ IoT ക്ലൗഡ് പ്ലാറ്റ്‌ഫോമുകളിലേക്കുള്ള ആമുഖം
IoT ക്ലൗഡ് പ്ലാറ്റ്‌ഫോം ഉപകരണ മാനേജ്‌മെൻ്റ്, ഡാറ്റ സെക്യൂരിറ്റി കമ്മ്യൂണിക്കേഷൻ, നോട്ടിഫിക്കേഷൻ മാനേജ്‌മെൻ്റ് തുടങ്ങിയ ഫംഗ്‌ഷനുകൾ സമന്വയിപ്പിക്കുന്ന ഒരു ഓൾ-ഇൻ-വൺ പ്ലാറ്റ്‌ഫോമാണ്. അവരുടെ ടാർഗെറ്റ് ഗ്രൂപ്പും പ്രവേശനക്ഷമതയും അനുസരിച്ച്, IoT ക്ലൗഡ് പ്ലാറ്റ്‌ഫോമുകളെ പൊതു IoT ക്ലൗഡ് പ്ലാറ്റ്‌ഫോമുകളായും (ഇനിമുതൽ “പബ്ലിക് ക്ലൗഡ്” എന്നും) സ്വകാര്യ IoT ക്ലൗഡ് പ്ലാറ്റ്‌ഫോമുകളായും (ഇനിമുതൽ “സ്വകാര്യ ക്ലൗഡ്” എന്ന് വിളിക്കുന്നു) വിഭജിക്കാം.
പൊതു ക്ലൗഡ് സാധാരണയായി എൻ്റർപ്രൈസുകൾക്കോ ​​വ്യക്തികൾക്കോ ​​വേണ്ടി പങ്കിട്ട IoT ക്ലൗഡ് പ്ലാറ്റ്‌ഫോമുകളെ സൂചിപ്പിക്കുന്നു, പ്ലാറ്റ്‌ഫോം ദാതാക്കൾ പ്രവർത്തിപ്പിക്കുകയും പരിപാലിക്കുകയും ചെയ്യുന്നു, ഇൻ്റർനെറ്റിലൂടെ പങ്കിടുന്നു. ഇത് സൌജന്യമോ ചെലവ് കുറഞ്ഞതോ ആകാം, കൂടാതെ Alibaba Cloud, Tencent Cloud, Baidu Cloud, AWS IoT, Google IoT, തുടങ്ങിയ ഓപ്പൺ പബ്ലിക് നെറ്റ്‌വർക്കിലുടനീളം സേവനങ്ങൾ നൽകുന്നു. ഒരു പിന്തുണാ പ്ലാറ്റ്‌ഫോം എന്ന നിലയിൽ, പബ്ലിക് ക്ലൗഡിന് അപ്‌സ്ട്രീം സേവന ദാതാക്കളെയും സംയോജിപ്പിക്കാനും കഴിയും. ഒരു പുതിയ മൂല്യ ശൃംഖലയും ആവാസവ്യവസ്ഥയും സൃഷ്ടിക്കാൻ താഴത്തെ ഉപയോക്താക്കൾ.
സ്വകാര്യ ക്ലൗഡ് എൻ്റർപ്രൈസ് ഉപയോഗത്തിനായി മാത്രം നിർമ്മിച്ചതാണ്, അതിനാൽ ഡാറ്റ, സുരക്ഷ, സേവന നിലവാരം എന്നിവയിൽ മികച്ച നിയന്ത്രണം ഉറപ്പ് നൽകുന്നു. ഇതിൻ്റെ സേവനങ്ങളും അടിസ്ഥാന സൗകര്യങ്ങളും എൻ്റർപ്രൈസുകൾ പ്രത്യേകം പരിപാലിക്കുന്നു, കൂടാതെ പിന്തുണയ്ക്കുന്ന ഹാർഡ്‌വെയറും സോഫ്റ്റ്‌വെയറും നിർദ്ദിഷ്ട ഉപയോക്താക്കൾക്കായി സമർപ്പിക്കുന്നു. എൻ്റർപ്രൈസസിന് അവരുടെ ബിസിനസിൻ്റെ ആവശ്യങ്ങൾ നിറവേറ്റുന്നതിനായി ക്ലൗഡ് സേവനങ്ങൾ ഇഷ്ടാനുസൃതമാക്കാൻ കഴിയും. നിലവിൽ, ചില സ്മാർട്ട് ഹോം നിർമ്മാതാക്കൾക്ക് ഇതിനകം തന്നെ സ്വകാര്യ ഐഒടി ക്ലൗഡ് പ്ലാറ്റ്‌ഫോമുകൾ ലഭിക്കുകയും അവയെ അടിസ്ഥാനമാക്കി സ്മാർട്ട് ഹോം ആപ്ലിക്കേഷനുകൾ വികസിപ്പിക്കുകയും ചെയ്തിട്ടുണ്ട്.
പൊതു ക്ലൗഡിനും സ്വകാര്യ ക്ലൗഡിനും അതിൻ്റേതായ അഡ്വാൻ ഉണ്ട്tages, അത് പിന്നീട് വിശദീകരിക്കും.
ആശയവിനിമയ കണക്റ്റിവിറ്റി നേടുന്നതിന്, ബിസിനസ് സെർവറുകൾ, IoT ക്ലൗഡ് പ്ലാറ്റ്‌ഫോമുകൾ, സ്‌മാർട്ട്‌ഫോൺ ആപ്പുകൾ എന്നിവയ്‌ക്കൊപ്പം കുറഞ്ഞത് ഉൾച്ചേർത്ത വികസനമെങ്കിലും പൂർത്തിയാക്കേണ്ടത് ആവശ്യമാണ്. ഇത്തരമൊരു ബൃഹത്തായ പ്രോജക്ടിനെ അഭിമുഖീകരിക്കുമ്പോൾ, പബ്ലിക് ക്ലൗഡ് സാധാരണഗതിയിൽ, പ്രോസസ്സ് വേഗത്തിലാക്കാൻ ഡിവൈസ് സൈഡ്, സ്മാർട്ട്‌ഫോൺ ആപ്പുകൾ എന്നിവയ്ക്കായി സോഫ്റ്റ്‌വെയർ ഡെവലപ്‌മെൻ്റ് കിറ്റുകൾ നൽകുന്നു. ഉപകരണ ആക്‌സസ്, ഉപകരണ മാനേജ്‌മെൻ്റ്, ഉപകരണ നിഴൽ, പ്രവർത്തനവും പരിപാലനവും ഉൾപ്പെടെയുള്ള സേവനങ്ങൾ പൊതു, സ്വകാര്യ ക്ലൗഡ് നൽകുന്നു.
ഉപകരണ ആക്‌സസ്സ് ഐഒടി ക്ലൗഡ് പ്ലാറ്റ്‌ഫോമുകൾക്ക് പ്രോട്ടോക്കോളുകൾ ഉപയോഗിച്ച് ഉപകരണ ആക്‌സസ്സിനായി ഇൻ്റർഫേസുകൾ മാത്രമല്ല നൽകേണ്ടത്
അധ്യായം 2. IoT പദ്ധതികളുടെ ആമുഖവും പരിശീലനവും 11

MQTT, CoAP, HTTPS, കൂടാതെ Webസോക്കറ്റ്, മാത്രമല്ല വ്യാജവും നിയമവിരുദ്ധവുമായ ഉപകരണങ്ങളെ തടയുന്നതിനുള്ള ഉപകരണ സുരക്ഷാ പ്രാമാണീകരണത്തിൻ്റെ പ്രവർത്തനവും, വിട്ടുവീഴ്ച ചെയ്യപ്പെടാനുള്ള സാധ്യത ഫലപ്രദമായി കുറയ്ക്കുന്നു. അത്തരം ആധികാരികത സാധാരണയായി വ്യത്യസ്ത മെക്കാനിസങ്ങളെ പിന്തുണയ്ക്കുന്നു, അതിനാൽ ഉപകരണങ്ങൾ വൻതോതിൽ ഉൽപ്പാദിപ്പിക്കപ്പെടുമ്പോൾ, തിരഞ്ഞെടുത്ത പ്രാമാണീകരണ മെക്കാനിസം അനുസരിച്ച് ഉപകരണ സർട്ടിഫിക്കറ്റ് മുൻകൂട്ടി നിശ്ചയിക്കുകയും അത് ഉപകരണങ്ങളിലേക്ക് ബേൺ ചെയ്യുകയും വേണം.
ഉപകരണ മാനേജ്മെൻ്റ് IoT ക്ലൗഡ് പ്ലാറ്റ്‌ഫോമുകൾ നൽകുന്ന ഉപകരണ മാനേജ്‌മെൻ്റ് ഫംഗ്‌ഷന്, നിർമ്മാതാക്കളെ അവരുടെ ഉപകരണങ്ങളുടെ ആക്‌റ്റിവേഷൻ നിലയും ഓൺലൈൻ സ്റ്റാറ്റസും തത്സമയം നിരീക്ഷിക്കാൻ സഹായിക്കുക മാത്രമല്ല, ഉപകരണങ്ങൾ ചേർക്കൽ / നീക്കം ചെയ്യുക, ഗ്രൂപ്പുകൾ ചേർക്കൽ / ഇല്ലാതാക്കുക, ഫേംവെയർ അപ്‌ഗ്രേഡ് തുടങ്ങിയ ഓപ്ഷനുകൾ അനുവദിക്കുന്നു , പതിപ്പ് മാനേജ്മെൻ്റ്.
ഡിവൈസ് ഷാഡോ IoT ക്ലൗഡ് പ്ലാറ്റ്‌ഫോമുകൾക്ക് ഓരോ ഉപകരണത്തിനും സ്ഥിരമായ ഒരു വെർച്വൽ പതിപ്പ് (ഉപകരണ നിഴൽ) സൃഷ്ടിക്കാൻ കഴിയും, കൂടാതെ ഉപകരണ നിഴലിൻ്റെ നില സമന്വയിപ്പിക്കാനും ഇൻ്റർനെറ്റ് ട്രാൻസ്മിഷൻ പ്രോട്ടോക്കോളുകൾ വഴി സ്മാർട്ട്ഫോൺ ആപ്പ് അല്ലെങ്കിൽ മറ്റ് ഉപകരണങ്ങൾ വഴി നേടാനും കഴിയും. ഓരോ ഉപകരണത്തിൻ്റെയും ഏറ്റവും പുതിയ റിപ്പോർട്ടുചെയ്‌ത നിലയും പ്രതീക്ഷിക്കുന്ന നിലയും ഉപകരണ നിഴൽ സംഭരിക്കുന്നു, ഉപകരണം ഓഫ്‌ലൈനാണെങ്കിൽപ്പോലും, API-കളെ വിളിച്ച് അതിന് സ്റ്റാറ്റസ് നേടാനാകും. ഡിവൈസ് ഷാഡോ എപ്പോഴും ഓൺ എപിഐകൾ നൽകുന്നു, ഇത് ഉപകരണങ്ങളുമായി സംവദിക്കുന്ന സ്മാർട്ട്‌ഫോൺ ആപ്പുകൾ നിർമ്മിക്കുന്നത് എളുപ്പമാക്കുന്നു.
പ്രവർത്തനവും പരിപാലനവും O&M ഫംഗ്‌ഷനിൽ മൂന്ന് വശങ്ങൾ ഉൾപ്പെടുന്നു: · IoT ഉപകരണങ്ങളെയും അറിയിപ്പുകളെയും കുറിച്ചുള്ള സ്ഥിതിവിവരക്കണക്കുകൾ കാണിക്കുന്നു. · ലോഗ് മാനേജ്മെൻ്റ് ഉപകരണത്തിൻ്റെ പെരുമാറ്റം, മുകളിലേക്കും താഴേക്കും സന്ദേശ പ്രവാഹം, സന്ദേശ ഉള്ളടക്കം എന്നിവയെക്കുറിച്ചുള്ള വിവരങ്ങൾ വീണ്ടെടുക്കാൻ അനുവദിക്കുന്നു. · ഉപകരണ ഡീബഗ്ഗിംഗ് കമാൻഡ് ഡെലിവറി, കോൺഫിഗറേഷൻ അപ്‌ഡേറ്റ്, IoT ക്ലൗഡ് പ്ലാറ്റ്‌ഫോമുകളും ഉപകരണ സന്ദേശങ്ങളും തമ്മിലുള്ള ഇടപെടൽ പരിശോധിക്കൽ എന്നിവയെ പിന്തുണയ്ക്കുന്നു.
2.2 പ്രാക്ടീസ്: സ്മാർട്ട് ലൈറ്റ് പ്രോജക്റ്റ്
ഓരോ അധ്യായത്തിലെയും സൈദ്ധാന്തിക ആമുഖത്തിന് ശേഷം, അനുഭവം നേടുന്നതിന് നിങ്ങളെ സഹായിക്കുന്നതിന് സ്മാർട്ട് ലൈറ്റ് പ്രോജക്റ്റുമായി ബന്ധപ്പെട്ട ഒരു പരിശീലന വിഭാഗം നിങ്ങൾ കണ്ടെത്തും. Espressif-ൻ്റെ ESP32-C3 ചിപ്പ്, ESP RainMaker IoT ക്ലൗഡ് പ്ലാറ്റ്‌ഫോം എന്നിവയെ അടിസ്ഥാനമാക്കിയുള്ളതാണ് പ്രോജക്റ്റ്, കൂടാതെ സ്മാർട്ട് ലൈറ്റ് ഉൽപ്പന്നങ്ങളിലെ വയർലെസ് മൊഡ്യൂൾ ഹാർഡ്‌വെയർ, ESP32C3 അടിസ്ഥാനമാക്കിയുള്ള സ്മാർട്ട് ഉപകരണങ്ങൾക്കായുള്ള എംബഡഡ് സോഫ്റ്റ്‌വെയർ, സ്മാർട്ട്‌ഫോൺ ആപ്പുകൾ, ESP റെയിൻമേക്കർ ഇൻ്ററാക്ഷൻ എന്നിവ ഉൾക്കൊള്ളുന്നു.
സോഴ്സ് കോഡ് മികച്ച പഠനത്തിനും അനുഭവം വികസിപ്പിക്കുന്നതിനുമായി, ഈ പുസ്തകത്തിലെ പ്രോജക്റ്റ് ഓപ്പൺ സോഴ്സ് ചെയ്തിരിക്കുന്നു. https://github എന്നതിൽ ഞങ്ങളുടെ GitHub ശേഖരണത്തിൽ നിന്ന് നിങ്ങൾക്ക് സോഴ്സ് കോഡ് ഡൗൺലോഡ് ചെയ്യാം. com/espressif/book-esp32c3-iot-projects.
12 ESP32-C3 വയർലെസ് അഡ്വഞ്ചർ: IoT-യിലേക്കുള്ള ഒരു സമഗ്ര ഗൈഡ്

2.2.1 പദ്ധതി ഘടന
സ്മാർട്ട് ലൈറ്റ് പ്രോജക്റ്റ് മൂന്ന് ഭാഗങ്ങൾ ഉൾക്കൊള്ളുന്നു: i. IoT ക്ലൗഡ് പ്ലാറ്റ്‌ഫോമുകളുമായി ഇടപഴകുന്നതിനും LED l ൻ്റെ സ്വിച്ച്, തെളിച്ചം, വർണ്ണ താപനില എന്നിവ നിയന്ത്രിക്കുന്നതിനും ESP32-C3 അടിസ്ഥാനമാക്കിയുള്ള സ്മാർട്ട് ലൈറ്റ് ഉപകരണങ്ങൾamp മുത്തുകൾ. ii. സ്‌മാർട്ട് ലൈറ്റ് ഉൽപ്പന്നങ്ങളുടെ നെറ്റ്‌വർക്ക് കോൺഫിഗറേഷനും അവയുടെ സ്റ്റാറ്റസ് അന്വേഷിക്കുന്നതിനും നിയന്ത്രിക്കുന്നതിനും ഉത്തരവാദിത്തമുള്ള സ്‌മാർട്ട്‌ഫോൺ ആപ്പുകൾ (Android, iOS എന്നിവയിൽ പ്രവർത്തിക്കുന്ന ടാബ്‌ലെറ്റ് ആപ്പുകൾ ഉൾപ്പെടെ).
iii. ESP RainMaker അടിസ്ഥാനമാക്കിയുള്ള ഒരു IoT ക്ലൗഡ് പ്ലാറ്റ്ഫോം. ലളിതവൽക്കരണത്തിനായി, ഈ പുസ്തകത്തിൽ IoT ക്ലൗഡ് പ്ലാറ്റ്‌ഫോമും ബിസിനസ് സെർവറും മൊത്തത്തിൽ ഞങ്ങൾ പരിഗണിക്കുന്നു. ESP റെയിൻമേക്കറിനെ കുറിച്ചുള്ള വിശദാംശങ്ങൾ അദ്ധ്യായം 3-ൽ നൽകും.
സ്മാർട്ട് ലൈറ്റ് പ്രോജക്റ്റ് ഘടനയും IoT യുടെ ആർക്കിടെക്ചറും തമ്മിലുള്ള കത്തിടപാടുകൾ ചിത്രം 2.1 ൽ കാണിച്ചിരിക്കുന്നു.
ചിത്രം 2.1. സ്മാർട്ട് ലൈറ്റ് പദ്ധതിയുടെ ഘടന
2.2.2 പദ്ധതി പ്രവർത്തനങ്ങൾ
ഘടനയനുസരിച്ച് വിഭജിച്ചാൽ, ഓരോ ഭാഗത്തിൻ്റെയും പ്രവർത്തനങ്ങൾ താഴെ പറയുന്നവയാണ്. സ്മാർട്ട് ലൈറ്റ് ഉപകരണങ്ങൾ
· നെറ്റ്‌വർക്ക് കോൺഫിഗറേഷനും കണക്ഷനും. · സ്വിച്ച്, തെളിച്ചം, വർണ്ണ താപനില മുതലായവ പോലുള്ള LED PWM നിയന്ത്രണം · ഓട്ടോമേഷൻ അല്ലെങ്കിൽ സീൻ നിയന്ത്രണം, ഉദാ, സമയ സ്വിച്ച്. · ഫ്ലാഷിൻ്റെ എൻക്രിപ്ഷനും സുരക്ഷിത ബൂട്ടും. · ഫേംവെയർ നവീകരണവും പതിപ്പ് മാനേജ്മെൻ്റും.
അധ്യായം 2. IoT പദ്ധതികളുടെ ആമുഖവും പരിശീലനവും 13

സ്‌മാർട്ട്‌ഫോൺ ആപ്പുകൾ · നെറ്റ്‌വർക്ക് കോൺഫിഗറേഷനും ഉപകരണ ബൈൻഡിംഗും. · സ്വിച്ച്, തെളിച്ചം, വർണ്ണ താപനില മുതലായവ പോലുള്ള സ്മാർട്ട് ലൈറ്റ് ഉൽപ്പന്ന നിയന്ത്രണം. · ഓട്ടോമേഷൻ അല്ലെങ്കിൽ സീൻ ക്രമീകരണങ്ങൾ, ഉദാ, സമയ സ്വിച്ച്. · ലോക്കൽ/റിമോട്ട് കൺട്രോൾ. · ഉപയോക്തൃ രജിസ്ട്രേഷൻ, ലോഗിൻ മുതലായവ.
ESP RainMaker IoT ക്ലൗഡ് പ്ലാറ്റ്ഫോം · IoT ഉപകരണ ആക്സസ് പ്രവർത്തനക്ഷമമാക്കുന്നു. · സ്മാർട്ട്ഫോൺ ആപ്പുകൾക്ക് ആക്സസ് ചെയ്യാവുന്ന ഉപകരണ പ്രവർത്തന API-കൾ നൽകുന്നു. · ഫേംവെയർ നവീകരണവും പതിപ്പ് മാനേജ്മെൻ്റും.
2.2.3 ഹാർഡ്‌വെയർ തയ്യാറാക്കൽ
പദ്ധതി പ്രാവർത്തികമാക്കാൻ താൽപ്പര്യമുണ്ടെങ്കിൽ, നിങ്ങൾക്ക് ഇനിപ്പറയുന്ന ഹാർഡ്‌വെയറും ആവശ്യമാണ്: സ്മാർട്ട് ലൈറ്റുകൾ, സ്മാർട്ട്‌ഫോണുകൾ, Wi-Fi റൂട്ടറുകൾ, വികസന പരിസ്ഥിതിയുടെ ഇൻസ്റ്റാളേഷൻ ആവശ്യകതകൾ നിറവേറ്റുന്ന ഒരു കമ്പ്യൂട്ടർ. സ്മാർട്ട് ലൈറ്റുകൾ
സ്മാർട്ട് ലൈറ്റുകൾ ഒരു പുതിയ തരം ബൾബുകളാണ്, അവയുടെ ആകൃതി പൊതു ബൾബിൻ്റെ അതേ ആകൃതിയാണ്. കപ്പാസിറ്റർ സ്റ്റെപ്പ്-ഡൗൺ നിയന്ത്രിത പവർ സപ്ലൈ, വയർലെസ് മൊഡ്യൂൾ (ബിൽറ്റ്-ഇൻ ESP32-C3 ഉള്ളത്), എൽഇഡി കൺട്രോളർ, ആർജിബി എൽഇഡി മാട്രിക്സ് എന്നിവ ചേർന്നതാണ് സ്മാർട്ട് ലൈറ്റ്. വൈദ്യുതിയുമായി ബന്ധിപ്പിക്കുമ്പോൾ, 15 V DC വോളിയംtagകപ്പാസിറ്റർ സ്റ്റെപ്പ്-ഡൗൺ, ഡയോഡ് റെക്റ്റിഫിക്കേഷൻ, റെഗുലേഷൻ എന്നിവയ്ക്ക് ശേഷമുള്ള e ഔട്ട്പുട്ട് LED കൺട്രോളറിനും LED മാട്രിക്സിനും ഊർജ്ജം നൽകുന്നു. LED കൺട്രോളറിന് നിശ്ചിത ഇടവേളകളിൽ ഉയർന്നതും താഴ്ന്നതുമായ ലെവലുകൾ സ്വയമേവ അയയ്‌ക്കാൻ കഴിയും, RGB LED മാട്രിക്‌സ് അടച്ച (ലൈറ്റുകൾ ഓണ്), ഓപ്പൺ (ലൈറ്റുകൾ ഓഫ്) എന്നിവയ്‌ക്കിടയിൽ സ്വിച്ചുചെയ്യുന്നു, അതുവഴി സിയാൻ, മഞ്ഞ, പച്ച, പർപ്പിൾ, നീല, ചുവപ്പ്, കൂടാതെ വെള്ളവെളിച്ചം. Wi-Fi റൂട്ടറിലേക്ക് കണക്റ്റുചെയ്യുന്നതിനും സ്മാർട്ട് ലൈറ്റുകളുടെ സ്റ്റാറ്റസ് സ്വീകരിക്കുന്നതിനും റിപ്പോർട്ടുചെയ്യുന്നതിനും LED നിയന്ത്രിക്കുന്നതിന് കമാൻഡുകൾ അയയ്ക്കുന്നതിനും വയർലെസ് മൊഡ്യൂളിന് ഉത്തരവാദിത്തമുണ്ട്.
ചിത്രം 2.2. ഒരു സിമുലേറ്റഡ് സ്മാർട്ട് ലൈറ്റ്
ആദ്യകാല വികസനത്തിൽ എസ്tage, RGB LED l-യുമായി ബന്ധിപ്പിച്ചിരിക്കുന്ന ESP32-C3DevKitM-1 ബോർഡ് ഉപയോഗിച്ച് നിങ്ങൾക്ക് ഒരു സ്മാർട്ട് ലൈറ്റ് അനുകരിക്കാനാകും.amp മുത്തുകൾ (ചിത്രം 2.2 കാണുക). എന്നാൽ നിങ്ങൾ ചെയ്യണം
14 ESP32-C3 വയർലെസ് അഡ്വഞ്ചർ: IoT-യിലേക്കുള്ള ഒരു സമഗ്ര ഗൈഡ്

ഒരു സ്‌മാർട്ട് ലൈറ്റ് കൂട്ടിച്ചേർക്കാനുള്ള ഒരേയൊരു മാർഗ്ഗം ഇതല്ല എന്നത് ശ്രദ്ധിക്കുക. ഈ പുസ്‌തകത്തിലെ പ്രോജക്‌റ്റിൻ്റെ ഹാർഡ്‌വെയർ രൂപകൽപ്പനയിൽ ഒരു വയർലെസ് മൊഡ്യൂൾ (ബിൽറ്റ്-ഇൻ ESP32-C3 ഉള്ളത്) മാത്രമേ അടങ്ങിയിട്ടുള്ളൂ, എന്നാൽ പൂർണ്ണമായ സ്‌മാർട്ട് ലൈറ്റ് ഹാർഡ്‌വെയർ ഡിസൈനല്ല. കൂടാതെ, ഓഡിയോയ്‌ക്കൊപ്പം ലൈറ്റുകൾ നിയന്ത്രിക്കുന്നതിനായി ESP32-C3 അടിസ്ഥാനമാക്കിയുള്ള ഓഡിയോ ഡെവലപ്‌മെൻ്റ് ബോർഡ് ESP32C3-Lyra-ഉം Espressif നിർമ്മിക്കുന്നു. ബോർഡിന് മൈക്രോഫോണുകൾക്കും സ്പീക്കറുകൾക്കുമായി ഇൻ്റർഫേസുകൾ ഉണ്ട് കൂടാതെ LED സ്ട്രിപ്പുകൾ നിയന്ത്രിക്കാനും കഴിയും. അൾട്രാ ലോ-കോസ്റ്റ്, ഉയർന്ന പ്രകടനമുള്ള ഓഡിയോ ബ്രോഡ്കാസ്റ്ററുകൾ, റിഥം ലൈറ്റ് സ്ട്രിപ്പുകൾ എന്നിവ വികസിപ്പിക്കുന്നതിന് ഇത് ഉപയോഗിക്കാം. 2.3 LED ലൈറ്റുകളുടെ ഒരു സ്ട്രിപ്പുമായി ബന്ധിപ്പിച്ചിരിക്കുന്ന ESP32-C3Lyra ബോർഡ് ചിത്രം 40 കാണിക്കുന്നു.
ചിത്രം 2.3. ESP32-C3-Lyra 40 LED ലൈറ്റുകളുടെ ഒരു സ്ട്രിപ്പുമായി ബന്ധിപ്പിച്ചിരിക്കുന്നു
സ്മാർട്ട്‌ഫോണുകൾ (ആൻഡ്രോയിഡ്/ഐഒഎസ്) സ്മാർട്ട് ലൈറ്റ് ഉൽപ്പന്നങ്ങൾ സജ്ജീകരിക്കുന്നതിനും നിയന്ത്രിക്കുന്നതിനുമായി ഒരു സ്മാർട്ട്‌ഫോൺ ആപ്പ് വികസിപ്പിക്കുന്നത് സ്മാർട്ട് ലൈറ്റ് പ്രോജക്റ്റിൽ ഉൾപ്പെടുന്നു.
കമ്പ്യൂട്ടറുകൾക്കും സ്‌മാർട്ട്‌ഫോണുകൾക്കും ടാബ്‌ലെറ്റുകൾക്കും മറ്റ് വയർലെസ് ഉപകരണങ്ങൾക്കും നെറ്റ്‌വർക്കിലേക്ക് കണക്റ്റുചെയ്യുന്നതിന് Wi-Fi റൂട്ടറുകൾ Wi-Fi റൂട്ടറുകൾ വയർഡ് നെറ്റ്‌വർക്ക് സിഗ്നലുകളെയും മൊബൈൽ നെറ്റ്‌വർക്ക് സിഗ്നലുകളെയും വയർലെസ് നെറ്റ്‌വർക്ക് സിഗ്നലുകളാക്കി മാറ്റുന്നു. ഉദാampലെ, Wi-Fi ഉപകരണങ്ങളുടെ വയർലെസ് നെറ്റ്‌വർക്കിംഗ് നേടുന്നതിന് വീട്ടിലെ ബ്രോഡ്‌ബാൻഡ് ഒരു Wi-Fi റൂട്ടറിലേക്ക് കണക്‌റ്റ് ചെയ്‌താൽ മാത്രം മതി. Wi-Fi റൂട്ടറുകൾ പിന്തുണയ്ക്കുന്ന മുഖ്യധാരാ പ്രോട്ടോക്കോൾ സ്റ്റാൻഡേർഡ് IEEE 802.11n ആണ്, ശരാശരി TxRate 300 Mbps അല്ലെങ്കിൽ പരമാവധി 600 Mbps. IEEE 802.11b, IEEE 802.11g എന്നിവയുമായി അവ പിന്നോക്കം പൊരുത്തപ്പെടുന്നു. Espressif-ൻ്റെ ESP32-C3 ചിപ്പ് IEEE 802.11b/g/n പിന്തുണയ്ക്കുന്നു, അതിനാൽ നിങ്ങൾക്ക് ഒരു സിംഗിൾ-ബാൻഡ് (2.4 GHz) അല്ലെങ്കിൽ ഡ്യുവൽ-ബാൻഡ് (2.4 GHz, 5 GHz) Wi-Fi റൂട്ടർ തിരഞ്ഞെടുക്കാം.
ഒരു കമ്പ്യൂട്ടർ (ലിനക്‌സ്/മാകോസ്/വിൻഡോസ്) ഡെവലപ്‌മെൻ്റ് എൻവയോൺമെൻ്റ് ചാപ്റ്റർ 4-ൽ അവതരിപ്പിക്കും. അധ്യായം 2. ഐഒടി പ്രോജക്‌റ്റുകളുടെ ആമുഖവും പരിശീലനവും 15

2.2.4 വികസന പ്രക്രിയ
ചിത്രം 2.4. സ്മാർട്ട് ലൈറ്റ് പദ്ധതി വികസിപ്പിക്കുന്നതിനുള്ള ഘട്ടങ്ങൾ
ഹാർഡ്‌വെയർ ഡിസൈൻ IoT ഉപകരണങ്ങളുടെ ഹാർഡ്‌വെയർ ഡിസൈൻ ഒരു IoT പ്രോജക്റ്റിന് അത്യന്താപേക്ഷിതമാണ്. ഒരു സമ്പൂർണ്ണ സ്മാർട്ട് ലൈറ്റ് പ്രോജക്റ്റ് അൽ നിർമ്മിക്കാൻ ഉദ്ദേശിച്ചുള്ളതാണ്amp മെയിൻ സപ്ലൈക്ക് കീഴിൽ പ്രവർത്തിക്കുന്നു. വ്യത്യസ്ത നിർമ്മാതാക്കൾ എൽ ഉത്പാദിപ്പിക്കുന്നുampവ്യത്യസ്ത ശൈലികളും ഡ്രൈവർ തരങ്ങളും, എന്നാൽ അവയുടെ വയർലെസ് മൊഡ്യൂളുകൾ സാധാരണയായി ഒരേ പ്രവർത്തനമാണ്. സ്മാർട്ട് ലൈഗ് പ്രോജക്റ്റിൻ്റെ വികസന പ്രക്രിയ ലളിതമാക്കുന്നതിന്, ഈ പുസ്തകം വയർലെസ് മൊഡ്യൂളുകളുടെ ഹാർഡ്‌വെയർ രൂപകൽപ്പനയും സോഫ്റ്റ്‌വെയർ വികസനവും മാത്രം ഉൾക്കൊള്ളുന്നു.
IoT ക്ലൗഡ് പ്ലാറ്റ്‌ഫോം കോൺഫിഗറേഷൻ IoT ക്ലൗഡ് പ്ലാറ്റ്‌ഫോമുകൾ ഉപയോഗിക്കുന്നതിന്, ഉൽപ്പന്നങ്ങൾ സൃഷ്‌ടിക്കുക, ഉപകരണങ്ങൾ സൃഷ്‌ടിക്കുക, ഉപകരണ പ്രോപ്പർട്ടികൾ സജ്ജീകരിക്കുക തുടങ്ങിയ പ്രോജക്‌റ്റുകൾ നിങ്ങൾ ബാക്കെൻഡിൽ കോൺഫിഗർ ചെയ്യേണ്ടതുണ്ട്.
IoT ഉപകരണങ്ങൾക്കായി ഉൾച്ചേർത്ത സോഫ്റ്റ്‌വെയർ വികസനം, IoT ക്ലൗഡ് പ്ലാറ്റ്‌ഫോമുകളിലേക്ക് കണക്റ്റുചെയ്യൽ, LED ഡ്രൈവറുകൾ വികസിപ്പിക്കൽ, ഫേംവെയർ അപ്‌ഗ്രേഡുചെയ്യൽ എന്നിവ ഉൾപ്പെടെ, ESP-IDF, Espressif-ൻ്റെ ഉപകരണ വശമുള്ള SDK എന്നിവ ഉപയോഗിച്ച് പ്രതീക്ഷിക്കുന്ന പ്രവർത്തനങ്ങൾ നടപ്പിലാക്കുക.
സ്‌മാർട്ട്‌ഫോൺ ആപ്പ് ഡെവലപ്‌മെൻ്റ് ഉപയോക്തൃ രജിസ്‌ട്രേഷനും ലോഗിൻ, ഉപകരണ നിയന്ത്രണം, മറ്റ് ഫംഗ്‌ഷനുകൾ എന്നിവ യാഥാർത്ഥ്യമാക്കുന്നതിന് Android, iOS സിസ്റ്റങ്ങൾക്കായി സ്മാർട്ട്‌ഫോൺ അപ്ലിക്കേഷനുകൾ വികസിപ്പിക്കുക.
IoT ഉപകരണ ഒപ്റ്റിമൈസേഷൻ IoT ഉപകരണ പ്രവർത്തനങ്ങളുടെ അടിസ്ഥാന വികസനം പൂർത്തിയായിക്കഴിഞ്ഞാൽ, നിങ്ങൾക്ക് പവർ ഒപ്റ്റിമൈസേഷൻ പോലുള്ള ഒപ്റ്റിമൈസേഷൻ ടാസ്ക്കുകളിലേക്ക് തിരിയാം.
മാസ് പ്രൊഡക്ഷൻ ടെസ്റ്റിംഗ് ഉപകരണങ്ങൾ ഫംഗ്‌ഷൻ ടെസ്റ്റ്, ഏജിംഗ് ടെസ്റ്റ്, ആർഎഫ് ടെസ്റ്റ് തുടങ്ങിയ അനുബന്ധ മാനദണ്ഡങ്ങൾക്കനുസൃതമായി മാസ് പ്രൊഡക്ഷൻ ടെസ്റ്റുകൾ നടത്തുക.
മുകളിൽ ലിസ്റ്റുചെയ്‌തിരിക്കുന്ന ഘട്ടങ്ങൾ ഉണ്ടായിരുന്നിട്ടും, ഒരു സ്മാർട്ട് ലൈറ്റ് പ്രോജക്റ്റ് അത്തരം നടപടിക്രമങ്ങൾക്ക് വിധേയമാകണമെന്നില്ല, കാരണം ഒരേ സമയം വ്യത്യസ്ത ജോലികളും ചെയ്യാൻ കഴിയും. ഉദാample, എംബഡഡ് സോഫ്‌റ്റ്‌വെയർ, സ്‌മാർട്ട്‌ഫോൺ ആപ്പുകൾ എന്നിവ സമാന്തരമായി വികസിപ്പിക്കാം. IoT ഡിവൈസ് ഒപ്റ്റിമൈസേഷൻ, മാസ് പ്രൊഡക്ഷൻ ടെസ്റ്റിംഗ് എന്നിങ്ങനെയുള്ള ചില ഘട്ടങ്ങളും ആവർത്തിക്കേണ്ടതായി വന്നേക്കാം.
16 ESP32-C3 വയർലെസ് അഡ്വഞ്ചർ: IoT-യിലേക്കുള്ള ഒരു സമഗ്ര ഗൈഡ്

2.3 സംഗ്രഹം
ഈ അധ്യായത്തിൽ, ഞങ്ങൾ ആദ്യം IoT പ്രോജക്റ്റിൻ്റെ അടിസ്ഥാന ഘടകങ്ങളും പ്രവർത്തന മൊഡ്യൂളുകളും വിശദീകരിച്ചു, തുടർന്ന് പരിശീലനത്തിനായി സ്മാർട്ട് ലൈറ്റ് കേസ് അവതരിപ്പിച്ചു, അതിൻ്റെ ഘടന, പ്രവർത്തനങ്ങൾ, ഹാർഡ്‌വെയർ തയ്യാറാക്കൽ, വികസന പ്രക്രിയ എന്നിവയെ പരാമർശിക്കുന്നു. വായനക്കാർക്ക് പരിശീലനത്തിൽ നിന്ന് അനുമാനങ്ങൾ എടുക്കാനും ഭാവിയിൽ കുറഞ്ഞ തെറ്റുകളോടെ IoT പ്രോജക്റ്റുകൾ നടപ്പിലാക്കാൻ ആത്മവിശ്വാസം നേടാനും കഴിയും.
അധ്യായം 2. IoT പദ്ധതികളുടെ ആമുഖവും പരിശീലനവും 17

18 ESP32-C3 വയർലെസ് അഡ്വഞ്ചർ: IoT-യിലേക്കുള്ള ഒരു സമഗ്ര ഗൈഡ്

അധ്യായം 3

ആമുഖം

വരെ

ഇ.എസ്.പി

റെയിൻമേക്കർ

ഇൻ്റർനെറ്റ് ഓഫ് തിംഗ്സ് (IoT) ആളുകളുടെ ജീവിതരീതി മാറ്റാൻ അനന്തമായ സാധ്യതകൾ വാഗ്ദാനം ചെയ്യുന്നു, എന്നിട്ടും IoT എഞ്ചിനീയറിംഗിൻ്റെ വികസനം വെല്ലുവിളികൾ നിറഞ്ഞതാണ്. പൊതു മേഘങ്ങൾ ഉപയോഗിച്ച്, ടെർമിനൽ നിർമ്മാതാക്കൾക്ക് ഇനിപ്പറയുന്ന പരിഹാരങ്ങളിലൂടെ ഉൽപ്പന്ന പ്രവർത്തനം നടപ്പിലാക്കാൻ കഴിയും:
സൊല്യൂഷൻ പ്രൊവൈഡർമാരുടെ ക്ലൗഡ് പ്ലാറ്റ്‌ഫോമുകളെ അടിസ്ഥാനമാക്കി ഈ രീതിയിൽ, ടെർമിനൽ നിർമ്മാതാക്കൾ ഉൽപ്പന്ന ഹാർഡ്‌വെയർ രൂപകൽപ്പന ചെയ്‌താൽ മാത്രം മതി, തുടർന്ന് നൽകിയിരിക്കുന്ന കമ്മ്യൂണിക്കേഷൻ മൊഡ്യൂൾ ഉപയോഗിച്ച് ക്ലൗഡിലേക്ക് ഹാർഡ്‌വെയറിനെ ബന്ധിപ്പിക്കുകയും മാർഗ്ഗനിർദ്ദേശങ്ങൾ പാലിച്ച് ഉൽപ്പന്ന പ്രവർത്തനങ്ങൾ കോൺഫിഗർ ചെയ്യുകയും വേണം. സെർവർ-സൈഡ്, ആപ്ലിക്കേഷൻ സൈഡ് ഡെവലപ്‌മെൻ്റ്, ഓപ്പറേഷൻസ് ആൻഡ് മെയിൻ്റനൻസ് (O&M) എന്നിവയുടെ ആവശ്യകത ഇല്ലാതാക്കുന്നതിനാൽ ഇത് കാര്യക്ഷമമായ ഒരു സമീപനമാണ്. ക്ലൗഡ് നടപ്പിലാക്കൽ പരിഗണിക്കാതെ തന്നെ ഹാർഡ്‌വെയർ ഡിസൈനിൽ ശ്രദ്ധ കേന്ദ്രീകരിക്കാൻ ടെർമിനൽ നിർമ്മാതാക്കളെ ഇത് അനുവദിക്കുന്നു. എന്നിരുന്നാലും, അത്തരം സൊല്യൂഷനുകൾ (ഉദാ, ഉപകരണ ഫേംവെയറും ആപ്പും) പൊതുവെ ഓപ്പൺ സോഴ്‌സ് അല്ല, അതിനാൽ ഇഷ്‌ടാനുസൃതമാക്കാൻ കഴിയാത്ത ദാതാവിൻ്റെ ക്ലൗഡ് പ്ലാറ്റ്‌ഫോം ഉൽപ്പന്ന പ്രവർത്തനങ്ങൾ പരിമിതപ്പെടുത്തും. അതേസമയം, ഉപയോക്തൃ ഡാറ്റയും ഉപകരണ ഡാറ്റയും ക്ലൗഡ് പ്ലാറ്റ്‌ഫോമിൻ്റേതാണ്.
ക്ലൗഡ് ഉൽപ്പന്നങ്ങളെ അടിസ്ഥാനമാക്കി ഈ സൊല്യൂഷനിൽ, ഹാർഡ്‌വെയർ ഡിസൈൻ പൂർത്തിയാക്കിയ ശേഷം, ടെർമിനൽ നിർമ്മാതാക്കൾ പബ്ലിക് ക്ലൗഡ് നൽകുന്ന ഒന്നോ അതിലധികമോ ക്ലൗഡ് ഉൽപ്പന്നങ്ങൾ ഉപയോഗിച്ച് ക്ലൗഡ് ഫംഗ്‌ഷനുകൾ നടപ്പിലാക്കേണ്ടതുണ്ട്, മാത്രമല്ല ഹാർഡ്‌വെയറിനെ ക്ലൗഡുമായി ലിങ്ക് ചെയ്യുകയും വേണം. ഉദാample, Amazon-ലേക്ക് കണക്റ്റുചെയ്യാൻ Web സേവനങ്ങൾ (AWS), ടെർമിനൽ നിർമ്മാതാക്കൾ ഉപകരണ ആക്‌സസ്, റിമോട്ട് കൺട്രോൾ, ഡാറ്റ സംഭരണം, ഉപയോക്തൃ മാനേജുമെൻ്റ്, മറ്റ് അടിസ്ഥാന പ്രവർത്തനങ്ങൾ എന്നിവ പ്രാപ്‌തമാക്കുന്നതിന് Amazon API ഗേറ്റ്‌വേ, AWS IoT കോർ, AWS ലാംഡ തുടങ്ങിയ AWS ഉൽപ്പന്നങ്ങൾ ഉപയോഗിക്കേണ്ടതുണ്ട്. ഇത് ടെർമിനൽ നിർമ്മാതാക്കളോട് ആഴത്തിലുള്ള ധാരണയും സമ്പന്നമായ അനുഭവവും ഉപയോഗിച്ച് ക്ലൗഡ് ഉൽപ്പന്നങ്ങൾ അയവുള്ള രീതിയിൽ ഉപയോഗിക്കാനും കോൺഫിഗർ ചെയ്യാനും ആവശ്യപ്പെടുക മാത്രമല്ല, പ്രാരംഭവും പിന്നീടുള്ളതുമായ നിർമ്മാണ ചെലവ് പരിഗണിക്കാനും ആവശ്യപ്പെടുന്നു.tagഇത് കമ്പനിയുടെ ഊർജ്ജത്തിനും വിഭവങ്ങൾക്കും വലിയ വെല്ലുവിളി ഉയർത്തുന്നു.
പൊതു മേഘങ്ങളുമായി താരതമ്യപ്പെടുത്തുമ്പോൾ, സ്വകാര്യ മേഘങ്ങൾ സാധാരണയായി നിർദ്ദിഷ്ട പ്രോജക്റ്റുകൾക്കും ഉൽപ്പന്നങ്ങൾക്കും വേണ്ടിയാണ് നിർമ്മിച്ചിരിക്കുന്നത്. സ്വകാര്യ ക്ലൗഡ് ഡെവലപ്പർമാർക്ക് പ്രോട്ടോക്കോൾ രൂപകൽപ്പനയിലും ബിസിനസ് ലോജിക് നടപ്പിലാക്കുന്നതിലും ഉയർന്ന തലത്തിലുള്ള സ്വാതന്ത്ര്യം നൽകുന്നു. ടെർമിനൽ നിർമ്മാതാക്കൾക്ക് ഇഷ്ടാനുസരണം ഉൽപ്പന്നങ്ങൾ നിർമ്മിക്കാനും സ്കീമുകൾ രൂപകൽപ്പന ചെയ്യാനും ഉപയോക്തൃ ഡാറ്റ എളുപ്പത്തിൽ സമന്വയിപ്പിക്കാനും ശാക്തീകരിക്കാനും കഴിയും. പൊതു ക്ലൗഡിൻ്റെ ഉയർന്ന സുരക്ഷയും സ്കേലബിളിറ്റിയും വിശ്വാസ്യതയും അഡ്വാനുമായി സംയോജിപ്പിക്കുന്നുtagസ്വകാര്യ ക്ലൗഡിൻ്റെ es, Espressif ഇഎസ്പി സമാരംഭിച്ചു
19

ആമസോൺ ക്ലൗഡിനെ അടിസ്ഥാനമാക്കിയുള്ള ആഴത്തിലുള്ള സംയോജിത സ്വകാര്യ ക്ലൗഡ് സൊല്യൂഷനാണ് റെയിൻ മേക്കർ. ഉപയോക്താക്കൾക്ക് ESP RainMaker വിന്യസിക്കാനും AWS അക്കൗണ്ട് ഉപയോഗിച്ച് സ്വകാര്യ ക്ലൗഡ് നിർമ്മിക്കാനും കഴിയും.
3.1 എന്താണ് ESP റെയിൻ മേക്കർ?
ഒന്നിലധികം മുതിർന്ന AWS ഉൽപ്പന്നങ്ങൾ ഉപയോഗിച്ച് നിർമ്മിച്ച ഒരു സമ്പൂർണ്ണ AIoT പ്ലാറ്റ്‌ഫോമാണ് ESP റെയിൻമേക്കർ. ഉപകരണ ക്ലൗഡ് ആക്‌സസ്, ഡിവൈസ് അപ്‌ഗ്രേഡ്, ബാക്കെൻഡ് മാനേജ്‌മെൻ്റ്, തേർഡ്-പാർട്ടി ലോഗിൻ, വോയ്‌സ് ഇൻ്റഗ്രേഷൻ, യൂസർ മാനേജ്‌മെൻ്റ് തുടങ്ങിയ വൻതോതിലുള്ള ഉൽപ്പാദനത്തിന് ആവശ്യമായ വിവിധ സേവനങ്ങൾ ഇത് നൽകുന്നു. AWS നൽകുന്ന Serverless Application Repository (SAR) ഉപയോഗിക്കുന്നതിലൂടെ, ടെർമിനൽ നിർമ്മാതാക്കൾക്ക് ESP RainMaker-നെ അവരുടെ AWS അക്കൗണ്ടുകളിലേക്ക് വേഗത്തിൽ വിന്യസിക്കാൻ കഴിയും, അത് സമയ-കാര്യക്ഷമവും പ്രവർത്തിക്കാൻ എളുപ്പവുമാണ്. Espressif നിയന്ത്രിക്കുകയും പരിപാലിക്കുകയും ചെയ്യുന്ന, ESP RainMaker ഉപയോഗിക്കുന്ന SAR, ക്ലൗഡ് മെയിൻ്റനൻസ് ചെലവ് കുറയ്ക്കാനും AIoT ഉൽപ്പന്നങ്ങളുടെ വികസനം ത്വരിതപ്പെടുത്താനും ഡവലപ്പർമാരെ സഹായിക്കുന്നു, അങ്ങനെ സുരക്ഷിതവും സുസ്ഥിരവും ഇഷ്ടാനുസൃതമാക്കാവുന്നതുമായ AIoT സൊല്യൂഷനുകൾ നിർമ്മിക്കുന്നു. ESP റെയിൻമേക്കറിൻ്റെ വാസ്തുവിദ്യ ചിത്രം 3.1 കാണിക്കുന്നു.
ചിത്രം 3.1. ESP റെയിൻമേക്കറിൻ്റെ വാസ്തുവിദ്യ
Espressif-ൻ്റെ ESP RainMaker പബ്ലിക് സെർവർ എല്ലാ ESP താൽപ്പര്യക്കാർക്കും നിർമ്മാതാക്കൾക്കും അധ്യാപകർക്കും പരിഹാര മൂല്യനിർണ്ണയത്തിനായി സൗജന്യമാണ്. ഡവലപ്പർമാർക്ക് Apple, Google അല്ലെങ്കിൽ GitHub അക്കൗണ്ടുകൾ ഉപയോഗിച്ച് ലോഗിൻ ചെയ്യാനും അവരുടെ സ്വന്തം IoT ആപ്ലിക്കേഷൻ പ്രോട്ടോടൈപ്പുകൾ വേഗത്തിൽ നിർമ്മിക്കാനും കഴിയും. പബ്ലിക് സെർവർ അലക്‌സയെയും ഗൂഗിൾ ഹോമിനെയും സമന്വയിപ്പിക്കുകയും വോയ്‌സ് കൺട്രോൾ സേവനങ്ങൾ നൽകുകയും ചെയ്യുന്നു, അവ അലക്‌സാ സ്കില്ലും ഗൂഗിൾ ആക്ഷൻസും പിന്തുണയ്ക്കുന്നു. അതിൻ്റെ സെമാൻ്റിക് റെക്കഗ്നിഷൻ ഫംഗ്‌ഷനും മൂന്നാം കക്ഷികളാണ് നൽകുന്നത്. RainMaker IoT ഉപകരണങ്ങൾ നിർദ്ദിഷ്ട പ്രവർത്തനങ്ങളോട് മാത്രമേ പ്രതികരിക്കൂ. പിന്തുണയ്‌ക്കുന്ന വോയ്‌സ് കമാൻഡുകളുടെ സമഗ്രമായ ലിസ്‌റ്റിനായി, മൂന്നാം കക്ഷി പ്ലാറ്റ്‌ഫോമുകൾ പരിശോധിക്കുക. കൂടാതെ, ഉപയോക്താക്കൾക്ക് സ്മാർട്ട്ഫോണുകളിലൂടെ ഉൽപ്പന്നങ്ങൾ നിയന്ത്രിക്കുന്നതിന് എസ്പ്രെസിഫ് ഒരു പൊതു റെയിൻമേക്കർ ആപ്പ് വാഗ്ദാനം ചെയ്യുന്നു. 20 ESP32-C3 വയർലെസ് അഡ്വഞ്ചർ: IoT-യിലേക്കുള്ള ഒരു സമഗ്ര ഗൈഡ്

3.2 ഇഎസ്പി റെയിൻമേക്കറിൻ്റെ നടപ്പാക്കൽ
ചിത്രം 3.2-ൽ കാണിച്ചിരിക്കുന്നതുപോലെ, ESP റെയിൻമേക്കറിൽ നാല് ഭാഗങ്ങൾ അടങ്ങിയിരിക്കുന്നു: · ക്ലെയിമിംഗ് സേവനം, റെയിൻമേക്കർ ഉപകരണങ്ങളെ ചലനാത്മകമായി സർട്ടിഫിക്കറ്റുകൾ നേടുന്നതിന് പ്രാപ്തമാക്കുന്നു. · റെയിൻമേക്കർ ക്ലൗഡ് (ക്ലൗഡ് ബാക്കെൻഡ് എന്നും അറിയപ്പെടുന്നു), സന്ദേശ ഫിൽട്ടറിംഗ്, ഉപയോക്തൃ മാനേജുമെൻ്റ്, ഡാറ്റ സംഭരണം, മൂന്നാം കക്ഷി സംയോജനങ്ങൾ എന്നിവ പോലുള്ള സേവനങ്ങൾ നൽകുന്നു. RainMaker ഏജൻ്റ്, RainMaker ക്ലൗഡിലേക്ക് കണക്റ്റുചെയ്യാൻ RainMaker ഉപകരണങ്ങളെ പ്രാപ്തമാക്കുന്നു. · റെയിൻമേക്കർ ക്ലയൻ്റ് (റെയിൻമേക്കർ ആപ്പ് അല്ലെങ്കിൽ CLI സ്ക്രിപ്റ്റുകൾ), പ്രൊവിഷനിംഗ്, ഉപയോക്തൃ സൃഷ്‌ടി, ഉപകരണ സംയോജനം, നിയന്ത്രണം മുതലായവ.
ചിത്രം 3.2. ESP റെയിൻമേക്കറിൻ്റെ ഘടന
ESP റെയിൻമേക്കർ ഉൽപ്പന്ന വികസനത്തിനും വൻതോതിലുള്ള ഉൽപ്പാദനത്തിനുമായി ഒരു സമ്പൂർണ്ണ ടൂളുകൾ നൽകുന്നു, ഇതിൽ ഉൾപ്പെടുന്നു: RainMaker SDK
RainMaker SDK, ESP-IDF അടിസ്ഥാനമാക്കിയുള്ളതാണ്, കൂടാതെ ഫേംവെയർ ഡെവലപ്‌മെൻ്റിനായി ഉപകരണ-സൈഡ് ഏജൻ്റിൻ്റെ സോഴ്‌സ് കോഡും അനുബന്ധ C API-കളും നൽകുന്നു. ഡെവലപ്പർമാർക്ക് ആപ്ലിക്കേഷൻ ലോജിക് എഴുതുകയും ബാക്കിയുള്ളവ റെയിൻമേക്കർ ഫ്രെയിംവർക്കിലേക്ക് വിടുകയും ചെയ്താൽ മതിയാകും. C API-കളെ കുറിച്ചുള്ള കൂടുതൽ വിവരങ്ങൾക്ക്, https://bookc3.espressif.com/rm/c-api-reference സന്ദർശിക്കുക. റെയിൻമേക്കർ ആപ്പ് റെയിൻമേക്കർ ആപ്പിൻ്റെ പൊതു പതിപ്പ്, ഉപകരണ പ്രൊവിഷനിംഗ് പൂർത്തിയാക്കാനും ഉപകരണങ്ങളുടെ സ്റ്റാറ്റസ് (ഉദാ, സ്മാർട്ട് ലൈറ്റിംഗ് ഉൽപ്പന്നങ്ങൾ) നിയന്ത്രിക്കാനും അന്വേഷിക്കാനും ഡെവലപ്പർമാരെ അനുവദിക്കുന്നു. ഇത് iOS, Android ആപ്പ് സ്റ്റോറുകളിൽ ലഭ്യമാണ്. കൂടുതൽ വിവരങ്ങൾക്ക്, ദയവായി അധ്യായം 10 ​​കാണുക. REST API-കൾ REST API-കൾ റെയിൻമേക്കർ ആപ്പിന് സമാനമായി സ്വന്തം ആപ്ലിക്കേഷനുകൾ നിർമ്മിക്കാൻ ഉപയോക്താക്കളെ സഹായിക്കുന്നു. കൂടുതൽ വിവരങ്ങൾക്ക്, https://swaggerapis.rainmaker.espressif.com/ സന്ദർശിക്കുക.
അധ്യായം 3. ESP റെയിൻമേക്കറിൻ്റെ ആമുഖം 21

പൈത്തൺ എപിഐകൾ സ്‌മാർട്ട്‌ഫോൺ ഫീച്ചറുകൾക്ക് സമാനമായ എല്ലാ ഫംഗ്‌ഷനുകളും നടപ്പിലാക്കുന്നതിനായി റെയിൻമേക്കർ എസ്‌ഡികെയ്‌ക്കൊപ്പം വരുന്ന പൈത്തൺ അധിഷ്‌ഠിത സിഎൽഐ നൽകിയിട്ടുണ്ട്. പൈത്തൺ API-കളെക്കുറിച്ചുള്ള കൂടുതൽ വിവരങ്ങൾക്ക്, https://bookc3.espressif.com/rm/python-api-reference സന്ദർശിക്കുക.
അഡ്‌മിൻ CLI അഡ്‌മിൻ CLI, ഉയർന്ന തലത്തിലുള്ള ആക്‌സസ് ഉള്ളത്, ഉപകരണ സർട്ടിഫിക്കറ്റുകൾ ബൾക്ക് സൃഷ്‌ടിക്കാൻ ESP റെയിൻമേക്കർ സ്വകാര്യ വിന്യാസത്തിനായി നൽകിയിരിക്കുന്നു.
3.2.1 ക്ലെയിമിംഗ് സേവനം
റെയിൻമേക്കർ ഉപകരണങ്ങളും ക്ലൗഡ് ബാക്കെൻഡും തമ്മിലുള്ള എല്ലാ ആശയവിനിമയങ്ങളും MQTT+TLS വഴിയാണ് നടക്കുന്നത്. ESP RainMaker-ൻ്റെ പശ്ചാത്തലത്തിൽ, ക്ലൗഡ് ബാക്കെൻഡിലേക്ക് കണക്റ്റുചെയ്യുന്നതിന് ക്ലെയിമിംഗ് സേവനത്തിൽ നിന്ന് ഉപകരണങ്ങൾ സർട്ടിഫിക്കറ്റുകൾ നേടുന്ന പ്രക്രിയയാണ് “ക്ലെയിമിംഗ്”. ക്ലെയിമിംഗ് സേവനം പൊതു റെയിൻമേക്കർ സേവനത്തിന് മാത്രമേ ബാധകമാകൂ, സ്വകാര്യ വിന്യാസത്തിന്, അഡ്‌മിൻ CLI വഴി ഉപകരണ സർട്ടിഫിക്കറ്റുകൾ ബൾക്ക് ആയി ജനറേറ്റ് ചെയ്യേണ്ടതുണ്ട്. ESP RainMaker മൂന്ന് തരത്തിലുള്ള ക്ലെയിമിംഗ് സേവനങ്ങളെ പിന്തുണയ്ക്കുന്നു: സ്വയം ക്ലെയിമിംഗ്
ഇൻറർനെറ്റിലേക്ക് കണക്‌റ്റ് ചെയ്‌ത ശേഷം eFuse-ൽ മുൻകൂട്ടി പ്രോഗ്രാം ചെയ്‌ത ഒരു രഹസ്യ കീ വഴി ഉപകരണം തന്നെ സർട്ടിഫിക്കറ്റുകൾ ലഭ്യമാക്കുന്നു. ഹോസ്റ്റ് ഡ്രൈവൺ ക്ലെയിമിംഗ് റെയിൻമേക്കർ അക്കൗണ്ടുള്ള ഡെവലപ്‌മെൻ്റ് ഹോസ്റ്റിൽ നിന്നാണ് സർട്ടിഫിക്കറ്റുകൾ ലഭിക്കുന്നത്. അസിസ്റ്റഡ് ക്ലെയിമിംഗ് പ്രൊവിഷനിംഗ് സമയത്ത് സ്മാർട്ട്ഫോൺ ആപ്ലിക്കേഷനുകൾ വഴിയാണ് സർട്ടിഫിക്കറ്റുകൾ ലഭിക്കുന്നത്.
3.2.2 റെയിൻമേക്കർ ഏജൻ്റ്
ചിത്രം 3.3. റെയിൻമേക്കർ എസ്ഡികെയുടെ ഘടന കണക്റ്റിവിറ്റി നൽകുകയും അപ്‌ലിങ്ക്/ഡൗൺലിങ്ക് ക്ലൗഡ് ഡാറ്റ പ്രോസസ്സ് ചെയ്യുന്നതിന് ആപ്ലിക്കേഷൻ ലെയറിനെ സഹായിക്കുകയും ചെയ്യുക എന്നതാണ് റെയിൻമേക്കർ ഏജൻ്റിൻ്റെ പ്രാഥമിക പ്രവർത്തനം. റെയിൻമേക്കർ SDK 22 ESP32-C3 വയർലെസ് അഡ്വഞ്ചർ വഴിയാണ് ഇത് നിർമ്മിച്ചിരിക്കുന്നത്: IoT-യിലേക്കുള്ള ഒരു സമഗ്ര ഗൈഡ്

RTOS, NVS, MQTT പോലുള്ള ESP-IDF ഘടകങ്ങൾ ഉപയോഗിച്ച് തെളിയിക്കപ്പെട്ട ESP-IDF ചട്ടക്കൂടിനെ അടിസ്ഥാനമാക്കി വികസിപ്പിച്ചതും. ചിത്രം 3.3 റെയിൻമേക്കർ എസ്ഡികെയുടെ ഘടന കാണിക്കുന്നു.
റെയിൻമേക്കർ SDK രണ്ട് പ്രധാന സവിശേഷതകൾ ഉൾക്കൊള്ളുന്നു.
കണക്ഷൻ
ഐ. ഉപകരണ സർട്ടിഫിക്കറ്റുകൾ ലഭിക്കുന്നതിന് ക്ലെയിമിംഗ് സേവനവുമായി സഹകരിക്കുന്നു.
ii. റിമോട്ട് കണക്റ്റിവിറ്റി നൽകുന്നതിനും റിമോട്ട് കൺട്രോൾ, മെസേജ് റിപ്പോർട്ടിംഗ്, ഉപയോക്തൃ മാനേജ്മെൻ്റ്, ഡിവൈസ് മാനേജ്മെൻ്റ് മുതലായവ നടപ്പിലാക്കുന്നതിനും സുരക്ഷിതമായ MQTT പ്രോട്ടോക്കോൾ ഉപയോഗിച്ച് ക്ലൗഡ് ബാക്കെൻഡിലേക്ക് കണക്റ്റുചെയ്യുന്നു. ഇത് ESP-IDF-ൽ സ്ഥിരസ്ഥിതിയായി MQTT ഘടകം ഉപയോഗിക്കുകയും മറ്റുള്ളവരുമായി ഇൻ്റർഫേസ് ചെയ്യുന്നതിന് ഒരു അബ്സ്ട്രാക്ഷൻ ലെയർ നൽകുകയും ചെയ്യുന്നു. പ്രോട്ടോക്കോൾ സ്റ്റാക്കുകൾ.
iii. Wi-Fi കണക്ഷനും പ്രൊവിഷനിംഗിനുമായി വൈഫൈ പ്രൊവിഷനിംഗ് ഘടകം നൽകുന്നു, OTA അപ്‌ഗ്രേഡുകൾക്കായി esp https ota ഘടകം, കൂടാതെ പ്രാദേശിക ഉപകരണ കണ്ടെത്തലിനും കണക്ഷനുമായി esp ലോക്കൽ ctrl ഘടകം. ഈ ലക്ഷ്യങ്ങളെല്ലാം ലളിതമായ കോൺഫിഗറേഷനിലൂടെ നേടാനാകും.
ഡാറ്റ പ്രോസസ്സിംഗ്
ഐ. ക്ലെയിമിംഗ് സേവനം നൽകുന്ന ഉപകരണ സർട്ടിഫിക്കറ്റുകളും റെയിൻമേക്കർ പ്രവർത്തിപ്പിക്കുമ്പോൾ ആവശ്യമായ ഡാറ്റയും സംഭരിക്കുന്നു, സ്ഥിരസ്ഥിതിയായി nvs ഫ്ലാഷ് ഘടകം നൽകുന്ന ഇൻ്റർഫേസ് ഉപയോഗിക്കുകയും ഡെവലപ്പർമാർക്ക് നേരിട്ടുള്ള ഉപയോഗത്തിനായി API-കൾ നൽകുകയും ചെയ്യുന്നു.
ii. അപ്‌ലിങ്ക്/ഡൗൺലിങ്ക് ക്ലൗഡ് ഡാറ്റ പ്രോസസ്സ് ചെയ്യുന്നതിന് കോൾബാക്ക് മെക്കാനിസം ഉപയോഗിക്കുകയും ഡെവലപ്പർമാർ എളുപ്പത്തിൽ പ്രോസസ്സ് ചെയ്യുന്നതിനായി ആപ്ലിക്കേഷൻ ലെയറിലേക്ക് ഡാറ്റ സ്വയമേവ അൺബ്ലോക്ക് ചെയ്യുകയും ചെയ്യുന്നു. ഉദാample, TSL (തിംഗ് സ്‌പെസിഫിക്കേഷൻ ലാംഗ്വേജ്) ഡാറ്റ സ്ഥാപിക്കുന്നതിന് റെയിൻമേക്കർ SDK സമ്പന്നമായ ഇൻ്റർഫേസുകൾ നൽകുന്നു, ഇത് IoT ഉപകരണങ്ങളെ വിവരിക്കുന്നതിനും സമയം, കൗണ്ട്ഡൗൺ, വോയ്‌സ് കൺട്രോൾ തുടങ്ങിയ പ്രവർത്തനങ്ങൾ നടപ്പിലാക്കുന്നതിനും TSL മോഡലുകൾ നിർവചിക്കേണ്ടതുണ്ട്. ടൈമിംഗ് പോലുള്ള അടിസ്ഥാന ഇൻ്ററാക്ടീവ് ഫീച്ചറുകൾക്കായി, റെയിൻമേക്കർ SDK ഒരു വികസന രഹിത പരിഹാരം നൽകുന്നു, അത് ആവശ്യമുള്ളപ്പോൾ പ്രവർത്തനക്ഷമമാക്കാം. തുടർന്ന്, റെയിൻമേക്കർ ഏജൻ്റ് നേരിട്ട് ഡാറ്റ പ്രോസസ്സ് ചെയ്യുകയും അനുബന്ധ MQTT വിഷയത്തിലൂടെ ക്ലൗഡിലേക്ക് അയയ്ക്കുകയും കോൾബാക്ക് മെക്കാനിസത്തിലൂടെ ക്ലൗഡ് ബാക്കെൻഡിലെ ഡാറ്റാ മാറ്റങ്ങൾ തിരികെ നൽകുകയും ചെയ്യും.
3.2.3 ക്ലൗഡ് ബാക്കെൻഡ്
AWS സെർവർലെസ് കംപ്യൂട്ടിംഗിലാണ് ക്ലൗഡ് ബാക്കെൻഡ് നിർമ്മിച്ചിരിക്കുന്നത്, AWS Cognito (ഐഡൻ്റിറ്റി മാനേജ്‌മെൻ്റ് സിസ്റ്റം), Amazon API ഗേറ്റ്‌വേ, AWS Lambda (serverless computing service), Amazon DynamoDB (NoSQL ഡാറ്റാബേസ്), AWS IoT കോർ (MQTT ആക്‌സസ് നൽകുന്ന IoT ആക്‌സസ് കോർ) എന്നിവയിലൂടെ നേടിയെടുക്കുന്നു. കൂടാതെ റൂൾ ഫിൽട്ടറിംഗ്), ആമസോൺ സിമ്പിൾ ഇമെയിൽ സേവനം (എസ്ഇഎസ് സിമ്പിൾ മെയിൽ സേവനം), ആമസോൺ ക്ലൗഡ്ഫ്രണ്ട് (ഫാസ്റ്റ് ഡെലിവറി നെറ്റ്‌വർക്ക്), ആമസോൺ സിമ്പിൾ ക്യൂ സേവനം (എസ്‌ക്യുഎസ് സന്ദേശ ക്യൂയിംഗ്), ആമസോൺ എസ് 3 (ബക്കറ്റ് സ്റ്റോറേജ് സേവനം). സ്കേലബിളിറ്റിയും സുരക്ഷയും ഒപ്റ്റിമൈസ് ചെയ്യാൻ ഇത് ലക്ഷ്യമിടുന്നു. ESP RainMaker ഉപയോഗിച്ച്, ക്ലൗഡിൽ കോഡ് എഴുതാതെ തന്നെ ഡവലപ്പർമാർക്ക് ഉപകരണങ്ങൾ നിയന്ത്രിക്കാനാകും. ഉപകരണങ്ങൾ റിപ്പോർട്ട് ചെയ്യുന്ന സന്ദേശങ്ങൾ സുതാര്യമായി കൈമാറുന്നു
അധ്യായം 3. ESP റെയിൻമേക്കറിൻ്റെ ആമുഖം 23

ആപ്ലിക്കേഷൻ ക്ലയൻ്റുകൾ അല്ലെങ്കിൽ മറ്റ് മൂന്നാം കക്ഷി സേവനങ്ങൾ. കൂടുതൽ ഉൽപ്പന്നങ്ങളും സവിശേഷതകളും വികസിപ്പിച്ചുകൊണ്ടിരിക്കുന്ന, ക്ലൗഡ് ബാക്കെൻഡിൽ ഉപയോഗിക്കുന്ന AWS ക്ലൗഡ് ഉൽപ്പന്നങ്ങളും പ്രവർത്തനങ്ങളും പട്ടിക 3.1 കാണിക്കുന്നു.
പട്ടിക 3.1. ക്ലൗഡ് ബാക്കെൻഡ് ഉപയോഗിക്കുന്ന AWS ക്ലൗഡ് ഉൽപ്പന്നങ്ങളും പ്രവർത്തനങ്ങളും

റെയിൻമേക്കർ ഉപയോഗിക്കുന്ന AWS ക്ലൗഡ് ഉൽപ്പന്നം

ഫംഗ്ഷൻ

AWS കോഗ്നിറ്റോ

ഉപയോക്തൃ ക്രെഡൻഷ്യലുകൾ നിയന്ത്രിക്കുകയും മൂന്നാം കക്ഷി ലോഗിനുകളെ പിന്തുണയ്ക്കുകയും ചെയ്യുന്നു

AWS ലാംഡ

ക്ലൗഡ് ബാക്കെൻഡിൻ്റെ പ്രധാന ബിസിനസ്സ് ലോജിക് നടപ്പിലാക്കുന്നു

ആമസോൺ ടൈംസ്ട്രീം സമയ ശ്രേണി ഡാറ്റ സംഭരിക്കുന്നു

Amazon DynamoDB ഉപഭോക്താക്കളുടെ സ്വകാര്യ വിവരങ്ങൾ സംഭരിക്കുന്നു

AWS IoT കോർ

MQTT ആശയവിനിമയത്തെ പിന്തുണയ്ക്കുന്നു

ആമസോൺ SES

ഇമെയിൽ അയയ്ക്കൽ സേവനങ്ങൾ നൽകുന്നു

ആമസോൺ ക്ലൗഡ്‌ഫ്രണ്ട് ബാക്കെൻഡിൻ്റെ മാനേജ്‌മെൻ്റ് ത്വരിതപ്പെടുത്തുന്നു webസൈറ്റ് ആക്സസ്

ആമസോൺ SQS

AWS IoT Core-ൽ നിന്നുള്ള സന്ദേശങ്ങൾ കൈമാറുന്നു

3.2.4 റെയിൻമേക്കർ ക്ലയൻ്റ്
ആപ്പ്, സിഎൽഐ പോലുള്ള റെയിൻമേക്കർ ക്ലയൻ്റുകൾ, ക്ലൗഡ് ബാക്കെൻഡുമായി REST API-കൾ വഴി ആശയവിനിമയം നടത്തുന്നു. REST API-കളെക്കുറിച്ചുള്ള വിശദമായ വിവരങ്ങളും നിർദ്ദേശങ്ങളും Espressif നൽകുന്ന സ്വാഗർ ഡോക്യുമെൻ്റേഷനിൽ കാണാം. RainMaker-ൻ്റെ മൊബൈൽ ആപ്ലിക്കേഷൻ ക്ലയൻ്റ് iOS, Android സിസ്റ്റങ്ങൾക്ക് ലഭ്യമാണ്. ഇത് ഉപകരണ പ്രൊവിഷനിംഗ്, നിയന്ത്രണം, പങ്കിടൽ എന്നിവയെ അനുവദിക്കുന്നു, അതുപോലെ തന്നെ കൗണ്ട്‌ഡൗൺ ടാസ്‌ക്കുകൾ സൃഷ്‌ടിക്കാനും പ്രാപ്‌തമാക്കാനും മൂന്നാം കക്ഷി പ്ലാറ്റ്‌ഫോമുകളിലേക്ക് കണക്റ്റുചെയ്യാനും ഇത് അനുവദിക്കുന്നു. ഉപകരണങ്ങൾ റിപ്പോർട്ട് ചെയ്‌ത കോൺഫിഗറേഷൻ അനുസരിച്ച് ഇതിന് യുഐയും ഐക്കണുകളും യാന്ത്രികമായി ലോഡുചെയ്യാനും ഉപകരണം TSL പൂർണ്ണമായി പ്രദർശിപ്പിക്കാനും കഴിയും.
ഉദാample, RainMaker SDK-ൽ നൽകിയിട്ടുള്ള ഒരു സ്മാർട്ട് ലൈറ്റ് നിർമ്മിച്ചിട്ടുണ്ടെങ്കിൽampഎന്നിരുന്നാലും, പ്രൊവിഷനിംഗ് പൂർത്തിയാകുമ്പോൾ ബൾബ് ലൈറ്റിൻ്റെ ഐക്കണും യുഐയും സ്വയമേവ ലോഡ് ചെയ്യും. ഉപയോക്താക്കൾക്ക് അവരുടെ ESP റെയിൻമേക്കർ അക്കൗണ്ടുകളിലേക്ക് Alexa Smart Home Skill അല്ലെങ്കിൽ Google Smart Home Actions ലിങ്ക് ചെയ്യുന്നതിലൂടെ ഇൻ്റർഫേസിലൂടെ പ്രകാശത്തിൻ്റെ നിറവും തെളിച്ചവും മാറ്റാനും മൂന്നാം കക്ഷി നിയന്ത്രണം നേടാനും കഴിയും. ചിത്രം 3.4 ഐക്കണും UI ഉം കാണിക്കുന്നുampAlexa, Google Home, ESP RainMaker ആപ്പ് എന്നിവയിൽ യഥാക്രമം ബൾബ് ലൈറ്റ്.

24 ESP32-C3 വയർലെസ് അഡ്വഞ്ചർ: IoT-യിലേക്കുള്ള ഒരു സമഗ്ര ഗൈഡ്

(എ) ഉദാampലെ - അലക്സ

(ബി) ഉദാampലെ - ഗൂഗിൾ ഹോം

(സി) ഉദാample - ESP റെയിൻമേക്കർ
ചിത്രം 3.4. Exampഅലക്‌സ, ഗൂഗിൾ ഹോം, ഇഎസ്പി റെയിൻമേക്കർ ആപ്പ് എന്നിവയിലെ ബൾബ് ലൈറ്റിൻ്റെ ഐക്കണും യുഐയും
3.3 പ്രാക്ടീസ്: ESP റെയിൻമേക്കർ ഉപയോഗിച്ച് വികസിപ്പിക്കുന്നതിനുള്ള പ്രധാന പോയിൻ്റുകൾ
ഉപകരണ ഡ്രൈവർ ലെയർ പൂർത്തിയായിക്കഴിഞ്ഞാൽ, ഡെവലപ്പർമാർ TSL മോഡലുകൾ സൃഷ്‌ടിക്കാനും RainMaker SDK നൽകുന്ന API-കൾ ഉപയോഗിച്ച് ഡൗൺലിങ്ക് ഡാറ്റ പ്രോസസ്സ് ചെയ്യാനും തുടങ്ങിയേക്കാം, കൂടാതെ ഉൽപ്പന്ന നിർവചനവും ആവശ്യകതകളും അടിസ്ഥാനമാക്കി ESP RainMaker അടിസ്ഥാന സേവനങ്ങൾ പ്രവർത്തനക്ഷമമാക്കും.
അധ്യായം 3. ESP റെയിൻമേക്കറിൻ്റെ ആമുഖം 25

ഈ പുസ്തകത്തിൻ്റെ സെക്ഷൻ 9.4 റെയിൻമേക്കറിൽ എൽഇഡി സ്മാർട്ട് ലൈറ്റ് നടപ്പിലാക്കുന്നത് വിശദീകരിക്കും. ഡീബഗ്ഗിംഗ് സമയത്ത്, സ്‌മാർട്ട് ലൈറ്റുമായി ആശയവിനിമയം നടത്താൻ ഡെവലപ്പർമാർക്ക് RainMaker SDK-യിലെ CLI ടൂളുകൾ ഉപയോഗിക്കാം (അല്ലെങ്കിൽ Swagger-ൽ നിന്ന് REST API-കളെ വിളിക്കുക).
സ്മാർട്ട്‌ഫോൺ ആപ്ലിക്കേഷനുകൾ വികസിപ്പിക്കുന്നതിൽ REST API-കളുടെ ഉപയോഗം പാഠം 10 വിശദീകരിക്കും. LED സ്‌മാർട്ട് ലൈറ്റുകളുടെ OTA അപ്‌ഗ്രേഡുകൾ അധ്യായം 11-ൽ ഉൾപ്പെടുത്തും. ഡെവലപ്പർമാർ ESP ഇൻസൈറ്റ്‌സ് റിമോട്ട് മോണിറ്ററിംഗ് പ്രവർത്തനക്ഷമമാക്കിയിട്ടുണ്ടെങ്കിൽ, ESP RainMaker മാനേജ്‌മെൻ്റ് ബാക്കെൻഡ് ESP ഇൻസൈറ്റ് ഡാറ്റ പ്രദർശിപ്പിക്കും. വിശദാംശങ്ങൾ അദ്ധ്യായം 15-ൽ അവതരിപ്പിക്കും.
ഇഎസ്പി റെയിൻമേക്കർ സ്വകാര്യ വിന്യാസത്തെ പിന്തുണയ്ക്കുന്നു, ഇത് പൊതു റെയിൻമേക്കർ സെർവറിൽ നിന്ന് ഇനിപ്പറയുന്ന വഴികളിൽ വ്യത്യാസപ്പെട്ടിരിക്കുന്നു:
ക്ലെയിമിംഗ് സേവനം സ്വകാര്യ വിന്യാസങ്ങളിൽ സർട്ടിഫിക്കറ്റുകൾ സൃഷ്ടിക്കുന്നതിന്, ക്ലെയിം ചെയ്യുന്നതിനുപകരം RainMaker അഡ്മിൻ CLI ഉപയോഗിക്കേണ്ടതുണ്ട്. പൊതു സെർവർ ഉപയോഗിച്ച്, ഫേംവെയർ അപ്‌ഗ്രേഡ് നടപ്പിലാക്കാൻ ഡവലപ്പർമാർക്ക് അഡ്മിൻ അവകാശങ്ങൾ നൽകണം, എന്നാൽ വാണിജ്യ വിന്യാസങ്ങളിൽ ഇത് അഭികാമ്യമല്ല. അതിനാൽ, സ്വയം ക്ലെയിം ചെയ്യുന്നതിനായി പ്രത്യേക പ്രാമാണീകരണ സേവനമോ ഹോസ്റ്റ് ഡ്രൈവ് അല്ലെങ്കിൽ അസിസ്റ്റഡ് ക്ലെയിം ചെയ്യുന്നതിനുള്ള അഡ്മിൻ അവകാശങ്ങളോ നൽകാനാവില്ല.
ഫോൺ ആപ്പുകൾ സ്വകാര്യ വിന്യാസങ്ങളിൽ, അക്കൗണ്ട് സിസ്റ്റങ്ങൾ പരസ്പരം പ്രവർത്തിക്കാനാകുന്നില്ലെന്ന് ഉറപ്പാക്കാൻ ആപ്ലിക്കേഷനുകൾ പ്രത്യേകം കോൺഫിഗർ ചെയ്യുകയും കംപൈൽ ചെയ്യുകയും വേണം.
മൂന്നാം കക്ഷി ലോഗിനുകളും വോയ്‌സ് ഇൻ്റഗ്രേഷനും മൂന്നാം കക്ഷി ലോഗിനുകളും അതുപോലെ അലക്‌സാ സ്‌കിൽ, ഗൂഗിൾ വോയ്‌സ് അസിസ്റ്റൻ്റ് ഇൻ്റഗ്രേഷനും പ്രവർത്തനക്ഷമമാക്കാൻ ഡവലപ്പർമാർ Google, Apple ഡെവലപ്പർ അക്കൗണ്ടുകൾ വഴി പ്രത്യേകം കോൺഫിഗർ ചെയ്യേണ്ടതുണ്ട്.
നുറുങ്ങുകൾ ക്ലൗഡ് വിന്യാസത്തെക്കുറിച്ചുള്ള വിശദാംശങ്ങൾക്ക്, https://customer.rainmaker.espressif സന്ദർശിക്കുക. com. ഫേംവെയറിൻ്റെ കാര്യത്തിൽ, പൊതു സെർവറിൽ നിന്ന് സ്വകാര്യ സെർവറിലേക്കുള്ള മൈഗ്രേഷന് ഉപകരണ സർട്ടിഫിക്കറ്റുകൾ മാറ്റിസ്ഥാപിക്കേണ്ടതുണ്ട്, ഇത് മൈഗ്രേഷൻ കാര്യക്ഷമതയെ വളരെയധികം മെച്ചപ്പെടുത്തുകയും മൈഗ്രേഷൻ്റെയും ദ്വിതീയ ഡീബഗ്ഗിംഗിൻ്റെയും വില കുറയ്ക്കുകയും ചെയ്യുന്നു.
3.4 ESP റെയിൻമേക്കറിൻ്റെ സവിശേഷതകൾ
ESP റെയിൻമേക്കർ ഫീച്ചറുകൾ പ്രധാനമായും ലക്ഷ്യമിടുന്നത് ഉപയോക്തൃ മാനേജുമെൻ്റ്, അന്തിമ ഉപയോക്താക്കൾ, അഡ്മിനുകൾ എന്നിങ്ങനെ മൂന്ന് വശങ്ങളെയാണ്. പ്രസ്താവിച്ചിട്ടില്ലെങ്കിൽ എല്ലാ സവിശേഷതകളും പൊതു, സ്വകാര്യ സെർവറുകളിൽ പിന്തുണയ്ക്കുന്നു.
3.4.1 ഉപയോക്തൃ മാനേജ്മെന്റ്
ഉപയോക്തൃ മാനേജുമെൻ്റ് സവിശേഷതകൾ അന്തിമ ഉപയോക്താക്കളെ രജിസ്റ്റർ ചെയ്യാനും ലോഗിൻ ചെയ്യാനും പാസ്‌വേഡുകൾ മാറ്റാനും പാസ്‌വേഡുകൾ വീണ്ടെടുക്കാനും മറ്റും അനുവദിക്കുന്നു.
26 ESP32-C3 വയർലെസ് അഡ്വഞ്ചർ: IoT-യിലേക്കുള്ള ഒരു സമഗ്ര ഗൈഡ്

റെയിൻമേക്കർ പിന്തുണയ്ക്കുന്ന രജിസ്ട്രേഷൻ, ലോഗിൻ രീതികളിൽ രജിസ്റ്റർ ചെയ്യുകയും ലോഗിൻ ചെയ്യുകയും ചെയ്യുക
ശ്രദ്ധിക്കുക Google/Amazon ഉപയോഗിച്ച് സൈൻ അപ്പ് ചെയ്യുക, ഉപയോക്താവിൻ്റെ ഇമെയിൽ വിലാസം RainMaker-മായി പങ്കിടുന്നു. ആപ്പിൾ ഉപയോഗിച്ച് സൈൻ അപ്പ് ചെയ്യുക, റെയിൻമേക്കർ സേവനത്തിനായി പ്രത്യേകമായി ഉപയോക്താവിന് ആപ്പിൾ നൽകുന്ന ഒരു ഡമ്മി വിലാസം പങ്കിടുന്നു. Google, Apple അല്ലെങ്കിൽ Amazon അക്കൗണ്ട് ഉപയോഗിച്ച് ആദ്യമായി സൈൻ ഇൻ ചെയ്യുന്ന ഉപയോക്താക്കൾക്കായി ഒരു RainMaker അക്കൗണ്ട് സ്വയമേവ സൃഷ്ടിക്കപ്പെടും.
പാസ്‌വേഡ് മാറ്റുക ഇമെയിൽ ഐഡി/ഫോൺ നമ്പർ അടിസ്ഥാനമാക്കിയുള്ള ലോഗിനുകൾക്ക് മാത്രമേ സാധുതയുള്ളൂ. പാസ്‌വേഡ് മാറ്റിയതിന് ശേഷം മറ്റെല്ലാ സജീവ സെഷനുകളും ലോഗ് ഔട്ട് ചെയ്യപ്പെടും. AWS Cognito പെരുമാറ്റം അനുസരിച്ച്, ലോഗ് ഔട്ട് ചെയ്ത സെഷനുകൾക്ക് 1 മണിക്കൂർ വരെ സജീവമായി തുടരാനാകും.
പാസ്‌വേഡ് വീണ്ടെടുക്കുക ഇമെയിൽ ഐഡി/ഫോൺ നമ്പർ അടിസ്ഥാനമാക്കിയുള്ള ലോഗിനുകൾക്ക് മാത്രമേ സാധുതയുള്ളൂ.
3.4.2 അന്തിമ ഉപയോക്തൃ സവിശേഷതകൾ
അന്തിമ ഉപയോക്താക്കൾക്കായി തുറന്നിരിക്കുന്ന ഫീച്ചറുകളിൽ ലോക്കൽ, റിമോട്ട് കൺട്രോൾ, മോണിറ്ററിംഗ്, ഷെഡ്യൂളിംഗ്, ഉപകരണ ഗ്രൂപ്പിംഗ്, ഉപകരണം പങ്കിടൽ, പുഷ് അറിയിപ്പുകൾ, മൂന്നാം കക്ഷി സംയോജനങ്ങൾ എന്നിവ ഉൾപ്പെടുന്നു.
വിദൂര നിയന്ത്രണവും നിരീക്ഷണവും · ഒന്നോ അല്ലെങ്കിൽ എല്ലാ ഉപകരണങ്ങളുടെയും അന്വേഷണ കോൺഫിഗറേഷൻ, പാരാമീറ്റർ മൂല്യങ്ങൾ, കണക്ഷൻ നില. · ഒറ്റ അല്ലെങ്കിൽ ഒന്നിലധികം ഉപകരണങ്ങൾക്കായി പാരാമീറ്ററുകൾ സജ്ജമാക്കുക.
പ്രാദേശിക നിയന്ത്രണവും നിരീക്ഷണവും പ്രാദേശിക നിയന്ത്രണത്തിനായി മൊബൈൽ ഫോണും ഉപകരണവും ഒരേ നെറ്റ്‌വർക്കിലേക്ക് കണക്‌റ്റ് ചെയ്യേണ്ടതുണ്ട്.
ഷെഡ്യൂളിംഗ് · ഉപയോക്താക്കൾ ഒരു നിശ്ചിത സമയത്ത് ചില പ്രവർത്തനങ്ങൾ മുൻകൂട്ടി സജ്ജമാക്കുന്നു. · ഷെഡ്യൂൾ നടപ്പിലാക്കുമ്പോൾ ഉപകരണത്തിന് ഇൻ്റർനെറ്റ് കണക്ഷൻ ആവശ്യമില്ല. · ഒറ്റ അല്ലെങ്കിൽ ഒന്നിലധികം ഉപകരണങ്ങൾക്കായി ഒരു തവണ അല്ലെങ്കിൽ ആവർത്തിക്കുക (ദിവസങ്ങൾ വ്യക്തമാക്കി).
ഉപകരണ ഗ്രൂപ്പിംഗ് മൾട്ടി-ലെവൽ അബ്‌സ്‌ട്രാക്റ്റ് ഗ്രൂപ്പിംഗിനെ പിന്തുണയ്ക്കുന്നു ഒരു ഹോം റൂം ഘടന സൃഷ്ടിക്കാൻ ഗ്രൂപ്പ് മെറ്റാഡാറ്റ ഉപയോഗിക്കാം.
അധ്യായം 3. ESP റെയിൻമേക്കറിൻ്റെ ആമുഖം 27

ഉപകരണം പങ്കിടൽ ഒന്നോ അതിലധികമോ ഉപകരണങ്ങൾ ഒന്നോ അതിലധികമോ ഉപയോക്താക്കളുമായി പങ്കിടാം.
പുഷ് അറിയിപ്പുകൾ അന്തിമ ഉപയോക്താക്കൾക്ക് ഇവൻ്റുകൾക്കായി പുഷ് അറിയിപ്പുകൾ ലഭിക്കും · പുതിയ ഉപകരണം(കൾ) ചേർത്തു/നീക്കം ചെയ്തു
ലൈറ്റുകൾ, സ്വിച്ചുകൾ, സോക്കറ്റുകൾ, ഫാനുകൾ, ടെമ്പറേച്ചർ സെൻസറുകൾ എന്നിവയുൾപ്പെടെ റെയിൻമേക്കർ ഉപകരണങ്ങളെ നിയന്ത്രിക്കുന്നതിന് തേർഡ് പാർട്ടി ഇൻ്റഗ്രേഷനുകൾ Alexa, Google Voice Assistant എന്നിവ പിന്തുണയ്ക്കുന്നു.
3.4.3 അഡ്മിൻ സവിശേഷതകൾ
ഉപകരണ രജിസ്ട്രേഷൻ, ഉപകരണ ഗ്രൂപ്പിംഗ്, OTA അപ്‌ഗ്രേഡുകൾ എന്നിവ നടപ്പിലാക്കാൻ അഡ്മിനിസ്ട്രേറ്റർമാരെ അഡ്‌മിൻ സവിശേഷതകൾ അനുവദിക്കുന്നു view സ്ഥിതിവിവരക്കണക്കുകളും ESP ഇൻസൈറ്റ് ഡാറ്റയും.
ഉപകരണ രജിസ്ട്രേഷൻ ഉപകരണ സർട്ടിഫിക്കറ്റുകൾ സൃഷ്ടിച്ച് അഡ്മിൻ CLI-ൽ രജിസ്റ്റർ ചെയ്യുക (സ്വകാര്യ സെർവർ മാത്രം).
ഉപകരണ ഗ്രൂപ്പിംഗ് ഉപകരണ വിവരങ്ങളെ അടിസ്ഥാനമാക്കി അമൂർത്തമായ അല്ലെങ്കിൽ ഘടനാപരമായ ഗ്രൂപ്പുകൾ സൃഷ്ടിക്കുക (സ്വകാര്യ സെർവർ മാത്രം).
ഓവർ-ദി-എയർ (OTA) അപ്‌ഗ്രേഡുകൾ പതിപ്പിനെയും മോഡലിനെയും അടിസ്ഥാനമാക്കി ഒന്നോ അതിലധികമോ ഉപകരണങ്ങളിലേക്കോ ഒരു ഗ്രൂപ്പിലേക്കോ ഫേംവെയർ അപ്‌ലോഡ് ചെയ്യുക, OTA ജോലികൾ നിരീക്ഷിക്കുക, റദ്ദാക്കുക അല്ലെങ്കിൽ ആർക്കൈവ് ചെയ്യുക.
View സ്ഥിതിവിവരക്കണക്കുകൾ Viewപ്രാപ്തമായ സ്ഥിതിവിവരക്കണക്കുകൾ ഉൾപ്പെടുന്നു: · ഉപകരണ രജിസ്ട്രേഷനുകൾ (അഡ്മിൻ രജിസ്റ്റർ ചെയ്ത സർട്ടിഫിക്കറ്റുകൾ) · ഉപകരണ സജീവമാക്കലുകൾ (ആദ്യമായി കണക്റ്റുചെയ്തിരിക്കുന്ന ഉപകരണം) · ഉപയോക്തൃ അക്കൗണ്ടുകൾ · ഉപയോക്തൃ-ഉപകരണ അസോസിയേഷൻ
View ESP സ്ഥിതിവിവരക്കണക്ക് ഡാറ്റ Viewകഴിവുള്ള ESP സ്ഥിതിവിവരക്കണക്കുകൾ ഡാറ്റയിൽ ഉൾപ്പെടുന്നു: · പിശകുകൾ, മുന്നറിയിപ്പുകൾ, ഇഷ്‌ടാനുസൃത ലോഗുകൾ · ക്രാഷ് റിപ്പോർട്ടുകളും വിശകലനങ്ങളും · റീബൂട്ട് കാരണങ്ങൾ · മെമ്മറി ഉപയോഗം, RSSI മുതലായവ പോലുള്ള മെട്രിക്കുകൾ. · ഇഷ്‌ടാനുസൃത മെട്രിക്‌സും വേരിയബിളുകളും
28 ESP32-C3 വയർലെസ് അഡ്വഞ്ചർ: IoT-യിലേക്കുള്ള ഒരു സമഗ്ര ഗൈഡ്

3.5 സംഗ്രഹം
ഈ അധ്യായത്തിൽ, പൊതു റെയിൻമേക്കർ വിന്യാസവും സ്വകാര്യ വിന്യാസവും തമ്മിലുള്ള ചില പ്രധാന വ്യത്യാസങ്ങൾ ഞങ്ങൾ അവതരിപ്പിച്ചു. എസ്പ്രെസ്സിഫ് പുറത്തിറക്കിയ സ്വകാര്യ ഇഎസ്പി റെയിൻമേക്കർ സൊല്യൂഷൻ വളരെ വിശ്വസനീയവും വിപുലീകരിക്കാവുന്നതുമാണ്. എല്ലാ ESP32 സീരീസ് ചിപ്പുകളും AWS-ലേക്ക് ബന്ധിപ്പിച്ചിരിക്കുന്നു, ഇത് ചെലവ് ഗണ്യമായി കുറയ്ക്കുന്നു. ഡെവലപ്പർമാർക്ക് AWS ക്ലൗഡ് ഉൽപ്പന്നങ്ങളെക്കുറിച്ച് പഠിക്കാതെ തന്നെ പ്രോട്ടോടൈപ്പ് പരിശോധനയിൽ ശ്രദ്ധ കേന്ദ്രീകരിക്കാൻ കഴിയും. ESP റെയിൻമേക്കറിൻ്റെ നടപ്പാക്കലും സവിശേഷതകളും പ്ലാറ്റ്‌ഫോം ഉപയോഗിച്ചുള്ള വികസനത്തിനുള്ള ചില പ്രധാന പോയിൻ്റുകളും ഞങ്ങൾ വിശദീകരിച്ചു.
Android-നായി ESP RainMaker ഡൗൺലോഡ് ചെയ്യാൻ സ്കാൻ ചെയ്യുക, iOS-നായി ESP RainMaker ഡൗൺലോഡ് ചെയ്യാൻ സ്കാൻ ചെയ്യുക
അധ്യായം 3. ESP റെയിൻമേക്കറിൻ്റെ ആമുഖം 29

30 ESP32-C3 വയർലെസ് അഡ്വഞ്ചർ: IoT-യിലേക്കുള്ള ഒരു സമഗ്ര ഗൈഡ്

അധ്യായം 4 വികസന പരിസ്ഥിതി സജ്ജീകരിക്കുന്നു
ഈ അധ്യായം ESP32-C3-യുടെ ഔദ്യോഗിക സോഫ്റ്റ്‌വെയർ വികസന ചട്ടക്കൂടായ ESP-IDF-നെ കേന്ദ്രീകരിക്കുന്നു. വിവിധ ഓപ്പറേറ്റിംഗ് സിസ്റ്റങ്ങളിൽ പരിസ്ഥിതി എങ്ങനെ സജ്ജീകരിക്കാമെന്നും ഇഎസ്പി-ഐഡിഎഫിൻ്റെ പ്രോജക്റ്റ് ഘടനയും ബിൽഡ് സിസ്റ്റവും അവതരിപ്പിക്കുന്നതും അനുബന്ധ വികസന ഉപകരണങ്ങളുടെ ഉപയോഗവും ഞങ്ങൾ വിശദീകരിക്കും. തുടർന്ന് ഞങ്ങൾ ഒരു മുൻ കംപൈലിംഗ്, റണ്ണിംഗ് പ്രക്രിയ അവതരിപ്പിക്കുംample പ്രൊജക്‌റ്റ്, ഓരോ സെഷനിലും ഔട്ട്‌പുട്ട് ലോഗിൻ്റെ വിശദമായ വിശദീകരണം നൽകുമ്പോൾtage.
4.1 ESP-IDF കഴിഞ്ഞുview
ESP-IDF (Espressif IoT ഡവലപ്മെൻ്റ് ഫ്രെയിംവർക്ക്) എസ്പ്രെസിഫ് ടെക്നോളജി നൽകുന്ന ഒരു ഒറ്റത്തവണ ഐഒടി വികസന ചട്ടക്കൂടാണ്. ഇത് പ്രധാന വികസന ഭാഷയായി C/C++ ഉപയോഗിക്കുന്നു കൂടാതെ Linux, Mac, Windows തുടങ്ങിയ മുഖ്യധാരാ ഓപ്പറേറ്റിംഗ് സിസ്റ്റങ്ങൾക്ക് കീഴിൽ ക്രോസ്-കംപൈലേഷനെ പിന്തുണയ്ക്കുന്നു. മുൻampഈ പുസ്തകത്തിൽ ഉൾപ്പെടുത്തിയിട്ടുള്ള പ്രോഗ്രാമുകൾ ESP-IDF ഉപയോഗിച്ചാണ് വികസിപ്പിച്ചിരിക്കുന്നത്, അത് ഇനിപ്പറയുന്ന സവിശേഷതകൾ വാഗ്ദാനം ചെയ്യുന്നു: · SoC സിസ്റ്റം-ലെവൽ ഡ്രൈവറുകൾ. ESP32, ESP32-S2, ESP32-C3 എന്നിവയുടെ ഡ്രൈവറുകൾ ESP-IDF-ൽ ഉൾപ്പെടുന്നു.
മറ്റ് ചിപ്പുകളും. ഈ ഡ്രൈവറുകൾ പെരിഫറൽ ലോ ലെവൽ (LL) ലൈബ്രറി, ഹാർഡ്‌വെയർ അബ്‌സ്‌ട്രാക്ഷൻ ലെയർ (HAL) ലൈബ്രറി, RTOS പിന്തുണ, അപ്പർ-ലെയർ ഡ്രൈവർ സോഫ്റ്റ്‌വെയർ മുതലായവ ഉൾക്കൊള്ളുന്നു. · അവശ്യ ഘടകങ്ങൾ. IoT വികസനത്തിന് ആവശ്യമായ അടിസ്ഥാന ഘടകങ്ങൾ ESP-IDF ഉൾക്കൊള്ളുന്നു. ഇതിൽ HTTP, MQTT പോലുള്ള ഒന്നിലധികം നെറ്റ്‌വർക്ക് പ്രോട്ടോക്കോൾ സ്റ്റാക്കുകൾ ഉൾപ്പെടുന്നു, ഡൈനാമിക് ഫ്രീക്വൻസി മോഡുലേഷനോടുകൂടിയ ഒരു പവർ മാനേജ്‌മെൻ്റ് ചട്ടക്കൂട്, ഫ്ലാഷ് എൻക്രിപ്ഷൻ, സെക്യൂർ ബൂട്ട് തുടങ്ങിയ ഫീച്ചറുകൾ. · വികസനവും ഉൽപ്പാദന ഉപകരണങ്ങളും. സിഎംകെ അടിസ്ഥാനമാക്കിയുള്ള ബിൽഡിംഗ് സിസ്റ്റം, ജിസിസി അടിസ്ഥാനമാക്കിയുള്ള ക്രോസ്-കംപൈലേഷൻ ടൂൾ ചെയിൻ, ഡെവലപ്‌മെൻ്റ്, വൻതോതിലുള്ള ഉൽപാദന സമയത്ത് (ചിത്രം 4.1 കാണുക) കെട്ടിടം, ഫ്ലാഷ്, ഡീബഗ്ഗിംഗ് എന്നിവയ്‌ക്കായി ഇഎസ്‌പി-ഐഡിഎഫ് സാധാരണയായി ഉപയോഗിക്കുന്ന ഉപകരണങ്ങൾ നൽകുന്നു.TAG OpenOCD മുതലായവയെ അടിസ്ഥാനമാക്കിയുള്ള ഡീബഗ്ഗിംഗ് ടൂൾ. ESP-IDF കോഡ് പ്രാഥമികമായി അപ്പാച്ചെ 2.0 ഓപ്പൺ സോഴ്‌സ് ലൈസൻസിനോട് യോജിക്കുന്നു എന്നത് ശ്രദ്ധിക്കേണ്ടതാണ്. ഓപ്പൺ സോഴ്‌സ് ലൈസൻസിൻ്റെ നിബന്ധനകൾ പാലിക്കുമ്പോൾ ഉപയോക്താക്കൾക്ക് നിയന്ത്രണങ്ങളില്ലാതെ വ്യക്തിഗതമോ വാണിജ്യപരമോ ആയ സോഫ്റ്റ്‌വെയർ വികസിപ്പിക്കാൻ കഴിയും. കൂടാതെ, സോഴ്‌സ് കോഡിൽ വരുത്തിയ മാറ്റങ്ങളൊന്നും ഓപ്പൺ സോഴ്‌സ് ചെയ്യാനുള്ള ബാധ്യതയില്ലാതെ ഉപയോക്താക്കൾക്ക് സ്ഥിരമായ പേറ്റൻ്റ് ലൈസൻസുകൾ സൗജന്യമായി നൽകുന്നു.
31

ചിത്രം 4.1.

ബിൽഡിംഗ്, ഫ്ലാഷിംഗ്, ഡീബഗ്-

വികസനത്തിനും വൻതോതിലുള്ള ഉൽപാദനത്തിനുമുള്ള ഗിംഗ് ഉപകരണങ്ങൾ

4.1.1 ESP-IDF പതിപ്പുകൾ
ESP-IDF കോഡ് GitHub-ൽ ഒരു ഓപ്പൺ സോഴ്‌സ് പ്രോജക്‌റ്റായി ഹോസ്റ്റ് ചെയ്‌തിരിക്കുന്നു. നിലവിൽ, മൂന്ന് പ്രധാന പതിപ്പുകൾ ലഭ്യമാണ്: v3, v4, v5. ഓരോ പ്രധാന പതിപ്പിലും സാധാരണയായി v4.2, v4.3 മുതലായ വിവിധ അട്ടിമറികൾ അടങ്ങിയിരിക്കുന്നു. Espressif Systems, ഓരോ പുറത്തിറക്കിയ ഉപ പതിപ്പിനും ബഗ് പരിഹരിക്കലുകൾക്കും സുരക്ഷാ പാച്ചുകൾക്കുമായി 30 മാസത്തെ പിന്തുണ ഉറപ്പാക്കുന്നു. അതിനാൽ, v4.3.1, v4.2.2, എന്നിങ്ങനെയുള്ള അട്ടിമറികളുടെ പുനരവലോകനങ്ങളും പതിവായി പുറത്തിറങ്ങുന്നു. പട്ടിക 4.1, എസ്പ്രെസിഫ് ചിപ്പുകൾക്കുള്ള വിവിധ ESP-IDF പതിപ്പുകളുടെ പിന്തുണാ നില കാണിക്കുന്നു, അവ മുൻകാലത്തിലാണോ എന്ന് സൂചിപ്പിക്കുന്നു.view stagഇ (പ്രീവിനുള്ള പിന്തുണ വാഗ്ദാനം ചെയ്യുന്നുview ചില സവിശേഷതകളോ ഡോക്യുമെൻ്റേഷനോ ഇല്ലാത്ത പതിപ്പുകൾ) അല്ലെങ്കിൽ ഔദ്യോഗികമായി പിന്തുണയ്ക്കുന്നു.

പട്ടിക 4.1. Espressif ചിപ്പുകൾക്കുള്ള വ്യത്യസ്ത ESP-IDF പതിപ്പുകളുടെ പിന്തുണ നില

സീരീസ് ESP32 ESP32-S2 ESP32-C3 ESP32-S3 ESP32-C2 ESP32-H2

v4.1 പിന്തുണയ്ക്കുന്നു

v4.2 പിന്തുണയ്‌ക്കുന്നു പിന്തുണയ്‌ക്കുന്നു

v4.3 പിന്തുണയ്‌ക്കുന്നു പിന്തുണയ്‌ക്കുന്നു പിന്തുണയ്‌ക്കുന്നു

v4.4 പിന്തുണയ്‌ക്കുന്നു പിന്തുണയ്‌ക്കുന്നു പിന്തുണയ്‌ക്കുന്നു പിന്തുണയ്‌ക്കുന്നു
പ്രീview

v5.0 പിന്തുണയുള്ള പിന്തുണയുള്ള പിന്തുണയുള്ള പിന്തുണയുള്ള പിന്തുണയുള്ള പിന്തുണയുള്ള പ്രീview

32 ESP32-C3 വയർലെസ് അഡ്വഞ്ചർ: IoT-യിലേക്കുള്ള ഒരു സമഗ്ര ഗൈഡ്

പ്രധാന പതിപ്പുകളുടെ ആവർത്തനത്തിൽ പലപ്പോഴും ചട്ടക്കൂടിൻ്റെ ഘടനയിലെ ക്രമീകരണങ്ങളും കംപൈലേഷൻ സിസ്റ്റത്തിലേക്കുള്ള അപ്‌ഡേറ്റുകളും ഉൾപ്പെടുന്നു. ഉദാample, v3.*-ൽ നിന്ന് v4.* എന്നതിലേക്കുള്ള പ്രധാന മാറ്റം Make-ൽ നിന്ന് CMake-ലേക്കുള്ള ബിൽഡ് സിസ്റ്റത്തിൻ്റെ ക്രമാനുഗതമായ മൈഗ്രേഷൻ ആയിരുന്നു. മറുവശത്ത്, ചെറിയ പതിപ്പുകളുടെ ആവർത്തനം സാധാരണയായി പുതിയ ഫീച്ചറുകൾ കൂട്ടിച്ചേർക്കുകയോ പുതിയ ചിപ്പുകൾക്കുള്ള പിന്തുണയോ ഉൾക്കൊള്ളുന്നു.
സ്ഥിരതയുള്ള പതിപ്പുകളും GitHub ശാഖകളും തമ്മിലുള്ള ബന്ധം വേർതിരിച്ചറിയുകയും മനസ്സിലാക്കുകയും ചെയ്യേണ്ടത് പ്രധാനമാണ്. v*.* അല്ലെങ്കിൽ v*.*.* എന്ന് ലേബൽ ചെയ്‌തിരിക്കുന്ന പതിപ്പുകൾ Espressif-ൻ്റെ പൂർണ്ണമായ ആന്തരിക പരിശോധനയിൽ വിജയിച്ച സ്ഥിരതയുള്ള പതിപ്പുകളെ പ്രതിനിധീകരിക്കുന്നു. ഒരിക്കൽ പരിഹരിച്ചുകഴിഞ്ഞാൽ, അതേ പതിപ്പിനുള്ള കോഡ്, ടൂൾ ചെയിൻ, റിലീസ് ഡോക്യുമെൻ്റുകൾ എന്നിവ മാറ്റമില്ലാതെ തുടരും. എന്നിരുന്നാലും, GitHub ശാഖകൾ (ഉദാഹരണത്തിന്, റിലീസ്/v4.3 ബ്രാഞ്ച്) പതിവായി കോഡ് കമ്മിറ്റുകൾക്ക് വിധേയമാകുന്നു, പലപ്പോഴും ദൈനംദിന അടിസ്ഥാനത്തിൽ. അതിനാൽ, ഒരേ ബ്രാഞ്ചിന് കീഴിലുള്ള രണ്ട് കോഡ് സ്‌നിപ്പെറ്റുകൾ വ്യത്യാസപ്പെട്ടേക്കാം, അതനുസരിച്ച് ഡെവലപ്പർമാർക്ക് അവരുടെ കോഡ് ഉടനടി അപ്‌ഡേറ്റ് ചെയ്യേണ്ടത് ആവശ്യമാണ്.
4.1.2 ESP-IDF Git വർക്ക്ഫ്ലോ
ESP-IDF-നുള്ള ഒരു നിർദ്ദിഷ്ട Git വർക്ക്ഫ്ലോ Espressif പിന്തുടരുന്നു, ഇനിപ്പറയുന്ന രീതിയിൽ വിവരിച്ചിരിക്കുന്നു:
പ്രധാന വികസന ശാഖയായി പ്രവർത്തിക്കുന്ന മാസ്റ്റർ ബ്രാഞ്ചിൽ പുതിയ മാറ്റങ്ങൾ വരുത്തി. മാസ്റ്റർ ബ്രാഞ്ചിലെ ESP-IDF പതിപ്പിൽ എപ്പോഴും ഒരു -dev ഉണ്ട് tag v4.3-dev പോലെ, ഇത് നിലവിൽ വികസനത്തിലാണ് എന്ന് സൂചിപ്പിക്കാൻ. മാസ്റ്റർ ബ്രാഞ്ചിലെ മാറ്റങ്ങൾ ആദ്യം വീണ്ടും ആയിരിക്കുംviewEspressif-ൻ്റെ ആന്തരിക സംഭരണിയിൽ ed പരീക്ഷിച്ചു, തുടർന്ന് ഓട്ടോമേറ്റഡ് ടെസ്റ്റിംഗ് പൂർത്തിയായതിന് ശേഷം GitHub-ലേക്ക് തള്ളുന്നു.
ഒരു പുതിയ പതിപ്പ് മാസ്റ്റർ ബ്രാഞ്ചിൽ ഫീച്ചർ ഡെവലപ്‌മെൻ്റ് പൂർത്തിയാക്കി ബീറ്റാ ടെസ്റ്റിംഗിലേക്ക് പ്രവേശിക്കുന്നതിനുള്ള മാനദണ്ഡങ്ങൾ പാലിച്ചുകഴിഞ്ഞാൽ, അത് റിലീസ്/ v4.3 പോലെയുള്ള ഒരു പുതിയ ബ്രാഞ്ചിലേക്ക് മാറുന്നു. കൂടാതെ, ഈ പുതിയ ശാഖ tagv4.3-beta1 പോലെയുള്ള ഒരു പ്രീ-റിലീസ് പതിപ്പായി ged. ശാഖകളുടെ പൂർണ്ണമായ ലിസ്റ്റ് ആക്‌സസ് ചെയ്യുന്നതിന് ഡെവലപ്പർമാർക്ക് GitHub പ്ലാറ്റ്‌ഫോമിലേക്ക് റഫർ ചെയ്യാം tags ESP-IDF-നായി. ബീറ്റ പതിപ്പിന് (പ്രീ-റിലീസ് പതിപ്പ്) ഇപ്പോഴും അറിയപ്പെടുന്ന നിരവധി പ്രശ്‌നങ്ങൾ ഉണ്ടായിരിക്കാം എന്നത് ശ്രദ്ധിക്കേണ്ടതാണ്. ബീറ്റ പതിപ്പ് തുടർച്ചയായ പരിശോധനയ്ക്ക് വിധേയമാകുന്നതിനാൽ, ഈ പതിപ്പിലേക്കും മാസ്റ്റർ ബ്രാഞ്ചിലേക്കും ഒരേസമയം ബഗ് പരിഹാരങ്ങൾ ചേർക്കുന്നു. അതേസമയം, അടുത്ത പതിപ്പിനായി മാസ്റ്റർ ബ്രാഞ്ച് ഇതിനകം തന്നെ പുതിയ സവിശേഷതകൾ വികസിപ്പിക്കാൻ തുടങ്ങിയിട്ടുണ്ടാകും. പരിശോധന ഏതാണ്ട് പൂർത്തിയാകുമ്പോൾ, ബ്രാഞ്ചിലേക്ക് ഒരു റിലീസ് കാൻഡിഡേറ്റ് (rc) ലേബൽ ചേർക്കുന്നു, ഇത് v4.3-rc1 പോലെയുള്ള ഔദ്യോഗിക റിലീസിന് സാധ്യതയുള്ള കാൻഡിഡേറ്റാണെന്ന് സൂചിപ്പിക്കുന്നു. ഇതിൽ എസ്tagഇ, ബ്രാഞ്ച് ഒരു പ്രീ-റിലീസ് പതിപ്പായി തുടരുന്നു.
· വലിയ ബഗുകളൊന്നും കണ്ടെത്തുകയോ റിപ്പോർട്ടുചെയ്യുകയോ ചെയ്തില്ലെങ്കിൽ, പ്രി-റിലീസ് പതിപ്പിന് ഒടുവിൽ ഒരു പ്രധാന പതിപ്പ് ലേബൽ (ഉദാ, v5.0) അല്ലെങ്കിൽ ഒരു ചെറിയ പതിപ്പ് ലേബൽ (ഉദാ, v4.3) ലഭിക്കുകയും അത് ഒരു ഔദ്യോഗിക റിലീസ് പതിപ്പായി മാറുകയും ചെയ്യുന്നു. റിലീസ് കുറിപ്പുകൾ പേജിൽ. തുടർന്ന്, ഈ പതിപ്പിൽ കണ്ടെത്തിയ ഏതെങ്കിലും ബഗുകൾ റിലീസ് ബ്രാഞ്ചിൽ പരിഹരിച്ചിരിക്കുന്നു. മാനുവൽ ടെസ്റ്റിംഗ് പൂർത്തിയാക്കിയ ശേഷം, ബ്രാഞ്ചിന് ഒരു ബഗ്-ഫിക്സ് പതിപ്പ് ലേബൽ നൽകിയിട്ടുണ്ട് (ഉദാ, v4.3.2), അത് റിലീസ് കുറിപ്പുകളുടെ പേജിലും പ്രതിഫലിക്കുന്നു.
അധ്യായം 4. വികസന പരിസ്ഥിതി സജ്ജീകരിക്കൽ 33

4.1.3 അനുയോജ്യമായ ഒരു പതിപ്പ് തിരഞ്ഞെടുക്കുന്നു
ESP-IDF ഔദ്യോഗികമായി ESP32-C3 പതിപ്പ് v4.3-ൽ നിന്ന് പിന്തുണയ്‌ക്കാൻ തുടങ്ങിയതിനാൽ, ഈ പുസ്തകം എഴുതുന്ന സമയത്ത് v4.4 ഔദ്യോഗികമായി പുറത്തിറങ്ങിയിട്ടില്ലാത്തതിനാൽ, ഈ പുസ്തകത്തിൽ ഉപയോഗിച്ചിരിക്കുന്ന പതിപ്പ് v4.3.2 ആണ്, അത് പരിഷ്‌കരിച്ച പതിപ്പാണ്. v4.3. എന്നിരുന്നാലും, നിങ്ങൾ ഈ പുസ്‌തകം വായിക്കുമ്പോഴേക്കും v4.4 അല്ലെങ്കിൽ പുതിയ പതിപ്പുകൾ ലഭ്യമായിരിക്കാം എന്നത് ശ്രദ്ധിക്കേണ്ടതാണ്. ഒരു പതിപ്പ് തിരഞ്ഞെടുക്കുമ്പോൾ, ഞങ്ങൾ ഇനിപ്പറയുന്നവ ശുപാർശ ചെയ്യുന്നു:
· എൻട്രി-ലെവൽ ഡെവലപ്പർമാർക്ക്, സ്ഥിരതയുള്ള v4.3 പതിപ്പ് അല്ലെങ്കിൽ അതിൻ്റെ പുതുക്കിയ പതിപ്പ് തിരഞ്ഞെടുക്കുന്നതാണ് ഉചിതം, അത് മുൻ പതിപ്പുമായി യോജിപ്പിക്കുന്നുampഈ പുസ്തകത്തിൽ ഉപയോഗിച്ചിരിക്കുന്ന le പതിപ്പ്.
· വൻതോതിലുള്ള ഉൽപ്പാദന ആവശ്യങ്ങൾക്കായി, ഏറ്റവും കാലികമായ സാങ്കേതിക പിന്തുണയിൽ നിന്ന് പ്രയോജനം നേടുന്നതിന് ഏറ്റവും പുതിയ സ്ഥിരതയുള്ള പതിപ്പ് ഉപയോഗിക്കാൻ ശുപാർശ ചെയ്യുന്നു.
· നിങ്ങൾ പുതിയ ചിപ്പുകൾ ഉപയോഗിച്ച് പരീക്ഷിക്കാനോ പുതിയ ഉൽപ്പന്ന സവിശേഷതകൾ പര്യവേക്ഷണം ചെയ്യാനോ ഉദ്ദേശിക്കുന്നുവെങ്കിൽ, ദയവായി മാസ്റ്റർ ബ്രാഞ്ച് ഉപയോഗിക്കുക. ഏറ്റവും പുതിയ പതിപ്പിൽ ഏറ്റവും പുതിയ എല്ലാ സവിശേഷതകളും അടങ്ങിയിരിക്കുന്നു, എന്നാൽ അറിയാവുന്നതോ അറിയാത്തതോ ആയ ബഗുകൾ ഉണ്ടായിരിക്കാമെന്ന് ഓർമ്മിക്കുക.
· ഉപയോഗിക്കുന്ന സ്ഥിരതയുള്ള പതിപ്പിൽ ആവശ്യമുള്ള പുതിയ സവിശേഷതകൾ ഉൾപ്പെടുന്നില്ലെങ്കിൽ, മാസ്റ്റർ ബ്രാഞ്ചുമായി ബന്ധപ്പെട്ട അപകടസാധ്യതകൾ കുറയ്ക്കാൻ നിങ്ങൾ ആഗ്രഹിക്കുന്നുവെങ്കിൽ, റിലീസ്/v4.4 ബ്രാഞ്ച് പോലെയുള്ള അനുബന്ധ റിലീസ് ബ്രാഞ്ച് ഉപയോഗിക്കുന്നത് പരിഗണിക്കുക. Espressif-ൻ്റെ GitHub ശേഖരം ആദ്യം റിലീസ്/v4.4 ബ്രാഞ്ച് സൃഷ്‌ടിക്കുകയും തുടർന്ന് ഈ ബ്രാഞ്ചിൻ്റെ ഒരു പ്രത്യേക ചരിത്ര സ്‌നാപ്പ്‌ഷോട്ടിനെ അടിസ്ഥാനമാക്കി സ്ഥിരതയുള്ള v4.4 പതിപ്പ് പുറത്തിറക്കുകയും ചെയ്യും, എല്ലാ ഫീച്ചർ വികസനവും പരിശോധനയും പൂർത്തിയാക്കിയ ശേഷം.
4.1.4 ഓവർview ESP-IDF SDK ഡയറക്ടറിയുടെ
ESP-IDF SDK രണ്ട് പ്രധാന ഡയറക്ടറികൾ ഉൾക്കൊള്ളുന്നു: esp-idf, .espressif. ആദ്യത്തേതിൽ ESP-IDF റിപ്പോസിറ്ററിയുടെ സോഴ്സ് കോഡ് അടങ്ങിയിരിക്കുന്നു fileകളും സമാഹാര സ്ക്രിപ്റ്റുകളും, രണ്ടാമത്തേത് പ്രധാനമായും കംപൈലേഷൻ ടൂൾ ചെയിനുകളും മറ്റ് സോഫ്റ്റ്വെയറുകളും സംഭരിക്കുന്നു. ഈ രണ്ട് ഡയറക്‌ടറികളുമായുള്ള പരിചയം, ലഭ്യമായ വിഭവങ്ങൾ നന്നായി ഉപയോഗിക്കാനും വികസന പ്രക്രിയ വേഗത്തിലാക്കാനും ഡവലപ്പർമാരെ സഹായിക്കും. ESP-IDF-ൻ്റെ ഡയറക്ടറി ഘടന താഴെ വിവരിച്ചിരിക്കുന്നു:
(1) ESP-IDF റിപ്പോസിറ്ററി കോഡ് ഡയറക്ടറി (/esp/esp-idf), ചിത്രം 4.2 ൽ കാണിച്ചിരിക്കുന്നത് പോലെ.
എ. ഘടക ഡയറക്ടറി ഘടകങ്ങൾ
ഈ കോർ ഡയറക്‌ടറി ESP-IDF-ൻ്റെ നിരവധി അവശ്യ സോഫ്റ്റ്‌വെയർ ഘടകങ്ങളെ സംയോജിപ്പിക്കുന്നു. ഈ ഡയറക്ടറിയിലെ ഘടകങ്ങളെ ആശ്രയിക്കാതെ ഒരു പ്രോജക്റ്റ് കോഡും കംപൈൽ ചെയ്യാൻ കഴിയില്ല. വിവിധ Espressif ചിപ്പുകൾക്കുള്ള ഡ്രൈവർ പിന്തുണ ഇതിൽ ഉൾപ്പെടുന്നു. പെരിഫറലുകൾക്കായുള്ള LL ലൈബ്രറി, HAL ലൈബ്രറി ഇൻ്റർഫേസുകളിൽ നിന്ന് ഉയർന്ന തലത്തിലുള്ള ഡ്രൈവർ, വെർച്വൽ എന്നിവയിലേക്ക് File സിസ്റ്റം (VFS) ലെയർ പിന്തുണ, ഡവലപ്പർമാർക്ക് അവരുടെ വികസന ആവശ്യങ്ങൾക്കായി വിവിധ തലങ്ങളിൽ ഉചിതമായ ഘടകങ്ങൾ തിരഞ്ഞെടുക്കാൻ കഴിയും. TCP/IP, HTTP, MQTT, പോലുള്ള ഒന്നിലധികം സ്റ്റാൻഡേർഡ് നെറ്റ്‌വർക്ക് പ്രോട്ടോക്കോൾ സ്റ്റാക്കുകളും ESP-IDF പിന്തുണയ്ക്കുന്നു Webസോക്കറ്റ് മുതലായവ. നെറ്റ്‌വർക്ക് ആപ്ലിക്കേഷനുകൾ നിർമ്മിക്കുന്നതിന് ഡെവലപ്പർമാർക്ക് സോക്കറ്റ് പോലുള്ള പരിചിതമായ ഇൻ്റർഫേസുകൾ ഉപയോഗിക്കാനാകും. ഘടകങ്ങൾ ഗ്രഹണം നൽകുന്നു-
34 ESP32-C3 വയർലെസ് അഡ്വഞ്ചർ: IoT-യിലേക്കുള്ള ഒരു സമഗ്ര ഗൈഡ്

ചിത്രം 4.2. ESP-IDF റിപ്പോസിറ്ററി കോഡ് ഡയറക്ടറി
sive പ്രവർത്തനക്ഷമതയും ആപ്ലിക്കേഷനുകളിലേക്ക് എളുപ്പത്തിൽ സംയോജിപ്പിക്കാനും കഴിയും, ഇത് ബിസിനസ്സ് ലോജിക്കിൽ മാത്രം ശ്രദ്ധ കേന്ദ്രീകരിക്കാൻ ഡവലപ്പർമാരെ അനുവദിക്കുന്നു. ചില പൊതുവായ ഘടകങ്ങളിൽ ഇവ ഉൾപ്പെടുന്നു: · ഡ്രൈവർ: ഈ ഘടകത്തിൽ വിവിധ എസ്പ്രെസിഫിനുള്ള പെരിഫറൽ ഡ്രൈവർ പ്രോഗ്രാമുകൾ അടങ്ങിയിരിക്കുന്നു
GPIO, I2C, SPI, UART, LEDC (PWM) തുടങ്ങിയ ചിപ്പ് സീരീസ്. ഈ ഘടകത്തിലെ പെരിഫറൽ ഡ്രൈവർ പ്രോഗ്രാമുകൾ ചിപ്പ്-ഇൻഡിപെൻഡൻ്റ് അബ്‌സ്‌ട്രാക്റ്റ് ഇൻ്റർഫേസുകൾ വാഗ്ദാനം ചെയ്യുന്നു. ഓരോ പെരിഫറലിനും ഒരു പൊതു തലക്കെട്ടുണ്ട് file (gpio.h പോലുള്ളവ), വ്യത്യസ്ത ചിപ്പ്-നിർദ്ദിഷ്ട പിന്തുണാ ചോദ്യങ്ങൾ കൈകാര്യം ചെയ്യേണ്ടതിൻ്റെ ആവശ്യകത ഇല്ലാതാക്കുന്നു. · esp_wifi: Wi-Fi, ഒരു പ്രത്യേക പെരിഫറൽ എന്ന നിലയിൽ, ഒരു പ്രത്യേക ഘടകമായി കണക്കാക്കുന്നു. വിവിധ Wi-Fi ഡ്രൈവർ മോഡുകളുടെ സമാരംഭം, പാരാമീറ്റർ കോൺഫിഗറേഷൻ, ഇവൻ്റ് പ്രോസസ്സിംഗ് എന്നിങ്ങനെ ഒന്നിലധികം API-കൾ ഇതിൽ ഉൾപ്പെടുന്നു. ഈ ഘടകത്തിൻ്റെ ചില പ്രവർത്തനങ്ങൾ സ്റ്റാറ്റിക് ലിങ്ക് ലൈബ്രറികളുടെ രൂപത്തിൽ നൽകിയിരിക്കുന്നു. ഇഎസ്‌പി-ഐഡിഎഫ്, ഉപയോഗിക്കാനുള്ള എളുപ്പത്തിനായി സമഗ്രമായ ഡ്രൈവർ ഡോക്യുമെൻ്റേഷനും നൽകുന്നു.
അധ്യായം 4. വികസന പരിസ്ഥിതി സജ്ജീകരിക്കൽ 35

· freertos: ഈ ഘടകത്തിൽ പൂർണ്ണമായ FreeRTOS കോഡ് അടങ്ങിയിരിക്കുന്നു. ഈ ഓപ്പറേറ്റിംഗ് സിസ്റ്റത്തിന് സമഗ്രമായ പിന്തുണ നൽകുന്നതിന് പുറമെ, ഡ്യുവൽ കോർ ചിപ്പുകളിലേക്കും എസ്പ്രെസ്സിഫ് അതിൻ്റെ പിന്തുണ വിപുലീകരിച്ചു. ESP32, ESP32-S3 പോലുള്ള ഡ്യുവൽ കോർ ചിപ്പുകൾക്കായി, ഉപയോക്താക്കൾക്ക് നിർദ്ദിഷ്ട കോറുകളിൽ ടാസ്‌ക്കുകൾ സൃഷ്‌ടിക്കാനാകും.
ബി. ഡോക്യുമെൻ്റ് ഡയറക്‌ടറി ഡോക്‌സ്
ഈ ഡയറക്‌ടറിയിൽ ഗെറ്റ് സ്റ്റാർട്ട് ഗൈഡ്, എപിഐ റഫറൻസ് മാനുവൽ, ഡെവലപ്‌മെൻ്റ് ഗൈഡ് മുതലായവ ഉൾപ്പെടെയുള്ള ഇഎസ്‌പി-ഐഡിഎഫുമായി ബന്ധപ്പെട്ട വികസന രേഖകൾ അടങ്ങിയിരിക്കുന്നു.
ശ്രദ്ധിക്കുക ഓട്ടോമേറ്റഡ് ടൂളുകൾ ഉപയോഗിച്ച് സമാഹരിച്ച ശേഷം, ഈ ഡയറക്ടറിയുടെ ഉള്ളടക്കങ്ങൾ https://docs.espressif.com/projects/esp-idf എന്നതിൽ വിന്യസിച്ചിരിക്കുന്നു. ഡോക്യുമെൻ്റ് ടാർഗെറ്റ് ESP32-C3 ലേക്ക് മാറ്റുന്നത് ഉറപ്പാക്കുക, കൂടാതെ നിർദ്ദിഷ്ട ESP-IDF പതിപ്പ് തിരഞ്ഞെടുക്കുക.
സി. സ്ക്രിപ്റ്റ് ടൂൾ ടൂളുകൾ
ഈ ഡയറക്ടറിയിൽ idf.py, മോണിറ്റർ ടെർമിനൽ ടൂൾ idf_monitor.py മുതലായവ പോലുള്ള സാധാരണ ഉപയോഗിക്കുന്ന കംപൈലേഷൻ ഫ്രണ്ട്-എൻഡ് ടൂളുകൾ അടങ്ങിയിരിക്കുന്നു. സബ്-ഡയറക്‌ടറി cmake-ൽ കോർ സ്‌ക്രിപ്റ്റും അടങ്ങിയിരിക്കുന്നു. fileESP-IDF കംപൈലേഷൻ നിയമങ്ങൾ നടപ്പിലാക്കുന്നതിനുള്ള അടിസ്ഥാനമായി പ്രവർത്തിക്കുന്ന കംപൈലേഷൻ സിസ്റ്റത്തിൻ്റെ s. എൻവയോൺമെൻ്റ് വേരിയബിളുകൾ ചേർക്കുമ്പോൾ, ടൂൾസ് ഡയറക്‌ടറിയിലെ ഉള്ളടക്കങ്ങൾ സിസ്റ്റം എൻവയോൺമെൻ്റ് വേരിയബിളിലേക്ക് ചേർക്കുന്നു, ഇത് പ്രോജക്റ്റ് പാത്തിന് കീഴിൽ നേരിട്ട് idf.py നടപ്പിലാക്കാൻ അനുവദിക്കുന്നു.
ഡി. ഉദാample പ്രോഗ്രാം ഡയറക്ടറി exampലെസ്
ഈ ഡയറക്‌ടറിയിൽ ESP-IDF എക്‌സിയുടെ ഒരു വലിയ ശേഖരം ഉൾപ്പെടുന്നുampഘടക API-കളുടെ ഉപയോഗം കാണിക്കുന്ന പ്രോഗ്രാമുകൾ. മുൻamples അവയുടെ വിഭാഗങ്ങളെ അടിസ്ഥാനമാക്കി വിവിധ ഉപഡയറക്‌ടറികളായി ക്രമീകരിച്ചിരിക്കുന്നു:
· ആരംഭിക്കുക: ഈ ഉപ-ഡയറക്‌ടറിയിൽ എൻട്രി ലെവൽ ഉൾപ്പെടുന്നുampഅടിസ്ഥാനകാര്യങ്ങൾ മനസ്സിലാക്കാൻ ഉപയോക്താക്കളെ സഹായിക്കുന്നതിന് "ഹലോ വേൾഡ്", "ബ്ലിങ്ക്" എന്നിവ പോലുള്ളവ.
· ബ്ലൂടൂത്ത്: നിങ്ങൾക്ക് ബ്ലൂടൂത്ത് ബന്ധപ്പെട്ട മുൻ കണ്ടെത്താംampബ്ലൂടൂത്ത് LE Mesh, Bluetooth LE HID, BluFi എന്നിവയും മറ്റും ഉൾപ്പെടെ ഇവിടെയുണ്ട്.
· വൈഫൈ: ഈ ഉപ-ഡയറക്‌ടറി മുൻ വൈഫൈയിൽ ശ്രദ്ധ കേന്ദ്രീകരിക്കുന്നുamples, Wi-Fi SoftAP, Wi-Fi Station, espnow പോലെയുള്ള അടിസ്ഥാന പ്രോഗ്രാമുകൾ, അതുപോലെ തന്നെ പ്രൊപ്രൈറ്ററി കമ്മ്യൂണിക്കേഷൻ പ്രോട്ടോക്കോൾ മുൻampഎസ്പ്രെസിഫിൽ നിന്നുള്ള ലെസ്. ഇതിൽ ഒന്നിലധികം ആപ്ലിക്കേഷൻ ലെയറും ഉൾപ്പെടുന്നു exampIperf, Sniffer, Smart Config എന്നിവ പോലെയുള്ള Wi-Fi അടിസ്ഥാനമാക്കിയുള്ളതാണ്.
· പെരിഫറലുകൾ: ഈ വിപുലമായ ഉപ-ഡയറക്‌ടറി പെരിഫറൽ പേരുകളെ അടിസ്ഥാനമാക്കി നിരവധി ഉപഫോൾഡറുകളായി തിരിച്ചിരിക്കുന്നു. ഇതിൽ പ്രധാനമായും പെരിഫറൽ ഡ്രൈവർ ex അടങ്ങിയിരിക്കുന്നുampഎസ്പ്രെസ്സിഫ് ചിപ്പുകൾക്കുള്ള les, ഓരോ മുൻample നിരവധി ഉപ-എക്സ് ഫീച്ചർ ചെയ്യുന്നുampലെസ്. ഉദാഹരണത്തിന്, gpio ഉപ-ഡയറക്‌ടറിയിൽ രണ്ട് എക്‌സ് ഉൾപ്പെടുന്നുamples: GPIO, GPIO മാട്രിക്സ് കീബോർഡ്. എല്ലാവരും മുൻ അല്ല എന്നത് ശ്രദ്ധിക്കേണ്ടതാണ്ampഈ ഡയറക്ടറിയിലെ les ESP32-C3-ന് ബാധകമാണ്.
36 ESP32-C3 വയർലെസ് അഡ്വഞ്ചർ: IoT-യിലേക്കുള്ള ഒരു സമഗ്ര ഗൈഡ്

ഉദാampലെ, മുൻampUSB ഹോസ്റ്റ് ഹാർഡ്‌വെയറുള്ള (ESP32-S3 പോലുള്ളവ) പെരിഫറലുകൾക്ക് മാത്രമേ usb/host-ലെ les ബാധകമാകൂ, ESP32-C3-ന് ഈ പെരിഫറൽ ഇല്ല. ലക്ഷ്യം സജ്ജീകരിക്കുമ്പോൾ കംപൈലേഷൻ സിസ്റ്റം സാധാരണയായി നിർദ്ദേശങ്ങൾ നൽകുന്നു. README file ഓരോ മുൻample പിന്തുണയ്ക്കുന്ന ചിപ്പുകൾ ലിസ്റ്റ് ചെയ്യുന്നു. · പ്രോട്ടോക്കോളുകൾ: ഈ ഉപ-ഡയറക്‌ടറിയിൽ മുൻ അടങ്ങിയിരിക്കുന്നുampMQTT, HTTP, HTTP സെർവർ, PPPoS, Modbus, mDNS, SNTP എന്നിവയുൾപ്പെടെ വിവിധ ആശയവിനിമയ പ്രോട്ടോക്കോളുകൾക്കായുള്ള les, വിപുലമായ ആശയവിനിമയ പ്രോട്ടോക്കോൾ മുൻ ഉൾക്കൊള്ളുന്നു.ampIoT വികസനത്തിന് ആവശ്യമായ കുറവ്. · പ്രൊവിഷനിംഗ്: ഇവിടെ, നിങ്ങൾ മുൻ കരുതൽ കണ്ടെത്തുംampWi-Fi പ്രൊവിഷനിംഗ്, ബ്ലൂടൂത്ത് LE പ്രൊവിഷനിംഗ് എന്നിവ പോലെയുള്ള വ്യത്യസ്ത രീതികൾക്കുള്ള les. · സിസ്റ്റം: ഈ ഉപ ഡയറക്ടറിയിൽ സിസ്റ്റം ഡീബഗ്ഗിംഗ് ഉൾപ്പെടുന്നുampലെസ് (ഉദാ, സ്റ്റാക്ക് ട്രെയ്‌സിംഗ്, റൺടൈം ട്രെയ്‌സിംഗ്, ടാസ്‌ക് മോണിറ്ററിംഗ്), പവർ മാനേജ്‌മെൻ്റ് ഉദാamples (ഉദാ, വിവിധ സ്ലീപ്പ് മോഡുകൾ, കോ-പ്രോസസറുകൾ), കൂടാതെ ഉദാampകൺസോൾ ടെർമിനൽ, ഇവൻ്റ് ലൂപ്പ്, സിസ്റ്റം ടൈമർ തുടങ്ങിയ സാധാരണ സിസ്റ്റം ഘടകങ്ങളുമായി ബന്ധപ്പെട്ട les. സംഭരണം: ഈ ഉപ-ഡയറക്‌ടറിയിൽ, നിങ്ങൾ എക്‌സ് കണ്ടെത്തുംampഎല്ലാവരുടെയും ലെസ് file ESP-IDF പിന്തുണയ്ക്കുന്ന സിസ്റ്റങ്ങളും സ്റ്റോറേജ് മെക്കാനിസങ്ങളും (ഫ്ലാഷ്, SD കാർഡ്, മറ്റ് സ്റ്റോറേജ് മീഡിയ എന്നിവയുടെ വായനയും എഴുത്തും പോലെയുള്ളവ), അതുപോലെ മുൻampഅസ്ഥിരമല്ലാത്ത സംഭരണം (NVS), FatFS, SPIFFS എന്നിവയും മറ്റുള്ളവയും file സിസ്റ്റം പ്രവർത്തനങ്ങൾ. · സുരക്ഷ: ഈ ഉപ-ഡയറക്‌ടറിയിൽ മുൻ അടങ്ങിയിരിക്കുന്നുampഫ്ലാഷ് എൻക്രിപ്ഷനുമായി ബന്ധപ്പെട്ട les. (2) ESP-IDF കംപൈലേഷൻ ടൂൾ ചെയിൻ ഡയറക്‌ടറി (/.espressif), ചിത്രം 4.3-ൽ കാണിച്ചിരിക്കുന്നത് പോലെ.
ചിത്രം 4.3. ESP-IDF കംപൈലേഷൻ ടൂൾ ചെയിൻ ഡയറക്ടറി
അധ്യായം 4. വികസന പരിസ്ഥിതി സജ്ജീകരിക്കൽ 37

എ. സോഫ്‌റ്റ്‌വെയർ വിതരണ ഡയറക്ടറി ജില്ല
ESP-IDF ടൂൾ ശൃംഖലയും മറ്റ് സോഫ്‌റ്റ്‌വെയറുകളും കംപ്രസ് ചെയ്‌ത പാക്കേജുകളുടെ രൂപത്തിലാണ് വിതരണം ചെയ്യുന്നത്. ഇൻസ്റ്റലേഷൻ പ്രക്രിയയിൽ, ഇൻസ്റ്റലേഷൻ ടൂൾ ആദ്യം കംപ്രസ് ചെയ്ത പാക്കേജ് ഡിസ്റ്റ് ഡയറക്ടറിയിലേക്ക് ഡൗൺലോഡ് ചെയ്യുന്നു, തുടർന്ന് അത് നിർദ്ദിഷ്ട ഡയറക്ടറിയിലേക്ക് എക്സ്ട്രാക്റ്റ് ചെയ്യുന്നു. ഇൻസ്റ്റാളേഷൻ പൂർത്തിയായിക്കഴിഞ്ഞാൽ, ഈ ഡയറക്ടറിയിലെ ഉള്ളടക്കങ്ങൾ സുരക്ഷിതമായി നീക്കം ചെയ്യാവുന്നതാണ്.
ബി. പൈത്തൺ വെർച്വൽ എൻവയോൺമെൻ്റ് ഡയറക്ടറി പൈത്തൺ എൻവി
ESP-IDF-ൻ്റെ വ്യത്യസ്ത പതിപ്പുകൾ പൈത്തൺ പാക്കേജുകളുടെ പ്രത്യേക പതിപ്പുകളെ ആശ്രയിക്കുന്നു. ഈ പാക്കേജുകൾ ഒരേ ഹോസ്റ്റിൽ നേരിട്ട് ഇൻസ്റ്റാൾ ചെയ്യുന്നത് പാക്കേജ് പതിപ്പുകൾ തമ്മിലുള്ള വൈരുദ്ധ്യങ്ങൾക്ക് ഇടയാക്കും. ഇത് പരിഹരിക്കുന്നതിന്, വ്യത്യസ്ത പാക്കേജ് പതിപ്പുകൾ വേർതിരിച്ചെടുക്കാൻ ESP-IDF പൈത്തൺ വെർച്വൽ എൻവയോൺമെൻ്റുകൾ ഉപയോഗിക്കുന്നു. ഈ സംവിധാനം ഉപയോഗിച്ച്, ഡവലപ്പർമാർക്ക് ഒരേ ഹോസ്റ്റിൽ ESP-IDF-ൻ്റെ ഒന്നിലധികം പതിപ്പുകൾ ഇൻസ്റ്റാൾ ചെയ്യാനും വ്യത്യസ്ത പരിസ്ഥിതി വേരിയബിളുകൾ ഇറക്കുമതി ചെയ്യുന്നതിലൂടെ അവയ്ക്കിടയിൽ എളുപ്പത്തിൽ മാറാനും കഴിയും.
സി. ESP-IDF കംപൈലേഷൻ ടൂൾ ചെയിൻ ഡയറക്ടറി ടൂളുകൾ
CMake ടൂളുകൾ, Ninja ബിൽഡ് ടൂളുകൾ, ഫൈനൽ എക്സിക്യൂട്ടബിൾ പ്രോഗ്രാം ജനറേറ്റ് ചെയ്യുന്ന gcc ടൂൾ ചെയിൻ എന്നിങ്ങനെയുള്ള ESP-IDF പ്രോജക്റ്റുകൾ കംപൈൽ ചെയ്യുന്നതിന് ആവശ്യമായ ക്രോസ്-കംപൈലേഷൻ ടൂളുകൾ ഈ ഡയറക്ടറിയിൽ പ്രധാനമായും അടങ്ങിയിരിക്കുന്നു. കൂടാതെ, ഈ ഡയറക്ടറിയിൽ സി/സി++ ഭാഷയുടെ സ്റ്റാൻഡേർഡ് ലൈബ്രറിയും അനുബന്ധ തലക്കെട്ടും ഉണ്ട് fileഎസ്. ഒരു പ്രോഗ്രാം ഒരു സിസ്റ്റം ഹെഡറിനെ പരാമർശിക്കുകയാണെങ്കിൽ file പോലെ #ഉൾപ്പെടുത്തുക , കമ്പൈലേഷൻ ടൂൾ ചെയിൻ stdio.h കണ്ടെത്തും file ഈ ഡയറക്ടറിയിൽ.
4.2 ESP-IDF വികസന പരിസ്ഥിതി സജ്ജീകരിക്കുന്നു
വിൻഡോസ്, ലിനക്സ്, മാകോസ് തുടങ്ങിയ മുഖ്യധാരാ ഓപ്പറേറ്റിംഗ് സിസ്റ്റങ്ങളെ ESP-IDF വികസന പരിസ്ഥിതി പിന്തുണയ്ക്കുന്നു. ഓരോ സിസ്റ്റത്തിലും വികസന അന്തരീക്ഷം എങ്ങനെ സജ്ജീകരിക്കാമെന്ന് ഈ വിഭാഗം പരിചയപ്പെടുത്തും. ലിനക്സ് സിസ്റ്റത്തിൽ ESP32-C3 വികസിപ്പിക്കാൻ ശുപാർശ ചെയ്യുന്നു, അത് ഇവിടെ വിശദമായി അവതരിപ്പിക്കും. ഡെവലപ്‌മെൻ്റ് ടൂളുകളുടെ സമാനത കാരണം പ്ലാറ്റ്‌ഫോമുകളിലുടനീളം നിരവധി നിർദ്ദേശങ്ങൾ ബാധകമാണ്. അതിനാൽ, ഈ വിഭാഗത്തിൻ്റെ ഉള്ളടക്കം ശ്രദ്ധാപൂർവ്വം വായിക്കാൻ നിർദ്ദേശിക്കുന്നു.
ശ്രദ്ധിക്കുക, ഈ വിഭാഗത്തിൽ സൂചിപ്പിച്ചിരിക്കുന്ന കമാൻഡുകൾ നൽകുന്ന https://bookc3.espressif.com/esp32c3 എന്നതിൽ ലഭ്യമായ ഓൺലൈൻ ഡോക്യുമെൻ്റുകൾ നിങ്ങൾക്ക് റഫർ ചെയ്യാം.
4.2.1 Linux-ൽ ESP-IDF ഡവലപ്മെൻ്റ് എൻവയോൺമെൻ്റ് സജ്ജീകരിക്കുന്നു
ESP-IDF വികസന പരിതസ്ഥിതിക്ക് ആവശ്യമായ ഗ്നു വികസനവും ഡീബഗ്ഗിംഗ് ടൂളുകളും ലിനക്സ് സിസ്റ്റത്തിൽ നിന്നുള്ളതാണ്. കൂടാതെ, ലിനക്സിലെ കമാൻഡ്-ലൈൻ ടെർമിനൽ ശക്തവും ഉപയോക്തൃ-സൗഹൃദവുമാണ്, ഇത് ESP32-C3 വികസനത്തിന് അനുയോജ്യമായ ഒരു തിരഞ്ഞെടുപ്പാണ്. നിങ്ങൾക്ക് കഴിയും
38 ESP32-C3 വയർലെസ് അഡ്വഞ്ചർ: IoT-യിലേക്കുള്ള ഒരു സമഗ്ര ഗൈഡ്

നിങ്ങളുടെ ഇഷ്ടപ്പെട്ട ലിനക്സ് വിതരണം തിരഞ്ഞെടുക്കുക, എന്നാൽ ഉബുണ്ടു അല്ലെങ്കിൽ മറ്റ് ഡെബിയൻ അധിഷ്ഠിത സിസ്റ്റങ്ങൾ ഉപയോഗിക്കാൻ ഞങ്ങൾ ശുപാർശ ചെയ്യുന്നു. ഉബുണ്ടു 20.04-ൽ ESP-IDF വികസന പരിസ്ഥിതി സജ്ജീകരിക്കുന്നതിനുള്ള മാർഗ്ഗനിർദ്ദേശം ഈ വിഭാഗം നൽകുന്നു.
1. ആവശ്യമായ പാക്കേജുകൾ ഇൻസ്റ്റാൾ ചെയ്യുക
ഒരു പുതിയ ടെർമിനൽ തുറന്ന് ആവശ്യമായ എല്ലാ പാക്കേജുകളും ഇൻസ്റ്റാൾ ചെയ്യുന്നതിന് താഴെ പറയുന്ന കമാൻഡ് എക്സിക്യൂട്ട് ചെയ്യുക. ഇതിനകം ഇൻസ്റ്റാൾ ചെയ്തിട്ടുള്ള പാക്കേജുകൾ കമാൻഡ് സ്വയമേവ ഒഴിവാക്കും.
$ 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
നുറുങ്ങുകൾ മുകളിലുള്ള കമാൻഡിനായി നിങ്ങൾ അഡ്മിനിസ്ട്രേറ്റർ അക്കൗണ്ടും പാസ്‌വേഡും ഉപയോഗിക്കേണ്ടതുണ്ട്. സ്ഥിരസ്ഥിതിയായി, പാസ്‌വേഡ് നൽകുമ്പോൾ ഒരു വിവരവും പ്രദർശിപ്പിക്കില്ല. നടപടിക്രമം തുടരാൻ "Enter" കീ അമർത്തുക.
ESP-IDF-ലെ ഒരു പ്രധാന കോഡ് മാനേജ്മെൻ്റ് ടൂളാണ് Git. ഡവലപ്മെൻ്റ് എൻവയോൺമെൻ്റ് വിജയകരമായി സജ്ജീകരിച്ച ശേഷം, നിങ്ങൾക്ക് git log കമാൻഡ് ഉപയോഗിക്കാം view ESP-IDF സൃഷ്ടിച്ചതിനുശേഷം വരുത്തിയ എല്ലാ കോഡ് മാറ്റങ്ങളും. കൂടാതെ, പതിപ്പ് വിവരങ്ങൾ സ്ഥിരീകരിക്കുന്നതിന് ESP-IDF-ലും Git ഉപയോഗിക്കുന്നു, ഇത് നിർദ്ദിഷ്ട പതിപ്പുകൾക്ക് അനുയോജ്യമായ ശരിയായ ടൂൾ ചെയിൻ ഇൻസ്റ്റാൾ ചെയ്യുന്നതിന് ആവശ്യമാണ്. Git-നോടൊപ്പം, മറ്റ് പ്രധാന സിസ്റ്റം ടൂളുകളും പൈത്തൺ ഉൾപ്പെടുന്നു. ESP-IDF പൈത്തണിൽ എഴുതിയ നിരവധി ഓട്ടോമേഷൻ സ്ക്രിപ്റ്റുകൾ ഉൾക്കൊള്ളുന്നു. CMake, Ninja-build, Ccache തുടങ്ങിയ ടൂളുകൾ C/C++ പ്രോജക്റ്റുകളിൽ വ്യാപകമായി ഉപയോഗിക്കപ്പെടുന്നു, കൂടാതെ ESP-IDF-ൽ ഡിഫോൾട്ട് കോഡ് കംപൈലേഷനും ബിൽഡിംഗ് ടൂളുകളായി വർത്തിക്കുന്നു. libusb-1.0-0, dfu-util എന്നിവയാണ് USB സീരിയൽ ആശയവിനിമയത്തിനും ഫേംവെയർ ബേണിംഗിനും ഉപയോഗിക്കുന്ന പ്രധാന ഡ്രൈവറുകൾ. സോഫ്റ്റ്‌വെയർ പാക്കേജുകൾ ഇൻസ്റ്റാൾ ചെയ്തുകഴിഞ്ഞാൽ, നിങ്ങൾക്ക് ആപ്റ്റ് ഷോ ഉപയോഗിക്കാം ഓരോ പാക്കേജിൻ്റെയും വിശദമായ വിവരണങ്ങൾ ലഭിക്കുന്നതിനുള്ള കമാൻഡ്. ഉദാample, Git ടൂളിനുള്ള വിവരണ വിവരങ്ങൾ പ്രിൻ്റ് ചെയ്യാൻ apt show git ഉപയോഗിക്കുക.
ചോദ്യം: പൈത്തൺ പതിപ്പ് പിന്തുണയ്ക്കുന്നില്ലെങ്കിൽ എന്തുചെയ്യും? A: ESP-IDF v4.3-ന് v3.6-ൽ കുറവല്ലാത്ത ഒരു പൈത്തൺ പതിപ്പ് ആവശ്യമാണ്. ഉബുണ്ടുവിൻ്റെ പഴയ പതിപ്പുകൾക്കായി, പൈത്തണിൻ്റെ ഉയർന്ന പതിപ്പ് സ്വമേധയാ ഡൗൺലോഡ് ചെയ്‌ത് ഇൻസ്റ്റാൾ ചെയ്യുക, പൈത്തൺ 3 ഡിഫോൾട്ട് പൈത്തൺ എൻവയോൺമെൻ്റ് ആയി സജ്ജമാക്കുക. കീവേഡ് അപ്ഡേറ്റ്-ആൾട്ടർനേറ്റീവ്സ് പൈത്തൺ തിരയുന്നതിലൂടെ നിങ്ങൾക്ക് വിശദമായ നിർദ്ദേശങ്ങൾ കണ്ടെത്താനാകും.
2. ESP-IDF റിപ്പോസിറ്ററി കോഡ് ഡൗൺലോഡ് ചെയ്യുക
ഒരു ടെർമിനൽ തുറന്ന് mkdir കമാൻഡ് ഉപയോഗിച്ച് നിങ്ങളുടെ ഹോം ഡയറക്ടറിയിൽ esp എന്ന പേരിൽ ഒരു ഫോൾഡർ ഉണ്ടാക്കുക. നിങ്ങൾക്ക് വേണമെങ്കിൽ ഫോൾഡറിനായി മറ്റൊരു പേര് തിരഞ്ഞെടുക്കാം. ഫോൾഡറിൽ പ്രവേശിക്കാൻ cd കമാൻഡ് ഉപയോഗിക്കുക.
അധ്യായം 4. വികസന പരിസ്ഥിതി സജ്ജീകരിക്കൽ 39

$ mkdir -p /esp $ cd /esp
താഴെ കാണിച്ചിരിക്കുന്നതുപോലെ, ESP-IDF റിപ്പോസിറ്ററി കോഡ് ഡൗൺലോഡ് ചെയ്യാൻ git clone കമാൻഡ് ഉപയോഗിക്കുക:
$ git clone -b v4.3.2 –recursive https://github.com/espressif/esp-idf.git
മുകളിലുള്ള കമാൻഡിൽ, -b v4.3.2 എന്ന പാരാമീറ്റർ ഡൗൺലോഡ് ചെയ്യേണ്ട പതിപ്പ് വ്യക്തമാക്കുന്നു (ഈ സാഹചര്യത്തിൽ, പതിപ്പ് 4.3.2). ഇഎസ്പി-ഐഡിഎഫിൻ്റെ എല്ലാ ഉപ-റിപ്പോസിറ്ററികളും ആവർത്തിച്ച് ഡൗൺലോഡ് ചെയ്യപ്പെടുന്നുവെന്ന് പാരാമീറ്റർ -റെക്കർസീവ് ഉറപ്പാക്കുന്നു. ഉപ-റിപ്പോസിറ്ററികളെക്കുറിച്ചുള്ള വിവരങ്ങൾ .gitmodules-ൽ കാണാം file.
3. ESP-IDF ഡെവലപ്മെൻ്റ് ടൂൾ ചെയിൻ ഇൻസ്റ്റാൾ ചെയ്യുക
ടൂൾ ചെയിൻ ഡൗൺലോഡ് ചെയ്യാനും ഇൻസ്റ്റാൾ ചെയ്യാനും Espressif ഒരു ഓട്ടോമേറ്റഡ് സ്‌ക്രിപ്റ്റ് install.sh നൽകുന്നു. ഈ സ്ക്രിപ്റ്റ് നിലവിലെ ESP-IDF പതിപ്പും ഓപ്പറേറ്റിംഗ് സിസ്റ്റം എൻവയോൺമെൻ്റും പരിശോധിക്കുന്നു, തുടർന്ന് പൈത്തൺ ടൂൾ പാക്കേജുകളുടെയും കംപൈലേഷൻ ടൂൾ ചെയിനുകളുടെയും ഉചിതമായ പതിപ്പ് ഡൗൺലോഡ് ചെയ്യുകയും ഇൻസ്റ്റാൾ ചെയ്യുകയും ചെയ്യുന്നു. ടൂൾ ചെയിനിനുള്ള ഡിഫോൾട്ട് ഇൻസ്റ്റലേഷൻ പാത /.espressif ആണ്. നിങ്ങൾ ചെയ്യേണ്ടത് esp-idf ഡയറക്ടറിയിലേക്ക് നാവിഗേറ്റ് ചെയ്ത് install.sh പ്രവർത്തിപ്പിക്കുക മാത്രമാണ്.
$ cd /esp/esp-idf $ ./install.sh
നിങ്ങൾ ടൂൾ ചെയിൻ വിജയകരമായി ഇൻസ്റ്റാൾ ചെയ്താൽ, ടെർമിനൽ പ്രദർശിപ്പിക്കും:
എല്ലാം കഴിഞ്ഞു!
ഈ ഘട്ടത്തിൽ, നിങ്ങൾ ESP-IDF വികസന പരിസ്ഥിതി വിജയകരമായി സജ്ജമാക്കി.
4.2.2 വിൻഡോസിൽ ESP-IDF വികസന പരിസ്ഥിതി സജ്ജീകരിക്കുന്നു
1. ESP-IDF ടൂൾസ് ഇൻസ്റ്റാളർ ഡൗൺലോഡ് ചെയ്യുക
നുറുങ്ങുകൾ Windows 10 അല്ലെങ്കിൽ അതിന് മുകളിലുള്ളതിൽ ESP-IDF വികസന പരിസ്ഥിതി സജ്ജീകരിക്കാൻ ശുപാർശ ചെയ്യുന്നു. നിങ്ങൾക്ക് https://dl.espressif.com/dl/esp-idf/ എന്നതിൽ നിന്ന് ഇൻസ്റ്റാളർ ഡൗൺലോഡ് ചെയ്യാം. ഇൻസ്റ്റാളർ ഒരു ഓപ്പൺ സോഴ്‌സ് സോഫ്‌റ്റ്‌വെയർ കൂടിയാണ്, അതിൻ്റെ സോഴ്‌സ് കോഡ് ആകാം viewഎഡിറ്റ് https: //github.com/espressif/idf-installer.
· ഓൺലൈൻ ESP-IDF ടൂൾസ് ഇൻസ്റ്റാളർ
ഈ ഇൻസ്റ്റാളർ താരതമ്യേന ചെറുതാണ്, ഏകദേശം 4 MB വലുപ്പമുണ്ട്, കൂടാതെ മറ്റ് പാക്കേജുകളും കോഡുകളും ഇൻസ്റ്റലേഷൻ പ്രക്രിയയിൽ ഡൗൺലോഡ് ചെയ്യപ്പെടും. അഡ്വാൻtagഇൻസ്റ്റലേഷൻ പ്രക്രിയയിൽ ആവശ്യാനുസരണം സോഫ്‌റ്റ്‌വെയർ പാക്കേജുകളും കോഡും ഡൗൺലോഡ് ചെയ്യാൻ മാത്രമല്ല, ESP-IDF-ൻ്റെ ലഭ്യമായ എല്ലാ റിലീസുകളും GitHub കോഡിൻ്റെ ഏറ്റവും പുതിയ ബ്രാഞ്ചും (മാസ്റ്റർ ബ്രാഞ്ച് പോലുള്ളവ) ഇൻസ്റ്റാളുചെയ്യാനും അനുവദിക്കുന്നു എന്നതാണ് ഓൺലൈൻ ഇൻസ്റ്റാളറിൻ്റെ e. . പ്രതികൂലാവസ്ഥtage എന്നത് ഇൻസ്റ്റലേഷൻ പ്രക്രിയയിൽ ഒരു നെറ്റ്‌വർക്ക് കണക്ഷൻ ആവശ്യമാണ്, ഇത് നെറ്റ്‌വർക്ക് പ്രശ്‌നങ്ങൾ കാരണം ഇൻസ്റ്റാളേഷൻ പരാജയത്തിന് കാരണമാകാം.
40 ESP32-C3 വയർലെസ് അഡ്വഞ്ചർ: IoT-യിലേക്കുള്ള ഒരു സമഗ്ര ഗൈഡ്

· ഓഫ്‌ലൈൻ ESP-IDF ടൂൾസ് ഇൻസ്റ്റാളർ ഈ ഇൻസ്റ്റാളർ വലുതാണ്, ഏകദേശം 1 GB വലുപ്പമുണ്ട്, കൂടാതെ പരിസ്ഥിതി സജ്ജീകരണത്തിന് ആവശ്യമായ എല്ലാ സോഫ്റ്റ്‌വെയർ പാക്കേജുകളും കോഡും അടങ്ങിയിരിക്കുന്നു. പ്രധാന അഡ്വാൻtagഇൻറർനെറ്റ് ആക്‌സസ് ഇല്ലാത്ത കമ്പ്യൂട്ടറുകളിൽ ഇത് ഉപയോഗിക്കാമെന്നതാണ് ഓഫ്‌ലൈൻ ഇൻസ്റ്റാളറിൻ്റെ ഇ, പൊതുവെ ഉയർന്ന ഇൻസ്റ്റാളേഷൻ വിജയ നിരക്ക്. v*.* അല്ലെങ്കിൽ v*.*.* വഴി തിരിച്ചറിഞ്ഞ ESP-IDF-ൻ്റെ സ്ഥിരതയുള്ള റിലീസുകൾ മാത്രമേ ഓഫ്‌ലൈൻ ഇൻസ്റ്റാളറിന് ഇൻസ്റ്റാൾ ചെയ്യാൻ കഴിയൂ എന്നത് ശ്രദ്ധിക്കേണ്ടതാണ്.
2. ഇൻസ്റ്റാളറിൻ്റെ അനുയോജ്യമായ ഒരു പതിപ്പ് ഡൗൺലോഡ് ചെയ്ത ശേഷം ESP-IDF ടൂൾസ് ഇൻസ്റ്റാളർ പ്രവർത്തിപ്പിക്കുക (ഉദാഹരണത്തിന് ESP-IDF ടൂൾസ് ഓഫ്‌ലൈൻ 4.3.2 എടുക്കുകampഇവിടെ), exe-ൽ ഡബിൾ ക്ലിക്ക് ചെയ്യുക file ESP-IDF ഇൻസ്റ്റലേഷൻ ഇൻ്റർഫേസ് സമാരംഭിക്കുന്നതിന്. ഓഫ്‌ലൈൻ ഇൻസ്റ്റാളർ ഉപയോഗിച്ച് ESP-IDF സ്റ്റേബിൾ പതിപ്പ് v4.3.2 എങ്ങനെ ഇൻസ്റ്റാൾ ചെയ്യാമെന്ന് ഇനിപ്പറയുന്നവ കാണിക്കുന്നു.
(1) ചിത്രം 4.4-ൽ കാണിച്ചിരിക്കുന്ന "ഇൻസ്റ്റലേഷൻ ഭാഷ തിരഞ്ഞെടുക്കുക" ഇൻ്റർഫേസിൽ, ഡ്രോപ്പ്-ഡൗൺ ലിസ്റ്റിൽ നിന്ന് ഉപയോഗിക്കേണ്ട ഭാഷ തിരഞ്ഞെടുക്കുക.
ചിത്രം 4.4. “ഇൻസ്റ്റലേഷൻ ഭാഷ തിരഞ്ഞെടുക്കുക” ഇൻ്റർഫേസ് (2) ഭാഷ തിരഞ്ഞെടുത്ത ശേഷം, “ലൈസൻസ് കരാർ” ഇൻ്റർഫേസ് പോപ്പ് അപ്പ് ചെയ്യുന്നതിന് “ശരി” ക്ലിക്ക് ചെയ്യുക
(ചിത്രം 4.5 കാണുക). ഇൻസ്റ്റാളേഷൻ ലൈസൻസ് കരാർ ശ്രദ്ധാപൂർവ്വം വായിച്ചതിനുശേഷം, "ഞാൻ കരാർ അംഗീകരിക്കുന്നു" തിരഞ്ഞെടുത്ത് "അടുത്തത്" ക്ലിക്ക് ചെയ്യുക.
ചിത്രം 4.5. "ലൈസൻസ് ഉടമ്പടി" ഇൻ്റർഫേസ് അധ്യായം 4. വികസന പരിസ്ഥിതി സജ്ജീകരിക്കൽ 41

(3) റെview "പ്രീ-ഇൻസ്റ്റലേഷൻ സിസ്റ്റം ചെക്ക്" ഇൻ്റർഫേസിലെ സിസ്റ്റം കോൺഫിഗറേഷൻ (ചിത്രം 4.6 കാണുക). വിൻഡോസ് പതിപ്പും ഇൻസ്റ്റാൾ ചെയ്ത ആൻ്റിവൈറസ് സോഫ്റ്റ്‌വെയർ വിവരങ്ങളും പരിശോധിക്കുക. എല്ലാ കോൺഫിഗറേഷൻ ഇനങ്ങളും സാധാരണമാണെങ്കിൽ "അടുത്തത്" ക്ലിക്ക് ചെയ്യുക. അല്ലെങ്കിൽ, പ്രധാന ഇനങ്ങളെ അടിസ്ഥാനമാക്കിയുള്ള പരിഹാരങ്ങൾക്കായി നിങ്ങൾക്ക് "പൂർണ്ണ ലോഗ്" ക്ലിക്ക് ചെയ്യാം.
ചിത്രം 4.6. "ഇൻസ്റ്റാളുചെയ്യുന്നതിന് മുമ്പ് സിസ്റ്റം പരിശോധിക്കുക" ഇൻ്റർഫേസ് ടിപ്സ്
സഹായത്തിനായി നിങ്ങൾക്ക് https://github.com/espressif/idf-installer/issues-ലേക്ക് ലോഗുകൾ സമർപ്പിക്കാം. (4) ESP-IDF ഇൻസ്റ്റലേഷൻ ഡയറക്ടറി തിരഞ്ഞെടുക്കുക. ഇവിടെ, കാണിച്ചിരിക്കുന്നതുപോലെ D:/.espressif തിരഞ്ഞെടുക്കുക
ചിത്രം 4.7, "അടുത്തത്" ക്ലിക്ക് ചെയ്യുക. ഇവിടെ .espressif ഒരു മറഞ്ഞിരിക്കുന്ന ഡയറക്‌ടറിയാണെന്ന കാര്യം ശ്രദ്ധിക്കുക. ഇൻസ്റ്റാളേഷൻ പൂർത്തിയായ ശേഷം, നിങ്ങൾക്ക് കഴിയും view തുറക്കുന്നതിലൂടെ ഈ ഡയറക്ടറിയിലെ നിർദ്ദിഷ്ട ഉള്ളടക്കങ്ങൾ file മാനേജർ, മറഞ്ഞിരിക്കുന്ന ഇനങ്ങൾ പ്രദർശിപ്പിക്കുന്നു.
ചിത്രം 4.7. ESP-IDF ഇൻസ്റ്റലേഷൻ ഡയറക്‌ടറി തിരഞ്ഞെടുക്കുക 42 ESP32-C3 വയർലെസ് അഡ്വഞ്ചർ: IoT-യിലേക്കുള്ള ഒരു സമഗ്ര ഗൈഡ്

(5) ചിത്രം 4.8-ൽ കാണിച്ചിരിക്കുന്നതുപോലെ, ഇൻസ്റ്റാൾ ചെയ്യേണ്ട ഘടകങ്ങൾ പരിശോധിക്കുക. സ്ഥിരസ്ഥിതി ഓപ്ഷൻ ഉപയോഗിക്കാൻ ശുപാർശ ചെയ്യുന്നു, അതായത്, ഇൻസ്റ്റാളേഷൻ പൂർത്തിയാക്കുക, തുടർന്ന് "അടുത്തത്" ക്ലിക്കുചെയ്യുക.
ചിത്രം 4.8. ഇൻസ്‌റ്റാൾ ചെയ്യേണ്ട ഘടകങ്ങൾ തിരഞ്ഞെടുക്കുക (6) ഇൻസ്‌റ്റാൾ ചെയ്യേണ്ട ഘടകങ്ങൾ സ്ഥിരീകരിക്കുകയും ഓട്ടോമേറ്റഡ് ഇൻ-ആരംഭിക്കാൻ "ഇൻസ്റ്റാൾ" ക്ലിക്ക് ചെയ്യുക
ചിത്രം 4.9-ൽ കാണിച്ചിരിക്കുന്നതുപോലെ സ്തംഭന പ്രക്രിയ. ഇൻസ്റ്റലേഷൻ പ്രക്രിയ പത്തു മിനിറ്റ് നീണ്ടുനിൽക്കും, കൂടാതെ ഇൻസ്റ്റലേഷൻ പ്രക്രിയയുടെ പുരോഗതി ബാർ ചിത്രം 4.10-ൽ കാണിച്ചിരിക്കുന്നു. ദയവായി ക്ഷമയോടെ കാത്തിരിക്കുക.
ചിത്രം 4.9. ഇൻസ്റ്റാളേഷനായി തയ്യാറെടുക്കുന്നു (7) ഇൻസ്റ്റാളേഷൻ പൂർത്തിയായ ശേഷം, "ഇഎസ്പി-ഐഡിഎഫ് രജിസ്റ്റർ ചെയ്യുക" എന്നത് പരിശോധിക്കാൻ ശുപാർശ ചെയ്യുന്നു.
വിൻഡോസ് ഡിഫെൻഡർ ഒഴിവാക്കലുകളായി ടൂൾസ് എക്സിക്യൂട്ടബിളുകൾ…” ആൻ്റിവൈറസ് സോഫ്‌റ്റ്‌വെയർ ഇല്ലാതാക്കുന്നത് തടയാൻ fileഎസ്. ഒഴിവാക്കൽ ഇനങ്ങൾ ചേർക്കുന്നത് ആൻ്റിവൈറസ് വഴിയുള്ള പതിവ് സ്കാനുകൾ ഒഴിവാക്കാനും കഴിയും
അധ്യായം 4. വികസന പരിസ്ഥിതി സജ്ജീകരിക്കൽ 43

ചിത്രം 4.10. ഇൻസ്റ്റലേഷൻ പുരോഗതി ബാർ സോഫ്റ്റ്‌വെയർ, വിൻഡോസ് സിസ്റ്റത്തിൻ്റെ കോഡ് കംപൈലേഷൻ കാര്യക്ഷമത വളരെയധികം മെച്ചപ്പെടുത്തുന്നു. ചിത്രം 4.11-ൽ കാണിച്ചിരിക്കുന്നതുപോലെ, വികസന പരിസ്ഥിതിയുടെ ഇൻസ്റ്റാളേഷൻ പൂർത്തിയാക്കാൻ "പൂർത്തിയാക്കുക" ക്ലിക്ക് ചെയ്യുക. "ഇഎസ്പി-ഐഡിഎഫ് പവർഷെൽ എൻവയോൺമെൻ്റ് പ്രവർത്തിപ്പിക്കുക" അല്ലെങ്കിൽ "ഇഎസ്പി-ഐഡിഎഫ് കമാൻഡ് പ്രോംപ്റ്റ് പ്രവർത്തിപ്പിക്കുക" എന്നത് നിങ്ങൾക്ക് പരിശോധിക്കാം. ഡെവലപ്‌മെൻ്റ് എൻവയോൺമെൻ്റ് സാധാരണയായി പ്രവർത്തിക്കുന്നുവെന്ന് ഉറപ്പാക്കാൻ ഇൻസ്റ്റാളേഷന് ശേഷം നേരിട്ട് കമ്പൈലേഷൻ വിൻഡോ പ്രവർത്തിപ്പിക്കുക.
ചിത്രം 4.11. ഇൻസ്റ്റലേഷൻ പൂർത്തിയായി (8) പ്രോഗ്രാം ലിസ്റ്റിൽ ഇൻസ്റ്റോൾ ചെയ്ത വികസന എൻവയോൺമെൻ്റ് തുറക്കുക (ഒന്നുകിൽ ESP-IDF 4.3
ചിത്രം 4.3-ൽ കാണിച്ചിരിക്കുന്നതുപോലെ CMD അല്ലെങ്കിൽ ESP-IDF 4.12 PowerShell ടെർമിനലും, ടെർമിനലിൽ പ്രവർത്തിക്കുമ്പോൾ ESP-IDF എൻവയോൺമെൻ്റ് വേരിയബിളും സ്വയമേവ ചേർക്കപ്പെടും. അതിനുശേഷം, നിങ്ങൾക്ക് പ്രവർത്തനങ്ങൾക്കായി idf.py കമാൻഡ് ഉപയോഗിക്കാം. തുറന്ന ESP-IDF 4.3 CMD ചിത്രം 4.13 ൽ കാണിച്ചിരിക്കുന്നു. 44 ESP32-C3 വയർലെസ് അഡ്വഞ്ചർ: IoT-യിലേക്കുള്ള ഒരു സമഗ്ര ഗൈഡ്

ചിത്രം 4.12. വികസന പരിസ്ഥിതി സ്ഥാപിച്ചു
ചിത്രം 4.13. ESP-IDF 4.3 CMD
4.2.3 Mac-ൽ ESP-IDF വികസന പരിസ്ഥിതി സജ്ജീകരിക്കുന്നു
ഒരു Mac സിസ്റ്റത്തിൽ ESP-IDF ഡവലപ്മെൻ്റ് എൻവയോൺമെൻ്റ് ഇൻസ്റ്റാൾ ചെയ്യുന്ന പ്രക്രിയ ഒരു ലിനക്സ് സിസ്റ്റത്തിലേതിന് സമാനമാണ്. റിപ്പോസിറ്ററി കോഡ് ഡൗൺലോഡ് ചെയ്യുന്നതിനും ടൂൾ ചെയിൻ ഇൻസ്റ്റാൾ ചെയ്യുന്നതിനുമുള്ള കമാൻഡുകൾ കൃത്യമായി സമാനമാണ്. ഡിപൻഡൻസി പാക്കേജുകൾ ഇൻസ്റ്റോൾ ചെയ്യുന്നതിനുള്ള കമാൻഡുകൾ മാത്രം അല്പം വ്യത്യസ്തമാണ്. 1. ഡിപൻഡൻസി പാക്കേജുകൾ ഇൻസ്റ്റാൾ ചെയ്യുക ഒരു ടെർമിനൽ തുറന്ന് താഴെ പറയുന്ന കമാൻഡ് പ്രവർത്തിപ്പിച്ച് പൈത്തൺ പാക്കേജ് മാനേജ്മെൻ്റ് ടൂളായ പിപ്പ് ഇൻസ്റ്റാൾ ചെയ്യുക:
% സുഡോ എളുപ്പത്തിലുള്ള ഇൻസ്റ്റാളേഷൻ പൈപ്പ്
ഇനിപ്പറയുന്ന കമാൻഡ് പ്രവർത്തിപ്പിച്ച് MacOS-നുള്ള പാക്കേജ് മാനേജ്മെൻ്റ് ടൂളായ Homebrew ഇൻസ്റ്റാൾ ചെയ്യുക:
% /bin/bash -c “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/ HEAD/install.sh)”
ഇനിപ്പറയുന്ന കമാൻഡ് പ്രവർത്തിപ്പിച്ച് ആവശ്യമായ ഡിപൻഡൻസി പാക്കേജുകൾ ഇൻസ്റ്റാൾ ചെയ്യുക:
% brew python3 cmake ninja ccache dfu-util ഇൻസ്റ്റാൾ ചെയ്യുക
2. ESP-IDF റിപ്പോസിറ്ററി കോഡ് ഡൗൺലോഡ് ചെയ്യുക ESP-IDF റിപ്പോസിറ്ററി കോഡ് ഡൗൺലോഡ് ചെയ്യുന്നതിന് വിഭാഗം 4.2.1-ൽ നൽകിയിരിക്കുന്ന നിർദ്ദേശങ്ങൾ പാലിക്കുക. ഒരു ലിനക്സ് സിസ്റ്റത്തിൽ ഡൗൺലോഡ് ചെയ്യുന്നതിനുള്ള ഘട്ടങ്ങൾ തന്നെയാണ്.
അധ്യായം 4. വികസന പരിസ്ഥിതി സജ്ജീകരിക്കൽ 45

3. ESP-IDF ഡെവലപ്മെൻ്റ് ടൂൾ ചെയിൻ ഇൻസ്റ്റാൾ ചെയ്യുക
ESP-IDF ഡെവലപ്‌മെൻ്റ് ടൂൾ ചെയിൻ ഇൻസ്റ്റാൾ ചെയ്യാൻ വിഭാഗം 4.2.1-ൽ നൽകിയിരിക്കുന്ന നിർദ്ദേശങ്ങൾ പാലിക്കുക. ഒരു ലിനക്സ് സിസ്റ്റത്തിൽ ഇൻസ്റ്റാളുചെയ്യുന്നതിനുള്ള ഘട്ടങ്ങൾ തന്നെയാണ്.
4.2.4 VS കോഡ് ഇൻസ്റ്റാൾ ചെയ്യുന്നു
ഡിഫോൾട്ടായി, ESP-IDF SDK-ൽ ഒരു കോഡ് എഡിറ്റിംഗ് ടൂൾ ഉൾപ്പെടുന്നില്ല (Windows-നുള്ള ഏറ്റവും പുതിയ ESP-IDF ഇൻസ്റ്റാളർ ESP-IDF എക്ലിപ്സ് ഇൻസ്റ്റാൾ ചെയ്യാനുള്ള ഓപ്ഷൻ വാഗ്ദാനം ചെയ്യുന്നുവെങ്കിലും). കോഡ് എഡിറ്റുചെയ്യാനും ടെർമിനൽ കമാൻഡുകൾ ഉപയോഗിച്ച് കംപൈൽ ചെയ്യാനും നിങ്ങൾക്ക് ഇഷ്ടമുള്ള ഏതെങ്കിലും ടെക്സ്റ്റ് എഡിറ്റിംഗ് ടൂൾ ഉപയോഗിക്കാം.
ഒരു ജനപ്രിയ കോഡ് എഡിറ്റിംഗ് ടൂൾ വിഎസ് കോഡ് (വിഷ്വൽ സ്റ്റുഡിയോ കോഡ്) ആണ്, ഇത് ഉപയോക്തൃ-സൗഹൃദ ഇൻ്റർഫേസുള്ള ഒരു സൗജന്യവും ഫീച്ചർ കോഡ് എഡിറ്ററുമാണ്. ഇത് വിവിധ പ്രദാനം ചെയ്യുന്നു plugins കോഡ് നാവിഗേഷൻ, സിൻ്റാക്സ് ഹൈലൈറ്റിംഗ്, Git പതിപ്പ് നിയന്ത്രണം, ടെർമിനൽ ഇൻ്റഗ്രേഷൻ തുടങ്ങിയ പ്രവർത്തനങ്ങൾ നൽകുന്നു. കൂടാതെ, പ്രോജക്റ്റ് കോൺഫിഗറേഷനും ഡീബഗ്ഗിംഗും ലളിതമാക്കുന്ന VS കോഡിനായി Espressif IDF എന്ന ഒരു സമർപ്പിത പ്ലഗിൻ Espressif വികസിപ്പിച്ചെടുത്തിട്ടുണ്ട്.
വിഎസ് കോഡിലെ നിലവിലെ ഫോൾഡർ വേഗത്തിൽ തുറക്കാൻ നിങ്ങൾക്ക് ടെർമിനലിലെ കോഡ് കമാൻഡ് ഉപയോഗിക്കാം. പകരമായി, VS കോഡിനുള്ളിൽ സിസ്റ്റത്തിൻ്റെ ഡിഫോൾട്ട് ടെർമിനൽ കൺസോൾ തുറക്കാൻ നിങ്ങൾക്ക് Ctrl+ കുറുക്കുവഴി ഉപയോഗിക്കാം.
നുറുങ്ങുകൾ ESP32-C3 കോഡ് വികസനത്തിന് VS കോഡ് ഉപയോഗിക്കാൻ ശുപാർശ ചെയ്യുന്നു. വിഎസ് കോഡിൻ്റെ ഏറ്റവും പുതിയ പതിപ്പ് https://code.visualstudio.com/ എന്നതിൽ ഡൗൺലോഡ് ചെയ്‌ത് ഇൻസ്റ്റാൾ ചെയ്യുക.
4.2.5 മൂന്നാം കക്ഷി വികസന പരിസ്ഥിതിയുടെ ആമുഖം
പ്രാഥമികമായി സി ഭാഷ ഉപയോഗിക്കുന്ന ഔദ്യോഗിക ESP-IDF വികസന പരിതസ്ഥിതിക്ക് പുറമേ, ESP32-C3 മറ്റ് മുഖ്യധാരാ പ്രോഗ്രാമിംഗ് ഭാഷകളെയും വിപുലമായ മൂന്നാം കക്ഷി വികസന പരിതസ്ഥിതികളെയും പിന്തുണയ്ക്കുന്നു. ചില ശ്രദ്ധേയമായ ഓപ്ഷനുകൾ ഉൾപ്പെടുന്നു:
Arduino: ഹാർഡ്‌വെയറിനും സോഫ്റ്റ്‌വെയറിനുമുള്ള ഒരു ഓപ്പൺ സോഴ്‌സ് പ്ലാറ്റ്‌ഫോം, ESP32-C3 ഉൾപ്പെടെയുള്ള വിവിധ മൈക്രോകൺട്രോളറുകളെ പിന്തുണയ്ക്കുന്നു.
ഇത് C++ ഭാഷ ഉപയോഗിക്കുന്നു കൂടാതെ ലളിതവും നിലവാരമുള്ളതുമായ API വാഗ്ദാനം ചെയ്യുന്നു, സാധാരണയായി Arduino ഭാഷ എന്ന് വിളിക്കുന്നു. പ്രോട്ടോടൈപ്പ് വികസനത്തിലും വിദ്യാഭ്യാസ സന്ദർഭങ്ങളിലും Arduino വ്യാപകമായി ഉപയോഗിക്കുന്നു. ഇത് ഒരു എക്സ്റ്റൻസിബിൾ സോഫ്‌റ്റ്‌വെയർ പാക്കേജും എളുപ്പത്തിൽ സമാഹരിക്കാനും മിന്നാനും അനുവദിക്കുന്ന ഒരു ഐഡിഇയും നൽകുന്നു.
മൈക്രോപൈത്തൺ: എംബഡഡ് മൈക്രോകൺട്രോളർ പ്ലാറ്റ്‌ഫോമുകളിൽ പ്രവർത്തിക്കാൻ രൂപകൽപ്പന ചെയ്‌തിരിക്കുന്ന ഒരു പൈത്തൺ 3 ഭാഷാ വ്യാഖ്യാതാവ്.
ലളിതമായ ഒരു സ്ക്രിപ്റ്റ് ഭാഷ ഉപയോഗിച്ച്, ഇതിന് ESP32-C3 യുടെ പെരിഫറൽ ഉറവിടങ്ങളും (UART, SPI, I2C പോലുള്ളവ) ആശയവിനിമയ പ്രവർത്തനങ്ങളും (Wi-Fi, Bluetooth LE പോലുള്ളവ) നേരിട്ട് ആക്സസ് ചെയ്യാൻ കഴിയും.
46 ESP32-C3 വയർലെസ് അഡ്വഞ്ചർ: IoT-യിലേക്കുള്ള ഒരു സമഗ്ര ഗൈഡ്

ഇത് ഹാർഡ്‌വെയർ ഇടപെടൽ ലളിതമാക്കുന്നു. പൈത്തണിൻ്റെ വിപുലമായ മാത്തമാറ്റിക്കൽ ഓപ്പറേഷൻ ലൈബ്രറിയുമായി ചേർന്ന് മൈക്രോപൈത്തൺ, ESP32-C3-ൽ സങ്കീർണ്ണമായ അൽഗോരിതങ്ങൾ നടപ്പിലാക്കുന്നത് പ്രാപ്തമാക്കുന്നു, ഇത് AI- സംബന്ധിയായ ആപ്ലിക്കേഷനുകളുടെ വികസനം സുഗമമാക്കുന്നു. ഒരു ലിപി ഭാഷ എന്ന നിലയിൽ, ആവർത്തിച്ചുള്ള സമാഹാരത്തിൻ്റെ ആവശ്യമില്ല; മാറ്റങ്ങൾ വരുത്താനും സ്ക്രിപ്റ്റുകൾ നേരിട്ട് നടപ്പിലാക്കാനും കഴിയും.
NodeMCU: ESP സീരീസ് ചിപ്പുകൾക്കായി വികസിപ്പിച്ച ഒരു LUA ഭാഷാ വ്യാഖ്യാതാവ്.
ഇത് ഇഎസ്പി ചിപ്പുകളുടെ മിക്കവാറും എല്ലാ പെരിഫറൽ ഫംഗ്‌ഷനുകളെയും പിന്തുണയ്‌ക്കുന്നു കൂടാതെ മൈക്രോപൈത്തണിനേക്കാൾ ഭാരം കുറഞ്ഞതുമാണ്. MicroPython പോലെ, NodeMCU ഒരു സ്ക്രിപ്റ്റ് ഭാഷ ഉപയോഗിക്കുന്നു, ആവർത്തിച്ചുള്ള സമാഹാരത്തിൻ്റെ ആവശ്യകത ഇല്ലാതാക്കുന്നു.
കൂടാതെ, ESP32-C3, NuttX, Zephyr ഓപ്പറേറ്റിംഗ് സിസ്റ്റങ്ങളെയും പിന്തുണയ്ക്കുന്നു. POSIX-അനുയോജ്യമായ ഇൻ്റർഫേസുകൾ നൽകുന്ന, ആപ്ലിക്കേഷൻ പോർട്ടബിലിറ്റി വർദ്ധിപ്പിക്കുന്ന ഒരു തത്സമയ ഓപ്പറേറ്റിംഗ് സിസ്റ്റമാണ് NuttX. IoT ആപ്ലിക്കേഷനുകൾക്കായി പ്രത്യേകം രൂപകൽപ്പന ചെയ്ത ഒരു ചെറിയ തൽസമയ ഓപ്പറേറ്റിംഗ് സിസ്റ്റമാണ് Zephyr. IoT വികസനത്തിന് ആവശ്യമായ നിരവധി സോഫ്റ്റ്‌വെയർ ലൈബ്രറികൾ ഇതിൽ ഉൾപ്പെടുന്നു, ക്രമേണ ഒരു സമഗ്ര സോഫ്‌റ്റ്‌വെയർ ഇക്കോസിസ്റ്റമായി പരിണമിക്കുന്നു.
മേൽപ്പറഞ്ഞ വികസന പരിതസ്ഥിതികൾക്കായി ഈ പുസ്തകം വിശദമായ ഇൻസ്റ്റാളേഷൻ നിർദ്ദേശങ്ങൾ നൽകുന്നില്ല. ബന്ധപ്പെട്ട ഡോക്യുമെൻ്റേഷനുകളും നിർദ്ദേശങ്ങളും പിന്തുടർന്ന് നിങ്ങളുടെ ആവശ്യകതകളെ അടിസ്ഥാനമാക്കി നിങ്ങൾക്ക് ഒരു വികസന അന്തരീക്ഷം ഇൻസ്റ്റാൾ ചെയ്യാൻ കഴിയും.
4.3 ESP-IDF കംപൈലേഷൻ സിസ്റ്റം
4.3.1 കംപൈലേഷൻ സിസ്റ്റത്തിൻ്റെ അടിസ്ഥാന ആശയങ്ങൾ
ഒരു എൻട്രി ഫംഗ്ഷനും ഒന്നിലധികം സ്വതന്ത്ര ഫംഗ്ഷണൽ ഘടകങ്ങളും ഉള്ള ഒരു പ്രധാന പ്രോഗ്രാമിൻ്റെ ഒരു ശേഖരമാണ് ESP-IDF പ്രോജക്റ്റ്. ഉദാample, LED സ്വിച്ചുകൾ നിയന്ത്രിക്കുന്ന ഒരു പ്രോജക്റ്റിൽ പ്രധാനമായും ഒരു എൻട്രി പ്രോഗ്രാം മെയിൻ, GPIO നിയന്ത്രിക്കുന്ന ഒരു ഡ്രൈവർ ഘടകം എന്നിവ അടങ്ങിയിരിക്കുന്നു. നിങ്ങൾക്ക് എൽഇഡി റിമോട്ട് കൺട്രോൾ തിരിച്ചറിയണമെങ്കിൽ, വൈഫൈ, ടിസിപി/ഐപി പ്രോട്ടോക്കോൾ സ്റ്റാക്ക് മുതലായവയും ചേർക്കേണ്ടതുണ്ട്.
കംപൈലേഷൻ സിസ്റ്റത്തിന് കംപൈൽ ചെയ്യാനും ലിങ്ക് ചെയ്യാനും എക്സിക്യൂട്ടബിൾ സൃഷ്ടിക്കാനും കഴിയും fileഒരു കൂട്ടം ബിൽഡിംഗ് റൂൾസ് വഴി കോഡിനായി s (.bin). ESP-IDF v4.0-ൻ്റെയും അതിനുമുകളിലുള്ള പതിപ്പുകളുടെയും കംപൈലേഷൻ സിസ്റ്റം ഡിഫോൾട്ടായി CMake-നെ അടിസ്ഥാനമാക്കിയുള്ളതാണ്, കൂടാതെ കോഡിൻ്റെ കംപൈലേഷൻ സ്വഭാവം നിയന്ത്രിക്കാൻ CMakeLists.txt എന്ന സമാഹാര സ്ക്രിപ്റ്റ് ഉപയോഗിക്കാം. CMake-ൻ്റെ അടിസ്ഥാന വാക്യഘടനയെ പിന്തുണയ്ക്കുന്നതിനു പുറമേ, ESP-IDF കംപൈലേഷൻ സിസ്റ്റം ഒരു കൂട്ടം ഡിഫോൾട്ട് കമ്പൈലേഷൻ നിയമങ്ങളും CMake ഫംഗ്ഷനുകളും നിർവചിക്കുന്നു, കൂടാതെ നിങ്ങൾക്ക് ലളിതമായ പ്രസ്താവനകൾ ഉപയോഗിച്ച് സമാഹാര സ്ക്രിപ്റ്റ് എഴുതാം.
4.3.2 പദ്ധതി File ഘടന
ഒരു എൻട്രി പ്രോഗ്രാം മെയിൻ, ഉപയോക്തൃ-നിർവചിച്ച ഘടകങ്ങൾ, കൂടാതെ എന്നിവ ഉൾക്കൊള്ളുന്ന ഒരു ഫോൾഡറാണ് പ്രോജക്റ്റ് fileകംപൈലേഷൻ സ്ക്രിപ്റ്റുകൾ, കോൺഫിഗറേഷൻ പോലുള്ള എക്സിക്യൂട്ടബിൾ ആപ്ലിക്കേഷനുകൾ നിർമ്മിക്കുന്നതിന് s ആവശ്യമാണ്
അധ്യായം 4. വികസന പരിസ്ഥിതി സജ്ജീകരിക്കൽ 47

files, പാർട്ടീഷൻ ടേബിളുകൾ മുതലായവ. പ്രോജക്ടുകൾ പകർത്തി കൈമാറാം, അതേ എക്സിക്യൂട്ടബിൾ file ESP-IDF ഡവലപ്മെൻ്റ് എൻവയോൺമെൻ്റിൻ്റെ അതേ പതിപ്പുള്ള മെഷീനുകളിൽ കംപൈൽ ചെയ്യാനും സൃഷ്ടിക്കാനും കഴിയും. ഒരു സാധാരണ ESP-IDF പ്രോജക്റ്റ് file ഘടന ചിത്രം 4.14 ൽ കാണിച്ചിരിക്കുന്നു.
ചിത്രം 4.14. സാധാരണ ESP-IDF പദ്ധതി file ഘടന ESP32, ESP32-S സീരീസ്, ESP32-C സീരീസ്, ESP32-H സീരീസ് മുതലായവ ഉൾപ്പെടെ, Espressif-ൽ നിന്നുള്ള ഒന്നിലധികം IoT ചിപ്പുകളെ ESP-IDF പിന്തുണയ്ക്കുന്നതിനാൽ, കോഡ് കംപൈൽ ചെയ്യുന്നതിന് മുമ്പ് ഒരു ലക്ഷ്യം നിർണ്ണയിക്കേണ്ടതുണ്ട്. ആപ്ലിക്കേഷൻ പ്രോഗ്രാം പ്രവർത്തിപ്പിക്കുന്ന ഹാർഡ്‌വെയർ ഉപകരണവും കമ്പൈലേഷൻ സിസ്റ്റത്തിൻ്റെ ബിൽഡ് ടാർഗെറ്റും ആണ് ലക്ഷ്യം. നിങ്ങളുടെ ആവശ്യങ്ങൾക്കനുസരിച്ച്, നിങ്ങളുടെ പ്രോജക്റ്റിനായി ഒന്നോ അതിലധികമോ ലക്ഷ്യങ്ങൾ നിങ്ങൾക്ക് വ്യക്തമാക്കാം. ഉദാample, idf.py set-target esp32c3 എന്ന കമാൻഡ് വഴി, നിങ്ങൾക്ക് കംപൈലേഷൻ ടാർഗെറ്റ് ESP32-C3 ആയി സജ്ജീകരിക്കാം, ഈ സമയത്ത് ESP32C3-നുള്ള ഡിഫോൾട്ട് പാരാമീറ്ററുകളും കംപൈലേഷൻ ടൂൾ ചെയിൻ പാത്തും ലോഡ് ചെയ്യും. സമാഹരിച്ചതിന് ശേഷം, ESP32C3-നായി ഒരു എക്സിക്യൂട്ടബിൾ പ്രോഗ്രാം സൃഷ്ടിക്കാൻ കഴിയും. മറ്റൊരു ടാർഗെറ്റ് സജ്ജീകരിക്കുന്നതിന് നിങ്ങൾക്ക് വീണ്ടും സെറ്റ്-ടാർഗെറ്റ് കമാൻഡ് പ്രവർത്തിപ്പിക്കാനും കഴിയും, കൂടാതെ കമ്പൈലേഷൻ സിസ്റ്റം സ്വയമേവ വൃത്തിയാക്കുകയും പുനഃക്രമീകരിക്കുകയും ചെയ്യും. ഘടകങ്ങൾ
ESP-IDF-ലെ ഘടകങ്ങൾ കംപൈലേഷൻ സിസ്റ്റത്തിൽ കൈകാര്യം ചെയ്യുന്ന മോഡുലാർ, ഇൻഡിപെൻഡൻ്റ് കോഡ് യൂണിറ്റുകളാണ്. അവ ഫോൾഡറുകളായി ക്രമീകരിച്ചിരിക്കുന്നു, ഫോൾഡറിൻ്റെ പേര് സ്ഥിരസ്ഥിതിയായി ഘടക നാമത്തെ പ്രതിനിധീകരിക്കുന്നു. ഓരോ ഘടകത്തിനും അതിൻ്റേതായ കംപൈലേഷൻ സ്ക്രിപ്റ്റ് ഉണ്ട്, അത് 48 ESP32-C3 വയർലെസ് അഡ്വഞ്ചർ: IoT-യിലേക്കുള്ള ഒരു സമഗ്ര ഗൈഡ്

അതിൻ്റെ സമാഹാര പാരാമീറ്ററുകളും ഡിപൻഡൻസികളും വ്യക്തമാക്കുന്നു. കംപൈലേഷൻ പ്രക്രിയയിൽ, ഘടകങ്ങൾ പ്രത്യേക സ്റ്റാറ്റിക് ലൈബ്രറികളിലേക്ക് സമാഹരിക്കുന്നു (.a files) കൂടാതെ മറ്റ് ഘടകങ്ങളുമായി സംയോജിപ്പിച്ച് ആപ്ലിക്കേഷൻ പ്രോഗ്രാം രൂപീകരിക്കുന്നു.
ഘടകങ്ങളുടെ രൂപത്തിൽ ഓപ്പറേറ്റിംഗ് സിസ്റ്റം, പെരിഫറൽ ഡ്രൈവറുകൾ, നെറ്റ്‌വർക്ക് പ്രോട്ടോക്കോൾ സ്റ്റാക്ക് എന്നിവ പോലുള്ള അവശ്യ പ്രവർത്തനങ്ങൾ ESP-IDF നൽകുന്നു. ഈ ഘടകങ്ങൾ ESP-IDF റൂട്ട് ഡയറക്ടറിയിൽ സ്ഥിതി ചെയ്യുന്ന ഘടകങ്ങളുടെ ഡയറക്ടറിയിൽ സംഭരിച്ചിരിക്കുന്നു. ഡെവലപ്പർമാർ ഈ ഘടകങ്ങൾ myProject-ൻ്റെ ഘടകങ്ങളുടെ ഡയറക്ടറിയിലേക്ക് പകർത്തേണ്ടതില്ല. പകരം, അവർ പ്രോജക്റ്റിൻ്റെ CMakeLists.txt-ൽ ഈ ഘടകങ്ങളുടെ ആശ്രിത ബന്ധങ്ങൾ മാത്രം വ്യക്തമാക്കേണ്ടതുണ്ട്. file REQUIRES അല്ലെങ്കിൽ PRIV_REQUIRES നിർദ്ദേശങ്ങൾ ഉപയോഗിക്കുന്നു. കംപൈലേഷൻ സിസ്റ്റം സ്വയമേവ ആവശ്യമായ ഘടകങ്ങൾ കണ്ടെത്തുകയും കംപൈൽ ചെയ്യുകയും ചെയ്യും.
അതിനാൽ, myProject-ന് കീഴിലുള്ള ഘടകങ്ങളുടെ ഡയറക്ടറി ആവശ്യമില്ല. പ്രോജക്റ്റിൻ്റെ ചില ഇഷ്‌ടാനുസൃത ഘടകങ്ങൾ ഉൾപ്പെടുത്താൻ മാത്രമേ ഇത് ഉപയോഗിക്കൂ, അത് മൂന്നാം കക്ഷി ലൈബ്രറികളോ ഉപയോക്തൃ നിർവചിച്ച കോഡോ ആകാം. കൂടാതെ, ESP-IDF അല്ലെങ്കിൽ മറ്റൊരു ഡയറക്ടറിയിൽ സംരക്ഷിച്ചിരിക്കുന്ന ഒരു ഓപ്പൺ സോഴ്‌സ് പ്രോജക്‌റ്റിൽ നിന്ന് പോലെയുള്ള ഏതെങ്കിലും ഡയറക്‌ടറിയിൽ നിന്നോ അല്ലെങ്കിൽ നിലവിലെ പ്രോജക്‌റ്റിൽ നിന്നോ ഘടകങ്ങൾ സ്രോതസ്സ് ചെയ്യാവുന്നതാണ്. ഈ സാഹചര്യത്തിൽ, റൂട്ട് ഡയറക്‌ടറിക്ക് കീഴിലുള്ള CMakeLists.txt-ൽ EXTRA_COMPONENT_DIRS വേരിയബിൾ സജ്ജീകരിച്ച് നിങ്ങൾ ഘടകത്തിൻ്റെ പാത്ത് ചേർക്കേണ്ടതുണ്ട്. ഈ ഡയറക്‌ടറി അതേ പേരിലുള്ള ഏതെങ്കിലും ESP-IDF ഘടകത്തെ അസാധുവാക്കും, ശരിയായ ഘടകം ഉപയോഗിച്ചിട്ടുണ്ടെന്ന് ഉറപ്പാക്കും.
എൻട്രി പ്രോഗ്രാം മെയിൻ പ്രോജക്റ്റിനുള്ളിലെ പ്രധാന ഡയറക്ടറിയും ഇതുതന്നെയാണ് പിന്തുടരുന്നത് file മറ്റ് ഘടകങ്ങളായി ഘടന (ഉദാ, ഘടകം1). എന്നിരുന്നാലും, എല്ലാ പ്രോജക്റ്റുകളിലും ഉണ്ടായിരിക്കേണ്ട നിർബന്ധിത ഘടകമായതിനാൽ ഇതിന് ഒരു പ്രത്യേക പ്രാധാന്യമുണ്ട്. പ്രധാന ഡയറക്‌ടറിയിൽ പ്രോജക്‌റ്റിൻ്റെ സോഴ്‌സ് കോഡും ഉപയോക്തൃ പ്രോഗ്രാമിൻ്റെ എൻട്രി പോയിൻ്റും അടങ്ങിയിരിക്കുന്നു, സാധാരണയായി app_main എന്ന് പേരിട്ടിരിക്കുന്നു. സ്ഥിരസ്ഥിതിയായി, ഈ എൻട്രി പോയിൻ്റിൽ നിന്നാണ് യൂസർ പ്രോഗ്രാമിൻ്റെ എക്സിക്യൂഷൻ ആരംഭിക്കുന്നത്. തിരയൽ പാതയിലെ എല്ലാ ഘടകങ്ങളെയും യാന്ത്രികമായി ആശ്രയിക്കുന്നതിനാൽ പ്രധാന ഘടകം വ്യത്യാസപ്പെട്ടിരിക്കുന്നു. അതിനാൽ, CMakeLists.txt-ലെ REQUIRES അല്ലെങ്കിൽ PRIV_REQUIRES നിർദ്ദേശങ്ങൾ ഉപയോഗിച്ച് ഡിപൻഡൻസികൾ വ്യക്തമായി സൂചിപ്പിക്കേണ്ടതില്ല. file.
കോൺഫിഗറേഷൻ file പ്രോജക്റ്റിൻ്റെ റൂട്ട് ഡയറക്ടറിയിൽ ഒരു കോൺഫിഗറേഷൻ അടങ്ങിയിരിക്കുന്നു file sdkconfig എന്ന് വിളിക്കുന്നു, അതിൽ പ്രോജക്റ്റിനുള്ളിലെ എല്ലാ ഘടകങ്ങളുടെയും കോൺഫിഗറേഷൻ പാരാമീറ്ററുകൾ അടങ്ങിയിരിക്കുന്നു. sdkconfig file കംപൈലേഷൻ സിസ്റ്റം സ്വയമേവ ജനറേറ്റുചെയ്യുന്നു, idf.py menuconfig എന്ന കമാൻഡ് വഴി പരിഷ്‌ക്കരിക്കുവാനും പുനഃസൃഷ്ടിക്കുവാനും കഴിയും. മെനു കോൺഫിഗറേഷൻ ഓപ്ഷനുകൾ പ്രധാനമായും പ്രൊജക്റ്റിൻ്റെ Kconfig.projbuild-ൽ നിന്നും ഘടകങ്ങളുടെ Kconfig-ൽ നിന്നും ഉത്ഭവിക്കുന്നു. കോംപോണൻ്റ് ഡെവലപ്പർമാർ സാധാരണയായി കോൺഫിഗറേഷൻ ഇനങ്ങൾ Kconfig-ൽ ചേർക്കുന്നത് ഘടകത്തെ വഴക്കമുള്ളതും ക്രമീകരിക്കാവുന്നതുമാക്കുന്നു.
ബിൽഡ് ഡയറക്ടറി ഡിഫോൾട്ടായി, പ്രൊജക്റ്റിനുള്ളിലെ ബിൽഡ് ഡയറക്ടറി ഇൻ്റർമീഡിയറ്റ് സംഭരിക്കുന്നു fileഎസ്, ഫി-
അധ്യായം 4. വികസന പരിസ്ഥിതി സജ്ജീകരിക്കൽ 49

idf.py ബിൽഡ് കമാൻഡ് സൃഷ്ടിച്ച nal എക്സിക്യൂട്ടബിൾ പ്രോഗ്രാമുകൾ. പൊതുവേ, ബിൽഡ് ഡയറക്ടറിയുടെ ഉള്ളടക്കങ്ങൾ നേരിട്ട് ആക്സസ് ചെയ്യേണ്ട ആവശ്യമില്ല. കംപൈൽ ചെയ്‌ത ബൈനറി സ്വയമേവ കണ്ടെത്തുന്നതിന് idf.py ഫ്ലാഷ് കമാൻഡ് ഉപയോഗിക്കുന്നതുപോലുള്ള ഡയറക്‌ടറിയുമായി സംവദിക്കാൻ ESP-IDF മുൻകൂട്ടി നിശ്ചയിച്ചിട്ടുള്ള കമാൻഡുകൾ നൽകുന്നു. file കൂടാതെ നിർദ്ദിഷ്ട ഫ്ലാഷ് വിലാസത്തിലേക്ക് ഫ്ലാഷ് ചെയ്യുക, അല്ലെങ്കിൽ മുഴുവൻ ബിൽഡ് ഡയറക്ടറിയും വൃത്തിയാക്കാൻ idf.py fullclean കമാൻഡ് ഉപയോഗിക്കുക.
പാർട്ടീഷൻ ടേബിൾ (partitions.csv) ഓരോ പ്രൊജക്റ്റിനും ഫ്ലാഷിൻ്റെ സ്പേസ് വിഭജിച്ച് എക്സിക്യൂട്ടബിൾ പ്രോഗ്രാമിൻ്റെയും യൂസർ ഡാറ്റാ സ്പേസിൻ്റെയും വലിപ്പവും ആരംഭ വിലാസവും വ്യക്തമാക്കാൻ ഒരു പാർട്ടീഷൻ ടേബിൾ ആവശ്യമാണ്. കമാൻഡ് idf.py ഫ്ലാഷ് അല്ലെങ്കിൽ OTA അപ്‌ഗ്രേഡ് പ്രോഗ്രാം ഈ പട്ടിക അനുസരിച്ച് അനുബന്ധ വിലാസത്തിലേക്ക് ഫേംവെയർ ഫ്ലാഷ് ചെയ്യും. ESP-IDF, ഘടകങ്ങൾ/ partition_table-ൽ, partitions_singleapp.csv, partitions_two_ ota.csv എന്നിങ്ങനെയുള്ള നിരവധി ഡിഫോൾട്ട് പാർട്ടീഷൻ ടേബിളുകൾ നൽകുന്നു, അവ മെനു കോൺഫിഗറിൽ തിരഞ്ഞെടുക്കാം.
സിസ്റ്റത്തിൻ്റെ ഡിഫോൾട്ട് പാർട്ടീഷൻ ടേബിളിന് പ്രോജക്റ്റിൻ്റെ ആവശ്യകതകൾ നിറവേറ്റാൻ കഴിയുന്നില്ലെങ്കിൽ, ഒരു ഇഷ്‌ടാനുസൃത partitions.csv പ്രോജക്റ്റ് ഡയറക്‌ടറിയിലേക്ക് ചേർക്കുകയും menuconfig-ൽ തിരഞ്ഞെടുക്കുകയും ചെയ്യാം.
4.3.3 കംപൈലേഷൻ സിസ്റ്റത്തിൻ്റെ ഡിഫോൾട്ട് ബിൽഡ് റൂളുകൾ
ഒരേ പേരിലുള്ള ഘടകങ്ങളെ മറികടക്കുന്നതിനുള്ള നിയമങ്ങൾ ഘടക തിരയൽ പ്രക്രിയയിൽ, കംപൈലേഷൻ സിസ്റ്റം ഒരു നിർദ്ദിഷ്ട ക്രമം പിന്തുടരുന്നു. ഇത് ആദ്യം ESP-IDF-ൻ്റെ ആന്തരിക ഘടകങ്ങൾക്കായി തിരയുന്നു, തുടർന്ന് ഉപയോക്തൃ പ്രോജക്റ്റിൻ്റെ ഘടകങ്ങൾക്കായി തിരയുന്നു, ഒടുവിൽ EXTRA_COMPONENT_DIRS-ലെ ഘടകങ്ങൾക്കായി തിരയുന്നു. ഒന്നിലധികം ഡയറക്‌ടറികളിൽ ഒരേ പേരിലുള്ള ഘടകങ്ങൾ അടങ്ങിയിരിക്കുന്ന സന്ദർഭങ്ങളിൽ, അവസാന ഡയറക്‌ടറിയിൽ കാണുന്ന ഘടകം അതേ പേരിലുള്ള മുൻ ഘടകങ്ങളെ അസാധുവാക്കും. യഥാർത്ഥ ESP-IDF കോഡ് കേടുകൂടാതെ സൂക്ഷിക്കുമ്പോൾ തന്നെ ഉപയോക്തൃ പ്രോജക്റ്റിനുള്ളിൽ ESP-IDF ഘടകങ്ങളുടെ ഇഷ്‌ടാനുസൃതമാക്കാൻ ഈ നിയമം അനുവദിക്കുന്നു.
ഡിഫോൾട്ടായി പൊതുവായ ഘടകങ്ങൾ ഉൾപ്പെടുത്തുന്നതിനുള്ള നിയമങ്ങൾ വിഭാഗം 4.3.2-ൽ സൂചിപ്പിച്ചിരിക്കുന്നതുപോലെ, CMakeLists.txt-ലെ മറ്റ് ഘടകങ്ങളിൽ അവയുടെ ഡിപൻഡൻസികൾ ഘടകങ്ങൾ വ്യക്തമായി വ്യക്തമാക്കേണ്ടതുണ്ട്. എന്നിരുന്നാലും, ഫ്രീറോസ് പോലുള്ള പൊതുവായ ഘടകങ്ങൾ സ്വയമേവ ബിൽഡ് സിസ്റ്റത്തിൽ സ്വയമേവ ഉൾപ്പെടുത്തും, അവയുടെ ആശ്രിത ബന്ധങ്ങൾ കംപൈലേഷൻ സ്ക്രിപ്റ്റിൽ വ്യക്തമായി നിർവചിച്ചിട്ടില്ലെങ്കിലും. ESP-IDF പൊതുവായ ഘടകങ്ങളിൽ freertos, Newlib, heap, log, soc, esp_rom, esp_common, xtensa/riscv, cxx എന്നിവ ഉൾപ്പെടുന്നു. ഈ പൊതുവായ ഘടകങ്ങൾ ഉപയോഗിക്കുന്നത് CMakeLists.txt എഴുതുമ്പോൾ ആവർത്തിക്കുന്ന ജോലി ഒഴിവാക്കുകയും അത് കൂടുതൽ സംക്ഷിപ്തമാക്കുകയും ചെയ്യുന്നു.
കോൺഫിഗറേഷൻ ഇനങ്ങളെ മറികടക്കുന്നതിനുള്ള നിയമങ്ങൾ ഒരു ഡിഫോൾട്ട് കോൺഫിഗറേഷൻ ചേർത്തുകൊണ്ട് ഡെവലപ്പർമാർക്ക് ഡിഫോൾട്ട് കോൺഫിഗറേഷൻ പാരാമീറ്ററുകൾ ചേർക്കാൻ കഴിയും file പ്രോജക്റ്റിലേക്ക് sdkconfig.defaults എന്ന് പേരിട്ടു. ഉദാampലെ, CONFIG_LOG_ ചേർക്കുന്നു
50 ESP32-C3 വയർലെസ് അഡ്വഞ്ചർ: IoT-യിലേക്കുള്ള ഒരു സമഗ്ര ഗൈഡ്

DEFAULT_LEVEL_NONE = സ്ഥിരസ്ഥിതിയായി ലോഗ് ഡാറ്റ പ്രിൻ്റ് ചെയ്യാതിരിക്കാൻ y ന് UART ഇൻ്റർഫേസ് കോൺഫിഗർ ചെയ്യാൻ കഴിയും. കൂടാതെ, ഒരു പ്രത്യേക ലക്ഷ്യത്തിനായി പ്രത്യേക പാരാമീറ്ററുകൾ സജ്ജീകരിക്കേണ്ടതുണ്ടെങ്കിൽ, ഒരു കോൺഫിഗറേഷൻ file sdkconfig.defaults.TARGET_NAME എന്ന് പേരിട്ടിരിക്കുന്നത് ചേർക്കാൻ കഴിയും, അവിടെ TARGET_NAME എന്നത് esp32s2, esp32c3 എന്നിവയും മറ്റും ആകാം. ഈ കോൺഫിഗറേഷൻ fileപൊതുവായ സ്ഥിരസ്ഥിതി കോൺഫിഗറേഷൻ ഉപയോഗിച്ച് സമാഹരിക്കുന്ന സമയത്ത് sdkconfig-ലേക്ക് s ഇറക്കുമതി ചെയ്യുന്നു file sdkconfig.defaults ആദ്യം ഇറക്കുമതി ചെയ്യുന്നു, തുടർന്ന് ടാർഗെറ്റ്-നിർദ്ദിഷ്ട കോൺഫിഗറേഷൻ file, sdkconfig.defaults.esp32c3 പോലുള്ളവ. ഒരേ പേരിൽ കോൺഫിഗറേഷൻ ഇനങ്ങൾ ഉള്ള സന്ദർഭങ്ങളിൽ, പിന്നീടുള്ള കോൺഫിഗറേഷൻ file മുമ്പത്തേതിനെ മറികടക്കും.
4.3.4 സമാഹാര സ്ക്രിപ്റ്റിലേക്കുള്ള ആമുഖം
ESP-IDF ഉപയോഗിച്ച് ഒരു പ്രോജക്റ്റ് വികസിപ്പിക്കുമ്പോൾ, ഡെവലപ്പർമാർ സോഴ്‌സ് കോഡ് എഴുതുക മാത്രമല്ല, പ്രോജക്റ്റിനും ഘടകങ്ങൾക്കുമായി CMakeLists.txt എഴുതേണ്ടതുണ്ട്. CMakeLists.txt ഒരു വാചകമാണ് file, ഒരു സമാഹാര സ്ക്രിപ്റ്റ് എന്നും അറിയപ്പെടുന്നു, ഇത് കംപൈലേഷൻ ഒബ്ജക്റ്റുകൾ, കംപൈലേഷൻ കോൺഫിഗറേഷൻ ഇനങ്ങൾ, സോഴ്സ് കോഡിൻ്റെ കംപൈലേഷൻ പ്രക്രിയയെ നയിക്കുന്നതിനുള്ള കമാൻഡുകൾ എന്നിവയുടെ ഒരു പരമ്പര നിർവചിക്കുന്നു. ഇഎസ്പി-ഐഡിഎഫ് v4.3.2-ൻ്റെ സമാഹാര സംവിധാനം CMake അടിസ്ഥാനമാക്കിയുള്ളതാണ്. നേറ്റീവ് CMake ഫംഗ്‌ഷനുകളെയും കമാൻഡുകളെയും പിന്തുണയ്‌ക്കുന്നതിന് പുറമേ, ഇത് ഇഷ്‌ടാനുസൃത ഫംഗ്‌ഷനുകളുടെ ഒരു ശ്രേണിയും നിർവചിക്കുന്നു, ഇത് സമാഹാര സ്‌ക്രിപ്റ്റുകൾ എഴുതുന്നത് വളരെ എളുപ്പമാക്കുന്നു.
ESP-IDF-ലെ കംപൈലേഷൻ സ്ക്രിപ്റ്റുകളിൽ പ്രധാനമായും പ്രോജക്റ്റ് കംപൈലേഷൻ സ്ക്രിപ്റ്റും ഘടക സമാഹാര സ്ക്രിപ്റ്റുകളും ഉൾപ്പെടുന്നു. പ്രോജക്റ്റിൻ്റെ റൂട്ട് ഡയറക്‌ടറിയിലെ CMakeLists.txt-നെ പ്രോജക്റ്റ് കംപൈലേഷൻ സ്‌ക്രിപ്റ്റ് എന്ന് വിളിക്കുന്നു, ഇത് മുഴുവൻ പ്രോജക്റ്റിൻ്റെയും സമാഹാര പ്രക്രിയയെ നയിക്കുന്നു. ഒരു അടിസ്ഥാന പ്രോജക്റ്റ് സമാഹാര സ്ക്രിപ്റ്റിൽ സാധാരണയായി ഇനിപ്പറയുന്ന മൂന്ന് വരികൾ ഉൾപ്പെടുന്നു:
1. cmake_minimum_required(VERSION 3.5) 2. ഉൾപ്പെടുത്തുക($ENV{IDF_PATH}/tools/cmake/project.cmake) 3. project(myProject)
അവയിൽ, cmake_minimum_required (VERSION 3.5) ആദ്യ വരിയിൽ സ്ഥാപിക്കണം, ഇത് പ്രോജക്റ്റിന് ആവശ്യമായ ഏറ്റവും കുറഞ്ഞ CMake പതിപ്പ് നമ്പർ സൂചിപ്പിക്കാൻ ഉപയോഗിക്കുന്നു. CMake-ൻ്റെ പുതിയ പതിപ്പുകൾ പൊതുവെ പഴയ പതിപ്പുകളുമായി പൊരുത്തപ്പെടുന്നവയാണ്, അതിനാൽ അനുയോജ്യത ഉറപ്പാക്കാൻ പുതിയ CMake കമാൻഡുകൾ ഉപയോഗിക്കുമ്പോൾ പതിപ്പ് നമ്പർ അതിനനുസരിച്ച് ക്രമീകരിക്കുക.
($ENV {IDF_PATH}/tools/cmake/project.cmake) സെക്ഷൻ 4.3.3-ൽ വിവരിച്ചിരിക്കുന്ന കംപൈലേഷൻ സിസ്റ്റത്തിൻ്റെ ഡിഫോൾട്ട് ബിൽഡ് റൂളുകൾ ഉൾപ്പെടെ, ESP-IDF കംപൈലേഷൻ സിസ്റ്റത്തിൻ്റെ മുൻകൂട്ടി നിശ്ചയിച്ച കോൺഫിഗറേഷൻ ഇനങ്ങളും കമാൻഡുകളും ഇറക്കുമതി ചെയ്യുന്നു. project(myProject) പദ്ധതി തന്നെ സൃഷ്ടിക്കുകയും അതിൻ്റെ പേര് വ്യക്തമാക്കുകയും ചെയ്യുന്നു. ഈ പേര് അന്തിമ ഔട്ട്പുട്ട് ബൈനറി ആയി ഉപയോഗിക്കും file പേര്, അതായത്, myProject.elf, myProject.bin.
ഒരു പ്രോജക്റ്റിന് പ്രധാന ഘടകം ഉൾപ്പെടെ ഒന്നിലധികം ഘടകങ്ങൾ ഉണ്ടാകാം. ഓരോ ഘടകത്തിൻ്റെയും ഉയർന്ന തലത്തിലുള്ള ഡയറക്‌ടറിയിൽ CMakeLists.txt അടങ്ങിയിരിക്കുന്നു file, അതിനെ ഘടക സമാഹാര സ്ക്രിപ്റ്റ് എന്ന് വിളിക്കുന്നു. കോംപോണൻ്റ് ഡിപൻഡൻസികൾ, കോൺഫിഗറേഷൻ പാരാമീറ്ററുകൾ, സോഴ്സ് കോഡ് എന്നിവ വ്യക്തമാക്കുന്നതിനാണ് ഘടക സമാഹാര സ്ക്രിപ്റ്റുകൾ പ്രധാനമായും ഉപയോഗിക്കുന്നത്. files, കൂടാതെ തലക്കെട്ടും ഉൾപ്പെടുത്തിയിട്ടുണ്ട് fileഎസ്
അധ്യായം 4. വികസന പരിസ്ഥിതി സജ്ജീകരിക്കൽ 51

സമാഹാരം. ESP-IDF-ൻ്റെ ഇഷ്‌ടാനുസൃത ഫംഗ്‌ഷൻ idf_component_register ഉപയോഗിച്ച്, ഒരു ഘടക സമാഹാര സ്‌ക്രിപ്റ്റിന് ആവശ്യമായ ഏറ്റവും കുറഞ്ഞ കോഡ് ഇപ്രകാരമാണ്:

1. idf_component_register(SRCS "src1.c"

2.

INCLUDE_DIRS "ഉൾപ്പെടുന്നു"

3.

ഘടകം 1 ആവശ്യമാണ്)

SRCS പാരാമീറ്റർ ഉറവിടത്തിൻ്റെ ഒരു ലിസ്റ്റ് നൽകുന്നു fileഘടകത്തിലെ s, ഒന്നിലധികം ഉണ്ടെങ്കിൽ സ്‌പെയ്‌സുകളാൽ വേർതിരിച്ചിരിക്കുന്നു fileഎസ്. INCLUDE_DIRS പാരാമീറ്റർ പൊതു തലക്കെട്ടിൻ്റെ ഒരു ലിസ്റ്റ് നൽകുന്നു file ഘടകത്തിനായുള്ള ഡയറക്ടറികൾ, നിലവിലുള്ള ഘടകത്തെ ആശ്രയിക്കുന്ന മറ്റ് ഘടകങ്ങൾക്കായുള്ള തിരയൽ പാതയിൽ ഉൾപ്പെടുത്തും. REQUIRES പാരാമീറ്റർ നിലവിലെ ഘടകത്തിനായുള്ള പൊതു ഘടക ഡിപൻഡൻസികളെ തിരിച്ചറിയുന്നു. ഘടകാംശങ്ങൾ അവ ഏതൊക്കെ ഘടകങ്ങളെയാണ് ആശ്രയിക്കുന്നതെന്ന് വ്യക്തമായി പ്രസ്താവിക്കേണ്ടത് ആവശ്യമാണ്, അതായത് ഘടകാംശം2-നെ ആശ്രയിച്ചുള്ള ഘടകം1. എന്നിരുന്നാലും, സ്ഥിരസ്ഥിതിയായി എല്ലാ ഘടകങ്ങളെയും ആശ്രയിക്കുന്ന പ്രധാന ഘടകത്തിന്, REQUIRES പാരാമീറ്റർ ഒഴിവാക്കാവുന്നതാണ്.

കൂടാതെ, കംപൈലേഷൻ സ്ക്രിപ്റ്റിൽ നേറ്റീവ് CMake കമാൻഡുകൾ ഉപയോഗിക്കാനും കഴിയും. ഉദാample, സെറ്റ് (VARIABLE "VALUE") പോലുള്ള വേരിയബിളുകൾ സജ്ജമാക്കാൻ കമാൻഡ് സെറ്റ് ഉപയോഗിക്കുക.

4.3.5 സാധാരണ കമാൻഡുകൾക്കുള്ള ആമുഖം
കോഡ് കംപൈലേഷൻ പ്രക്രിയയിൽ ഇഎസ്പി-ഐഡിഎഫ് CMake (പ്രോജക്റ്റ് കോൺഫിഗറേഷൻ ടൂൾ), നിൻജ (പ്രോജക്റ്റ് ബിൽഡിംഗ് ടൂൾ), എസ്പ്ടൂൾ (ഫ്ലാഷ് ടൂൾ) എന്നിവ ഉപയോഗിക്കുന്നു. കംപൈലേഷൻ, ബിൽഡിംഗ്, ഫ്ലാഷ് പ്രോസസ് എന്നിവയിൽ ഓരോ ടൂളും വ്യത്യസ്തമായ പങ്ക് വഹിക്കുന്നു, കൂടാതെ വ്യത്യസ്ത ഓപ്പറേറ്റിംഗ് കമാൻഡുകളെ പിന്തുണയ്ക്കുകയും ചെയ്യുന്നു. ഉപയോക്തൃ പ്രവർത്തനം സുഗമമാക്കുന്നതിന്, മുകളിലുള്ള കമാൻഡുകൾ വേഗത്തിൽ വിളിക്കാൻ അനുവദിക്കുന്ന ഒരു ഏകീകൃത ഫ്രണ്ട്-എൻഡ് idf.py ESP-IDF ചേർക്കുന്നു.
idf.py ഉപയോഗിക്കുന്നതിന് മുമ്പ്, ഇത് ഉറപ്പാക്കുക:
· ESP-IDF-ൻ്റെ പരിസ്ഥിതി വേരിയബിൾ IDF_PATH നിലവിലെ ടെർമിനലിലേക്ക് ചേർത്തു. · കമാൻഡ് എക്‌സിക്യൂഷൻ ഡയറക്‌ടറി പ്രോജക്‌റ്റിൻ്റെ റൂട്ട് ഡയറക്‌ടറിയാണ്, അതിൽ ഉൾപ്പെടുന്നു
പ്രോജക്റ്റ് സമാഹാര സ്ക്രിപ്റ്റ് CMakeLists.txt.
idf.py-യുടെ പൊതുവായ കമാൻഡുകൾ ഇപ്രകാരമാണ്:
· idf.py -help: കമാൻഡുകളുടെ ഒരു പട്ടികയും അവയുടെ ഉപയോഗ നിർദ്ദേശങ്ങളും പ്രദർശിപ്പിക്കുന്നു. idf.py സെറ്റ്-ടാർഗെറ്റ് : സമാഹാരം taidf.py fullcleanrget സജ്ജീകരിക്കുന്നു
പകരമായി esp32c3 ഉപയോഗിച്ച്. idf.py menuconfig: ഒരു ടെർമിനൽ ഗ്രാഫിക്കൽ കോൺഫിഗറേഷനായ menuconfig ലോഞ്ച് ചെയ്യുന്നു
കോൺഫിഗറേഷൻ ഓപ്ഷനുകൾ തിരഞ്ഞെടുക്കാനോ പരിഷ്ക്കരിക്കാനോ കഴിയുന്ന ടൂൾ, കോൺഫിഗറേഷൻ ഫലങ്ങൾ sdkconfig-ൽ സംരക്ഷിക്കുന്നു file. idf.py ബിൽഡ്: കോഡ് സമാഹരണം ആരംഭിക്കുന്നു. ഇൻ്റർമീഡിയറ്റ് files എന്നിവയും സമാഹാരം സൃഷ്ടിച്ച അന്തിമ എക്സിക്യൂട്ടബിൾ പ്രോഗ്രാമും ഡിഫോൾട്ടായി പ്രോജക്റ്റിൻ്റെ ബിൽഡ് ഡയറക്ടറിയിൽ സംരക്ഷിക്കപ്പെടും. കംപൈലേഷൻ പ്രോസസ് ഇൻക്രിമെൻ്റൽ ആണ്, അതായത് ഒരു ഉറവിടം മാത്രം file പരിഷ്കരിച്ചു, പരിഷ്കരിച്ചത് മാത്രം file അടുത്ത തവണ സമാഹരിക്കും.

52 ESP32-C3 വയർലെസ് അഡ്വഞ്ചർ: IoT-യിലേക്കുള്ള ഒരു സമഗ്ര ഗൈഡ്

· idf.py ക്ലീൻ: ഇൻ്റർമീഡിയറ്റ് വൃത്തിയാക്കൽ fileപ്രോജക്റ്റ് സമാഹാരം വഴി സൃഷ്ടിച്ചതാണ്. അടുത്ത സമാഹാരത്തിൽ മുഴുവൻ പ്രോജക്റ്റും കംപൈൽ ചെയ്യാൻ നിർബന്ധിതരാകും. CMake കോൺഫിഗറേഷനും മെനു കോൺഫിഗറേഷൻ വരുത്തിയ കോൺഫിഗറേഷൻ പരിഷ്‌ക്കരണങ്ങളും ക്ലീനപ്പ് സമയത്ത് ഇല്ലാതാക്കില്ല എന്നത് ശ്രദ്ധിക്കുക.
· idf.py fullclean: എല്ലാ CMake കോൺഫിഗറേഷൻ ഔട്ട്പുട്ടും ഉൾപ്പെടെ, മുഴുവൻ ബിൽഡ് ഡയറക്ടറിയും ഇല്ലാതാക്കുന്നു fileഎസ്. പ്രോജക്റ്റ് വീണ്ടും നിർമ്മിക്കുമ്പോൾ, CMake ആദ്യം മുതൽ പദ്ധതി ക്രമീകരിക്കും. ഈ കമാൻഡ് ആവർത്തിച്ച് എല്ലാം ഇല്ലാതാക്കുമെന്നത് ശ്രദ്ധിക്കുക fileബിൽഡ് ഡയറക്‌ടറിയിലുണ്ട്, അതിനാൽ ഇത് ജാഗ്രതയോടെയും പ്രോജക്റ്റ് കോൺഫിഗറേഷനും ഉപയോഗിക്കുക file ഇല്ലാതാക്കില്ല.
idf.py ഫ്ലാഷ്: എക്സിക്യൂട്ടബിൾ പ്രോഗ്രാം ബൈനറി ഫ്ലാഷ് ചെയ്യുന്നു file ടാർഗെറ്റ് ESP32-C3-ലേക്കുള്ള ബിൽഡ് വഴി ജനറേറ്റുചെയ്യുന്നു. ഓപ്ഷനുകൾ -പി ഒപ്പം -ബി യഥാക്രമം സീരിയൽ പോർട്ടിൻ്റെ ഉപകരണത്തിൻ്റെ പേരും ഫ്ലാഷിംഗിനുള്ള ബോഡ് നിരക്കും സജ്ജീകരിക്കാൻ ഉപയോഗിക്കുന്നു. ഈ രണ്ട് ഓപ്ഷനുകളും വ്യക്തമാക്കിയിട്ടില്ലെങ്കിൽ, സീരിയൽ പോർട്ട് സ്വയമേവ കണ്ടെത്തുകയും ഡിഫോൾട്ട് ബോഡ് നിരക്ക് ഉപയോഗിക്കുകയും ചെയ്യും.
· idf.py മോണിറ്റർ: ലക്ഷ്യം ESP32-C3 ൻ്റെ സീരിയൽ പോർട്ട് ഔട്ട്പുട്ട് പ്രദർശിപ്പിക്കുന്നു. ഹോസ്റ്റ്-സൈഡ് സീരിയൽ പോർട്ടിൻ്റെ ഉപകരണത്തിൻ്റെ പേര് വ്യക്തമാക്കാൻ -p ഓപ്ഷൻ ഉപയോഗിക്കാം. സീരിയൽ പോർട്ട് പ്രിൻ്റിംഗ് സമയത്ത്, മോണിറ്ററിൽ നിന്ന് പുറത്തുകടക്കാൻ കീ കോമ്പിനേഷൻ Ctrl+] അമർത്തുക.
മുകളിലുള്ള കമാൻഡുകൾ ആവശ്യാനുസരണം സംയോജിപ്പിക്കാനും കഴിയും. ഉദാample, idf.py ബിൽഡ് ഫ്ലാഷ് മോണിറ്റർ എന്ന കമാൻഡ് കോഡ് കംപൈലേഷൻ നടത്തുകയും ഫ്ലാഷ് ചെയ്യുകയും സീരിയൽ പോർട്ട് മോണിറ്റർ തുടർച്ചയായി തുറക്കുകയും ചെയ്യും.
ESP-IDF കംപൈലേഷൻ സിസ്റ്റത്തെക്കുറിച്ച് കൂടുതലറിയാൻ നിങ്ങൾക്ക് https://bookc3.espressif.com/build-system സന്ദർശിക്കാം.
4.4 പ്രാക്ടീസ്: കംപൈലിംഗ് Exampലെ പ്രോഗ്രാം "ബ്ലിങ്ക്"
4.4.1 ഉദാampലെ വിശകലനം
ഈ വിഭാഗം ബ്ലിങ്ക് പ്രോഗ്രാമിനെ ഒരു മുൻ ആയി എടുക്കുംample വിശകലനം ചെയ്യാൻ file ഒരു യഥാർത്ഥ പദ്ധതിയുടെ ഘടനയും കോഡിംഗ് നിയമങ്ങളും വിശദമായി. ബ്ലിങ്ക് പ്രോഗ്രാം LED ബ്ലിങ്കിംഗ് ഇഫക്റ്റ് നടപ്പിലാക്കുന്നു, കൂടാതെ പ്രൊജക്റ്റ് ഡയറക്‌ടറിയിൽ സ്ഥിതിചെയ്യുന്നുamples/get-start/blink, അതിൽ ഒരു ഉറവിടം അടങ്ങിയിരിക്കുന്നു file, കോൺഫിഗറേഷൻ fileകൾ, കൂടാതെ നിരവധി സമാഹാര സ്ക്രിപ്റ്റുകൾ.
ഈ പുസ്തകത്തിൽ അവതരിപ്പിച്ച സ്മാർട്ട് ലൈറ്റ് പദ്ധതി ഈ മുൻ അടിസ്ഥാനമാക്കിയുള്ളതാണ്ampലെ പ്രോഗ്രാം. അവസാനമായി പൂർത്തിയാക്കാൻ ഫംഗ്‌ഷനുകൾ പിന്നീടുള്ള അധ്യായങ്ങളിൽ ക്രമേണ ചേർക്കും.
സോഴ്സ് കോഡ് മുഴുവൻ വികസന പ്രക്രിയയും കാണിക്കുന്നതിനായി, ബ്ലിങ്ക് പ്രോഗ്രാം esp32c3-iot-projects/device firmware/1 blink-ലേക്ക് പകർത്തി.
ബ്ലിങ്ക് പ്രോജക്റ്റിൻ്റെ ഡയറക്ടറി ഘടന files ചിത്രം 4.15 ൽ കാണിച്ചിരിക്കുന്നു.
ബ്ലിങ്ക് പ്രോജക്റ്റിൽ ഒരു പ്രധാന ഡയറക്ടറി മാത്രമേ അടങ്ങിയിട്ടുള്ളൂ, അത് ഒരു പ്രത്യേക ഘടകമാണ്
അധ്യായം 4. വികസന പരിസ്ഥിതി സജ്ജീകരിക്കൽ 53

ചിത്രം 4.15. File ബ്ലിങ്ക് പ്രോജക്റ്റിൻ്റെ ഡയറക്ടറി ഘടന

വിഭാഗം 4.3.2-ൽ വിവരിച്ചിരിക്കുന്നതുപോലെ ഉൾപ്പെടുത്തണം. ഉപയോക്തൃ പ്രോഗ്രാമിലേക്കുള്ള പ്രവേശന പോയിൻ്റായ app_main() ഫംഗ്‌ഷൻ്റെ നിർവ്വഹണം സംഭരിക്കാനാണ് പ്രധാന ഡയറക്‌ടറി പ്രധാനമായും ഉപയോഗിക്കുന്നത്. ബ്ലിങ്ക് പ്രോജക്‌റ്റിൽ ഘടകങ്ങളുടെ ഡയറക്ടറി ഉൾപ്പെടുന്നില്ല, കാരണം ഇത് മുൻampESP-IDF-നൊപ്പം വരുന്ന ഘടകങ്ങൾ മാത്രമേ ഉപയോഗിക്കാവൂ, അധിക ഘടകങ്ങൾ ആവശ്യമില്ല. ബ്ലിങ്ക് പ്രോജക്റ്റിൽ ഉൾപ്പെടുത്തിയിരിക്കുന്ന CMakeLists.txt സമാഹാര പ്രക്രിയയെ നയിക്കാൻ ഉപയോഗിക്കുന്നു, അതേസമയം Kconfig.projbuild ഈ മുൻ കോൺഫിഗറേഷൻ ഇനങ്ങൾ ചേർക്കാൻ ഉപയോഗിക്കുന്നു.ampമെനു കോൺഫിഗറിലുള്ള പ്രോഗ്രാം. മറ്റ് അനാവശ്യം files കോഡിൻ്റെ സമാഹാരത്തെ ബാധിക്കില്ല, അതിനാൽ അവ ഇവിടെ ചർച്ച ചെയ്യില്ല. ബ്ലിങ്ക് പ്രോജക്റ്റിൻ്റെ വിശദമായ ആമുഖം files ഇപ്രകാരമാണ്.

1. /*blink.c-ൽ ഇനിപ്പറയുന്ന തലക്കെട്ട് ഉൾപ്പെടുന്നു files*/

2. #ഉൾപ്പെടുത്തുക

//സ്റ്റാൻഡേർഡ് സി ലൈബ്രറി തലക്കെട്ട് file

3. "freertos/freeRTOS.h" #ഉൾപ്പെടുത്തുക //FreeRTOS പ്രധാന തലക്കെട്ട് file

4. "freertos/task.h" #ഉൾപ്പെടുത്തുക

//FreeRTOS ടാസ്‌ക് ഹെഡർ file

5. #“sdkconfig.h” ഉൾപ്പെടുത്തുക

//കോൺഫിഗറേഷൻ തലക്കെട്ട് file kconfig സൃഷ്ടിച്ചത്

6. #"driver/gpio.h" ഉൾപ്പെടുത്തുക

//GPIO ഡ്രൈവർ തലക്കെട്ട് file

ഉറവിടം file blink.c-ൽ തലക്കെട്ടിൻ്റെ ഒരു പരമ്പര അടങ്ങിയിരിക്കുന്നു fileഫംഗ്‌ഷൻ ഡിക്ലറയുമായി ബന്ധപ്പെട്ട s-

tions. ESP-IDF സാധാരണയായി സാധാരണ ലൈബ്രറി തലക്കെട്ട് ഉൾപ്പെടുന്ന ക്രമം പിന്തുടരുന്നു files, FreeR-

TOS തലക്കെട്ട് files, ഡ്രൈവർ ഹെഡർ files, മറ്റ് ഘടക തലക്കെട്ട് fileഎസ്, പ്രൊജക്റ്റ് ഹെഡർ files.

തലക്കെട്ടിലുള്ള ക്രമം fileകൾ ഉൾപ്പെടുത്തിയിരിക്കുന്നത് അന്തിമ സമാഹാര ഫലത്തെ ബാധിച്ചേക്കാം, അതിനാൽ ശ്രമിക്കുക

സ്ഥിരസ്ഥിതി നിയമങ്ങൾ പാലിക്കുക. sdkconfig.h യാന്ത്രികമായി ജനറേറ്റ് ചെയ്യപ്പെടുന്നു എന്നത് ശ്രദ്ധിക്കേണ്ടതാണ്

kconfig വഴിയും idf.py menuconfig എന്ന കമാൻഡിലൂടെ മാത്രമേ ക്രമീകരിക്കാൻ കഴിയൂ.

ഈ തലക്കെട്ടിൻ്റെ നേരിട്ടുള്ള മാറ്റം file തിരുത്തിയെഴുതും.

1. /*നിങ്ങൾക്ക് idf.py menuconfig-ൽ LED-യുമായി ബന്ധപ്പെട്ട GPIO തിരഞ്ഞെടുക്കാം, കൂടാതെ menuconfig-ൻ്റെ പരിഷ്‌ക്കരണ ഫലം CONFIG_BLINK എന്നതിൻ്റെ മൂല്യമാണ്.

_GPIO മാറ്റപ്പെടും. നിങ്ങൾക്ക് മാക്രോ നിർവചനം നേരിട്ട് പരിഷ്കരിക്കാനും കഴിയും

ഇവിടെ, CONFIG_BLINK_GPIO ഒരു നിശ്ചിത മൂല്യത്തിലേക്ക് മാറ്റുക.*/ 2. #Defin BLINK_GPIO CONFIG_BLINK_GPIO

3. void app_main(അസാധു)

4. {

5.

/*GPIO ഡിഫോൾട്ട് ഫംഗ്‌ഷനായി IO കോൺഫിഗർ ചെയ്യുക, പുൾ-അപ്പ് മോഡ് പ്രവർത്തനക്ഷമമാക്കുക, കൂടാതെ

6.

ഇൻപുട്ട്, ഔട്ട്പുട്ട് മോഡുകൾ പ്രവർത്തനരഹിതമാക്കുക*/

7.

gpio_reset_pin(BLINK_GPIO);

54 ESP32-C3 വയർലെസ് അഡ്വഞ്ചർ: IoT-യിലേക്കുള്ള ഒരു സമഗ്ര ഗൈഡ്

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

/*GPIO ഔട്ട്പുട്ട് മോഡിലേക്ക് സജ്ജമാക്കുക*/ gpio_set_direction(BLINK_GPIO, GPIO_MODE_OUTPUT); അതേസമയം(1) {
/*പ്രിൻ്റ് ലോഗ്*/ printf (“എൽഇഡി ഓഫ് ചെയ്യുന്നു”); /*എൽഇഡി ഓഫ് ചെയ്യുക (ഔട്ട്പുട്ട് ലോ ലെവൽ)*/ gpio_set_level(BLINK_GPIO, 0); /*Delay (1000 ms)*/ vTaskDelay(1000 / portTICK_PERIOD_MS); printf ("എൽഇഡി ഓണാക്കുന്നു"); /*എൽഇഡി ഓണാക്കുക (ഔട്ട്പുട്ട് ഹൈ ലെവൽ)*/ gpio_set_level(BLINK_GPIO, 1); vTaskDelay(1000 / portTICK_PERIOD_MS); }

Blink ex-ലെ app_main() ഫംഗ്‌ഷൻampഉപയോക്തൃ പ്രോഗ്രാമുകൾക്കുള്ള എൻട്രി പോയിൻ്റായി le പ്രോഗ്രാം പ്രവർത്തിക്കുന്നു. ഇത് പാരാമീറ്ററുകളോ റിട്ടേൺ മൂല്യമോ ഇല്ലാത്ത ഒരു ലളിതമായ ഫംഗ്‌ഷനാണ്. ലോഗ് സീരിയൽ പോർട്ട് ആരംഭിക്കുക, സിംഗിൾ/ഡ്യുവൽ കോർ കോൺഫിഗർ ചെയ്യുക, വാച്ച്ഡോഗ് കോൺഫിഗർ ചെയ്യുക തുടങ്ങിയ ജോലികൾ ഉൾപ്പെടുന്ന സിസ്റ്റം ഇനിഷ്യലൈസേഷൻ പൂർത്തിയാക്കിയതിന് ശേഷമാണ് ഈ ഫംഗ്ഷൻ വിളിക്കുന്നത്.

app_main() ഫംഗ്‌ഷൻ പ്രധാന എന്ന് പേരിട്ടിരിക്കുന്ന ഒരു ടാസ്‌ക്കിൻ്റെ പശ്ചാത്തലത്തിലാണ് പ്രവർത്തിക്കുന്നത്. ഈ ടാസ്ക്കിൻ്റെ സ്റ്റാക്ക് വലുപ്പവും മുൻഗണനയും മെനു കോൺഫിഗറേഷനിൽ ക്രമീകരിക്കാവുന്നതാണ് Componentconfig Common ESP- ബന്ധപ്പെട്ട.

LED മിന്നുന്നത് പോലെയുള്ള ലളിതമായ ജോലികൾക്ക്, app_main() ഫംഗ്‌ഷനിൽ ആവശ്യമായ എല്ലാ കോഡുകളും നേരിട്ട് നടപ്പിലാക്കാൻ കഴിയും. എൽഇഡിക്ക് അനുയോജ്യമായ ജിപിഐഒ ആരംഭിക്കുന്നതും എൽഇഡി ഓണാക്കുന്നതിനും ഓഫാക്കുന്നതിനും അൽപ്പസമയം(1) ലൂപ്പ് ഉപയോഗിക്കുന്നതും ഇതിൽ ഉൾപ്പെടുന്നു. പകരമായി, LED ബ്ലിങ്കിംഗ് കൈകാര്യം ചെയ്യുന്ന ഒരു പുതിയ ടാസ്‌ക് സൃഷ്‌ടിക്കുന്നതിന് നിങ്ങൾക്ക് FreeRTOS API ഉപയോഗിക്കാം. പുതിയ ടാസ്‌ക് സൃഷ്‌ടിച്ചുകഴിഞ്ഞാൽ, നിങ്ങൾക്ക് app_main() ഫംഗ്‌ഷനിൽ നിന്ന് പുറത്തുകടക്കാം.

main/CMakeLists.txt-ൻ്റെ ഉള്ളടക്കം file, പ്രധാന ഘടകത്തിനായുള്ള സമാഹാര പ്രക്രിയയെ നയിക്കുന്നത് ഇനിപ്പറയുന്നതാണ്:

1. idf_component_register(SRCS "blink.c" INCLUDE_DIRS "." )

അവയിൽ, main/CMakeLists.txt ഒരു കമ്പൈലേഷൻ സിസ്റ്റം ഫംഗ്‌ഷനെ മാത്രമേ വിളിക്കൂ, അതായത് idf_component_register. മറ്റ് മിക്ക ഘടകങ്ങൾക്കും CMakeLists.txt-ന് സമാനമായി, blink.c SRCS-ലും ഉറവിടത്തിലും ചേർത്തിരിക്കുന്നു fileSRCS-ലേക്ക് ചേർത്തത് സമാഹരിക്കും. അതേ സമയം, CMakeLists.txt സ്ഥിതി ചെയ്യുന്ന പാതയെ പ്രതിനിധീകരിക്കുന്ന “.”, തലക്കെട്ടിനായുള്ള തിരയൽ ഡയറക്‌ടറികളായി INCLUDE_DIRS-ലേക്ക് ചേർക്കണം. fileഎസ്. CMakeLists.txt-ൻ്റെ ഉള്ളടക്കം ഇപ്രകാരമാണ്:
1. നിലവിലെ പ്രോജക്റ്റ് പിന്തുണയ്‌ക്കുന്ന ഏറ്റവും പഴയ CMake പതിപ്പായി v3.5 വ്യക്തമാക്കുക 2. കംപൈലേഷൻ തുടരുന്നതിന് മുമ്പ് #v3.5-നേക്കാൾ താഴ്ന്ന പതിപ്പുകൾ അപ്‌ഗ്രേഡ് ചെയ്യണം 3. cmake_minimum_required(VERSION 3.5) 4. #ESP-യുടെ ഡിഫോൾട്ട് CMake കോൺഫിഗറേഷൻ ഉൾപ്പെടുത്തുക -ഐഡിഎഫ് സമാഹരണ സംവിധാനം

അധ്യായം 4. വികസന പരിസ്ഥിതി സജ്ജീകരിക്കൽ 55

5. ഉൾപ്പെടുത്തുക($ENV{IDF_PATH}/tools/cmake/project.cmake) 6. "ബ്ലിങ്ക്" എന്ന പേരിൽ ഒരു പ്രോജക്റ്റ് സൃഷ്‌ടിക്കുക 7. പ്രോജക്റ്റ്(myProject)
അവയിൽ, റൂട്ട് ഡയറക്‌ടറിയിലെ CMakeLists.txt-ൽ പ്രധാനമായും $ENV{IDF_ PATH}/tools/cmake/project.cmake ഉൾപ്പെടുന്നു, ഇത് പ്രധാന CMake കോൺഫിഗറേഷനാണ്. file ESP-IDF നൽകിയത്. ഇത് കോൺ ചെയ്യാൻ ഉപയോഗിക്കുന്നു

പ്രമാണങ്ങൾ / വിഭവങ്ങൾ

Espressif സിസ്റ്റംസ് ESP32-C3 വയർലെസ് അഡ്വഞ്ചർ [pdf] ഉപയോക്തൃ ഗൈഡ്
ESP32-C3 വയർലെസ് അഡ്വഞ്ചർ, ESP32-C3, വയർലെസ് അഡ്വഞ്ചർ, അഡ്വഞ്ചർ

റഫറൻസുകൾ

ഒരു അഭിപ്രായം ഇടൂ

നിങ്ങളുടെ ഇമെയിൽ വിലാസം പ്രസിദ്ധീകരിക്കില്ല. ആവശ്യമായ ഫീൽഡുകൾ അടയാളപ്പെടുത്തി *