ਸਮੱਗਰੀ ਓਹਲੇ
2 ESP32-C3 ਵਾਇਰਲੈੱਸ ਐਡਵੈਂਚਰ
2.1 IoT ਲਈ ਇੱਕ ਵਿਆਪਕ ਗਾਈਡ

ESP32-C3 ਵਾਇਰਲੈੱਸ ਐਡਵੈਂਚਰ

ESP32-C3 ਵਾਇਰਲੈੱਸ ਐਡਵੈਂਚਰ

IoT ਲਈ ਇੱਕ ਵਿਆਪਕ ਗਾਈਡ

Espressif ਸਿਸਟਮ 12 ਜੂਨ, 2023

ਨਿਰਧਾਰਨ

  • ਉਤਪਾਦ: ESP32-C3 ਵਾਇਰਲੈੱਸ ਐਡਵੈਂਚਰ
  • ਨਿਰਮਾਤਾ: Espressif ਸਿਸਟਮ
  • ਮਿਤੀ: 12 ਜੂਨ, 2023

ਉਤਪਾਦ ਵਰਤੋਂ ਨਿਰਦੇਸ਼

ਤਿਆਰੀ

ESP32-C3 ਵਾਇਰਲੈੱਸ ਐਡਵੈਂਚਰ ਦੀ ਵਰਤੋਂ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ, ਯਕੀਨੀ ਬਣਾਓ ਕਿ ਤੁਸੀਂ ਹੋ
IoT ਦੇ ਸੰਕਲਪਾਂ ਅਤੇ ਆਰਕੀਟੈਕਚਰ ਤੋਂ ਜਾਣੂ। ਇਹ ਮਦਦ ਕਰੇਗਾ
ਤੁਸੀਂ ਸਮਝਦੇ ਹੋ ਕਿ ਡਿਵਾਈਸ ਵੱਡੇ IoT ਈਕੋਸਿਸਟਮ ਵਿੱਚ ਕਿਵੇਂ ਫਿੱਟ ਬੈਠਦੀ ਹੈ
ਅਤੇ ਸਮਾਰਟ ਘਰਾਂ ਵਿੱਚ ਇਸ ਦੀਆਂ ਸੰਭਾਵੀ ਐਪਲੀਕੇਸ਼ਨਾਂ।

ਆਈਓਟੀ ਪ੍ਰੋਜੈਕਟਾਂ ਦੀ ਜਾਣ-ਪਛਾਣ ਅਤੇ ਅਭਿਆਸ

ਇਸ ਭਾਗ ਵਿੱਚ, ਤੁਸੀਂ ਆਮ IoT ਪ੍ਰੋਜੈਕਟਾਂ ਬਾਰੇ ਸਿੱਖੋਗੇ,
ਆਮ IoT ਡਿਵਾਈਸਾਂ ਲਈ ਬੁਨਿਆਦੀ ਮੋਡੀਊਲ, ਬੁਨਿਆਦੀ ਮੋਡੀਊਲ ਸਮੇਤ
ਕਲਾਇੰਟ ਐਪਲੀਕੇਸ਼ਨਾਂ, ਅਤੇ ਆਮ IoT ਕਲਾਉਡ ਪਲੇਟਫਾਰਮਾਂ ਦਾ। ਇਹ ਕਰੇਗਾ
ਤੁਹਾਨੂੰ ਸਮਝਣ ਅਤੇ ਬਣਾਉਣ ਲਈ ਇੱਕ ਬੁਨਿਆਦ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ
ਆਪਣੇ IoT ਪ੍ਰੋਜੈਕਟ.

ਅਭਿਆਸ: ਸਮਾਰਟ ਲਾਈਟ ਪ੍ਰੋਜੈਕਟ

ਇਸ ਅਭਿਆਸ ਪ੍ਰੋਜੈਕਟ ਵਿੱਚ, ਤੁਸੀਂ ਸਿੱਖੋਗੇ ਕਿ ਇੱਕ ਸਮਾਰਟ ਕਿਵੇਂ ਬਣਾਉਣਾ ਹੈ
ESP32-C3 ਵਾਇਰਲੈੱਸ ਐਡਵੈਂਚਰ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ ਰੌਸ਼ਨੀ। ਪ੍ਰੋਜੈਕਟ ਦਾ ਢਾਂਚਾ,
ਫੰਕਸ਼ਨ, ਹਾਰਡਵੇਅਰ ਦੀ ਤਿਆਰੀ, ਅਤੇ ਵਿਕਾਸ ਪ੍ਰਕਿਰਿਆ ਹੋਵੇਗੀ
ਵਿਸਥਾਰ ਵਿੱਚ ਸਮਝਾਇਆ.

ਪ੍ਰੋਜੈਕਟ ਢਾਂਚਾ

ਪ੍ਰੋਜੈਕਟ ਵਿੱਚ ਕਈ ਭਾਗ ਸ਼ਾਮਲ ਹਨ, ਸਮੇਤ
ESP32-C3 ਵਾਇਰਲੈੱਸ ਐਡਵੈਂਚਰ, LEDs, ਸੈਂਸਰ, ਅਤੇ ਇੱਕ ਕਲਾਊਡ
ਬੈਕਐਂਡ

ਪ੍ਰੋਜੈਕਟ ਫੰਕਸ਼ਨ

ਸਮਾਰਟ ਲਾਈਟ ਪ੍ਰੋਜੈਕਟ ਤੁਹਾਨੂੰ ਚਮਕ ਨੂੰ ਕੰਟਰੋਲ ਕਰਨ ਦੀ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ ਅਤੇ
ਇੱਕ ਮੋਬਾਈਲ ਐਪ ਰਾਹੀਂ ਰਿਮੋਟਲੀ LEDs ਦਾ ਰੰਗ ਜਾਂ web
ਇੰਟਰਫੇਸ.

ਹਾਰਡਵੇਅਰ ਦੀ ਤਿਆਰੀ

ਪ੍ਰੋਜੈਕਟ ਦੀ ਤਿਆਰੀ ਲਈ, ਤੁਹਾਨੂੰ ਇਕੱਠਾ ਕਰਨ ਦੀ ਲੋੜ ਹੋਵੇਗੀ
ਲੋੜੀਂਦੇ ਹਾਰਡਵੇਅਰ ਹਿੱਸੇ, ਜਿਵੇਂ ਕਿ ESP32-C3 ਵਾਇਰਲੈੱਸ
ਸਾਹਸੀ ਬੋਰਡ, LEDs, ਰੋਧਕ, ਅਤੇ ਇੱਕ ਬਿਜਲੀ ਸਪਲਾਈ.

ਵਿਕਾਸ ਪ੍ਰਕਿਰਿਆ

ਵਿਕਾਸ ਪ੍ਰਕਿਰਿਆ ਵਿੱਚ ਵਿਕਾਸ ਨੂੰ ਸਥਾਪਤ ਕਰਨਾ ਸ਼ਾਮਲ ਹੈ
ਵਾਤਾਵਰਣ, LEDs ਨੂੰ ਕੰਟਰੋਲ ਕਰਨ ਲਈ ਕੋਡ ਲਿਖਣਾ, ਨਾਲ ਜੁੜਨਾ
ਕਲਾਉਡ ਬੈਕਐਂਡ, ਅਤੇ ਸਮਾਰਟ ਦੀ ਕਾਰਜਕੁਸ਼ਲਤਾ ਦੀ ਜਾਂਚ ਕਰ ਰਿਹਾ ਹੈ
ਰੋਸ਼ਨੀ

ESP ਰੇਨਮੇਕਰ ਨਾਲ ਜਾਣ-ਪਛਾਣ

ESP RainMaker IoT ਦੇ ਵਿਕਾਸ ਲਈ ਇੱਕ ਸ਼ਕਤੀਸ਼ਾਲੀ ਢਾਂਚਾ ਹੈ
ਡਿਵਾਈਸਾਂ। ਇਸ ਭਾਗ ਵਿੱਚ, ਤੁਸੀਂ ਸਿੱਖੋਗੇ ਕਿ ESP ਰੇਨਮੇਕਰ ਕੀ ਹੈ ਅਤੇ
ਇਸ ਨੂੰ ਤੁਹਾਡੇ ਪ੍ਰੋਜੈਕਟਾਂ ਵਿੱਚ ਕਿਵੇਂ ਲਾਗੂ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ।

ESP ਰੇਨਮੇਕਰ ਕੀ ਹੈ?

ESP RainMaker ਇੱਕ ਕਲਾਉਡ-ਅਧਾਰਿਤ ਪਲੇਟਫਾਰਮ ਹੈ ਜੋ ਇੱਕ ਸੈੱਟ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ
IoT ਡਿਵਾਈਸਾਂ ਨੂੰ ਬਣਾਉਣ ਅਤੇ ਪ੍ਰਬੰਧਨ ਲਈ ਟੂਲ ਅਤੇ ਸੇਵਾਵਾਂ।

ESP ਰੇਨਮੇਕਰ ਨੂੰ ਲਾਗੂ ਕਰਨਾ

ਇਹ ਭਾਗ ਵਿੱਚ ਸ਼ਾਮਲ ਵੱਖ-ਵੱਖ ਹਿੱਸਿਆਂ ਦੀ ਵਿਆਖਿਆ ਕਰਦਾ ਹੈ
ਦਾਅਵਾ ਕਰਨ ਵਾਲੀ ਸੇਵਾ ਸਮੇਤ, ESP ਰੇਨਮੇਕਰ ਨੂੰ ਲਾਗੂ ਕਰਨਾ,
ਰੇਨਮੇਕਰ ਏਜੰਟ, ਕਲਾਉਡ ਬੈਕਐਂਡ, ਅਤੇ ਰੇਨਮੇਕਰ ਕਲਾਇੰਟ।

ਅਭਿਆਸ: ESP ਰੇਨਮੇਕਰ ਨਾਲ ਵਿਕਾਸ ਕਰਨ ਲਈ ਮੁੱਖ ਨੁਕਤੇ

ਇਸ ਅਭਿਆਸ ਭਾਗ ਵਿੱਚ, ਤੁਸੀਂ ਮੁੱਖ ਨੁਕਤਿਆਂ ਬਾਰੇ ਸਿੱਖੋਗੇ
ESP RainMaker ਨਾਲ ਵਿਕਸਿਤ ਕਰਨ ਵੇਲੇ ਵਿਚਾਰ ਕਰੋ। ਇਸ ਵਿੱਚ ਡਿਵਾਈਸ ਸ਼ਾਮਲ ਹੈ
ਦਾਅਵਾ ਕਰਨਾ, ਡਾਟਾ ਸਿੰਕ੍ਰੋਨਾਈਜ਼ੇਸ਼ਨ, ਅਤੇ ਉਪਭੋਗਤਾ ਪ੍ਰਬੰਧਨ।

ESP ਰੇਨਮੇਕਰ ਦੀਆਂ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ

ESP ਰੇਨਮੇਕਰ ਉਪਭੋਗਤਾ ਪ੍ਰਬੰਧਨ, ਅੰਤ ਲਈ ਵੱਖ-ਵੱਖ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਦੀ ਪੇਸ਼ਕਸ਼ ਕਰਦਾ ਹੈ
ਉਪਭੋਗਤਾ, ਅਤੇ ਪ੍ਰਸ਼ਾਸਕ। ਇਹ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਆਸਾਨ ਡਿਵਾਈਸ ਦੀ ਆਗਿਆ ਦਿੰਦੀਆਂ ਹਨ
ਸੈੱਟਅੱਪ, ਰਿਮੋਟ ਕੰਟਰੋਲ, ਅਤੇ ਨਿਗਰਾਨੀ.

ਵਿਕਾਸ ਵਾਤਾਵਰਣ ਸਥਾਪਤ ਕਰਨਾ

ਇਹ ਭਾਗ ਇੱਕ ਓਵਰ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈview ESP-IDF (Espressif IoT
ਵਿਕਾਸ ਫਰੇਮਵਰਕ), ਜੋ ਕਿ ਅਧਿਕਾਰਤ ਵਿਕਾਸ ਫਰੇਮਵਰਕ ਹੈ
ESP32-ਅਧਾਰਿਤ ਡਿਵਾਈਸਾਂ ਲਈ। ਦੇ ਵੱਖ-ਵੱਖ ਸੰਸਕਰਣਾਂ ਦੀ ਵਿਆਖਿਆ ਕਰਦਾ ਹੈ
ESP-IDF ਅਤੇ ਵਿਕਾਸ ਵਾਤਾਵਰਣ ਨੂੰ ਕਿਵੇਂ ਸਥਾਪਤ ਕਰਨਾ ਹੈ।

ਹਾਰਡਵੇਅਰ ਅਤੇ ਡਰਾਈਵਰ ਵਿਕਾਸ

ESP32-C3 'ਤੇ ਆਧਾਰਿਤ ਸਮਾਰਟ ਲਾਈਟ ਉਤਪਾਦਾਂ ਦਾ ਹਾਰਡਵੇਅਰ ਡਿਜ਼ਾਈਨ

ਇਹ ਭਾਗ ਸਮਾਰਟ ਲਾਈਟ ਦੇ ਹਾਰਡਵੇਅਰ ਡਿਜ਼ਾਈਨ 'ਤੇ ਕੇਂਦਰਿਤ ਹੈ
ESP32-C3 ਵਾਇਰਲੈੱਸ ਐਡਵੈਂਚਰ 'ਤੇ ਆਧਾਰਿਤ ਉਤਪਾਦ। ਇਹ ਕਵਰ ਕਰਦਾ ਹੈ
ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਅਤੇ ਸਮਾਰਟ ਲਾਈਟ ਉਤਪਾਦਾਂ ਦੀ ਰਚਨਾ, ਅਤੇ ਨਾਲ ਹੀ
ESP32-C3 ਕੋਰ ਸਿਸਟਮ ਦਾ ਹਾਰਡਵੇਅਰ ਡਿਜ਼ਾਈਨ।

ਸਮਾਰਟ ਲਾਈਟ ਉਤਪਾਦਾਂ ਦੀਆਂ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਅਤੇ ਰਚਨਾ

ਇਹ ਉਪ ਭਾਗ ਉਹਨਾਂ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਅਤੇ ਭਾਗਾਂ ਦੀ ਵਿਆਖਿਆ ਕਰਦਾ ਹੈ ਜੋ ਬਣਾਉਂਦੇ ਹਨ
ਅੱਪ ਸਮਾਰਟ ਲਾਈਟ ਉਤਪਾਦ. ਇਹ ਵੱਖ-ਵੱਖ ਕਾਰਜਸ਼ੀਲਤਾਵਾਂ ਦੀ ਚਰਚਾ ਕਰਦਾ ਹੈ
ਅਤੇ ਸਮਾਰਟ ਲਾਈਟਾਂ ਬਣਾਉਣ ਲਈ ਡਿਜ਼ਾਈਨ ਵਿਚਾਰ।

ESP32-C3 ਕੋਰ ਸਿਸਟਮ ਦਾ ਹਾਰਡਵੇਅਰ ਡਿਜ਼ਾਈਨ

ESP32-C3 ਕੋਰ ਸਿਸਟਮ ਦੇ ਹਾਰਡਵੇਅਰ ਡਿਜ਼ਾਈਨ ਵਿੱਚ ਪਾਵਰ ਸ਼ਾਮਲ ਹੈ
ਸਪਲਾਈ, ਪਾਵਰ-ਆਨ ਕ੍ਰਮ, ਸਿਸਟਮ ਰੀਸੈਟ, SPI ਫਲੈਸ਼, ਘੜੀ ਸਰੋਤ,
ਅਤੇ RF ਅਤੇ ਐਂਟੀਨਾ ਵਿਚਾਰ। ਇਹ ਉਪ ਧਾਰਾ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ
ਇਹਨਾਂ ਪਹਿਲੂਆਂ ਬਾਰੇ ਵਿਸਥਾਰਪੂਰਵਕ ਜਾਣਕਾਰੀ।

FAQ

ਸਵਾਲ: ESP ਰੇਨਮੇਕਰ ਕੀ ਹੈ?

A: ESP RainMaker ਇੱਕ ਕਲਾਉਡ-ਆਧਾਰਿਤ ਪਲੇਟਫਾਰਮ ਹੈ ਜੋ ਟੂਲ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ
ਅਤੇ IoT ਯੰਤਰਾਂ ਦੇ ਨਿਰਮਾਣ ਅਤੇ ਪ੍ਰਬੰਧਨ ਲਈ ਸੇਵਾਵਾਂ। ਇਹ ਸਰਲ ਕਰਦਾ ਹੈ
ਵਿਕਾਸ ਪ੍ਰਕਿਰਿਆ ਅਤੇ ਆਸਾਨ ਡਿਵਾਈਸ ਸੈਟਅਪ, ਰਿਮੋਟ ਦੀ ਆਗਿਆ ਦਿੰਦੀ ਹੈ
ਕੰਟਰੋਲ, ਅਤੇ ਨਿਗਰਾਨੀ.

ਸਵਾਲ: ਮੈਂ ਇਸ ਲਈ ਵਿਕਾਸ ਵਾਤਾਵਰਣ ਕਿਵੇਂ ਸਥਾਪਤ ਕਰ ਸਕਦਾ ਹਾਂ
ESP32-C3?

A: ESP32-C3 ਲਈ ਵਿਕਾਸ ਵਾਤਾਵਰਣ ਸਥਾਪਤ ਕਰਨ ਲਈ, ਤੁਹਾਨੂੰ ਲੋੜ ਹੈ
ESP-IDF (Espressif IoT ਵਿਕਾਸ ਫਰੇਮਵਰਕ) ਨੂੰ ਸਥਾਪਿਤ ਕਰਨ ਲਈ ਅਤੇ
ਪ੍ਰਦਾਨ ਕੀਤੀਆਂ ਹਦਾਇਤਾਂ ਦੇ ਅਨੁਸਾਰ ਇਸਨੂੰ ਸੰਰਚਿਤ ਕਰੋ। ESP-IDF ਹੈ
ESP32-ਅਧਾਰਿਤ ਡਿਵਾਈਸਾਂ ਲਈ ਅਧਿਕਾਰਤ ਵਿਕਾਸ ਫਰੇਮਵਰਕ।

ਸਵਾਲ: ESP ਰੇਨਮੇਕਰ ਦੀਆਂ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਕੀ ਹਨ?

A: ESP ਰੇਨਮੇਕਰ ਉਪਭੋਗਤਾ ਸਮੇਤ ਕਈ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਦੀ ਪੇਸ਼ਕਸ਼ ਕਰਦਾ ਹੈ
ਪ੍ਰਬੰਧਨ, ਅੰਤਮ ਉਪਭੋਗਤਾ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ, ਅਤੇ ਪ੍ਰਬੰਧਕ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ। ਉਪਭੋਗਤਾ ਪ੍ਰਬੰਧਨ
ਆਸਾਨ ਡਿਵਾਈਸ ਕਲੇਮਿੰਗ ਅਤੇ ਡਾਟਾ ਸਿੰਕ੍ਰੋਨਾਈਜ਼ੇਸ਼ਨ ਲਈ ਸਹਾਇਕ ਹੈ। ਆਖਰੀ ਉਪਭੋਗਤਾ
ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਮੋਬਾਈਲ ਐਪ ਰਾਹੀਂ ਡਿਵਾਈਸਾਂ ਦੇ ਰਿਮੋਟ ਕੰਟਰੋਲ ਨੂੰ ਸਮਰੱਥ ਬਣਾਉਂਦੀਆਂ ਹਨ ਜਾਂ
web ਇੰਟਰਫੇਸ. ਐਡਮਿਨ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਡਿਵਾਈਸ ਨਿਗਰਾਨੀ ਲਈ ਟੂਲ ਪ੍ਰਦਾਨ ਕਰਦੀਆਂ ਹਨ
ਅਤੇ ਪ੍ਰਬੰਧਨ.

ESP32-C3 ਵਾਇਰਲੈੱਸ ਐਡਵੈਂਚਰ
IoT ਲਈ ਇੱਕ ਵਿਆਪਕ ਗਾਈਡ
Espressif ਸਿਸਟਮ 12 ਜੂਨ, 2023

ਸਮੱਗਰੀ

ਮੈਂ ਤਿਆਰੀ

1

1 IoT ਨਾਲ ਜਾਣ-ਪਛਾਣ

3

1.1 IoT ਦਾ ਆਰਕੀਟੈਕਚਰ। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.2 ਸਮਾਰਟ ਹੋਮਜ਼ ਵਿੱਚ IoT ਐਪਲੀਕੇਸ਼ਨ। . . . . . . . . . . . . . . . . . . . . . . . . . 6

2 IoT ਪ੍ਰੋਜੈਕਟਾਂ ਦੀ ਜਾਣ-ਪਛਾਣ ਅਤੇ ਅਭਿਆਸ

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 ਗਿੱਟ ਵਰਕਫਲੋ। . . . . . . . . . . . . . . . . . . . . . . . . . . 33 4.1.3 ਇੱਕ ਅਨੁਕੂਲ ਵਰਜਨ ਚੁਣਨਾ। . . . . . . . . . . . . . . . . . . . . . . . 34 4.1.4 ਓਵਰview ESP-IDF SDK ਡਾਇਰੈਕਟਰੀ ਦੀ। . . . . . . . . . . . . . . . . . . . 34 4.2 ESP-IDF ਵਿਕਾਸ ਵਾਤਾਵਰਨ ਸੈਟ ਅਪ ਕਰਨਾ। . . . . . . . . . . . . . . . . 38 4.2.1 ਲੀਨਕਸ ਉੱਤੇ ESP-IDF ਡਿਵੈਲਪਮੈਂਟ ਇਨਵਾਇਰਮੈਂਟ ਸੈਟ ਅਪ ਕਰਨਾ। . . . . . . . 38 4.2.2 ਵਿੰਡੋਜ਼ 'ਤੇ ESP-IDF ਵਿਕਾਸ ਵਾਤਾਵਰਨ ਸੈਟ ਅਪ ਕਰਨਾ। . . . . . 40 4.2.3 ਮੈਕ 'ਤੇ 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 ਅਭਿਆਸ: ਕੰਪਾਈਲਿੰਗ ਐਕਸampਲੇ ਪ੍ਰੋਗਰਾਮ "ਬਲਿੰਕ" . . . . . . . . . . . . . . . . . . 53 4.4.1 ਸਾਬਕਾampਲੇ ਵਿਸ਼ਲੇਸ਼ਣ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 4.4.2 ਬਲਿੰਕ ਪ੍ਰੋਗਰਾਮ ਨੂੰ ਕੰਪਾਇਲ ਕਰਨਾ। . . . . . . . . . . . . . . . . . . . . . . 56 4.4.3 ਬਲਿੰਕ ਪ੍ਰੋਗਰਾਮ ਨੂੰ ਫਲੈਸ਼ ਕਰਨਾ। . . . . . . . . . . . . . . . . . . . . . . . 59 4.4.4 ਬਲਿੰਕ ਪ੍ਰੋਗਰਾਮ ਦਾ ਸੀਰੀਅਲ ਪੋਰਟ ਲਾਗ ਵਿਸ਼ਲੇਸ਼ਣ। . . . . . . . . . . . . . 60 4.5 ਸੰਖੇਪ। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63

II ਹਾਰਡਵੇਅਰ ਅਤੇ ਡਰਾਈਵਰ ਵਿਕਾਸ

65

ESP5-C32 'ਤੇ ਆਧਾਰਿਤ ਸਮਾਰਟ ਲਾਈਟ ਉਤਪਾਦਾਂ ਦਾ 3 ਹਾਰਡਵੇਅਰ ਡਿਜ਼ਾਈਨ

67

5.1 ਸਮਾਰਟ ਲਾਈਟ ਉਤਪਾਦਾਂ ਦੀਆਂ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਅਤੇ ਰਚਨਾ। . . . . . . . . . . . . . . 67

5.2 ESP32-C3 ਕੋਰ ਸਿਸਟਮ ਦਾ ਹਾਰਡਵੇਅਰ ਡਿਜ਼ਾਈਨ। . . . . . . . . . . . . . . . . . . 70

5.2.1 ਪਾਵਰ ਸਪਲਾਈ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74

5.2.2 ਪਾਵਰ-ਆਨ ਕ੍ਰਮ ਅਤੇ ਸਿਸਟਮ ਰੀਸੈਟ। . . . . . . . . . . . . . . . . . 74

5.2.3 SPI ਫਲੈਸ਼ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 LED ਡਿਮਿੰਗ ਡਰਾਈਵਰ। . . . . . . . . . . . . . . . . . . . . . . . . . . . 104

6.6 ਸੰਖੇਪ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108

III ਵਾਇਰਲੈੱਸ ਸੰਚਾਰ ਅਤੇ ਨਿਯੰਤਰਣ

109

7 Wi-Fi ਸੰਰਚਨਾ ਅਤੇ ਕਨੈਕਸ਼ਨ

111

7.1 Wi-Fi ਦੀਆਂ ਮੂਲ ਗੱਲਾਂ। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111

7.1.1 ਵਾਈ-ਫਾਈ ਦੀ ਜਾਣ-ਪਛਾਣ। . . . . . . . . . . . . . . . . . . . . . . . . . . . 111

7.1.2 IEEE 802.11 ਦਾ ਵਿਕਾਸ। . . . . . . . . . . . . . . . . . . . . . . . . 111

7.1.3 ਵਾਈ-ਫਾਈ ਸੰਕਲਪ। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112

7.1.4 ਵਾਈ-ਫਾਈ ਕਨੈਕਸ਼ਨ। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115

7.2 ਬਲੂਟੁੱਥ ਦੀਆਂ ਮੂਲ ਗੱਲਾਂ। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122

7.2.1 ਬਲੂਟੁੱਥ ਨਾਲ ਜਾਣ-ਪਛਾਣ। . . . . . . . . . . . . . . . . . . . . . . . . 123

7.2.2 ਬਲੂਟੁੱਥ ਧਾਰਨਾਵਾਂ। . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124

7.2.3 ਬਲੂਟੁੱਥ ਕਨੈਕਸ਼ਨ। . . . . . . . . . . . . . . . . . . . . . . . . . . 127

7.3 ਵਾਈ-ਫਾਈ ਨੈੱਟਵਰਕ ਕੌਂਫਿਗਰੇਸ਼ਨ। . . . . . . . . . . . . . . . . . . . . . . . . . . 131

7.3.1 ਵਾਈ-ਫਾਈ ਨੈੱਟਵਰਕ ਕੌਂਫਿਗਰੇਸ਼ਨ ਗਾਈਡ। . . . . . . . . . . . . . . . . . . . 131

7.3.2 ਸਾਫਟਏਪੀ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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ਸਥਾਨਕ ਨਿਯੰਤਰਣ ਦੇ es. . . . . . . . . . . . . . . . . . . . . . . . 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 ਸਮਾਰਟ ਲਾਈਟ ਐਕਸample . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 Android ਵਿਕਾਸ ਲਈ ਤਿਆਰੀ . . . . . . . . . . . . . . . . . . 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 ਰੇਨਮੇਕਰ APIs ਨਾਲ ਜਾਣ-ਪਛਾਣ। . . . . . . . . . . . . . . . . . . . . . 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 ਨੋਡ ID ਪ੍ਰਾਪਤ ਕਰਨਾ। . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 OTA ਵਿਧੀ ਦਾ . . . . . . . . . . . . . . . . . . . . . 326

11.2 ਫਰਮਵੇਅਰ ਸੰਸਕਰਣ ਪ੍ਰਬੰਧਨ . . . . . . . . . . . . . . . . . . . . . . . . . 329

11.2.1 ਫਰਮਵੇਅਰ ਮਾਰਕਿੰਗ . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329

11.2.2 ਰੋਲਬੈਕ ਅਤੇ ਐਂਟੀ-ਰੋਲਬੈਕ। . . . . . . . . . . . . . . . . . . . . . . . 331

11.3 ਅਭਿਆਸ: ਓਵਰ-ਦੀ-ਏਅਰ (OTA) ਸਾਬਕਾample . . . . . . . . . . . . . . . . . . . . . . . 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 ਸਾਬਕਾample . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 NVS ਇਨਕ੍ਰਿਪਸ਼ਨ ਨਾਲ ਜਾਣ-ਪਛਾਣ। . . . . . . . . . . . . . . . . . . . . . 383

13.3.7 ਸਾਬਕਾampਫਲੈਸ਼ ਐਨਕ੍ਰਿਪਸ਼ਨ ਅਤੇ NVS ਐਨਕ੍ਰਿਪਸ਼ਨ ਦੇ les. . . . . . . . . . . 384

13.4 ਡਾਟਾ ਜਾਇਜ਼ਤਾ ਸੁਰੱਖਿਆ। . . . . . . . . . . . . . . . . . . . . . . . . . . . 386

13.4.1 ਡਿਜੀਟਲ ਦਸਤਖਤ ਨਾਲ ਜਾਣ-ਪਛਾਣ। . . . . . . . . . . . . . . . . . . . . 386

13.4.2 ਓਵਰview ਸੁਰੱਖਿਅਤ ਬੂਟ ਸਕੀਮ ਦੀ . . . . . . . . . . . . . . . . . . . . . 388

13.4.3 ਸਾਫਟਵੇਅਰ ਸੁਰੱਖਿਅਤ ਬੂਟ ਨਾਲ ਜਾਣ-ਪਛਾਣ। . . . . . . . . . . . . . . . . . . 388 13.4.4 ਹਾਰਡਵੇਅਰ ਸੁਰੱਖਿਅਤ ਬੂਟ ਨਾਲ ਜਾਣ-ਪਛਾਣ। . . . . . . . . . . . . . . . . . 390 13.4.5 ਸਾਬਕਾamples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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-ਇਨਸਾਈਟਸ ਪ੍ਰੋਜੈਕਟ ਵਿੱਚ ESP ਇਨਸਾਈਟਸ ਨਾਲ ਸ਼ੁਰੂਆਤ ਕਰਨਾ। . . . . . 409

15.2.2 ਰਨਿੰਗ ਐਕਸampesp-ਇਨਸਾਈਟਸ ਪ੍ਰੋਜੈਕਟ ਵਿੱਚ le. . . . . . . . . . . . . . . 411

15.2.3 ਰਿਪੋਰਟਿੰਗ ਕੋਰਡੰਪ ਜਾਣਕਾਰੀ। . . . . . . . . . . . . . . . . . . . . 411

15.2.4 ਦਿਲਚਸਪੀ ਦੇ ਲੌਗਸ ਨੂੰ ਅਨੁਕੂਲਿਤ ਕਰਨਾ। . . . . . . . . . . . . . . . . . . . . . . . 412

15.2.5 ਰਿਪੋਰਟਿੰਗ ਰੀਬੂਟ ਕਾਰਨ। . . . . . . . . . . . . . . . . . . . . . . . . 413

15.2.6 ਕਸਟਮ ਮੈਟ੍ਰਿਕਸ ਦੀ ਰਿਪੋਰਟ ਕਰਨਾ। . . . . . . . . . . . . . . . . . . . . . . . . 413

15.3 ਅਭਿਆਸ: ਸਮਾਰਟ ਲਾਈਟ ਪ੍ਰੋਜੈਕਟ ਵਿੱਚ ESP ਇਨਸਾਈਟਸ ਦੀ ਵਰਤੋਂ ਕਰਨਾ। . . . . . . . . . . . . . . 416

15.4 ਸੰਖੇਪ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417

ਜਾਣ-ਪਛਾਣ
ESP32-C3 ਇੱਕ ਸਿੰਗਲ-ਕੋਰ Wi-Fi ਅਤੇ ਬਲੂਟੁੱਥ 5 (LE) ਮਾਈਕ੍ਰੋਕੰਟਰੋਲਰ SoC ਹੈ, ਜੋ ਓਪਨ-ਸੋਰਸ RISC-V ਆਰਕੀਟੈਕਚਰ 'ਤੇ ਆਧਾਰਿਤ ਹੈ। ਇਹ ਪਾਵਰ, I/O ਸਮਰੱਥਾਵਾਂ, ਅਤੇ ਸੁਰੱਖਿਆ ਦੇ ਸਹੀ ਸੰਤੁਲਨ ਨੂੰ ਮਾਰਦਾ ਹੈ, ਇਸ ਤਰ੍ਹਾਂ ਕਨੈਕਟ ਕੀਤੇ ਡਿਵਾਈਸਾਂ ਲਈ ਅਨੁਕੂਲ ਲਾਗਤ-ਪ੍ਰਭਾਵਸ਼ਾਲੀ ਹੱਲ ਦੀ ਪੇਸ਼ਕਸ਼ ਕਰਦਾ ਹੈ। ESP32-C3 ਪਰਿਵਾਰ ਦੀਆਂ ਵੱਖ-ਵੱਖ ਐਪਲੀਕੇਸ਼ਨਾਂ ਨੂੰ ਦਿਖਾਉਣ ਲਈ, Espressif ਦੀ ਇਹ ਕਿਤਾਬ ਤੁਹਾਨੂੰ AIoT ਦੁਆਰਾ ਇੱਕ ਦਿਲਚਸਪ ਯਾਤਰਾ 'ਤੇ ਲੈ ਜਾਵੇਗੀ, IoT ਪ੍ਰੋਜੈਕਟ ਦੇ ਵਿਕਾਸ ਅਤੇ ਵਾਤਾਵਰਣ ਸੈੱਟਅੱਪ ਦੀਆਂ ਮੂਲ ਗੱਲਾਂ ਤੋਂ ਸ਼ੁਰੂ ਕਰਕੇ ਵਿਹਾਰਕ ਐਕਸ.amples. ਪਹਿਲੇ ਚਾਰ ਅਧਿਆਏ IoT, ESP RainMaker ਅਤੇ ESP-IDF ਬਾਰੇ ਗੱਲ ਕਰਦੇ ਹਨ। ਅਧਿਆਇ 5 ਅਤੇ 6 ਹਾਰਡਵੇਅਰ ਡਿਜ਼ਾਈਨ ਅਤੇ ਡਰਾਈਵਰ ਵਿਕਾਸ ਬਾਰੇ ਸੰਖੇਪ। ਜਿਵੇਂ ਤੁਸੀਂ ਤਰੱਕੀ ਕਰਦੇ ਹੋ, ਤੁਸੀਂ ਖੋਜ ਕਰੋਗੇ ਕਿ Wi-Fi ਨੈੱਟਵਰਕਾਂ ਅਤੇ ਮੋਬਾਈਲ ਐਪਾਂ ਰਾਹੀਂ ਆਪਣੇ ਪ੍ਰੋਜੈਕਟ ਨੂੰ ਕਿਵੇਂ ਕੌਂਫਿਗਰ ਕਰਨਾ ਹੈ। ਅੰਤ ਵਿੱਚ, ਤੁਸੀਂ ਆਪਣੇ ਪ੍ਰੋਜੈਕਟ ਨੂੰ ਅਨੁਕੂਲ ਬਣਾਉਣਾ ਅਤੇ ਇਸਨੂੰ ਵੱਡੇ ਉਤਪਾਦਨ ਵਿੱਚ ਪਾਉਣਾ ਸਿੱਖੋਗੇ।
ਜੇਕਰ ਤੁਸੀਂ ਸਬੰਧਤ ਖੇਤਰਾਂ ਵਿੱਚ ਇੱਕ ਇੰਜੀਨੀਅਰ ਹੋ, ਇੱਕ ਸਾਫਟਵੇਅਰ ਆਰਕੀਟੈਕਟ, ਇੱਕ ਅਧਿਆਪਕ, ਇੱਕ ਵਿਦਿਆਰਥੀ, ਜਾਂ ਕੋਈ ਵੀ ਜਿਸਨੂੰ IoT ਵਿੱਚ ਦਿਲਚਸਪੀ ਹੈ, ਤਾਂ ਇਹ ਕਿਤਾਬ ਤੁਹਾਡੇ ਲਈ ਹੈ।
ਤੁਸੀਂ ਕੋਡ ਨੂੰ ਡਾਊਨਲੋਡ ਕਰ ਸਕਦੇ ਹੋample ਇਸ ਕਿਤਾਬ ਵਿੱਚ GitHub 'ਤੇ Espressif ਦੀ ਸਾਈਟ ਤੋਂ ਵਰਤੀ ਗਈ ਹੈ। IoT ਵਿਕਾਸ ਬਾਰੇ ਨਵੀਨਤਮ ਜਾਣਕਾਰੀ ਲਈ, ਕਿਰਪਾ ਕਰਕੇ ਸਾਡੇ ਅਧਿਕਾਰਤ ਖਾਤੇ ਦੀ ਪਾਲਣਾ ਕਰੋ।

ਮੁਖਬੰਧ
ਇੱਕ ਸੂਚਨਾ ਦੇਣ ਵਾਲੀ ਦੁਨੀਆ
ਇੰਟਰਨੈੱਟ ਦੀ ਲਹਿਰ 'ਤੇ ਸਵਾਰ ਹੋ ਕੇ, ਇੰਟਰਨੈੱਟ ਆਫ਼ ਥਿੰਗਜ਼ (IoT) ਨੇ ਡਿਜੀਟਲ ਅਰਥਵਿਵਸਥਾ ਵਿੱਚ ਇੱਕ ਨਵੀਂ ਕਿਸਮ ਦਾ ਬੁਨਿਆਦੀ ਢਾਂਚਾ ਬਣਨ ਲਈ ਆਪਣੀ ਸ਼ਾਨਦਾਰ ਸ਼ੁਰੂਆਤ ਕੀਤੀ। ਟੈਕਨਾਲੋਜੀ ਨੂੰ ਜਨਤਾ ਦੇ ਨੇੜੇ ਲਿਆਉਣ ਲਈ, Espressif Systems ਇਸ ਦ੍ਰਿਸ਼ਟੀਕੋਣ ਲਈ ਕੰਮ ਕਰਦਾ ਹੈ ਕਿ ਜੀਵਨ ਦੇ ਸਾਰੇ ਖੇਤਰਾਂ ਦੇ ਵਿਕਾਸਕਾਰ ਸਾਡੇ ਸਮਿਆਂ ਦੀਆਂ ਕੁਝ ਸਭ ਤੋਂ ਵੱਧ ਦਬਾਉਣ ਵਾਲੀਆਂ ਸਮੱਸਿਆਵਾਂ ਨੂੰ ਹੱਲ ਕਰਨ ਲਈ IoT ਦੀ ਵਰਤੋਂ ਕਰ ਸਕਦੇ ਹਨ। "ਸਾਰੀਆਂ ਚੀਜ਼ਾਂ ਦੇ ਬੁੱਧੀਮਾਨ ਨੈਟਵਰਕ" ਦੀ ਦੁਨੀਆ ਉਹ ਹੈ ਜੋ ਅਸੀਂ ਭਵਿੱਖ ਤੋਂ ਉਮੀਦ ਕਰ ਰਹੇ ਹਾਂ।
ਸਾਡੇ ਆਪਣੇ ਚਿੱਪਾਂ ਨੂੰ ਡਿਜ਼ਾਈਨ ਕਰਨਾ ਉਸ ਦ੍ਰਿਸ਼ਟੀ ਦਾ ਇੱਕ ਮਹੱਤਵਪੂਰਨ ਹਿੱਸਾ ਬਣਾਉਂਦਾ ਹੈ। ਇਹ ਇੱਕ ਮੈਰਾਥਨ ਹੋਣਾ ਹੈ, ਜਿਸ ਲਈ ਤਕਨੀਕੀ ਸੀਮਾਵਾਂ ਦੇ ਵਿਰੁੱਧ ਲਗਾਤਾਰ ਸਫਲਤਾਵਾਂ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ। “ਗੇਮ ਚੇਂਜਰ” ESP8266 ਤੋਂ ESP32 ਸੀਰੀਜ਼ ਤੱਕ ਵਾਈ-ਫਾਈ ਅਤੇ ਬਲੂਟੁੱਥਰ (LE) ਕਨੈਕਟੀਵਿਟੀ ਨੂੰ ਜੋੜਦੀ ਹੈ, ਜਿਸ ਤੋਂ ਬਾਅਦ AI ਪ੍ਰਵੇਗ ਨਾਲ ਲੈਸ ESP32-S3, Espressif ਕਦੇ ਵੀ AIoT ਹੱਲਾਂ ਲਈ ਉਤਪਾਦਾਂ ਦੀ ਖੋਜ ਅਤੇ ਵਿਕਾਸ ਕਰਨਾ ਬੰਦ ਨਹੀਂ ਕਰਦਾ। ਸਾਡੇ ਓਪਨ-ਸੋਰਸ ਸੌਫਟਵੇਅਰ, ਜਿਵੇਂ ਕਿ IoT ਵਿਕਾਸ ਫਰੇਮਵਰਕ ESP-IDF, ਜਾਲ ਵਿਕਾਸ ਫਰੇਮਵਰਕ ESP-MDF, ਅਤੇ ਡਿਵਾਈਸ ਕਨੈਕਟੀਵਿਟੀ ਪਲੇਟਫਾਰਮ ESP ਰੇਨਮੇਕਰ ਦੇ ਨਾਲ, ਅਸੀਂ AIoT ਐਪਲੀਕੇਸ਼ਨਾਂ ਨੂੰ ਬਣਾਉਣ ਲਈ ਇੱਕ ਸੁਤੰਤਰ ਢਾਂਚਾ ਬਣਾਇਆ ਹੈ।
ਜੁਲਾਈ 2022 ਤੱਕ, Espressif ਦੇ IoT ਚਿੱਪਸੈੱਟਾਂ ਦੀ ਸੰਚਤ ਸ਼ਿਪਮੈਂਟ 800 ਮਿਲੀਅਨ ਤੋਂ ਵੱਧ ਗਈ ਹੈ, ਜੋ Wi-Fi MCU ਮਾਰਕੀਟ ਵਿੱਚ ਮੋਹਰੀ ਹੈ ਅਤੇ ਦੁਨੀਆ ਭਰ ਵਿੱਚ ਜੁੜੀਆਂ ਡਿਵਾਈਸਾਂ ਦੀ ਇੱਕ ਵੱਡੀ ਸੰਖਿਆ ਨੂੰ ਸ਼ਕਤੀ ਪ੍ਰਦਾਨ ਕਰਦੀ ਹੈ। ਉੱਤਮਤਾ ਲਈ ਪਿੱਛਾ ਕਰਨਾ ਹਰ Espressif ਉਤਪਾਦ ਨੂੰ ਇਸਦੇ ਉੱਚ ਪੱਧਰੀ ਏਕੀਕਰਣ ਅਤੇ ਲਾਗਤ ਕੁਸ਼ਲਤਾ ਲਈ ਇੱਕ ਵੱਡੀ ਹਿੱਟ ਬਣਾਉਂਦਾ ਹੈ। ESP32-C3 ਦਾ ਰਿਲੀਜ਼ ਹੋਣਾ Espressif ਦੀ ਸਵੈ-ਵਿਕਸਿਤ ਤਕਨਾਲੋਜੀ ਦਾ ਇੱਕ ਮਹੱਤਵਪੂਰਨ ਮੀਲ ਪੱਥਰ ਹੈ। ਇਹ ਇੱਕ ਸਿੰਗਲ-ਕੋਰ, 32-ਬਿੱਟ, RISC-V- ਅਧਾਰਿਤ MCU ਹੈ ਜਿਸ ਵਿੱਚ 400KB SRAM ਹੈ, ਜੋ ਕਿ 160MHz 'ਤੇ ਚੱਲ ਸਕਦਾ ਹੈ। ਇਸ ਵਿੱਚ 2.4 ਗੀਗਾਹਰਟਜ਼ ਵਾਈ-ਫਾਈ ਅਤੇ ਬਲੂਟੁੱਥ 5 (LE) ਨੂੰ ਲੰਬੀ ਰੇਂਜ ਦੀ ਸਹਾਇਤਾ ਨਾਲ ਜੋੜਿਆ ਗਿਆ ਹੈ। ਇਹ ਪਾਵਰ, I/O ਸਮਰੱਥਾਵਾਂ, ਅਤੇ ਸੁਰੱਖਿਆ ਦੇ ਇੱਕ ਵਧੀਆ ਸੰਤੁਲਨ ਨੂੰ ਮਾਰਦਾ ਹੈ, ਇਸ ਤਰ੍ਹਾਂ ਕਨੈਕਟ ਕੀਤੇ ਡਿਵਾਈਸਾਂ ਲਈ ਅਨੁਕੂਲ ਲਾਗਤ-ਪ੍ਰਭਾਵਸ਼ਾਲੀ ਹੱਲ ਦੀ ਪੇਸ਼ਕਸ਼ ਕਰਦਾ ਹੈ। ਅਜਿਹੇ ਸ਼ਕਤੀਸ਼ਾਲੀ ESP32-C3 'ਤੇ ਆਧਾਰਿਤ, ਇਸ ਕਿਤਾਬ ਦਾ ਉਦੇਸ਼ ਪਾਠਕਾਂ ਨੂੰ ਵਿਸਤ੍ਰਿਤ ਦ੍ਰਿਸ਼ਟਾਂਤ ਅਤੇ ਵਿਹਾਰਕ ਸਾਬਕਾ ਨਾਲ IoT-ਸਬੰਧਤ ਗਿਆਨ ਨੂੰ ਸਮਝਣ ਵਿੱਚ ਮਦਦ ਕਰਨਾ ਹੈ।amples.
ਅਸੀਂ ਇਹ ਕਿਤਾਬ ਕਿਉਂ ਲਿਖੀ?
Espressif ਸਿਸਟਮ ਇੱਕ ਸੈਮੀਕੰਡਕਟਰ ਕੰਪਨੀ ਤੋਂ ਵੱਧ ਹੈ। ਇਹ ਇੱਕ IoT ਪਲੇਟਫਾਰਮ ਕੰਪਨੀ ਵੀ ਹੈ, ਜੋ ਹਮੇਸ਼ਾ ਤਕਨਾਲੋਜੀ ਦੇ ਖੇਤਰ ਵਿੱਚ ਸਫਲਤਾਵਾਂ ਅਤੇ ਨਵੀਨਤਾਵਾਂ ਲਈ ਯਤਨ ਕਰਦੀ ਹੈ। ਇਸ ਦੇ ਨਾਲ ਹੀ, Espressif ਨੇ ਇੱਕ ਵਿਲੱਖਣ ਈਕੋਸਿਸਟਮ ਬਣਾਉਂਦੇ ਹੋਏ, ਓਪਨ-ਸੋਰਸ ਕੀਤਾ ਹੈ ਅਤੇ ਆਪਣੇ ਸਵੈ-ਵਿਕਸਤ ਓਪਰੇਟਿੰਗ ਸਿਸਟਮ ਅਤੇ ਸੌਫਟਵੇਅਰ ਫਰੇਮਵਰਕ ਨੂੰ ਕਮਿਊਨਿਟੀ ਨਾਲ ਸਾਂਝਾ ਕੀਤਾ ਹੈ। ਇੰਜਨੀਅਰ, ਨਿਰਮਾਤਾ, ਅਤੇ ਟੈਕਨਾਲੋਜੀ ਦੇ ਉਤਸ਼ਾਹੀ ਸਰਗਰਮੀ ਨਾਲ Espressif ਦੇ ਉਤਪਾਦਾਂ ਦੇ ਅਧਾਰ ਤੇ ਨਵੇਂ ਸੌਫਟਵੇਅਰ ਐਪਲੀਕੇਸ਼ਨਾਂ ਨੂੰ ਵਿਕਸਤ ਕਰਦੇ ਹਨ, ਸੁਤੰਤਰ ਤੌਰ 'ਤੇ ਸੰਚਾਰ ਕਰਦੇ ਹਨ, ਅਤੇ ਆਪਣੇ ਅਨੁਭਵ ਨੂੰ ਸਾਂਝਾ ਕਰਦੇ ਹਨ। ਤੁਸੀਂ ਹਰ ਸਮੇਂ ਵੱਖ-ਵੱਖ ਪਲੇਟਫਾਰਮਾਂ ਜਿਵੇਂ ਕਿ YouTube ਅਤੇ GitHub 'ਤੇ ਡਿਵੈਲਪਰਾਂ ਦੇ ਦਿਲਚਸਪ ਵਿਚਾਰ ਦੇਖ ਸਕਦੇ ਹੋ। Espressif ਦੇ ਉਤਪਾਦਾਂ ਦੀ ਪ੍ਰਸਿੱਧੀ ਨੇ ਲੇਖਕਾਂ ਦੀ ਵੱਧਦੀ ਗਿਣਤੀ ਨੂੰ ਉਤਸ਼ਾਹਿਤ ਕੀਤਾ ਹੈ ਜਿਨ੍ਹਾਂ ਨੇ ਅੰਗਰੇਜ਼ੀ, ਚੀਨੀ, ਜਰਮਨ, ਫ੍ਰੈਂਚ ਅਤੇ ਜਾਪਾਨੀ ਸਮੇਤ ਦਸ ਭਾਸ਼ਾਵਾਂ ਵਿੱਚ, Espressif ਚਿੱਪਸੈੱਟਾਂ 'ਤੇ ਆਧਾਰਿਤ 100 ਤੋਂ ਵੱਧ ਕਿਤਾਬਾਂ ਤਿਆਰ ਕੀਤੀਆਂ ਹਨ।

ਇਹ ਕਮਿਊਨਿਟੀ ਭਾਈਵਾਲਾਂ ਦਾ ਸਮਰਥਨ ਅਤੇ ਭਰੋਸਾ ਹੈ ਜੋ Espressif ਦੀ ਨਿਰੰਤਰ ਨਵੀਨਤਾ ਨੂੰ ਉਤਸ਼ਾਹਿਤ ਕਰਦਾ ਹੈ। “ਅਸੀਂ ਆਪਣੀਆਂ ਚਿਪਸ, ਓਪਰੇਟਿੰਗ ਸਿਸਟਮ, ਫਰੇਮਵਰਕ, ਹੱਲ, ਕਲਾਉਡ, ਵਪਾਰਕ ਅਭਿਆਸਾਂ, ਸਾਧਨਾਂ, ਦਸਤਾਵੇਜ਼ਾਂ, ਲਿਖਤਾਂ, ਵਿਚਾਰਾਂ, ਆਦਿ ਨੂੰ ਸਮਕਾਲੀ ਜੀਵਨ ਦੀਆਂ ਸਭ ਤੋਂ ਵੱਧ ਦਬਾਉਣ ਵਾਲੀਆਂ ਸਮੱਸਿਆਵਾਂ ਵਿੱਚ ਲੋਕਾਂ ਨੂੰ ਲੋੜੀਂਦੇ ਜਵਾਬਾਂ ਲਈ ਹੋਰ ਵੀ ਢੁਕਵਾਂ ਬਣਾਉਣ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰਦੇ ਹਾਂ। ਇਹ Espressif ਦੀ ਸਭ ਤੋਂ ਉੱਚੀ ਅਭਿਲਾਸ਼ਾ ਅਤੇ ਨੈਤਿਕ ਕੰਪਾਸ ਹੈ। ਸ੍ਰੀ ਟੀਓ ਸਵੀ ਐਨ, ਐਸਪ੍ਰੈਸੀਫ ਦੇ ਸੰਸਥਾਪਕ ਅਤੇ ਸੀਈਓ ਨੇ ਕਿਹਾ।
Espressif ਪੜ੍ਹਨ ਅਤੇ ਵਿਚਾਰਾਂ ਦੀ ਕਦਰ ਕਰਦਾ ਹੈ। ਜਿਵੇਂ ਕਿ IoT ਟੈਕਨਾਲੋਜੀ ਦੇ ਲਗਾਤਾਰ ਅੱਪਗਰੇਡ ਹੋਣ ਨਾਲ ਇੰਜੀਨੀਅਰਾਂ 'ਤੇ ਉੱਚ ਲੋੜਾਂ ਪੈਦਾ ਹੁੰਦੀਆਂ ਹਨ, ਅਸੀਂ IoT ਚਿਪਸ, ਓਪਰੇਟਿੰਗ ਸਿਸਟਮ, ਸੌਫਟਵੇਅਰ ਫਰੇਮਵਰਕ, ਐਪਲੀਕੇਸ਼ਨ ਸਕੀਮਾਂ ਅਤੇ ਕਲਾਉਡ ਸੇਵਾ ਉਤਪਾਦਾਂ ਵਿੱਚ ਤੇਜ਼ੀ ਨਾਲ ਮੁਹਾਰਤ ਹਾਸਲ ਕਰਨ ਲਈ ਹੋਰ ਲੋਕਾਂ ਦੀ ਕਿਵੇਂ ਮਦਦ ਕਰ ਸਕਦੇ ਹਾਂ? ਜਿਵੇਂ ਕਿ ਕਹਾਵਤ ਹੈ, ਇੱਕ ਆਦਮੀ ਨੂੰ ਮੱਛੀ ਦੇਣ ਨਾਲੋਂ ਮੱਛੀ ਫੜਨਾ ਸਿਖਾਉਣਾ ਬਿਹਤਰ ਹੈ. ਇੱਕ ਬ੍ਰੇਨਸਟਾਰਮਿੰਗ ਸੈਸ਼ਨ ਵਿੱਚ, ਇਹ ਸਾਡੇ ਲਈ ਆਇਆ ਕਿ ਅਸੀਂ IoT ਵਿਕਾਸ ਦੇ ਮੁੱਖ ਗਿਆਨ ਨੂੰ ਯੋਜਨਾਬੱਧ ਢੰਗ ਨਾਲ ਛਾਂਟਣ ਲਈ ਇੱਕ ਕਿਤਾਬ ਲਿਖ ਸਕਦੇ ਹਾਂ। ਅਸੀਂ ਇਸ ਨੂੰ ਬੰਦ ਕਰ ਦਿੱਤਾ, ਜਲਦੀ ਹੀ ਸੀਨੀਅਰ ਇੰਜੀਨੀਅਰਾਂ ਦੇ ਇੱਕ ਸਮੂਹ ਨੂੰ ਇਕੱਠਾ ਕੀਤਾ, ਅਤੇ ਏਮਬੇਡਡ ਪ੍ਰੋਗਰਾਮਿੰਗ, IoT ਹਾਰਡਵੇਅਰ ਅਤੇ ਸੌਫਟਵੇਅਰ ਵਿਕਾਸ ਵਿੱਚ ਤਕਨੀਕੀ ਟੀਮ ਦੇ ਤਜ਼ਰਬੇ ਨੂੰ ਜੋੜਿਆ, ਇਹ ਸਭ ਇਸ ਕਿਤਾਬ ਦੇ ਪ੍ਰਕਾਸ਼ਨ ਵਿੱਚ ਯੋਗਦਾਨ ਪਾਉਂਦੇ ਹਨ। ਲਿਖਣ ਦੀ ਪ੍ਰਕਿਰਿਆ ਵਿੱਚ, ਅਸੀਂ ਉਦੇਸ਼ਪੂਰਨ ਅਤੇ ਨਿਰਪੱਖ ਹੋਣ ਦੀ ਪੂਰੀ ਕੋਸ਼ਿਸ਼ ਕੀਤੀ, ਕੋਕੂਨ ਨੂੰ ਹਟਾ ਦਿੱਤਾ, ਅਤੇ ਚੀਜ਼ਾਂ ਦੇ ਇੰਟਰਨੈਟ ਦੀ ਗੁੰਝਲਤਾ ਅਤੇ ਸੁਹਜ ਨੂੰ ਦੱਸਣ ਲਈ ਸੰਖੇਪ ਸਮੀਕਰਨਾਂ ਦੀ ਵਰਤੋਂ ਕੀਤੀ। ਅਸੀਂ ਸਾਧਾਰਨ ਸਵਾਲਾਂ ਨੂੰ ਸਾਵਧਾਨੀ ਨਾਲ ਸਾਰਾਂਸ਼ ਕੀਤਾ, ਕਮਿਊਨਿਟੀ ਦੇ ਫੀਡਬੈਕ ਅਤੇ ਸੁਝਾਵਾਂ ਦਾ ਹਵਾਲਾ ਦਿੱਤਾ, ਵਿਕਾਸ ਪ੍ਰਕਿਰਿਆ ਵਿੱਚ ਸਾਹਮਣੇ ਆਏ ਸਵਾਲਾਂ ਦੇ ਸਪਸ਼ਟ ਜਵਾਬ ਦੇਣ ਲਈ, ਅਤੇ ਸੰਬੰਧਿਤ ਤਕਨੀਸ਼ੀਅਨਾਂ ਅਤੇ ਫੈਸਲੇ ਲੈਣ ਵਾਲਿਆਂ ਲਈ ਵਿਹਾਰਕ IoT ਵਿਕਾਸ ਦਿਸ਼ਾ-ਨਿਰਦੇਸ਼ ਪ੍ਰਦਾਨ ਕਰਨ ਲਈ।
ਕਿਤਾਬ ਦੀ ਬਣਤਰ
ਇਹ ਕਿਤਾਬ ਇੱਕ ਇੰਜੀਨੀਅਰ-ਕੇਂਦਰਿਤ ਦ੍ਰਿਸ਼ਟੀਕੋਣ ਲੈਂਦੀ ਹੈ ਅਤੇ IoT ਪ੍ਰੋਜੈਕਟ ਦੇ ਵਿਕਾਸ ਲਈ ਜ਼ਰੂਰੀ ਗਿਆਨ ਨੂੰ ਕਦਮ ਦਰ ਕਦਮ ਦਰਸਾਉਂਦੀ ਹੈ। ਇਹ ਚਾਰ ਭਾਗਾਂ ਤੋਂ ਬਣਿਆ ਹੈ, ਜਿਵੇਂ ਕਿ:
· ਤਿਆਰੀ (ਅਧਿਆਇ 1): ਇਹ ਭਾਗ IoT, ਖਾਸ IoT ਪ੍ਰੋਜੈਕਟ ਫਰੇਮਵਰਕ, ESP RainMakerr ਕਲਾਉਡ ਪਲੇਟਫਾਰਮ, ਅਤੇ ਵਿਕਾਸ ਵਾਤਾਵਰਣ ESP-IDF ਦੇ ਆਰਕੀਟੈਕਚਰ ਨੂੰ ਪੇਸ਼ ਕਰਦਾ ਹੈ, ਤਾਂ ਜੋ IoT ਪ੍ਰੋਜੈਕਟ ਦੇ ਵਿਕਾਸ ਲਈ ਇੱਕ ਠੋਸ ਨੀਂਹ ਰੱਖੀ ਜਾ ਸਕੇ।
· ਹਾਰਡਵੇਅਰ ਅਤੇ ਡਰਾਈਵਰ ਡਿਵੈਲਪਮੈਂਟ (ਅਧਿਆਇ 5): ESP6-C32 ਚਿੱਪਸੈੱਟ ਦੇ ਆਧਾਰ 'ਤੇ, ਇਹ ਹਿੱਸਾ ਘੱਟੋ-ਘੱਟ ਹਾਰਡਵੇਅਰ ਸਿਸਟਮ ਅਤੇ ਡਰਾਈਵਰ ਡਿਵੈਲਪਮੈਂਟ ਬਾਰੇ ਵਿਸਥਾਰ ਨਾਲ ਦੱਸਦਾ ਹੈ, ਅਤੇ ਡਿਮਿੰਗ, ਕਲਰ ਗਰੇਡਿੰਗ, ਅਤੇ ਵਾਇਰਲੈੱਸ ਸੰਚਾਰ ਦੇ ਨਿਯੰਤਰਣ ਨੂੰ ਲਾਗੂ ਕਰਦਾ ਹੈ।
· ਵਾਇਰਲੈੱਸ ਸੰਚਾਰ ਅਤੇ ਨਿਯੰਤਰਣ (ਅਧਿਆਇ 7): ਇਹ ਹਿੱਸਾ ESP11-C32 ਚਿੱਪ, ਲੋਕਲ ਅਤੇ ਕਲਾਉਡ ਕੰਟਰੋਲ ਪ੍ਰੋਟੋਕੋਲ, ਅਤੇ ਡਿਵਾਈਸਾਂ ਦੇ ਸਥਾਨਕ ਅਤੇ ਰਿਮੋਟ ਕੰਟਰੋਲ 'ਤੇ ਅਧਾਰਤ ਬੁੱਧੀਮਾਨ Wi-Fi ਸੰਰਚਨਾ ਸਕੀਮ ਦੀ ਵਿਆਖਿਆ ਕਰਦਾ ਹੈ। ਇਹ ਸਮਾਰਟਫੋਨ ਐਪਸ, ਫਰਮਵੇਅਰ ਅੱਪਗਰੇਡ, ਅਤੇ ਸੰਸਕਰਣ ਪ੍ਰਬੰਧਨ ਲਈ ਯੋਜਨਾਵਾਂ ਵੀ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ।
· ਓਪਟੀਮਾਈਜੇਸ਼ਨ ਅਤੇ ਮਾਸ ਉਤਪਾਦਨ (ਅਧਿਆਇ 12-15): ਇਹ ਹਿੱਸਾ ਉੱਨਤ IoT ਐਪਲੀਕੇਸ਼ਨਾਂ ਲਈ ਤਿਆਰ ਕੀਤਾ ਗਿਆ ਹੈ, ਪਾਵਰ ਪ੍ਰਬੰਧਨ ਵਿੱਚ ਉਤਪਾਦਾਂ ਦੇ ਅਨੁਕੂਲਨ, ਘੱਟ-ਪਾਵਰ ਅਨੁਕੂਲਨ, ਅਤੇ ਵਧੀ ਹੋਈ ਸੁਰੱਖਿਆ 'ਤੇ ਧਿਆਨ ਕੇਂਦਰਤ ਕਰਦਾ ਹੈ। ਇਹ ਵੱਡੇ ਉਤਪਾਦਨ ਵਿੱਚ ਫਰਮਵੇਅਰ ਬਰਨਿੰਗ ਅਤੇ ਟੈਸਟਿੰਗ ਨੂੰ ਵੀ ਪੇਸ਼ ਕਰਦਾ ਹੈ, ਅਤੇ ਰਿਮੋਟ ਮਾਨੀਟਰਿੰਗ ਪਲੇਟਫਾਰਮ ESP ਇਨਸਾਈਟਸ ਦੁਆਰਾ ਡਿਵਾਈਸ ਫਰਮਵੇਅਰ ਦੀ ਚੱਲ ਰਹੀ ਸਥਿਤੀ ਅਤੇ ਲੌਗਸ ਦਾ ਨਿਦਾਨ ਕਿਵੇਂ ਕਰਨਾ ਹੈ।

ਸਰੋਤ ਕੋਡ ਬਾਰੇ
ਪਾਠਕ ਸਾਬਕਾ ਚਲਾ ਸਕਦੇ ਹਨampਇਸ ਕਿਤਾਬ ਵਿਚਲੇ ਪ੍ਰੋਗਰਾਮਾਂ, ਜਾਂ ਤਾਂ ਹੱਥੀਂ ਕੋਡ ਦਰਜ ਕਰਕੇ ਜਾਂ ਕਿਤਾਬ ਦੇ ਨਾਲ ਮੌਜੂਦ ਸਰੋਤ ਕੋਡ ਦੀ ਵਰਤੋਂ ਕਰਕੇ। ਅਸੀਂ ਸਿਧਾਂਤ ਅਤੇ ਅਭਿਆਸ ਦੇ ਸੁਮੇਲ 'ਤੇ ਜ਼ੋਰ ਦਿੰਦੇ ਹਾਂ, ਅਤੇ ਇਸ ਤਰ੍ਹਾਂ ਲਗਭਗ ਹਰ ਅਧਿਆਇ ਵਿੱਚ ਸਮਾਰਟ ਲਾਈਟ ਪ੍ਰੋਜੈਕਟ 'ਤੇ ਅਧਾਰਤ ਇੱਕ ਅਭਿਆਸ ਸੈਕਸ਼ਨ ਸੈੱਟ ਕਰਦੇ ਹਾਂ। ਸਾਰੇ ਕੋਡ ਓਪਨ-ਸੋਰਸਡ ਹਨ। ਸਰੋਤ ਕੋਡ ਨੂੰ ਡਾਊਨਲੋਡ ਕਰਨ ਅਤੇ GitHub ਅਤੇ ਸਾਡੇ ਅਧਿਕਾਰਤ ਫੋਰਮ esp32.com 'ਤੇ ਇਸ ਕਿਤਾਬ ਨਾਲ ਸਬੰਧਤ ਭਾਗਾਂ ਵਿੱਚ ਇਸ ਬਾਰੇ ਚਰਚਾ ਕਰਨ ਲਈ ਪਾਠਕਾਂ ਦਾ ਸੁਆਗਤ ਹੈ। ਇਸ ਕਿਤਾਬ ਦਾ ਓਪਨ-ਸੋਰਸ ਕੋਡ ਅਪਾਚੇ ਲਾਇਸੈਂਸ 2.0 ਦੀਆਂ ਸ਼ਰਤਾਂ ਦੇ ਅਧੀਨ ਹੈ।
ਲੇਖਕ ਦਾ ਨੋਟ
ਇਹ ਕਿਤਾਬ ਅਧਿਕਾਰਤ ਤੌਰ 'ਤੇ Espressif Systems ਦੁਆਰਾ ਤਿਆਰ ਕੀਤੀ ਗਈ ਹੈ ਅਤੇ ਕੰਪਨੀ ਦੇ ਸੀਨੀਅਰ ਇੰਜੀਨੀਅਰਾਂ ਦੁਆਰਾ ਲਿਖੀ ਗਈ ਹੈ। ਇਹ 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 ਨੋਟ ਜਾਂ ਸੁਝਾਅ।
ਇਸ ਕਿਤਾਬ ਵਿੱਚ ਜ਼ਿਆਦਾਤਰ ਕਮਾਂਡਾਂ ਲੀਨਕਸ ਦੇ ਅਧੀਨ ਚਲਾਈਆਂ ਜਾਂਦੀਆਂ ਹਨ, ਜੋ ਕਿ “$” ਅੱਖਰ ਦੁਆਰਾ ਪ੍ਰੋਂਪਟ ਕੀਤੀਆਂ ਜਾਂਦੀਆਂ ਹਨ। ਜੇਕਰ ਕਮਾਂਡ ਨੂੰ ਚਲਾਉਣ ਲਈ ਸੁਪਰਯੂਜ਼ਰ ਵਿਸ਼ੇਸ਼ ਅਧਿਕਾਰਾਂ ਦੀ ਲੋੜ ਹੈ, ਤਾਂ ਪ੍ਰੋਂਪਟ ਨੂੰ "#" ਨਾਲ ਬਦਲ ਦਿੱਤਾ ਜਾਵੇਗਾ। ਮੈਕ ਸਿਸਟਮਾਂ 'ਤੇ ਕਮਾਂਡ ਪ੍ਰੋਂਪਟ "%" ਹੈ, ਜਿਵੇਂ ਕਿ ਸੈਕਸ਼ਨ 4.2.3 ਮੈਕ 'ਤੇ ESP-IDF ਇੰਸਟਾਲ ਕਰਨਾ ਵਿੱਚ ਵਰਤਿਆ ਗਿਆ ਹੈ।
ਇਸ ਕਿਤਾਬ ਵਿੱਚ ਮੁੱਖ ਪਾਠ ਚਾਰਟਰ ਵਿੱਚ ਛਾਪਿਆ ਜਾਵੇਗਾ, ਜਦੋਂ ਕਿ ਕੋਡ ਸਾਬਕਾamples, ਕੰਪੋਨੈਂਟਸ, ਫੰਕਸ਼ਨ, ਵੇਰੀਏਬਲ, ਕੋਡ file ਨਾਮ, ਕੋਡ ਡਾਇਰੈਕਟਰੀਆਂ, ਅਤੇ ਸਤਰ ਕੋਰੀਅਰ ਨਿਊ ​​ਵਿੱਚ ਹੋਣਗੇ।
ਕਮਾਂਡਾਂ ਜਾਂ ਟੈਕਸਟ ਜਿਨ੍ਹਾਂ ਨੂੰ ਉਪਭੋਗਤਾ ਦੁਆਰਾ ਇਨਪੁਟ ਕਰਨ ਦੀ ਜ਼ਰੂਰਤ ਹੁੰਦੀ ਹੈ, ਅਤੇ "ਐਂਟਰ" ਕੁੰਜੀ ਨੂੰ ਦਬਾ ਕੇ ਦਰਜ ਕੀਤੇ ਜਾ ਸਕਣ ਵਾਲੇ ਕਮਾਂਡਾਂ ਨੂੰ ਕੋਰੀਅਰ ਨਿਊ ​​ਬੋਲਡ ਵਿੱਚ ਪ੍ਰਿੰਟ ਕੀਤਾ ਜਾਵੇਗਾ। ਲੌਗਸ ਅਤੇ ਕੋਡ ਬਲਾਕ ਹਲਕੇ ਨੀਲੇ ਬਕਸਿਆਂ ਵਿੱਚ ਪੇਸ਼ ਕੀਤੇ ਜਾਣਗੇ।
ExampLe:
ਦੂਜਾ, NVS ਭਾਗ ਬਾਈਨਰੀ ਬਣਾਉਣ ਲਈ esp-idf/components/nvs flash/nvs ਭਾਗ ਜਨਰੇਟਰ/nvs ਭਾਗ gen.py ਦੀ ਵਰਤੋਂ ਕਰੋ। file ਹੇਠ ਦਿੱਤੀ ਕਮਾਂਡ ਨਾਲ ਵਿਕਾਸ ਹੋਸਟ 'ਤੇ:
$python $IDF PATH/components/nvs flash/nvs ਭਾਗ ਜਨਰੇਟਰ/nvs ਭਾਗ gen.py -ਇਨਪੁਟ ਪੁੰਜ prod.csv -ਆਊਟਪੁੱਟ ਪੁੰਜ prod.bin -ਆਕਾਰ NVS ਭਾਗ ਆਕਾਰ

ਅਧਿਆਇ 1

ਜਾਣ-ਪਛਾਣ

ਨੂੰ

ਆਈ.ਓ.ਟੀ

20ਵੀਂ ਸਦੀ ਦੇ ਅੰਤ ਵਿੱਚ, ਕੰਪਿਊਟਰ ਨੈਟਵਰਕ ਅਤੇ ਸੰਚਾਰ ਤਕਨੀਕਾਂ ਦੇ ਉਭਾਰ ਦੇ ਨਾਲ, ਇੰਟਰਨੈਟ ਤੇਜ਼ੀ ਨਾਲ ਲੋਕਾਂ ਦੇ ਜੀਵਨ ਵਿੱਚ ਏਕੀਕ੍ਰਿਤ ਹੋ ਗਿਆ। ਜਿਵੇਂ ਕਿ ਇੰਟਰਨੈਟ ਤਕਨਾਲੋਜੀ ਪਰਿਪੱਕ ਹੁੰਦੀ ਜਾ ਰਹੀ ਹੈ, ਇੰਟਰਨੈਟ ਆਫ ਥਿੰਗਜ਼ (IoT) ਦਾ ਵਿਚਾਰ ਪੈਦਾ ਹੋਇਆ ਸੀ। ਸ਼ਾਬਦਿਕ ਤੌਰ 'ਤੇ, IoT ਦਾ ਅਰਥ ਹੈ ਇੱਕ ਇੰਟਰਨੈਟ ਜਿੱਥੇ ਚੀਜ਼ਾਂ ਜੁੜੀਆਂ ਹੁੰਦੀਆਂ ਹਨ। ਜਦੋਂ ਕਿ ਅਸਲ ਇੰਟਰਨੈਟ ਸਪੇਸ ਅਤੇ ਸਮੇਂ ਦੀਆਂ ਸੀਮਾਵਾਂ ਨੂੰ ਤੋੜਦਾ ਹੈ ਅਤੇ "ਵਿਅਕਤੀ ਅਤੇ ਵਿਅਕਤੀ" ਵਿਚਕਾਰ ਦੂਰੀ ਨੂੰ ਘਟਾਉਂਦਾ ਹੈ, IoT "ਚੀਜ਼ਾਂ" ਨੂੰ ਇੱਕ ਮਹੱਤਵਪੂਰਨ ਭਾਗੀਦਾਰ ਬਣਾਉਂਦਾ ਹੈ, "ਲੋਕਾਂ" ਅਤੇ "ਚੀਜ਼ਾਂ" ਨੂੰ ਇੱਕ ਦੂਜੇ ਦੇ ਨੇੜੇ ਲਿਆਉਂਦਾ ਹੈ। ਆਉਣ ਵਾਲੇ ਭਵਿੱਖ ਵਿੱਚ, IoT ਸੂਚਨਾ ਉਦਯੋਗ ਦੀ ਡ੍ਰਾਈਵਿੰਗ ਫੋਰਸ ਬਣਨ ਲਈ ਤਿਆਰ ਹੈ।
ਇਸ ਲਈ, ਚੀਜ਼ਾਂ ਦਾ ਇੰਟਰਨੈਟ ਕੀ ਹੈ?
ਚੀਜ਼ਾਂ ਦੇ ਇੰਟਰਨੈਟ ਨੂੰ ਸਹੀ ਢੰਗ ਨਾਲ ਪਰਿਭਾਸ਼ਿਤ ਕਰਨਾ ਔਖਾ ਹੈ, ਕਿਉਂਕਿ ਇਸਦਾ ਅਰਥ ਅਤੇ ਦਾਇਰਾ ਲਗਾਤਾਰ ਵਿਕਸਿਤ ਹੋ ਰਿਹਾ ਹੈ। 1995 ਵਿੱਚ, ਬਿਲ ਗੇਟਸ ਨੇ ਪਹਿਲੀ ਵਾਰ ਆਪਣੀ ਕਿਤਾਬ The Road Ahead ਵਿੱਚ IoT ਦਾ ਵਿਚਾਰ ਪੇਸ਼ ਕੀਤਾ। ਸਧਾਰਨ ਰੂਪ ਵਿੱਚ, IoT ਵਸਤੂਆਂ ਨੂੰ ਇੰਟਰਨੈਟ ਰਾਹੀਂ ਇੱਕ ਦੂਜੇ ਨਾਲ ਜਾਣਕਾਰੀ ਦਾ ਆਦਾਨ-ਪ੍ਰਦਾਨ ਕਰਨ ਦੇ ਯੋਗ ਬਣਾਉਂਦਾ ਹੈ। ਇਸਦਾ ਅੰਤਮ ਟੀਚਾ "ਹਰ ਚੀਜ਼ ਦਾ ਇੰਟਰਨੈਟ" ਸਥਾਪਤ ਕਰਨਾ ਹੈ। ਇਹ IoT ਦੀ ਸ਼ੁਰੂਆਤੀ ਵਿਆਖਿਆ ਹੈ, ਨਾਲ ਹੀ ਭਵਿੱਖ ਦੀ ਤਕਨਾਲੋਜੀ ਦੀ ਕਲਪਨਾ ਹੈ। ਤੀਹ ਸਾਲਾਂ ਬਾਅਦ, ਆਰਥਿਕਤਾ ਅਤੇ ਤਕਨਾਲੋਜੀ ਦੇ ਤੇਜ਼ੀ ਨਾਲ ਵਿਕਾਸ ਦੇ ਨਾਲ, ਕਲਪਨਾ ਹਕੀਕਤ ਵਿੱਚ ਆ ਰਹੀ ਹੈ. ਸਮਾਰਟ ਡਿਵਾਈਸਾਂ, ਸਮਾਰਟ ਘਰਾਂ, ਸਮਾਰਟ ਸ਼ਹਿਰਾਂ, ਵਾਹਨਾਂ ਦੇ ਇੰਟਰਨੈਟ ਅਤੇ ਪਹਿਨਣਯੋਗ ਡਿਵਾਈਸਾਂ ਤੋਂ ਲੈ ਕੇ, IoT ਤਕਨਾਲੋਜੀ ਦੁਆਰਾ ਸਮਰਥਿਤ "ਮੈਟਾਵਰਸ" ਤੱਕ, ਨਵੀਆਂ ਧਾਰਨਾਵਾਂ ਲਗਾਤਾਰ ਉਭਰ ਰਹੀਆਂ ਹਨ। ਇਸ ਅਧਿਆਇ ਵਿੱਚ, ਅਸੀਂ IoT ਦੀ ਸਪਸ਼ਟ ਸਮਝ ਪ੍ਰਾਪਤ ਕਰਨ ਵਿੱਚ ਤੁਹਾਡੀ ਮਦਦ ਕਰਨ ਲਈ, ਅਸੀਂ ਇੰਟਰਨੈਟ ਆਫ਼ ਥਿੰਗਜ਼ ਦੇ ਆਰਕੀਟੈਕਚਰ ਦੀ ਵਿਆਖਿਆ ਨਾਲ ਸ਼ੁਰੂ ਕਰਾਂਗੇ, ਅਤੇ ਫਿਰ ਸਭ ਤੋਂ ਆਮ IoT ਐਪਲੀਕੇਸ਼ਨ, ਸਮਾਰਟ ਹੋਮ ਨੂੰ ਪੇਸ਼ ਕਰਾਂਗੇ।
1.1 IoT ਦਾ ਆਰਕੀਟੈਕਚਰ
ਇੰਟਰਨੈੱਟ ਆਫ਼ ਥਿੰਗਜ਼ ਵਿੱਚ ਕਈ ਤਕਨੀਕਾਂ ਸ਼ਾਮਲ ਹੁੰਦੀਆਂ ਹਨ ਜਿਨ੍ਹਾਂ ਦੀਆਂ ਵੱਖ-ਵੱਖ ਉਦਯੋਗਾਂ ਵਿੱਚ ਵੱਖ-ਵੱਖ ਐਪਲੀਕੇਸ਼ਨ ਲੋੜਾਂ ਅਤੇ ਫਾਰਮ ਹੁੰਦੇ ਹਨ। ਢਾਂਚੇ ਨੂੰ ਛਾਂਟਣ ਲਈ, ਆਈਓਟੀ ਦੀਆਂ ਮੁੱਖ ਤਕਨਾਲੋਜੀਆਂ ਅਤੇ ਐਪਲੀਕੇਸ਼ਨ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ, ਇੱਕ ਯੂਨੀਫਾਈਡ ਆਰਕੀਟੈਕਚਰ ਅਤੇ ਇੱਕ ਮਿਆਰੀ ਤਕਨੀਕੀ ਪ੍ਰਣਾਲੀ ਸਥਾਪਤ ਕਰਨਾ ਜ਼ਰੂਰੀ ਹੈ। ਇਸ ਕਿਤਾਬ ਵਿੱਚ, IoT ਦੇ ਆਰਕੀਟੈਕਚਰ ਨੂੰ ਸਿਰਫ਼ ਚਾਰ ਲੇਅਰਾਂ ਵਿੱਚ ਵੰਡਿਆ ਗਿਆ ਹੈ: ਧਾਰਨਾ ਅਤੇ ਨਿਯੰਤਰਣ ਪਰਤ, ਨੈੱਟਵਰਕ ਲੇਅਰ, ਪਲੇਟਫਾਰਮ ਲੇਅਰ, ਅਤੇ ਐਪਲੀਕੇਸ਼ਨ ਲੇਅਰ।
ਧਾਰਨਾ ਅਤੇ ਨਿਯੰਤਰਣ ਪਰਤ IoT ਆਰਕੀਟੈਕਚਰ ਦੇ ਸਭ ਤੋਂ ਬੁਨਿਆਦੀ ਤੱਤ ਦੇ ਰੂਪ ਵਿੱਚ, ਧਾਰਨਾ ਅਤੇ ਨਿਯੰਤਰਣ ਪਰਤ IoT ਦੀ ਵਿਆਪਕ ਸੰਵੇਦਨਾ ਨੂੰ ਮਹਿਸੂਸ ਕਰਨ ਲਈ ਕੋਰ ਹੈ। ਇਸਦਾ ਮੁੱਖ ਕੰਮ ਜਾਣਕਾਰੀ ਨੂੰ ਇਕੱਠਾ ਕਰਨਾ, ਪਛਾਣਨਾ ਅਤੇ ਕੰਟਰੋਲ ਕਰਨਾ ਹੈ। ਇਸ ਵਿੱਚ ਧਾਰਨਾ ਦੀ ਸਮਰੱਥਾ ਵਾਲੇ ਕਈ ਤਰ੍ਹਾਂ ਦੇ ਯੰਤਰ ਹੁੰਦੇ ਹਨ,
3

ਪਛਾਣ, ਨਿਯੰਤਰਣ ਅਤੇ ਐਗਜ਼ੀਕਿਊਸ਼ਨ, ਅਤੇ ਡੇਟਾ ਨੂੰ ਮੁੜ ਪ੍ਰਾਪਤ ਕਰਨ ਅਤੇ ਵਿਸ਼ਲੇਸ਼ਣ ਕਰਨ ਲਈ ਜਿੰਮੇਵਾਰ ਹੈ ਜਿਵੇਂ ਕਿ ਪਦਾਰਥਕ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ, ਵਿਹਾਰਕ ਰੁਝਾਨਾਂ, ਅਤੇ ਡਿਵਾਈਸ ਸਥਿਤੀ। ਇਸ ਤਰ੍ਹਾਂ, IoT ਅਸਲ ਭੌਤਿਕ ਸੰਸਾਰ ਨੂੰ ਪਛਾਣਦਾ ਹੈ। ਇਸ ਤੋਂ ਇਲਾਵਾ, ਲੇਅਰ ਡਿਵਾਈਸ ਦੀ ਸਥਿਤੀ ਨੂੰ ਨਿਯੰਤਰਿਤ ਕਰਨ ਦੇ ਯੋਗ ਹੈ.
ਇਸ ਪਰਤ ਦੇ ਸਭ ਤੋਂ ਆਮ ਯੰਤਰ ਵੱਖ-ਵੱਖ ਸੈਂਸਰ ਹਨ, ਜੋ ਜਾਣਕਾਰੀ ਇਕੱਠੀ ਕਰਨ ਅਤੇ ਪਛਾਣ ਕਰਨ ਵਿੱਚ ਮਹੱਤਵਪੂਰਨ ਭੂਮਿਕਾ ਨਿਭਾਉਂਦੇ ਹਨ। ਸੈਂਸਰ ਮਨੁੱਖੀ ਸੰਵੇਦੀ ਅੰਗਾਂ ਵਾਂਗ ਹੁੰਦੇ ਹਨ, ਜਿਵੇਂ ਕਿ ਦ੍ਰਿਸ਼ਟੀ ਦੇ ਬਰਾਬਰ ਫੋਟੋਸੈਂਸਟਿਵ ਸੈਂਸਰ, ਸੁਣਨ ਲਈ ਧੁਨੀ ਸੰਵੇਦਕ, ਸੁੰਘਣ ਲਈ ਗੈਸ ਸੈਂਸਰ, ਅਤੇ ਦਬਾਅ- ਅਤੇ ਤਾਪਮਾਨ-ਸੰਵੇਦਨਸ਼ੀਲ ਛੋਹਣ ਲਈ ਸੰਵੇਦਕ। ਇਹਨਾਂ ਸਾਰੇ "ਸੰਵੇਦੀ ਅੰਗਾਂ" ਦੇ ਨਾਲ, ਵਸਤੂਆਂ "ਜ਼ਿੰਦਾ" ਬਣ ਜਾਂਦੀਆਂ ਹਨ ਅਤੇ ਭੌਤਿਕ ਸੰਸਾਰ ਦੀ ਬੁੱਧੀਮਾਨ ਧਾਰਨਾ, ਮਾਨਤਾ ਅਤੇ ਹੇਰਾਫੇਰੀ ਦੇ ਸਮਰੱਥ ਹੁੰਦੀਆਂ ਹਨ।
ਨੈਟਵਰਕ ਲੇਅਰ ਦਾ ਮੁੱਖ ਕੰਮ ਜਾਣਕਾਰੀ ਨੂੰ ਸੰਚਾਰਿਤ ਕਰਨਾ ਹੈ, ਜਿਸ ਵਿੱਚ ਧਾਰਨਾ ਅਤੇ ਨਿਯੰਤਰਣ ਪਰਤ ਤੋਂ ਪ੍ਰਾਪਤ ਕੀਤੇ ਡੇਟਾ ਨੂੰ ਨਿਸ਼ਚਿਤ ਟੀਚੇ ਤੱਕ ਪਹੁੰਚਾਉਣਾ ਹੈ, ਅਤੇ ਨਾਲ ਹੀ ਐਪਲੀਕੇਸ਼ਨ ਲੇਅਰ ਤੋਂ ਵਾਪਸ ਧਾਰਨਾ ਅਤੇ ਨਿਯੰਤਰਣ ਪਰਤ ਤੱਕ ਜਾਰੀ ਕੀਤੀਆਂ ਕਮਾਂਡਾਂ ਵੀ ਸ਼ਾਮਲ ਹਨ। ਇਹ ਇੱਕ IoT ਸਿਸਟਮ ਦੀਆਂ ਵੱਖ-ਵੱਖ ਪਰਤਾਂ ਨੂੰ ਜੋੜਨ ਵਾਲੇ ਇੱਕ ਮਹੱਤਵਪੂਰਨ ਸੰਚਾਰ ਪੁਲ ਵਜੋਂ ਕੰਮ ਕਰਦਾ ਹੈ। ਇੰਟਰਨੈਟ ਆਫ ਥਿੰਗਜ਼ ਦਾ ਇੱਕ ਬੁਨਿਆਦੀ ਮਾਡਲ ਸਥਾਪਤ ਕਰਨ ਲਈ, ਇਸ ਵਿੱਚ ਵਸਤੂਆਂ ਨੂੰ ਇੱਕ ਨੈਟਵਰਕ ਵਿੱਚ ਜੋੜਨ ਲਈ ਦੋ ਕਦਮ ਸ਼ਾਮਲ ਹੁੰਦੇ ਹਨ: ਇੰਟਰਨੈਟ ਤੱਕ ਪਹੁੰਚ ਅਤੇ ਇੰਟਰਨੈਟ ਦੁਆਰਾ ਪ੍ਰਸਾਰਣ।
ਇੰਟਰਨੈੱਟ ਇੰਟਰਨੈੱਟ ਤੱਕ ਪਹੁੰਚ ਵਿਅਕਤੀ ਅਤੇ ਵਿਅਕਤੀ ਵਿਚਕਾਰ ਆਪਸੀ ਸੰਪਰਕ ਨੂੰ ਸਮਰੱਥ ਬਣਾਉਂਦੀ ਹੈ, ਪਰ ਚੀਜ਼ਾਂ ਨੂੰ ਵੱਡੇ ਪਰਿਵਾਰ ਵਿੱਚ ਸ਼ਾਮਲ ਕਰਨ ਵਿੱਚ ਅਸਫਲ ਰਹਿੰਦੀ ਹੈ। IoT ਦੇ ਆਗਮਨ ਤੋਂ ਪਹਿਲਾਂ, ਜ਼ਿਆਦਾਤਰ ਚੀਜ਼ਾਂ "ਨੈੱਟਵਰਕ-ਯੋਗ" ਨਹੀਂ ਸਨ। ਤਕਨਾਲੋਜੀ ਦੇ ਨਿਰੰਤਰ ਵਿਕਾਸ ਲਈ ਧੰਨਵਾਦ, IoT ਚੀਜ਼ਾਂ ਨੂੰ ਇੰਟਰਨੈਟ ਨਾਲ ਜੋੜਨ ਦਾ ਪ੍ਰਬੰਧ ਕਰਦਾ ਹੈ, ਇਸ ਤਰ੍ਹਾਂ "ਲੋਕਾਂ ਅਤੇ ਚੀਜ਼ਾਂ", ਅਤੇ "ਚੀਜ਼ਾਂ ਅਤੇ ਚੀਜ਼ਾਂ" ਵਿਚਕਾਰ ਅੰਤਰ-ਸੰਬੰਧ ਨੂੰ ਮਹਿਸੂਸ ਕਰਦਾ ਹੈ। ਇੰਟਰਨੈਟ ਕਨੈਕਸ਼ਨ ਨੂੰ ਲਾਗੂ ਕਰਨ ਦੇ ਦੋ ਆਮ ਤਰੀਕੇ ਹਨ: ਵਾਇਰਡ ਨੈਟਵਰਕ ਐਕਸੈਸ ਅਤੇ ਵਾਇਰਲੈੱਸ ਨੈਟਵਰਕ ਐਕਸੈਸ।
ਵਾਇਰਡ ਨੈੱਟਵਰਕ ਪਹੁੰਚ ਵਿਧੀਆਂ ਵਿੱਚ ਈਥਰਨੈੱਟ, ਸੀਰੀਅਲ ਸੰਚਾਰ (ਉਦਾਹਰਨ ਲਈ, RS-232, RS-485) ਅਤੇ USB ਸ਼ਾਮਲ ਹਨ, ਜਦੋਂ ਕਿ ਵਾਇਰਲੈੱਸ ਨੈੱਟਵਰਕ ਪਹੁੰਚ ਵਾਇਰਲੈੱਸ ਸੰਚਾਰ 'ਤੇ ਨਿਰਭਰ ਕਰਦੀ ਹੈ, ਜਿਸ ਨੂੰ ਅੱਗੇ ਛੋਟੀ-ਸੀਮਾ ਦੇ ਵਾਇਰਲੈੱਸ ਸੰਚਾਰ ਅਤੇ ਲੰਬੀ-ਸੀਮਾ ਦੇ ਵਾਇਰਲੈੱਸ ਸੰਚਾਰ ਵਿੱਚ ਵੰਡਿਆ ਜਾ ਸਕਦਾ ਹੈ।
ਛੋਟੀ-ਸੀਮਾ ਦੇ ਵਾਇਰਲੈੱਸ ਸੰਚਾਰ ਵਿੱਚ ZigBee, ਬਲੂਟੁੱਥਰ, Wi-Fi, ਨਿਅਰ-ਫੀਲਡ ਕਮਿਊਨੀਕੇਸ਼ਨ (NFC), ਅਤੇ ਰੇਡੀਓ ਫ੍ਰੀਕੁਐਂਸੀ ਆਈਡੈਂਟੀਫਿਕੇਸ਼ਨ (RFID) ਸ਼ਾਮਲ ਹਨ। ਲੰਬੀ ਦੂਰੀ ਦੇ ਵਾਇਰਲੈੱਸ ਸੰਚਾਰ ਵਿੱਚ ਐਨਹਾਂਸਡ ਮਸ਼ੀਨ ਟਾਈਪ ਕਮਿਊਨੀਕੇਸ਼ਨ (eMTC), LoRa, Narrow Band Internet of Things (NB-IoT), 2G, 3G, 4G, 5G, ਆਦਿ ਸ਼ਾਮਲ ਹਨ।
ਇੰਟਰਨੈਟ ਰਾਹੀਂ ਪ੍ਰਸਾਰਣ ਇੰਟਰਨੈਟ ਪਹੁੰਚ ਦੇ ਵੱਖੋ-ਵੱਖਰੇ ਤਰੀਕੇ ਡੇਟਾ ਦੇ ਅਨੁਸਾਰੀ ਭੌਤਿਕ ਪ੍ਰਸਾਰਣ ਲਿੰਕ ਵੱਲ ਲੈ ਜਾਂਦੇ ਹਨ। ਅਗਲੀ ਗੱਲ ਇਹ ਫੈਸਲਾ ਕਰਨਾ ਹੈ ਕਿ ਡੇਟਾ ਨੂੰ ਸੰਚਾਰਿਤ ਕਰਨ ਲਈ ਕਿਹੜਾ ਸੰਚਾਰ ਪ੍ਰੋਟੋਕੋਲ ਵਰਤਣਾ ਹੈ। ਇੰਟਰਨੈਟ ਟਰਮੀਨਲਾਂ ਦੀ ਤੁਲਨਾ ਵਿੱਚ, ਜ਼ਿਆਦਾਤਰ IoT ਟਰਮੀਨਲਾਂ ਵਿੱਚ ਵਰਤਮਾਨ ਵਿੱਚ ਘੱਟ ਹਨ
4 ESP32-C3 ਵਾਇਰਲੈੱਸ ਐਡਵੈਂਚਰ: IoT ਲਈ ਇੱਕ ਵਿਆਪਕ ਗਾਈਡ

ਉਪਲਬਧ ਸਰੋਤ, ਜਿਵੇਂ ਕਿ ਪ੍ਰੋਸੈਸਿੰਗ ਪ੍ਰਦਰਸ਼ਨ, ਸਟੋਰੇਜ ਸਮਰੱਥਾ, ਨੈਟਵਰਕ ਰੇਟ, ਆਦਿ, ਇਸ ਲਈ ਇੱਕ ਸੰਚਾਰ ਪ੍ਰੋਟੋਕੋਲ ਚੁਣਨਾ ਜ਼ਰੂਰੀ ਹੈ ਜੋ IoT ਐਪਲੀਕੇਸ਼ਨਾਂ ਵਿੱਚ ਘੱਟ ਸਰੋਤਾਂ ਨੂੰ ਰੱਖਦਾ ਹੈ। ਇੱਥੇ ਦੋ ਸੰਚਾਰ ਪ੍ਰੋਟੋਕੋਲ ਹਨ ਜੋ ਅੱਜ ਵਿਆਪਕ ਤੌਰ 'ਤੇ ਵਰਤੇ ਜਾਂਦੇ ਹਨ: ਮੈਸੇਜ ਕਿਊਇੰਗ ਟੈਲੀਮੈਟਰੀ ਟ੍ਰਾਂਸਪੋਰਟ (MQTT) ਅਤੇ ਕੰਸਟ੍ਰੇਨਡ ਐਪਲੀਕੇਸ਼ਨ ਪ੍ਰੋਟੋਕੋਲ (CoAP)।
ਪਲੇਟਫਾਰਮ ਪਰਤ ਪਲੇਟਫਾਰਮ ਪਰਤ ਮੁੱਖ ਤੌਰ 'ਤੇ IoT ਕਲਾਉਡ ਪਲੇਟਫਾਰਮਾਂ ਨੂੰ ਦਰਸਾਉਂਦੀ ਹੈ। ਜਦੋਂ ਸਾਰੇ IoT ਟਰਮੀਨਲ ਨੈਟਵਰਕ ਕੀਤੇ ਜਾਂਦੇ ਹਨ, ਤਾਂ ਉਹਨਾਂ ਦੇ ਡੇਟਾ ਨੂੰ ਇੱਕ IoT ਕਲਾਉਡ ਪਲੇਟਫਾਰਮ 'ਤੇ ਗਣਨਾ ਅਤੇ ਸਟੋਰ ਕਰਨ ਲਈ ਇਕੱਠਾ ਕਰਨ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ। ਪਲੇਟਫਾਰਮ ਪਰਤ ਮੁੱਖ ਤੌਰ 'ਤੇ ਵਿਸ਼ਾਲ ਡਿਵਾਈਸਾਂ ਦੀ ਪਹੁੰਚ ਅਤੇ ਪ੍ਰਬੰਧਨ ਦੀ ਸਹੂਲਤ ਲਈ IoT ਐਪਲੀਕੇਸ਼ਨਾਂ ਦਾ ਸਮਰਥਨ ਕਰਦੀ ਹੈ। ਇਹ 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. ਆਮ ਸਮਾਰਟ ਹੋਮ ਡਿਵਾਈਸਾਂ ਸਮਾਰਟ ਹੋਮ ਦੇ ਵਿਕਾਸ ਨੂੰ ਬਸ ਸਮਾਰਟ ਉਤਪਾਦਾਂ ਵਿੱਚ ਵੰਡਿਆ ਜਾ ਸਕਦਾ ਹੈtage, ਸੀਨ ਇੰਟਰਕਨੈਕਸ਼ਨ ਐੱਸtagਈ ਅਤੇ ਬੁੱਧੀਮਾਨ ਐੱਸtage, ਜਿਵੇਂ ਕਿ ਚਿੱਤਰ 1.2 ਵਿੱਚ ਦਿਖਾਇਆ ਗਿਆ ਹੈ।
ਚਿੱਤਰ 1.2. ਵਿਕਾਸ ਐੱਸtage of smart home 6 ESP32-C3 ਵਾਇਰਲੈੱਸ ਐਡਵੈਂਚਰ: IoT ਲਈ ਇੱਕ ਵਿਆਪਕ ਗਾਈਡ

ਪਹਿਲਾ ਐੱਸtage ਸਮਾਰਟ ਉਤਪਾਦਾਂ ਬਾਰੇ ਹੈ। ਰਵਾਇਤੀ ਘਰਾਂ ਤੋਂ ਵੱਖ, ਸਮਾਰਟ ਘਰਾਂ ਵਿੱਚ, IoT ਡਿਵਾਈਸਾਂ ਸੈਂਸਰਾਂ ਨਾਲ ਸਿਗਨਲ ਪ੍ਰਾਪਤ ਕਰਦੀਆਂ ਹਨ, ਅਤੇ ਵਾਇਰਲੈੱਸ ਸੰਚਾਰ ਤਕਨੀਕਾਂ ਜਿਵੇਂ ਕਿ Wi-Fi, ਬਲੂਟੁੱਥ LE, ਅਤੇ ZigBee ਰਾਹੀਂ ਨੈੱਟਵਰਕ ਕੀਤੀਆਂ ਜਾਂਦੀਆਂ ਹਨ। ਯੂਜ਼ਰਸ ਸਮਾਰਟ ਪ੍ਰੋਡਕਟਸ ਨੂੰ ਕਈ ਤਰੀਕਿਆਂ ਨਾਲ ਕੰਟਰੋਲ ਕਰ ਸਕਦੇ ਹਨ, ਜਿਵੇਂ ਕਿ ਸਮਾਰਟਫੋਨ ਐਪਸ, ਵੌਇਸ ਅਸਿਸਟੈਂਟ, ਸਮਾਰਟ ਸਪੀਕਰ ਕੰਟਰੋਲ ਆਦਿ। ਦੂਜਾ ਐੱਸ.tage ਸੀਨ ਇੰਟਰਕਨੈਕਸ਼ਨ 'ਤੇ ਫੋਕਸ ਕਰਦਾ ਹੈ। ਇਸ 'ਚ ਐੱਸtage, ਡਿਵੈਲਪਰ ਹੁਣ ਸਿੰਗਲ ਸਮਾਰਟ ਉਤਪਾਦ ਨੂੰ ਨਿਯੰਤਰਿਤ ਕਰਨ 'ਤੇ ਵਿਚਾਰ ਨਹੀਂ ਕਰ ਰਹੇ ਹਨ, ਪਰ ਦੋ ਜਾਂ ਦੋ ਤੋਂ ਵੱਧ ਸਮਾਰਟ ਉਤਪਾਦਾਂ ਨੂੰ ਆਪਸ ਵਿੱਚ ਜੋੜਨ, ਇੱਕ ਖਾਸ ਹੱਦ ਤੱਕ ਸਵੈਚਾਲਤ, ਅਤੇ ਅੰਤ ਵਿੱਚ ਇੱਕ ਕਸਟਮ ਸੀਨ ਮੋਡ ਬਣਾਉਣ 'ਤੇ ਵਿਚਾਰ ਕਰ ਰਹੇ ਹਨ। ਸਾਬਕਾ ਲਈampਲੇ, ਜਦੋਂ ਉਪਭੋਗਤਾ ਕਿਸੇ ਵੀ ਸੀਨ ਮੋਡ ਬਟਨ ਨੂੰ ਦਬਾਉਦਾ ਹੈ, ਤਾਂ ਲਾਈਟਾਂ, ਪਰਦੇ, ਅਤੇ ਏਅਰ ਕੰਡੀਸ਼ਨਰ ਆਪਣੇ ਆਪ ਪ੍ਰੀਸੈਟਸ ਦੇ ਅਨੁਕੂਲ ਹੋ ਜਾਣਗੇ। ਬੇਸ਼ੱਕ, ਇੱਥੇ ਪੂਰਵ ਸ਼ਰਤ ਹੈ ਕਿ ਲਿੰਕੇਜ ਤਰਕ ਆਸਾਨੀ ਨਾਲ ਸਥਾਪਤ ਕੀਤੇ ਜਾਣ, ਜਿਸ ਵਿੱਚ ਟਰਿੱਗਰ ਸਥਿਤੀਆਂ ਅਤੇ ਐਗਜ਼ੀਕਿਊਸ਼ਨ ਐਕਸ਼ਨ ਸ਼ਾਮਲ ਹਨ। ਕਲਪਨਾ ਕਰੋ ਕਿ ਜਦੋਂ ਅੰਦਰ ਦਾ ਤਾਪਮਾਨ 10 ਡਿਗਰੀ ਸੈਲਸੀਅਸ ਤੋਂ ਘੱਟ ਜਾਂਦਾ ਹੈ ਤਾਂ ਏਅਰ ਕੰਡੀਸ਼ਨਿੰਗ ਹੀਟਿੰਗ ਮੋਡ ਚਾਲੂ ਹੁੰਦਾ ਹੈ; ਕਿ ਸਵੇਰੇ 7 ਵਜੇ, ਉਪਭੋਗਤਾ ਨੂੰ ਜਗਾਉਣ ਲਈ ਸੰਗੀਤ ਵਜਾਇਆ ਜਾਂਦਾ ਹੈ, ਸਮਾਰਟ ਪਰਦੇ ਖੋਲ੍ਹੇ ਜਾਂਦੇ ਹਨ, ਅਤੇ ਚੌਲਾਂ ਦਾ ਕੁਕਰ ਜਾਂ ਬ੍ਰੈੱਡ ਟੋਸਟਰ ਇੱਕ ਸਮਾਰਟ ਸਾਕਟ ਰਾਹੀਂ ਸ਼ੁਰੂ ਹੁੰਦਾ ਹੈ; ਜਿਵੇਂ ਹੀ ਉਪਭੋਗਤਾ ਉੱਠਦਾ ਹੈ ਅਤੇ ਧੋਣਾ ਖਤਮ ਕਰਦਾ ਹੈ, ਨਾਸ਼ਤਾ ਪਹਿਲਾਂ ਹੀ ਪਰੋਸਿਆ ਜਾਂਦਾ ਹੈ, ਤਾਂ ਜੋ ਕੰਮ 'ਤੇ ਜਾਣ ਵਿੱਚ ਕੋਈ ਦੇਰੀ ਨਾ ਹੋਵੇ। ਸਾਡੀ ਜ਼ਿੰਦਗੀ ਕਿੰਨੀ ਸੁਖਾਲੀ ਹੋ ਗਈ ਹੈ! ਤੀਜਾ ਐੱਸtage ਖੁਫੀਆ s ਨੂੰ ਜਾਂਦਾ ਹੈtagਈ. ਜਿਵੇਂ ਕਿ ਵਧੇਰੇ ਸਮਾਰਟ ਹੋਮ ਡਿਵਾਈਸਾਂ ਤੱਕ ਪਹੁੰਚ ਕੀਤੀ ਜਾਂਦੀ ਹੈ, ਉਸੇ ਤਰ੍ਹਾਂ ਡੇਟਾ ਦੀਆਂ ਕਿਸਮਾਂ ਵੀ ਉਤਪੰਨ ਹੁੰਦੀਆਂ ਹਨ। ਕਲਾਉਡ ਕੰਪਿਊਟਿੰਗ, ਵੱਡੇ ਡੇਟਾ ਅਤੇ ਆਰਟੀਫੀਸ਼ੀਅਲ ਇੰਟੈਲੀਜੈਂਸ ਦੀ ਮਦਦ ਨਾਲ, ਇਹ ਇਸ ਤਰ੍ਹਾਂ ਹੈ ਜਿਵੇਂ ਸਮਾਰਟ ਘਰਾਂ ਵਿੱਚ ਇੱਕ "ਸਮਾਰਟ ਦਿਮਾਗ" ਲਗਾਇਆ ਗਿਆ ਹੈ, ਜਿਸ ਨੂੰ ਹੁਣ ਉਪਭੋਗਤਾ ਤੋਂ ਵਾਰ-ਵਾਰ ਹੁਕਮਾਂ ਦੀ ਲੋੜ ਨਹੀਂ ਹੈ। ਉਹ ਪਿਛਲੀਆਂ ਪਰਸਪਰ ਕ੍ਰਿਆਵਾਂ ਤੋਂ ਡੇਟਾ ਇਕੱਠਾ ਕਰਦੇ ਹਨ ਅਤੇ ਉਪਭੋਗਤਾ ਦੇ ਵਿਵਹਾਰ ਦੇ ਪੈਟਰਨਾਂ ਅਤੇ ਤਰਜੀਹਾਂ ਨੂੰ ਸਿੱਖਦੇ ਹਨ, ਤਾਂ ਜੋ ਗਤੀਵਿਧੀਆਂ ਨੂੰ ਸਵੈਚਾਲਿਤ ਕੀਤਾ ਜਾ ਸਕੇ, ਜਿਸ ਵਿੱਚ ਫੈਸਲੇ ਲੈਣ ਲਈ ਸਿਫ਼ਾਰਸ਼ਾਂ ਪ੍ਰਦਾਨ ਕਰਨਾ ਸ਼ਾਮਲ ਹੈ। ਵਰਤਮਾਨ ਵਿੱਚ, ਜ਼ਿਆਦਾਤਰ ਸਮਾਰਟ ਹੋਮ ਸੀਨ ਇੰਟਰਕਨੈਕਸ਼ਨ ਐਸtagਈ. ਜਿਵੇਂ ਕਿ ਸਮਾਰਟ ਉਤਪਾਦਾਂ ਦੀ ਪ੍ਰਵੇਸ਼ ਦਰ ਅਤੇ ਬੁੱਧੀ ਵਧਦੀ ਹੈ, ਸੰਚਾਰ ਪ੍ਰੋਟੋਕੋਲ ਦੇ ਵਿਚਕਾਰ ਰੁਕਾਵਟਾਂ ਨੂੰ ਦੂਰ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ. ਭਵਿੱਖ ਵਿੱਚ, ਸਮਾਰਟ ਹੋਮਸ ਅਸਲ ਵਿੱਚ "ਸਮਾਰਟ" ਬਣਨ ਲਈ ਪਾਬੰਦ ਹਨ, ਜਿਵੇਂ ਕਿ ਆਇਰਨ ਮੈਨ ਵਿੱਚ AI ਸਿਸਟਮ ਜਾਰਵਿਸ, ਜੋ ਨਾ ਸਿਰਫ਼ ਉਪਭੋਗਤਾ ਨੂੰ ਵੱਖ-ਵੱਖ ਡਿਵਾਈਸਾਂ ਨੂੰ ਨਿਯੰਤਰਿਤ ਕਰਨ, ਰੋਜ਼ਾਨਾ ਦੇ ਮਾਮਲਿਆਂ ਨੂੰ ਸੰਭਾਲਣ ਵਿੱਚ ਮਦਦ ਕਰ ਸਕਦਾ ਹੈ, ਸਗੋਂ ਸੁਪਰ ਕੰਪਿਊਟਿੰਗ ਸ਼ਕਤੀ ਅਤੇ ਸੋਚਣ ਦੀ ਸਮਰੱਥਾ ਵੀ ਰੱਖਦਾ ਹੈ। ਵਿਚ ਬੁੱਧੀਮਾਨ ਐੱਸtage, ਮਨੁੱਖਾਂ ਨੂੰ ਮਾਤਰਾ ਅਤੇ ਗੁਣਵੱਤਾ ਦੋਵਾਂ ਪੱਖੋਂ ਬਿਹਤਰ ਸੇਵਾਵਾਂ ਪ੍ਰਾਪਤ ਹੋਣਗੀਆਂ।
ਅਧਿਆਇ 1. IoT 7 ਦੀ ਜਾਣ-ਪਛਾਣ

8 ESP32-C3 ਵਾਇਰਲੈੱਸ ਐਡਵੈਂਚਰ: IoT ਲਈ ਇੱਕ ਵਿਆਪਕ ਗਾਈਡ

ਅਧਿਆਇ ਦੀ ਜਾਣ-ਪਛਾਣ ਅਤੇ 2 IoT ਪ੍ਰੋਜੈਕਟਾਂ ਦਾ ਅਭਿਆਸ
ਅਧਿਆਇ 1 ਵਿੱਚ, ਅਸੀਂ IoT ਦੀ ਆਰਕੀਟੈਕਚਰ, ਅਤੇ ਧਾਰਨਾ ਅਤੇ ਨਿਯੰਤਰਣ ਪਰਤ, ਨੈਟਵਰਕ ਲੇਅਰ, ਪਲੇਟਫਾਰਮ ਲੇਅਰ, ਅਤੇ ਐਪਲੀਕੇਸ਼ਨ ਲੇਅਰ, ਅਤੇ ਨਾਲ ਹੀ ਸਮਾਰਟ ਹੋਮ ਦੇ ਵਿਕਾਸ ਦੀਆਂ ਭੂਮਿਕਾਵਾਂ ਅਤੇ ਆਪਸੀ ਸਬੰਧਾਂ ਨੂੰ ਪੇਸ਼ ਕੀਤਾ ਹੈ। ਹਾਲਾਂਕਿ, ਜਿਵੇਂ ਕਿ ਜਦੋਂ ਅਸੀਂ ਚਿੱਤਰਕਾਰੀ ਕਰਨਾ ਸਿੱਖਦੇ ਹਾਂ, ਸਿਧਾਂਤਕ ਗਿਆਨ ਨੂੰ ਜਾਣਨਾ ਕਾਫ਼ੀ ਨਹੀਂ ਹੈ। ਸੱਚਮੁੱਚ ਤਕਨਾਲੋਜੀ ਵਿੱਚ ਮੁਹਾਰਤ ਹਾਸਲ ਕਰਨ ਲਈ ਸਾਨੂੰ IoT ਪ੍ਰੋਜੈਕਟਾਂ ਨੂੰ ਅਭਿਆਸ ਵਿੱਚ ਲਿਆਉਣ ਲਈ "ਆਪਣੇ ਹੱਥ ਗੰਦੇ" ਕਰਨੇ ਪੈਣਗੇ। ਇਸ ਤੋਂ ਇਲਾਵਾ, ਜਦੋਂ ਕੋਈ ਪ੍ਰੋਜੈਕਟ ਵੱਡੇ ਪੱਧਰ 'ਤੇ ਉਤਪਾਦਨ ਵੱਲ ਜਾਂਦਾ ਹੈtage, ਨੈੱਟਵਰਕ ਕਨੈਕਸ਼ਨ, ਕੌਂਫਿਗਰੇਸ਼ਨ, IoT ਕਲਾਉਡ ਪਲੇਟਫਾਰਮ ਇੰਟਰੈਕਸ਼ਨ, ਫਰਮਵੇਅਰ ਪ੍ਰਬੰਧਨ ਅਤੇ ਅਪਡੇਟਸ, ਪੁੰਜ ਉਤਪਾਦਨ ਪ੍ਰਬੰਧਨ, ਅਤੇ ਸੁਰੱਖਿਆ ਸੰਰਚਨਾ ਵਰਗੇ ਹੋਰ ਕਾਰਕਾਂ 'ਤੇ ਵਿਚਾਰ ਕਰਨਾ ਜ਼ਰੂਰੀ ਹੈ। ਇਸ ਲਈ, ਇੱਕ ਸੰਪੂਰਨ IoT ਪ੍ਰੋਜੈਕਟ ਵਿਕਸਿਤ ਕਰਦੇ ਸਮੇਂ ਸਾਨੂੰ ਕਿਸ ਵੱਲ ਧਿਆਨ ਦੇਣ ਦੀ ਲੋੜ ਹੈ? ਅਧਿਆਇ 1 ਵਿੱਚ, ਅਸੀਂ ਦੱਸਿਆ ਹੈ ਕਿ ਸਮਾਰਟ ਹੋਮ ਸਭ ਤੋਂ ਆਮ ਆਈਓਟੀ ਐਪਲੀਕੇਸ਼ਨ ਦ੍ਰਿਸ਼ਾਂ ਵਿੱਚੋਂ ਇੱਕ ਹੈ, ਅਤੇ ਸਮਾਰਟ ਲਾਈਟਾਂ ਸਭ ਤੋਂ ਬੁਨਿਆਦੀ ਅਤੇ ਵਿਹਾਰਕ ਉਪਕਰਨਾਂ ਵਿੱਚੋਂ ਇੱਕ ਹਨ, ਜੋ ਘਰਾਂ, ਹੋਟਲਾਂ, ਜਿੰਮਾਂ, ਹਸਪਤਾਲਾਂ ਆਦਿ ਵਿੱਚ ਵਰਤੀਆਂ ਜਾ ਸਕਦੀਆਂ ਹਨ, ਇਸ ਲਈ, ਵਿੱਚ ਇਹ ਕਿਤਾਬ, ਅਸੀਂ ਇੱਕ ਸਮਾਰਟ ਲਾਈਟ ਪ੍ਰੋਜੈਕਟ ਦੇ ਨਿਰਮਾਣ ਨੂੰ ਸ਼ੁਰੂਆਤੀ ਬਿੰਦੂ ਵਜੋਂ ਲਵਾਂਗੇ, ਇਸਦੇ ਭਾਗਾਂ ਅਤੇ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਦੀ ਵਿਆਖਿਆ ਕਰਾਂਗੇ, ਅਤੇ ਪ੍ਰੋਜੈਕਟ ਦੇ ਵਿਕਾਸ ਬਾਰੇ ਮਾਰਗਦਰਸ਼ਨ ਪ੍ਰਦਾਨ ਕਰਾਂਗੇ। ਅਸੀਂ ਉਮੀਦ ਕਰਦੇ ਹਾਂ ਕਿ ਤੁਸੀਂ ਹੋਰ 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 ਡਿਵਾਈਸਾਂ ਦੇ ਫੰਕਸ਼ਨਾਂ ਨੂੰ ਵਧਾ ਸਕਦੇ ਹੋ, ਨੁਕਸ ਠੀਕ ਕਰ ਸਕਦੇ ਹੋ, ਅਤੇ ਉਪਭੋਗਤਾ ਅਨੁਭਵ ਨੂੰ ਬਿਹਤਰ ਬਣਾ ਸਕਦੇ ਹੋ।
2.1.2 ਕਲਾਇੰਟ ਐਪਲੀਕੇਸ਼ਨਾਂ ਦੇ ਮੂਲ ਮੋਡੀਊਲ
ਕਲਾਇੰਟ ਐਪਲੀਕੇਸ਼ਨਾਂ (ਉਦਾਹਰਨ ਲਈ, ਸਮਾਰਟਫ਼ੋਨ ਐਪਸ) ਵਿੱਚ ਮੁੱਖ ਤੌਰ 'ਤੇ ਹੇਠਾਂ ਦਿੱਤੇ ਮੂਲ ਮੋਡੀਊਲ ਸ਼ਾਮਲ ਹੁੰਦੇ ਹਨ:
ਖਾਤਾ ਸਿਸਟਮ ਅਤੇ ਪ੍ਰਮਾਣੀਕਰਨ ਇਹ ਖਾਤੇ ਅਤੇ ਡਿਵਾਈਸ ਪ੍ਰਮਾਣੀਕਰਨ ਦਾ ਸਮਰਥਨ ਕਰਦਾ ਹੈ।
ਡਿਵਾਈਸ ਕੰਟਰੋਲ ਸਮਾਰਟਫ਼ੋਨ ਐਪਸ ਆਮ ਤੌਰ 'ਤੇ ਕੰਟਰੋਲਿੰਗ ਫੰਕਸ਼ਨਾਂ ਨਾਲ ਲੈਸ ਹੁੰਦੇ ਹਨ। ਉਪਭੋਗਤਾ ਆਸਾਨੀ ਨਾਲ IoT ਡਿਵਾਈਸਾਂ ਨਾਲ ਜੁੜ ਸਕਦੇ ਹਨ, ਅਤੇ ਉਹਨਾਂ ਨੂੰ ਕਿਸੇ ਵੀ ਸਮੇਂ, ਕਿਤੇ ਵੀ ਸਮਾਰਟਫੋਨ ਐਪਸ ਦੁਆਰਾ ਪ੍ਰਬੰਧਿਤ ਕਰ ਸਕਦੇ ਹਨ। ਇੱਕ ਅਸਲ-ਸੰਸਾਰ ਸਮਾਰਟ ਹੋਮ ਵਿੱਚ, ਡਿਵਾਈਸਾਂ ਨੂੰ ਜਿਆਦਾਤਰ ਸਮਾਰਟਫੋਨ ਐਪਸ ਦੁਆਰਾ ਨਿਯੰਤਰਿਤ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਜੋ ਨਾ ਸਿਰਫ ਡਿਵਾਈਸਾਂ ਦੇ ਬੁੱਧੀਮਾਨ ਪ੍ਰਬੰਧਨ ਨੂੰ ਸਮਰੱਥ ਬਣਾਉਂਦਾ ਹੈ, ਸਗੋਂ ਮਨੁੱਖੀ ਸ਼ਕਤੀ ਦੀ ਲਾਗਤ ਨੂੰ ਵੀ ਬਚਾਉਂਦਾ ਹੈ। ਇਸ ਲਈ, ਕਲਾਇੰਟ ਐਪਲੀਕੇਸ਼ਨਾਂ ਲਈ ਡਿਵਾਈਸ ਨਿਯੰਤਰਣ ਲਾਜ਼ਮੀ ਹੈ, ਜਿਵੇਂ ਕਿ ਡਿਵਾਈਸ ਫੰਕਸ਼ਨ ਐਟਰੀਬਿਊਟ ਕੰਟਰੋਲ, ਸੀਨ ਕੰਟਰੋਲ, ਸਮਾਂ-ਸਾਰਣੀ, ਰਿਮੋਟ ਕੰਟਰੋਲ, ਡਿਵਾਈਸ ਲਿੰਕੇਜ, ਆਦਿ। ਸਮਾਰਟ ਹੋਮ ਉਪਭੋਗਤਾ ਨਿੱਜੀ ਲੋੜਾਂ ਦੇ ਅਨੁਸਾਰ ਦ੍ਰਿਸ਼ਾਂ ਨੂੰ ਅਨੁਕੂਲਿਤ ਕਰ ਸਕਦੇ ਹਨ, ਰੋਸ਼ਨੀ ਨੂੰ ਨਿਯੰਤਰਿਤ ਕਰਨਾ, ਘਰੇਲੂ ਉਪਕਰਨਾਂ, ਪ੍ਰਵੇਸ਼ ਦੁਆਰ। , ਆਦਿ, ਘਰੇਲੂ ਜੀਵਨ ਨੂੰ ਵਧੇਰੇ ਆਰਾਮਦਾਇਕ ਅਤੇ ਸੁਵਿਧਾਜਨਕ ਬਣਾਉਣ ਲਈ। ਉਹ ਏਅਰ ਕੰਡੀਸ਼ਨਿੰਗ ਦਾ ਸਮਾਂ ਲਗਾ ਸਕਦੇ ਹਨ, ਇਸਨੂੰ ਰਿਮੋਟ ਤੋਂ ਬੰਦ ਕਰ ਸਕਦੇ ਹਨ, ਦਰਵਾਜ਼ਾ ਖੋਲ੍ਹਣ ਤੋਂ ਬਾਅਦ ਹਾਲਵੇਅ ਲਾਈਟ ਨੂੰ ਆਪਣੇ ਆਪ ਚਾਲੂ ਕਰ ਸਕਦੇ ਹਨ, ਜਾਂ ਇੱਕ ਸਿੰਗਲ ਬਟਨ ਨਾਲ "ਥੀਏਟਰ" ਮੋਡ 'ਤੇ ਸਵਿਚ ਕਰ ਸਕਦੇ ਹਨ।
ਸੂਚਨਾ ਕਲਾਇੰਟ ਐਪਲੀਕੇਸ਼ਨ IoT ਡਿਵਾਈਸਾਂ ਦੀ ਰੀਅਲ-ਟਾਈਮ ਸਥਿਤੀ ਨੂੰ ਅਪਡੇਟ ਕਰਦੇ ਹਨ, ਅਤੇ ਜਦੋਂ ਡਿਵਾਈਸਾਂ ਅਸਧਾਰਨ ਹੋ ਜਾਂਦੀਆਂ ਹਨ ਤਾਂ ਚੇਤਾਵਨੀਆਂ ਭੇਜਦੀਆਂ ਹਨ।
10 ESP32-C3 ਵਾਇਰਲੈੱਸ ਐਡਵੈਂਚਰ: IoT ਲਈ ਇੱਕ ਵਿਆਪਕ ਗਾਈਡ

ਵਿਕਰੀ ਤੋਂ ਬਾਅਦ ਦੀ ਗਾਹਕ ਸੇਵਾ ਸਮਾਰਟਫ਼ੋਨ ਐਪਾਂ ਉਤਪਾਦਾਂ ਲਈ ਵਿਕਰੀ ਤੋਂ ਬਾਅਦ ਦੀਆਂ ਸੇਵਾਵਾਂ ਪ੍ਰਦਾਨ ਕਰ ਸਕਦੀਆਂ ਹਨ, IoT ਡਿਵਾਈਸ ਦੀਆਂ ਅਸਫਲਤਾਵਾਂ ਅਤੇ ਤਕਨੀਕੀ ਕਾਰਵਾਈਆਂ ਨਾਲ ਸੰਬੰਧਿਤ ਸਮੱਸਿਆਵਾਂ ਨੂੰ ਸਮੇਂ ਸਿਰ ਹੱਲ ਕਰਨ ਲਈ।
ਫੀਚਰਡ ਫੰਕਸ਼ਨ ਵੱਖ-ਵੱਖ ਉਪਭੋਗਤਾਵਾਂ ਦੀਆਂ ਲੋੜਾਂ ਨੂੰ ਪੂਰਾ ਕਰਨ ਲਈ, ਹੋਰ ਫੰਕਸ਼ਨ ਸ਼ਾਮਲ ਕੀਤੇ ਜਾ ਸਕਦੇ ਹਨ, ਜਿਵੇਂ ਕਿ ਸ਼ੇਕ, ਐਨਐਫਸੀ, ਜੀਪੀਐਸ, ਆਦਿ। ਹਿਲਾ ਕੇ ਖਾਸ ਡਿਵਾਈਸ ਜਾਂ ਸੀਨ ਲਈ ਚਲਾਉਣ ਲਈ ਕਮਾਂਡਾਂ।
2.1.3 ਆਮ IoT ਕਲਾਉਡ ਪਲੇਟਫਾਰਮਾਂ ਦੀ ਜਾਣ-ਪਛਾਣ
IoT ਕਲਾਉਡ ਪਲੇਟਫਾਰਮ ਇੱਕ ਆਲ-ਇਨ-ਵਨ ਪਲੇਟਫਾਰਮ ਹੈ ਜੋ ਡਿਵਾਈਸ ਪ੍ਰਬੰਧਨ, ਡੇਟਾ ਸੁਰੱਖਿਆ ਸੰਚਾਰ, ਅਤੇ ਸੂਚਨਾ ਪ੍ਰਬੰਧਨ ਵਰਗੇ ਫੰਕਸ਼ਨਾਂ ਨੂੰ ਏਕੀਕ੍ਰਿਤ ਕਰਦਾ ਹੈ। ਉਹਨਾਂ ਦੇ ਟੀਚੇ ਸਮੂਹ ਅਤੇ ਪਹੁੰਚਯੋਗਤਾ ਦੇ ਅਨੁਸਾਰ, IoT ਕਲਾਉਡ ਪਲੇਟਫਾਰਮਾਂ ਨੂੰ ਜਨਤਕ IoT ਕਲਾਉਡ ਪਲੇਟਫਾਰਮਾਂ ਵਿੱਚ ਵੰਡਿਆ ਜਾ ਸਕਦਾ ਹੈ (ਇਸ ਤੋਂ ਬਾਅਦ "ਪਬਲਿਕ ਕਲਾਉਡ" ਵਜੋਂ ਜਾਣਿਆ ਜਾਂਦਾ ਹੈ) ਅਤੇ ਪ੍ਰਾਈਵੇਟ IoT ਕਲਾਉਡ ਪਲੇਟਫਾਰਮ (ਇਸ ਤੋਂ ਬਾਅਦ "ਪ੍ਰਾਈਵੇਟ ਕਲਾਉਡ" ਵਜੋਂ ਜਾਣਿਆ ਜਾਂਦਾ ਹੈ)।
ਜਨਤਕ ਕਲਾਉਡ ਆਮ ਤੌਰ 'ਤੇ ਉੱਦਮਾਂ ਜਾਂ ਵਿਅਕਤੀਆਂ ਲਈ ਸਾਂਝੇ ਕੀਤੇ IoT ਕਲਾਉਡ ਪਲੇਟਫਾਰਮਾਂ ਨੂੰ ਦਰਸਾਉਂਦਾ ਹੈ, ਪਲੇਟਫਾਰਮ ਪ੍ਰਦਾਤਾਵਾਂ ਦੁਆਰਾ ਸੰਚਾਲਿਤ ਅਤੇ ਸਾਂਭ-ਸੰਭਾਲ, ਅਤੇ ਇੰਟਰਨੈਟ ਰਾਹੀਂ ਸਾਂਝਾ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। ਇਹ ਮੁਫਤ ਜਾਂ ਘੱਟ ਲਾਗਤ ਵਾਲਾ ਹੋ ਸਕਦਾ ਹੈ, ਅਤੇ ਖੁੱਲੇ ਜਨਤਕ ਨੈਟਵਰਕ ਵਿੱਚ ਸੇਵਾਵਾਂ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ, ਜਿਵੇਂ ਕਿ ਅਲੀਬਾਬਾ ਕਲਾਊਡ, ਟੇਨਸੈਂਟ ਕਲਾਊਡ, ਬਾਇਡੂ ਕਲਾਊਡ, AWS IoT, Google IoT, ਆਦਿ। ਇੱਕ ਸਹਾਇਕ ਪਲੇਟਫਾਰਮ ਵਜੋਂ, ਜਨਤਕ ਕਲਾਉਡ ਅੱਪਸਟ੍ਰੀਮ ਸੇਵਾ ਪ੍ਰਦਾਤਾਵਾਂ ਨੂੰ ਏਕੀਕ੍ਰਿਤ ਕਰ ਸਕਦਾ ਹੈ ਅਤੇ ਇੱਕ ਨਵੀਂ ਮੁੱਲ ਲੜੀ ਅਤੇ ਈਕੋਸਿਸਟਮ ਬਣਾਉਣ ਲਈ ਡਾਊਨਸਟ੍ਰੀਮ ਅੰਤ ਉਪਭੋਗਤਾ।
ਪ੍ਰਾਈਵੇਟ ਕਲਾਉਡ ਸਿਰਫ ਐਂਟਰਪ੍ਰਾਈਜ਼ ਵਰਤੋਂ ਲਈ ਬਣਾਇਆ ਗਿਆ ਹੈ, ਇਸ ਤਰ੍ਹਾਂ ਡੇਟਾ, ਸੁਰੱਖਿਆ ਅਤੇ ਸੇਵਾ ਦੀ ਗੁਣਵੱਤਾ 'ਤੇ ਵਧੀਆ ਨਿਯੰਤਰਣ ਦੀ ਗਰੰਟੀ ਦਿੰਦਾ ਹੈ। ਇਸਦੀਆਂ ਸੇਵਾਵਾਂ ਅਤੇ ਬੁਨਿਆਦੀ ਢਾਂਚੇ ਨੂੰ ਉੱਦਮਾਂ ਦੁਆਰਾ ਵੱਖਰੇ ਤੌਰ 'ਤੇ ਸੰਭਾਲਿਆ ਜਾਂਦਾ ਹੈ, ਅਤੇ ਸਹਾਇਕ ਹਾਰਡਵੇਅਰ ਅਤੇ ਸੌਫਟਵੇਅਰ ਵੀ ਖਾਸ ਉਪਭੋਗਤਾਵਾਂ ਨੂੰ ਸਮਰਪਿਤ ਹਨ। ਐਂਟਰਪ੍ਰਾਈਜ਼ ਆਪਣੇ ਕਾਰੋਬਾਰ ਦੀਆਂ ਲੋੜਾਂ ਨੂੰ ਪੂਰਾ ਕਰਨ ਲਈ ਕਲਾਉਡ ਸੇਵਾਵਾਂ ਨੂੰ ਅਨੁਕੂਲਿਤ ਕਰ ਸਕਦੇ ਹਨ। ਵਰਤਮਾਨ ਵਿੱਚ, ਕੁਝ ਸਮਾਰਟ ਹੋਮ ਨਿਰਮਾਤਾਵਾਂ ਨੇ ਪਹਿਲਾਂ ਹੀ ਪ੍ਰਾਈਵੇਟ IoT ਕਲਾਉਡ ਪਲੇਟਫਾਰਮ ਪ੍ਰਾਪਤ ਕਰ ਲਏ ਹਨ ਅਤੇ ਉਹਨਾਂ ਦੇ ਅਧਾਰ 'ਤੇ ਸਮਾਰਟ ਹੋਮ ਐਪਲੀਕੇਸ਼ਨਾਂ ਵਿਕਸਿਤ ਕੀਤੀਆਂ ਹਨ।
ਪਬਲਿਕ ਕਲਾਊਡ ਅਤੇ ਪ੍ਰਾਈਵੇਟ ਕਲਾਊਡ ਦਾ ਆਪਣਾ ਅਡਵਾਂਸ ਹੈtages, ਜਿਸਦੀ ਵਿਆਖਿਆ ਬਾਅਦ ਵਿੱਚ ਕੀਤੀ ਜਾਵੇਗੀ।
ਸੰਚਾਰ ਕਨੈਕਟੀਵਿਟੀ ਨੂੰ ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ, ਕਾਰੋਬਾਰੀ ਸਰਵਰਾਂ, IoT ਕਲਾਉਡ ਪਲੇਟਫਾਰਮਾਂ, ਅਤੇ ਸਮਾਰਟਫੋਨ ਐਪਾਂ ਦੇ ਨਾਲ, ਡਿਵਾਈਸ ਸਾਈਡ 'ਤੇ ਘੱਟੋ-ਘੱਟ ਏਮਬੈਡਡ ਵਿਕਾਸ ਨੂੰ ਪੂਰਾ ਕਰਨਾ ਜ਼ਰੂਰੀ ਹੈ। ਇੰਨੇ ਵੱਡੇ ਪ੍ਰੋਜੈਕਟ ਦਾ ਸਾਹਮਣਾ ਕਰਦੇ ਹੋਏ, ਜਨਤਕ ਕਲਾਉਡ ਪ੍ਰਕਿਰਿਆ ਨੂੰ ਤੇਜ਼ ਕਰਨ ਲਈ ਆਮ ਤੌਰ 'ਤੇ ਡਿਵਾਈਸ-ਸਾਈਡ ਅਤੇ ਸਮਾਰਟਫੋਨ ਐਪਸ ਲਈ ਸੌਫਟਵੇਅਰ ਡਿਵੈਲਪਮੈਂਟ ਕਿੱਟਾਂ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ। ਜਨਤਕ ਅਤੇ ਪ੍ਰਾਈਵੇਟ ਕਲਾਉਡ ਦੋਵੇਂ ਸੇਵਾਵਾਂ ਪ੍ਰਦਾਨ ਕਰਦੇ ਹਨ ਜਿਸ ਵਿੱਚ ਡਿਵਾਈਸ ਐਕਸੈਸ, ਡਿਵਾਈਸ ਪ੍ਰਬੰਧਨ, ਡਿਵਾਈਸ ਸ਼ੈਡੋ, ਅਤੇ ਸੰਚਾਲਨ ਅਤੇ ਰੱਖ-ਰਖਾਅ ਸ਼ਾਮਲ ਹਨ।
ਡਿਵਾਈਸ ਐਕਸੈਸ IoT ਕਲਾਉਡ ਪਲੇਟਫਾਰਮਾਂ ਨੂੰ ਪ੍ਰੋਟੋਕੋਲ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ ਡਿਵਾਈਸ ਐਕਸੈਸ ਲਈ ਨਾ ਸਿਰਫ ਇੰਟਰਫੇਸ ਪ੍ਰਦਾਨ ਕਰਨ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ
ਅਧਿਆਇ 2. IoT ਪ੍ਰੋਜੈਕਟਾਂ ਦੀ ਜਾਣ-ਪਛਾਣ ਅਤੇ ਅਭਿਆਸ 11

ਜਿਵੇਂ ਕਿ MQTT, CoAP, HTTPS, ਅਤੇ Webਸਾਕਟ, ਪਰ ਇਹ ਜਾਅਲੀ ਅਤੇ ਗੈਰ-ਕਾਨੂੰਨੀ ਡਿਵਾਈਸਾਂ ਨੂੰ ਬਲੌਕ ਕਰਨ ਲਈ ਡਿਵਾਈਸ ਸੁਰੱਖਿਆ ਪ੍ਰਮਾਣਿਕਤਾ ਦਾ ਕੰਮ ਵੀ ਹੈ, ਜਿਸ ਨਾਲ ਸਮਝੌਤਾ ਕੀਤੇ ਜਾਣ ਦੇ ਜੋਖਮ ਨੂੰ ਪ੍ਰਭਾਵਸ਼ਾਲੀ ਢੰਗ ਨਾਲ ਘਟਾਇਆ ਜਾ ਸਕਦਾ ਹੈ। ਅਜਿਹੀ ਪ੍ਰਮਾਣਿਕਤਾ ਆਮ ਤੌਰ 'ਤੇ ਵੱਖ-ਵੱਖ ਵਿਧੀਆਂ ਦਾ ਸਮਰਥਨ ਕਰਦੀ ਹੈ, ਇਸਲਈ ਜਦੋਂ ਡਿਵਾਈਸਾਂ ਦਾ ਵੱਡੇ ਪੱਧਰ 'ਤੇ ਉਤਪਾਦਨ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਤਾਂ ਚੁਣੀ ਗਈ ਪ੍ਰਮਾਣਿਕਤਾ ਵਿਧੀ ਦੇ ਅਨੁਸਾਰ ਡਿਵਾਈਸ ਸਰਟੀਫਿਕੇਟ ਨੂੰ ਪਹਿਲਾਂ ਤੋਂ ਨਿਰਧਾਰਤ ਕਰਨਾ ਅਤੇ ਇਸਨੂੰ ਡਿਵਾਈਸਾਂ ਵਿੱਚ ਬਰਨ ਕਰਨਾ ਜ਼ਰੂਰੀ ਹੁੰਦਾ ਹੈ।
ਡਿਵਾਈਸ ਪ੍ਰਬੰਧਨ IoT ਕਲਾਉਡ ਪਲੇਟਫਾਰਮਾਂ ਦੁਆਰਾ ਪ੍ਰਦਾਨ ਕੀਤਾ ਗਿਆ ਡਿਵਾਈਸ ਪ੍ਰਬੰਧਨ ਫੰਕਸ਼ਨ ਨਾ ਸਿਰਫ ਨਿਰਮਾਤਾਵਾਂ ਨੂੰ ਉਹਨਾਂ ਦੇ ਡਿਵਾਈਸਾਂ ਦੀ ਐਕਟੀਵੇਸ਼ਨ ਸਥਿਤੀ ਅਤੇ ਰੀਅਲ ਟਾਈਮ ਵਿੱਚ ਔਨਲਾਈਨ ਸਥਿਤੀ ਦੀ ਨਿਗਰਾਨੀ ਕਰਨ ਵਿੱਚ ਮਦਦ ਕਰ ਸਕਦਾ ਹੈ, ਬਲਕਿ ਡਿਵਾਈਸਾਂ ਨੂੰ ਜੋੜਨਾ / ਹਟਾਉਣਾ, ਮੁੜ ਪ੍ਰਾਪਤ ਕਰਨਾ, ਗਰੁੱਪ ਜੋੜਨਾ / ਹਟਾਉਣਾ, ਫਰਮਵੇਅਰ ਅੱਪਗਰੇਡ ਵਰਗੇ ਵਿਕਲਪਾਂ ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ। , ਅਤੇ ਸੰਸਕਰਣ ਪ੍ਰਬੰਧਨ।
ਡਿਵਾਈਸ ਸ਼ੈਡੋ IoT ਕਲਾਉਡ ਪਲੇਟਫਾਰਮ ਹਰੇਕ ਡਿਵਾਈਸ ਲਈ ਇੱਕ ਨਿਰੰਤਰ ਵਰਚੁਅਲ ਸੰਸਕਰਣ (ਡਿਵਾਈਸ ਸ਼ੈਡੋ) ਬਣਾ ਸਕਦਾ ਹੈ, ਅਤੇ ਡਿਵਾਈਸ ਸ਼ੈਡੋ ਦੀ ਸਥਿਤੀ ਨੂੰ ਸਮਕਾਲੀ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ ਅਤੇ ਇੰਟਰਨੈਟ ਟ੍ਰਾਂਸਮਿਸ਼ਨ ਪ੍ਰੋਟੋਕੋਲ ਦੁਆਰਾ ਸਮਾਰਟਫੋਨ ਐਪ ਜਾਂ ਹੋਰ ਡਿਵਾਈਸਾਂ ਦੁਆਰਾ ਪ੍ਰਾਪਤ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। ਡਿਵਾਈਸ ਸ਼ੈਡੋ ਹਰੇਕ ਡਿਵਾਈਸ ਦੀ ਨਵੀਨਤਮ ਰਿਪੋਰਟ ਕੀਤੀ ਸਥਿਤੀ ਅਤੇ ਉਮੀਦ ਕੀਤੀ ਸਥਿਤੀ ਨੂੰ ਸਟੋਰ ਕਰਦੀ ਹੈ, ਅਤੇ ਭਾਵੇਂ ਡਿਵਾਈਸ ਔਫਲਾਈਨ ਹੈ, ਇਹ ਅਜੇ ਵੀ API ਨੂੰ ਕਾਲ ਕਰਕੇ ਸਥਿਤੀ ਪ੍ਰਾਪਤ ਕਰ ਸਕਦੀ ਹੈ। ਡਿਵਾਈਸ ਸ਼ੈਡੋ ਹਮੇਸ਼ਾ-ਚਾਲੂ API ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ, ਜੋ ਡਿਵਾਈਸਾਂ ਨਾਲ ਇੰਟਰੈਕਟ ਕਰਨ ਵਾਲੇ ਸਮਾਰਟਫੋਨ ਐਪਸ ਨੂੰ ਬਣਾਉਣਾ ਆਸਾਨ ਬਣਾਉਂਦਾ ਹੈ।
ਸੰਚਾਲਨ ਅਤੇ ਰੱਖ-ਰਖਾਅ O&M ਫੰਕਸ਼ਨ ਵਿੱਚ ਤਿੰਨ ਪਹਿਲੂ ਸ਼ਾਮਲ ਹਨ: · IoT ਡਿਵਾਈਸਾਂ ਅਤੇ ਸੂਚਨਾਵਾਂ ਬਾਰੇ ਅੰਕੜਾ ਜਾਣਕਾਰੀ ਦਾ ਪ੍ਰਦਰਸ਼ਨ ਕਰਨਾ। · ਲੌਗ ਪ੍ਰਬੰਧਨ ਡਿਵਾਈਸ ਵਿਵਹਾਰ, ਉੱਪਰ / ਹੇਠਾਂ ਸੰਦੇਸ਼ ਪ੍ਰਵਾਹ, ਅਤੇ ਸੰਦੇਸ਼ ਸਮੱਗਰੀ ਬਾਰੇ ਜਾਣਕਾਰੀ ਪ੍ਰਾਪਤ ਕਰਨ ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ। · ਡਿਵਾਈਸ ਡੀਬੱਗਿੰਗ ਕਮਾਂਡ ਡਿਲੀਵਰੀ, ਸੰਰਚਨਾ ਅੱਪਡੇਟ, ਅਤੇ IoT ਕਲਾਉਡ ਪਲੇਟਫਾਰਮਾਂ ਅਤੇ ਡਿਵਾਈਸ ਸੁਨੇਹਿਆਂ ਵਿਚਕਾਰ ਪਰਸਪਰ ਕ੍ਰਿਆ ਦੀ ਜਾਂਚ ਕਰਨ ਦਾ ਸਮਰਥਨ ਕਰਦੀ ਹੈ।
2.2 ਅਭਿਆਸ: ਸਮਾਰਟ ਲਾਈਟ ਪ੍ਰੋਜੈਕਟ
ਹਰੇਕ ਅਧਿਆਇ ਵਿੱਚ ਸਿਧਾਂਤਕ ਜਾਣ-ਪਛਾਣ ਤੋਂ ਬਾਅਦ, ਤੁਹਾਨੂੰ ਹੱਥਾਂ ਨਾਲ ਅਨੁਭਵ ਪ੍ਰਾਪਤ ਕਰਨ ਵਿੱਚ ਮਦਦ ਕਰਨ ਲਈ ਸਮਾਰਟ ਲਾਈਟ ਪ੍ਰੋਜੈਕਟ ਨਾਲ ਸਬੰਧਤ ਇੱਕ ਅਭਿਆਸ ਭਾਗ ਮਿਲੇਗਾ। ਇਹ ਪ੍ਰੋਜੈਕਟ Espressif ਦੀ ESP32-C3 ਚਿੱਪ ਅਤੇ ESP RainMaker IoT ਕਲਾਊਡ ਪਲੇਟਫਾਰਮ 'ਤੇ ਆਧਾਰਿਤ ਹੈ, ਅਤੇ ਸਮਾਰਟ ਲਾਈਟ ਉਤਪਾਦਾਂ ਵਿੱਚ ਵਾਇਰਲੈੱਸ ਮੋਡੀਊਲ ਹਾਰਡਵੇਅਰ, ESP32C3, ਸਮਾਰਟਫ਼ੋਨ ਐਪਸ, ਅਤੇ ESP ਰੇਨਮੇਕਰ ਇੰਟਰੈਕਸ਼ਨ 'ਤੇ ਆਧਾਰਿਤ ਸਮਾਰਟ ਡਿਵਾਈਸਾਂ ਲਈ ਏਮਬੈਡਡ ਸੌਫਟਵੇਅਰ ਨੂੰ ਕਵਰ ਕਰਦਾ ਹੈ।
ਸ੍ਰੋਤ ਕੋਡ ਬਿਹਤਰ ਸਿੱਖਣ ਅਤੇ ਵਿਕਾਸ ਦੇ ਤਜ਼ਰਬੇ ਲਈ, ਇਸ ਕਿਤਾਬ ਵਿੱਚ ਪ੍ਰੋਜੈਕਟ ਨੂੰ ਓਪਨਸੋਰਸ ਕੀਤਾ ਗਿਆ ਹੈ। ਤੁਸੀਂ ਸਾਡੇ GitHub ਰਿਪੋਜ਼ਟਰੀ ਤੋਂ ਸਰੋਤ ਕੋਡ ਨੂੰ https://github 'ਤੇ ਡਾਊਨਲੋਡ ਕਰ ਸਕਦੇ ਹੋ। com/espressif/book-esp32c3-iot-projects.
12 ESP32-C3 ਵਾਇਰਲੈੱਸ ਐਡਵੈਂਚਰ: IoT ਲਈ ਇੱਕ ਵਿਆਪਕ ਗਾਈਡ

2.2.1 ਪ੍ਰੋਜੈਕਟ ਦਾ ਢਾਂਚਾ
ਸਮਾਰਟ ਲਾਈਟ ਪ੍ਰੋਜੈਕਟ ਵਿੱਚ ਤਿੰਨ ਭਾਗ ਹਨ: i. ESP32-C3 'ਤੇ ਆਧਾਰਿਤ ਸਮਾਰਟ ਲਾਈਟ ਯੰਤਰ, IoT ਕਲਾਊਡ ਪਲੇਟਫਾਰਮਾਂ ਨਾਲ ਇੰਟਰੈਕਟ ਕਰਨ ਅਤੇ LED l ਦੇ ਸਵਿੱਚ, ਚਮਕ ਅਤੇ ਰੰਗ ਦੇ ਤਾਪਮਾਨ ਨੂੰ ਕੰਟਰੋਲ ਕਰਨ ਲਈ ਜ਼ਿੰਮੇਵਾਰ ਹਨ।amp ਮਣਕੇ ii. ਸਮਾਰਟਫ਼ੋਨ ਐਪਾਂ (ਐਂਡਰੌਇਡ ਅਤੇ 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 ਹਾਰਡਵੇਅਰ ਦੀ ਤਿਆਰੀ
ਜੇ ਤੁਸੀਂ ਪ੍ਰੋਜੈਕਟ ਨੂੰ ਅਮਲ ਵਿੱਚ ਲਿਆਉਣ ਵਿੱਚ ਦਿਲਚਸਪੀ ਰੱਖਦੇ ਹੋ, ਤਾਂ ਤੁਹਾਨੂੰ ਹੇਠਾਂ ਦਿੱਤੇ ਹਾਰਡਵੇਅਰ ਦੀ ਵੀ ਲੋੜ ਪਵੇਗੀ: ਸਮਾਰਟ ਲਾਈਟਾਂ, ਸਮਾਰਟਫ਼ੋਨ, ਵਾਈ-ਫਾਈ ਰਾਊਟਰ, ਅਤੇ ਇੱਕ ਕੰਪਿਊਟਰ ਜੋ ਵਿਕਾਸ ਵਾਤਾਵਰਣ ਦੀਆਂ ਸਥਾਪਨਾ ਲੋੜਾਂ ਨੂੰ ਪੂਰਾ ਕਰਦਾ ਹੈ। ਸਮਾਰਟ ਲਾਈਟਾਂ
ਸਮਾਰਟ ਲਾਈਟਾਂ ਇੱਕ ਨਵੀਂ ਕਿਸਮ ਦੇ ਬਲਬ ਹਨ, ਜਿਨ੍ਹਾਂ ਦੀ ਸ਼ਕਲ ਆਮ ਇੰਕੈਂਡੀਸੈਂਟ ਬਲਬ ਵਰਗੀ ਹੈ। ਇੱਕ ਸਮਾਰਟ ਲਾਈਟ ਕੈਪਸੀਟਰ ਸਟੈਪ-ਡਾਊਨ ਰੈਗੂਲੇਟਿਡ ਪਾਵਰ ਸਪਲਾਈ, ਵਾਇਰਲੈੱਸ ਮੋਡੀਊਲ (ਬਿਲਟ-ਇਨ ESP32-C3 ਦੇ ਨਾਲ), LED ਕੰਟਰੋਲਰ ਅਤੇ RGB LED ਮੈਟਰਿਕਸ ਨਾਲ ਬਣੀ ਹੈ। ਜਦੋਂ ਪਾਵਰ ਨਾਲ ਕਨੈਕਟ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਤਾਂ 15 V DC ਵੋਲtage ਆਉਟਪੁੱਟ ਕੈਪੇਸੀਟਰ ਸਟੈਪ-ਡਾਊਨ, ਡਾਇਓਡ ਸੁਧਾਰ, ਅਤੇ ਨਿਯਮ ਦੇ ਬਾਅਦ LED ਕੰਟਰੋਲਰ ਅਤੇ LED ਮੈਟ੍ਰਿਕਸ ਨੂੰ ਊਰਜਾ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ। LED ਕੰਟਰੋਲਰ ਆਪਣੇ ਆਪ ਕੁਝ ਅੰਤਰਾਲਾਂ 'ਤੇ ਉੱਚ ਅਤੇ ਨੀਵੇਂ ਪੱਧਰਾਂ ਨੂੰ ਭੇਜ ਸਕਦਾ ਹੈ, RGB LED ਮੈਟ੍ਰਿਕਸ ਨੂੰ ਬੰਦ (ਲਾਈਟਾਂ ਚਾਲੂ) ਅਤੇ ਖੁੱਲ੍ਹੀਆਂ (ਲਾਈਟਾਂ ਬੰਦ) ਵਿਚਕਾਰ ਬਦਲ ਕੇ, ਤਾਂ ਜੋ ਇਹ ਸਿਆਨ, ਪੀਲਾ, ਹਰਾ, ਜਾਮਨੀ, ਨੀਲਾ, ਲਾਲ, ਅਤੇ ਚਿੱਟੀ ਰੋਸ਼ਨੀ. ਵਾਇਰਲੈੱਸ ਮੋਡੀਊਲ ਵਾਈ-ਫਾਈ ਰਾਊਟਰ ਨਾਲ ਕਨੈਕਟ ਕਰਨ, ਸਮਾਰਟ ਲਾਈਟਾਂ ਦੀ ਸਥਿਤੀ ਪ੍ਰਾਪਤ ਕਰਨ ਅਤੇ ਰਿਪੋਰਟ ਕਰਨ, ਅਤੇ LED ਨੂੰ ਕੰਟਰੋਲ ਕਰਨ ਲਈ ਕਮਾਂਡਾਂ ਭੇਜਣ ਲਈ ਜ਼ਿੰਮੇਵਾਰ ਹੈ।
ਚਿੱਤਰ 2.2. ਇੱਕ ਸਿਮੂਲੇਟਡ ਸਮਾਰਟ ਲਾਈਟ
ਸ਼ੁਰੂਆਤੀ ਵਿਕਾਸ ਵਿੱਚ ਐਸtage, ਤੁਸੀਂ RGB LED l ਨਾਲ ਜੁੜੇ ESP32-C3DevKitM-1 ਬੋਰਡ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਇੱਕ ਸਮਾਰਟ ਲਾਈਟ ਦੀ ਨਕਲ ਕਰ ਸਕਦੇ ਹੋ।amp ਮਣਕੇ (ਚਿੱਤਰ 2.2 ਦੇਖੋ)। ਪਰ ਤੁਹਾਨੂੰ ਚਾਹੀਦਾ ਹੈ
14 ESP32-C3 ਵਾਇਰਲੈੱਸ ਐਡਵੈਂਚਰ: IoT ਲਈ ਇੱਕ ਵਿਆਪਕ ਗਾਈਡ

ਨੋਟ ਕਰੋ ਕਿ ਇਹ ਇੱਕ ਸਮਾਰਟ ਲਾਈਟ ਨੂੰ ਇਕੱਠਾ ਕਰਨ ਦਾ ਇੱਕੋ ਇੱਕ ਤਰੀਕਾ ਨਹੀਂ ਹੈ। ਇਸ ਕਿਤਾਬ ਵਿੱਚ ਪ੍ਰੋਜੈਕਟ ਦੇ ਹਾਰਡਵੇਅਰ ਡਿਜ਼ਾਈਨ ਵਿੱਚ ਸਿਰਫ਼ ਇੱਕ ਵਾਇਰਲੈੱਸ ਮੋਡੀਊਲ ਹੈ (ਬਿਲਟ-ਇਨ ESP32-C3 ਦੇ ਨਾਲ), ਪਰ ਇੱਕ ਪੂਰਨ ਸਮਾਰਟ ਲਾਈਟ ਹਾਰਡਵੇਅਰ ਡਿਜ਼ਾਈਨ ਨਹੀਂ ਹੈ। ਇਸ ਤੋਂ ਇਲਾਵਾ, Espressif ਆਡੀਓ ਨਾਲ ਲਾਈਟਾਂ ਨੂੰ ਨਿਯੰਤਰਿਤ ਕਰਨ ਲਈ ਇੱਕ ESP32-C3- ਅਧਾਰਿਤ ਆਡੀਓ ਵਿਕਾਸ ਬੋਰਡ ESP32C3-Lyra ਵੀ ਤਿਆਰ ਕਰਦਾ ਹੈ। ਬੋਰਡ ਵਿੱਚ ਮਾਈਕ੍ਰੋਫੋਨ ਅਤੇ ਸਪੀਕਰਾਂ ਲਈ ਇੰਟਰਫੇਸ ਹਨ ਅਤੇ ਇਹ LED ਸਟ੍ਰਿਪਾਂ ਨੂੰ ਨਿਯੰਤਰਿਤ ਕਰ ਸਕਦਾ ਹੈ। ਇਸਦੀ ਵਰਤੋਂ ਅਤਿ-ਘੱਟ ਲਾਗਤ ਵਾਲੇ, ਉੱਚ ਪ੍ਰਦਰਸ਼ਨ ਵਾਲੇ ਆਡੀਓ ਪ੍ਰਸਾਰਕਾਂ ਅਤੇ ਰਿਦਮ ਲਾਈਟ ਸਟ੍ਰਿਪਾਂ ਦੇ ਵਿਕਾਸ ਲਈ ਕੀਤੀ ਜਾ ਸਕਦੀ ਹੈ। ਚਿੱਤਰ 2.3 ਇੱਕ ESP32-C3Lyra ਬੋਰਡ ਦਿਖਾਉਂਦਾ ਹੈ ਜੋ 40 LED ਲਾਈਟਾਂ ਦੀ ਇੱਕ ਪੱਟੀ ਨਾਲ ਜੁੜਿਆ ਹੋਇਆ ਹੈ।
ਚਿੱਤਰ 2.3. ESP32-C3-Lyra 40 LED ਲਾਈਟਾਂ ਦੀ ਇੱਕ ਪੱਟੀ ਨਾਲ ਜੁੜਿਆ ਹੋਇਆ ਹੈ
ਸਮਾਰਟਫ਼ੋਨ (Android/iOS) ਸਮਾਰਟ ਲਾਈਟ ਪ੍ਰੋਜੈਕਟ ਵਿੱਚ ਸਮਾਰਟ ਲਾਈਟ ਉਤਪਾਦਾਂ ਨੂੰ ਸਥਾਪਤ ਕਰਨ ਅਤੇ ਕੰਟਰੋਲ ਕਰਨ ਲਈ ਇੱਕ ਸਮਾਰਟਫ਼ੋਨ ਐਪ ਦਾ ਵਿਕਾਸ ਸ਼ਾਮਲ ਹੈ।
ਵਾਈ-ਫਾਈ ਰਾਊਟਰ ਵਾਈ-ਫਾਈ ਰਾਊਟਰ ਤਾਰ ਵਾਲੇ ਨੈੱਟਵਰਕ ਸਿਗਨਲਾਂ ਅਤੇ ਮੋਬਾਈਲ ਨੈੱਟਵਰਕ ਸਿਗਨਲਾਂ ਨੂੰ ਵਾਇਰਲੈੱਸ ਨੈੱਟਵਰਕ ਸਿਗਨਲਾਂ ਵਿੱਚ ਬਦਲਦੇ ਹਨ, ਕੰਪਿਊਟਰਾਂ, ਸਮਾਰਟਫ਼ੋਨਾਂ, ਟੈਬਲੇਟਾਂ, ਅਤੇ ਹੋਰ ਵਾਇਰਲੈੱਸ ਯੰਤਰਾਂ ਨੂੰ ਨੈੱਟਵਰਕ ਨਾਲ ਕਨੈਕਟ ਕਰਨ ਲਈ। ਸਾਬਕਾ ਲਈ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. IoT ਪ੍ਰੋਜੈਕਟਾਂ ਦੀ ਜਾਣ-ਪਛਾਣ ਅਤੇ ਅਭਿਆਸ 15

2.2.4 ਵਿਕਾਸ ਪ੍ਰਕਿਰਿਆ
ਚਿੱਤਰ 2.4. ਸਮਾਰਟ ਲਾਈਟ ਪ੍ਰੋਜੈਕਟ ਨੂੰ ਵਿਕਸਤ ਕਰਨ ਦੇ ਕਦਮ
ਹਾਰਡਵੇਅਰ ਡਿਜ਼ਾਈਨ IoT ਡਿਵਾਈਸਾਂ ਦਾ ਹਾਰਡਵੇਅਰ ਡਿਜ਼ਾਈਨ IoT ਪ੍ਰੋਜੈਕਟ ਲਈ ਜ਼ਰੂਰੀ ਹੈ। ਇੱਕ ਪੂਰਨ ਸਮਾਰਟ ਲਾਈਟ ਪ੍ਰੋਜੈਕਟ ਦਾ ਉਦੇਸ਼ ਅਲ ਪੈਦਾ ਕਰਨਾ ਹੈamp ਮੇਨ ਸਪਲਾਈ ਦੇ ਅਧੀਨ ਕੰਮ ਕਰਨਾ. ਵੱਖ-ਵੱਖ ਨਿਰਮਾਤਾ ਐਲamps ਵੱਖ-ਵੱਖ ਸ਼ੈਲੀਆਂ ਅਤੇ ਡਰਾਈਵਰ ਕਿਸਮਾਂ ਦੇ ਹੁੰਦੇ ਹਨ, ਪਰ ਉਹਨਾਂ ਦੇ ਵਾਇਰਲੈੱਸ ਮੋਡੀਊਲ ਆਮ ਤੌਰ 'ਤੇ ਇੱਕੋ ਫੰਕਸ਼ਨ ਦੇ ਹੁੰਦੇ ਹਨ। ਸਮਾਰਟ ਲਾਈਟ ਪ੍ਰੋਜੈਕਟ ਦੀ ਵਿਕਾਸ ਪ੍ਰਕਿਰਿਆ ਨੂੰ ਸਰਲ ਬਣਾਉਣ ਲਈ, ਇਹ ਕਿਤਾਬ ਸਿਰਫ ਵਾਇਰਲੈੱਸ ਮੋਡਿਊਲਾਂ ਦੇ ਹਾਰਡਵੇਅਰ ਡਿਜ਼ਾਈਨ ਅਤੇ ਸਾਫਟਵੇਅਰ ਵਿਕਾਸ ਨੂੰ ਕਵਰ ਕਰਦੀ ਹੈ।
IoT ਕਲਾਉਡ ਪਲੇਟਫਾਰਮ ਕੌਂਫਿਗਰੇਸ਼ਨ IoT ਕਲਾਉਡ ਪਲੇਟਫਾਰਮਾਂ ਦੀ ਵਰਤੋਂ ਕਰਨ ਲਈ, ਤੁਹਾਨੂੰ ਬੈਕਐਂਡ 'ਤੇ ਪ੍ਰੋਜੈਕਟਾਂ ਦੀ ਸੰਰਚਨਾ ਕਰਨ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ, ਜਿਵੇਂ ਕਿ ਉਤਪਾਦ ਬਣਾਉਣਾ, ਡਿਵਾਈਸਾਂ ਬਣਾਉਣਾ, ਡਿਵਾਈਸ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਨੂੰ ਸੈੱਟ ਕਰਨਾ, ਆਦਿ।
IoT ਡਿਵਾਈਸਾਂ ਲਈ ਏਮਬੈਡਡ ਸਾਫਟਵੇਅਰ ਡਿਵੈਲਪਮੈਂਟ ESP-IDF, Espressif ਦੇ ਡਿਵਾਈਸ-ਸਾਈਡ SDK ਦੇ ਨਾਲ ਸੰਭਾਵਿਤ ਫੰਕਸ਼ਨਾਂ ਨੂੰ ਲਾਗੂ ਕਰਦਾ ਹੈ, ਜਿਸ ਵਿੱਚ IoT ਕਲਾਉਡ ਪਲੇਟਫਾਰਮਾਂ ਨਾਲ ਜੁੜਨਾ, LED ਡਰਾਈਵਰਾਂ ਦਾ ਵਿਕਾਸ ਕਰਨਾ, ਅਤੇ ਫਰਮਵੇਅਰ ਨੂੰ ਅਪਗ੍ਰੇਡ ਕਰਨਾ ਸ਼ਾਮਲ ਹੈ।
ਸਮਾਰਟਫ਼ੋਨ ਐਪ ਡਿਵੈਲਪਮੈਂਟ ਉਪਭੋਗਤਾ ਰਜਿਸਟ੍ਰੇਸ਼ਨ ਅਤੇ ਲੌਗਇਨ, ਡਿਵਾਈਸ ਨਿਯੰਤਰਣ ਅਤੇ ਹੋਰ ਫੰਕਸ਼ਨਾਂ ਨੂੰ ਮਹਿਸੂਸ ਕਰਨ ਲਈ ਐਂਡਰਾਇਡ ਅਤੇ ਆਈਓਐਸ ਸਿਸਟਮਾਂ ਲਈ ਸਮਾਰਟਫ਼ੋਨ ਐਪਸ ਵਿਕਸਿਤ ਕਰੋ।
IoT ਡਿਵਾਈਸ ਓਪਟੀਮਾਈਜੇਸ਼ਨ ਇੱਕ ਵਾਰ ਜਦੋਂ IoT ਡਿਵਾਈਸ ਫੰਕਸ਼ਨਾਂ ਦਾ ਮੁਢਲਾ ਵਿਕਾਸ ਪੂਰਾ ਹੋ ਜਾਂਦਾ ਹੈ, ਤਾਂ ਤੁਸੀਂ ਓਪਟੀਮਾਈਜੇਸ਼ਨ ਕਾਰਜਾਂ ਵੱਲ ਮੁੜ ਸਕਦੇ ਹੋ, ਜਿਵੇਂ ਕਿ ਪਾਵਰ ਓਪਟੀਮਾਈਜੇਸ਼ਨ।
ਪੁੰਜ ਉਤਪਾਦਨ ਟੈਸਟਿੰਗ ਸਬੰਧਤ ਮਾਪਦੰਡਾਂ ਦੇ ਅਨੁਸਾਰ ਵੱਡੇ ਉਤਪਾਦਨ ਟੈਸਟਾਂ ਨੂੰ ਪੂਰਾ ਕਰੋ, ਜਿਵੇਂ ਕਿ ਉਪਕਰਣ ਫੰਕਸ਼ਨ ਟੈਸਟ, ਏਜਿੰਗ ਟੈਸਟ, ਆਰਐਫ ਟੈਸਟ, ਆਦਿ।
ਉਪਰੋਕਤ ਸੂਚੀਬੱਧ ਕਦਮਾਂ ਦੇ ਬਾਵਜੂਦ, ਇੱਕ ਸਮਾਰਟ ਲਾਈਟ ਪ੍ਰੋਜੈਕਟ ਜ਼ਰੂਰੀ ਤੌਰ 'ਤੇ ਅਜਿਹੀ ਪ੍ਰਕਿਰਿਆ ਦੇ ਅਧੀਨ ਨਹੀਂ ਹੈ ਕਿਉਂਕਿ ਇੱਕੋ ਸਮੇਂ ਵੱਖ-ਵੱਖ ਕਾਰਜ ਵੀ ਕੀਤੇ ਜਾ ਸਕਦੇ ਹਨ। ਸਾਬਕਾ ਲਈample, ਏਮਬੈਡਡ ਸੌਫਟਵੇਅਰ ਅਤੇ ਸਮਾਰਟਫੋਨ ਐਪਸ ਨੂੰ ਸਮਾਨਾਂਤਰ ਵਿੱਚ ਵਿਕਸਤ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। ਕੁਝ ਕਦਮਾਂ ਨੂੰ ਦੁਹਰਾਉਣ ਦੀ ਵੀ ਲੋੜ ਹੋ ਸਕਦੀ ਹੈ, ਜਿਵੇਂ ਕਿ IoT ਡਿਵਾਈਸ ਓਪਟੀਮਾਈਜੇਸ਼ਨ ਅਤੇ ਪੁੰਜ ਉਤਪਾਦਨ ਟੈਸਟਿੰਗ।
16 ESP32-C3 ਵਾਇਰਲੈੱਸ ਐਡਵੈਂਚਰ: IoT ਲਈ ਇੱਕ ਵਿਆਪਕ ਗਾਈਡ

੬.੪.੧ ਸਾਰ
ਇਸ ਅਧਿਆਇ ਵਿੱਚ, ਅਸੀਂ ਪਹਿਲਾਂ ਇੱਕ IoT ਪ੍ਰੋਜੈਕਟ ਦੇ ਬੁਨਿਆਦੀ ਭਾਗਾਂ ਅਤੇ ਕਾਰਜਸ਼ੀਲ ਮੋਡਿਊਲਾਂ ਦੀ ਵਿਆਖਿਆ ਕੀਤੀ, ਫਿਰ ਇਸਦੀ ਬਣਤਰ, ਫੰਕਸ਼ਨਾਂ, ਹਾਰਡਵੇਅਰ ਦੀ ਤਿਆਰੀ, ਅਤੇ ਵਿਕਾਸ ਪ੍ਰਕਿਰਿਆ ਦਾ ਹਵਾਲਾ ਦਿੰਦੇ ਹੋਏ ਅਭਿਆਸ ਲਈ ਸਮਾਰਟ ਲਾਈਟ ਕੇਸ ਪੇਸ਼ ਕੀਤਾ। ਪਾਠਕ ਅਭਿਆਸ ਤੋਂ ਅਨੁਮਾਨ ਕੱਢ ਸਕਦੇ ਹਨ ਅਤੇ ਭਵਿੱਖ ਵਿੱਚ ਘੱਟੋ-ਘੱਟ ਗਲਤੀਆਂ ਦੇ ਨਾਲ IoT ਪ੍ਰੋਜੈਕਟਾਂ ਨੂੰ ਪੂਰਾ ਕਰਨ ਲਈ ਆਤਮ-ਵਿਸ਼ਵਾਸ ਬਣ ਸਕਦੇ ਹਨ।
ਅਧਿਆਇ 2. IoT ਪ੍ਰੋਜੈਕਟਾਂ ਦੀ ਜਾਣ-ਪਛਾਣ ਅਤੇ ਅਭਿਆਸ 17

18 ESP32-C3 ਵਾਇਰਲੈੱਸ ਐਡਵੈਂਚਰ: IoT ਲਈ ਇੱਕ ਵਿਆਪਕ ਗਾਈਡ

ਅਧਿਆਇ 3

ਜਾਣ-ਪਛਾਣ

ਨੂੰ

ਈ.ਐੱਸ.ਪੀ

ਰੇਨਮੇਕਰ

ਚੀਜ਼ਾਂ ਦਾ ਇੰਟਰਨੈਟ (IoT) ਲੋਕਾਂ ਦੇ ਰਹਿਣ ਦੇ ਤਰੀਕੇ ਨੂੰ ਬਦਲਣ ਲਈ ਬੇਅੰਤ ਸੰਭਾਵਨਾਵਾਂ ਦੀ ਪੇਸ਼ਕਸ਼ ਕਰਦਾ ਹੈ, ਫਿਰ ਵੀ IoT ਇੰਜੀਨੀਅਰਿੰਗ ਦਾ ਵਿਕਾਸ ਚੁਣੌਤੀਆਂ ਨਾਲ ਭਰਿਆ ਹੋਇਆ ਹੈ। ਜਨਤਕ ਬੱਦਲਾਂ ਦੇ ਨਾਲ, ਟਰਮੀਨਲ ਨਿਰਮਾਤਾ ਹੇਠਾਂ ਦਿੱਤੇ ਹੱਲਾਂ ਦੁਆਰਾ ਉਤਪਾਦ ਕਾਰਜਕੁਸ਼ਲਤਾ ਨੂੰ ਲਾਗੂ ਕਰ ਸਕਦੇ ਹਨ:
ਹੱਲ ਪ੍ਰਦਾਤਾਵਾਂ ਦੇ ਕਲਾਉਡ ਪਲੇਟਫਾਰਮਾਂ 'ਤੇ ਅਧਾਰਤ ਇਸ ਤਰੀਕੇ ਨਾਲ, ਟਰਮੀਨਲ ਨਿਰਮਾਤਾਵਾਂ ਨੂੰ ਸਿਰਫ ਉਤਪਾਦ ਹਾਰਡਵੇਅਰ ਨੂੰ ਡਿਜ਼ਾਈਨ ਕਰਨ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ, ਫਿਰ ਪ੍ਰਦਾਨ ਕੀਤੇ ਸੰਚਾਰ ਮੋਡੀਊਲ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਹਾਰਡਵੇਅਰ ਨੂੰ ਕਲਾਉਡ ਨਾਲ ਕਨੈਕਟ ਕਰਨਾ, ਅਤੇ ਦਿਸ਼ਾ-ਨਿਰਦੇਸ਼ਾਂ ਦੀ ਪਾਲਣਾ ਕਰਦੇ ਹੋਏ ਉਤਪਾਦ ਫੰਕਸ਼ਨਾਂ ਨੂੰ ਕੌਂਫਿਗਰ ਕਰਨਾ ਹੁੰਦਾ ਹੈ। ਇਹ ਇੱਕ ਕੁਸ਼ਲ ਪਹੁੰਚ ਹੈ ਕਿਉਂਕਿ ਇਹ ਸਰਵਰ-ਸਾਈਡ ਅਤੇ ਐਪਲੀਕੇਸ਼ਨ-ਸਾਈਡ ਡਿਵੈਲਪਮੈਂਟ ਅਤੇ ਓਪਰੇਸ਼ਨ ਅਤੇ ਮੇਨਟੇਨੈਂਸ (O&M) ਦੀ ਜ਼ਰੂਰਤ ਨੂੰ ਖਤਮ ਕਰਦਾ ਹੈ। ਇਹ ਟਰਮੀਨਲ ਨਿਰਮਾਤਾਵਾਂ ਨੂੰ ਕਲਾਉਡ ਲਾਗੂਕਰਨ 'ਤੇ ਵਿਚਾਰ ਕੀਤੇ ਬਿਨਾਂ ਹਾਰਡਵੇਅਰ ਡਿਜ਼ਾਈਨ 'ਤੇ ਧਿਆਨ ਕੇਂਦਰਿਤ ਕਰਨ ਦੀ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ। ਹਾਲਾਂਕਿ, ਅਜਿਹੇ ਹੱਲ (ਉਦਾਹਰਨ ਲਈ, ਡਿਵਾਈਸ ਫਰਮਵੇਅਰ ਅਤੇ ਐਪ) ਆਮ ਤੌਰ 'ਤੇ ਓਪਨ ਸੋਰਸ ਨਹੀਂ ਹੁੰਦੇ ਹਨ, ਇਸਲਈ ਉਤਪਾਦ ਫੰਕਸ਼ਨ ਪ੍ਰਦਾਤਾ ਦੇ ਕਲਾਉਡ ਪਲੇਟਫਾਰਮ ਦੁਆਰਾ ਸੀਮਿਤ ਹੋਣਗੇ ਜਿਨ੍ਹਾਂ ਨੂੰ ਅਨੁਕੂਲਿਤ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। ਇਸ ਦੌਰਾਨ, ਉਪਭੋਗਤਾ ਅਤੇ ਡਿਵਾਈਸ ਡੇਟਾ ਵੀ ਕਲਾਉਡ ਪਲੇਟਫਾਰਮ ਨਾਲ ਸਬੰਧਤ ਹੈ.
ਕਲਾਉਡ ਉਤਪਾਦਾਂ 'ਤੇ ਅਧਾਰਤ ਇਸ ਹੱਲ ਵਿੱਚ, ਹਾਰਡਵੇਅਰ ਡਿਜ਼ਾਈਨ ਨੂੰ ਪੂਰਾ ਕਰਨ ਤੋਂ ਬਾਅਦ, ਟਰਮੀਨਲ ਨਿਰਮਾਤਾਵਾਂ ਨੂੰ ਨਾ ਸਿਰਫ ਜਨਤਕ ਕਲਾਉਡ ਦੁਆਰਾ ਪ੍ਰਦਾਨ ਕੀਤੇ ਇੱਕ ਜਾਂ ਇੱਕ ਤੋਂ ਵੱਧ ਕਲਾਉਡ ਉਤਪਾਦਾਂ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਕਲਾਉਡ ਫੰਕਸ਼ਨਾਂ ਨੂੰ ਲਾਗੂ ਕਰਨ ਦੀ ਜ਼ਰੂਰਤ ਹੁੰਦੀ ਹੈ, ਬਲਕਿ ਹਾਰਡਵੇਅਰ ਨੂੰ ਕਲਾਉਡ ਨਾਲ ਲਿੰਕ ਕਰਨ ਦੀ ਵੀ ਜ਼ਰੂਰਤ ਹੁੰਦੀ ਹੈ। ਸਾਬਕਾ ਲਈample, Amazon ਨਾਲ ਜੁੜਨ ਲਈ Web ਸੇਵਾਵਾਂ (AWS), ਟਰਮੀਨਲ ਨਿਰਮਾਤਾਵਾਂ ਨੂੰ AWS ਉਤਪਾਦਾਂ ਜਿਵੇਂ ਕਿ Amazon API ਗੇਟਵੇ, AWS IoT ਕੋਰ, ਅਤੇ AWS ਲਾਂਬਡਾ ਨੂੰ ਡਿਵਾਈਸ ਐਕਸੈਸ, ਰਿਮੋਟ ਕੰਟਰੋਲ, ਡਾਟਾ ਸਟੋਰੇਜ, ਉਪਭੋਗਤਾ ਪ੍ਰਬੰਧਨ, ਅਤੇ ਹੋਰ ਬੁਨਿਆਦੀ ਫੰਕਸ਼ਨਾਂ ਨੂੰ ਸਮਰੱਥ ਬਣਾਉਣ ਲਈ ਵਰਤਣ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ। ਇਹ ਨਾ ਸਿਰਫ ਟਰਮੀਨਲ ਨਿਰਮਾਤਾਵਾਂ ਨੂੰ ਕਲਾਉਡ ਉਤਪਾਦਾਂ ਨੂੰ ਡੂੰਘਾਈ ਨਾਲ ਸਮਝ ਅਤੇ ਅਮੀਰ ਤਜ਼ਰਬੇ ਦੇ ਨਾਲ ਵਰਤਣ ਅਤੇ ਸੰਰਚਿਤ ਕਰਨ ਲਈ ਕਹਿੰਦਾ ਹੈ, ਸਗੋਂ ਉਹਨਾਂ ਨੂੰ ਸ਼ੁਰੂਆਤੀ ਅਤੇ ਬਾਅਦ ਵਿੱਚ ਨਿਰਮਾਣ ਅਤੇ ਰੱਖ-ਰਖਾਅ ਦੀ ਲਾਗਤ 'ਤੇ ਵਿਚਾਰ ਕਰਨ ਦੀ ਵੀ ਮੰਗ ਕਰਦਾ ਹੈ।tages ਇਹ ਕੰਪਨੀ ਦੀ ਊਰਜਾ ਅਤੇ ਸਰੋਤਾਂ ਲਈ ਵੱਡੀਆਂ ਚੁਣੌਤੀਆਂ ਪੈਦਾ ਕਰਦਾ ਹੈ।
ਜਨਤਕ ਬੱਦਲਾਂ ਦੇ ਮੁਕਾਬਲੇ, ਪ੍ਰਾਈਵੇਟ ਕਲਾਉਡ ਆਮ ਤੌਰ 'ਤੇ ਖਾਸ ਪ੍ਰੋਜੈਕਟਾਂ ਅਤੇ ਉਤਪਾਦਾਂ ਲਈ ਬਣਾਏ ਜਾਂਦੇ ਹਨ। ਪ੍ਰਾਈਵੇਟ ਕਲਾਉਡ ਡਿਵੈਲਪਰਾਂ ਨੂੰ ਪ੍ਰੋਟੋਕੋਲ ਡਿਜ਼ਾਈਨ ਅਤੇ ਕਾਰੋਬਾਰੀ ਤਰਕ ਲਾਗੂ ਕਰਨ ਵਿੱਚ ਉੱਚ ਪੱਧਰ ਦੀ ਆਜ਼ਾਦੀ ਦਿੱਤੀ ਜਾਂਦੀ ਹੈ। ਟਰਮੀਨਲ ਨਿਰਮਾਤਾ ਇੱਛਾ ਅਨੁਸਾਰ ਉਤਪਾਦ ਅਤੇ ਡਿਜ਼ਾਈਨ ਸਕੀਮਾਂ ਬਣਾ ਸਕਦੇ ਹਨ, ਅਤੇ ਉਪਭੋਗਤਾ ਡੇਟਾ ਨੂੰ ਆਸਾਨੀ ਨਾਲ ਏਕੀਕ੍ਰਿਤ ਅਤੇ ਸ਼ਕਤੀ ਪ੍ਰਦਾਨ ਕਰ ਸਕਦੇ ਹਨ। ਐਡਵਾਨ ਦੇ ਨਾਲ ਜਨਤਕ ਕਲਾਉਡ ਦੀ ਉੱਚ ਸੁਰੱਖਿਆ, ਮਾਪਯੋਗਤਾ ਅਤੇ ਭਰੋਸੇਯੋਗਤਾ ਨੂੰ ਜੋੜਨਾtagਪ੍ਰਾਈਵੇਟ ਕਲਾਉਡ ਦੇ es, Espressif ਨੇ ESP ਲਾਂਚ ਕੀਤਾ
19

ਰੇਨਮੇਕਰ, ਐਮਾਜ਼ਾਨ ਕਲਾਉਡ 'ਤੇ ਅਧਾਰਤ ਇੱਕ ਡੂੰਘਾ ਏਕੀਕ੍ਰਿਤ ਪ੍ਰਾਈਵੇਟ ਕਲਾਉਡ ਹੱਲ। ਉਪਭੋਗਤਾ ESP ਰੇਨਮੇਕਰ ਨੂੰ ਤੈਨਾਤ ਕਰ ਸਕਦੇ ਹਨ ਅਤੇ ਇੱਕ AWS ਖਾਤੇ ਨਾਲ ਨਿੱਜੀ ਕਲਾਉਡ ਬਣਾ ਸਕਦੇ ਹਨ।
3.1 ESP ਰੇਨਮੇਕਰ ਕੀ ਹੈ?
ESP RainMaker ਇੱਕ ਸੰਪੂਰਨ AIoT ਪਲੇਟਫਾਰਮ ਹੈ ਜੋ ਮਲਟੀਪਲ ਪਰਿਪੱਕ AWS ਉਤਪਾਦਾਂ ਨਾਲ ਬਣਾਇਆ ਗਿਆ ਹੈ। ਇਹ ਵੱਡੇ ਉਤਪਾਦਨ ਲਈ ਲੋੜੀਂਦੀਆਂ ਵੱਖ-ਵੱਖ ਸੇਵਾਵਾਂ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ ਜਿਵੇਂ ਕਿ ਡਿਵਾਈਸ ਕਲਾਉਡ ਐਕਸੈਸ, ਡਿਵਾਈਸ ਅਪਗ੍ਰੇਡ, ਬੈਕਐਂਡ ਪ੍ਰਬੰਧਨ, ਤੀਜੀ-ਧਿਰ ਲੌਗਿਨ, ਵੌਇਸ ਏਕੀਕਰਣ, ਅਤੇ ਉਪਭੋਗਤਾ ਪ੍ਰਬੰਧਨ। AWS ਦੁਆਰਾ ਪ੍ਰਦਾਨ ਕੀਤੀ ਸਰਵਰ ਰਹਿਤ ਐਪਲੀਕੇਸ਼ਨ ਰਿਪੋਜ਼ਟਰੀ (SAR) ਦੀ ਵਰਤੋਂ ਕਰਕੇ, ਟਰਮੀਨਲ ਨਿਰਮਾਤਾ ਆਪਣੇ AWS ਖਾਤਿਆਂ ਵਿੱਚ ESP RainMaker ਨੂੰ ਜਲਦੀ ਤੈਨਾਤ ਕਰ ਸਕਦੇ ਹਨ, ਜੋ ਕਿ ਸਮਾਂ-ਕੁਸ਼ਲ ਅਤੇ ਚਲਾਉਣ ਵਿੱਚ ਆਸਾਨ ਹੈ। Espressif ਦੁਆਰਾ ਪ੍ਰਬੰਧਿਤ ਅਤੇ ਰੱਖ-ਰਖਾਅ ਕੀਤਾ ਗਿਆ, ESP RainMaker ਦੁਆਰਾ ਵਰਤਿਆ ਜਾਣ ਵਾਲਾ SAR ਡਿਵੈਲਪਰਾਂ ਨੂੰ ਕਲਾਉਡ ਰੱਖ-ਰਖਾਅ ਦੇ ਖਰਚਿਆਂ ਨੂੰ ਘਟਾਉਣ ਅਤੇ AIoT ਉਤਪਾਦਾਂ ਦੇ ਵਿਕਾਸ ਨੂੰ ਤੇਜ਼ ਕਰਨ ਵਿੱਚ ਮਦਦ ਕਰਦਾ ਹੈ, ਇਸ ਤਰ੍ਹਾਂ ਸੁਰੱਖਿਅਤ, ਸਥਿਰ ਅਤੇ ਅਨੁਕੂਲਿਤ AIoT ਹੱਲਾਂ ਦਾ ਨਿਰਮਾਣ ਕਰਦਾ ਹੈ। ਚਿੱਤਰ 3.1 ESP ਰੇਨਮੇਕਰ ਦਾ ਆਰਕੀਟੈਕਚਰ ਦਿਖਾਉਂਦਾ ਹੈ।
ਚਿੱਤਰ 3.1. ESP ਰੇਨਮੇਕਰ ਦਾ ਆਰਕੀਟੈਕਚਰ
Espressif ਦੁਆਰਾ ESP RainMaker ਜਨਤਕ ਸਰਵਰ ਹੱਲ ਮੁਲਾਂਕਣ ਲਈ ਸਾਰੇ ESP ਉਤਸ਼ਾਹੀਆਂ, ਨਿਰਮਾਤਾਵਾਂ ਅਤੇ ਸਿੱਖਿਅਕਾਂ ਲਈ ਮੁਫਤ ਹੈ। ਡਿਵੈਲਪਰ Apple, Google, ਜਾਂ GitHub ਖਾਤਿਆਂ ਨਾਲ ਲੌਗ ਇਨ ਕਰ ਸਕਦੇ ਹਨ, ਅਤੇ ਤੇਜ਼ੀ ਨਾਲ ਆਪਣੇ ਖੁਦ ਦੇ IoT ਐਪਲੀਕੇਸ਼ਨ ਪ੍ਰੋਟੋਟਾਈਪ ਬਣਾ ਸਕਦੇ ਹਨ। ਪਬਲਿਕ ਸਰਵਰ ਅਲੈਕਸਾ ਅਤੇ ਗੂਗਲ ਹੋਮ ਨੂੰ ਏਕੀਕ੍ਰਿਤ ਕਰਦਾ ਹੈ, ਅਤੇ ਵੌਇਸ ਕੰਟਰੋਲ ਸੇਵਾਵਾਂ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ, ਜੋ ਕਿ ਅਲੈਕਸਾ ਸਕਿੱਲ ਅਤੇ ਗੂਗਲ ਐਕਸ਼ਨ ਦੁਆਰਾ ਸਮਰਥਿਤ ਹਨ। ਇਸਦਾ ਅਰਥ ਪਛਾਣ ਫੰਕਸ਼ਨ ਤੀਜੀ ਧਿਰ ਦੁਆਰਾ ਵੀ ਸੰਚਾਲਿਤ ਹੈ। RainMaker IoT ਯੰਤਰ ਸਿਰਫ਼ ਖਾਸ ਕਾਰਵਾਈਆਂ ਦਾ ਜਵਾਬ ਦਿੰਦੇ ਹਨ। ਸਮਰਥਿਤ ਵੌਇਸ ਕਮਾਂਡਾਂ ਦੀ ਇੱਕ ਵਿਸਤ੍ਰਿਤ ਸੂਚੀ ਲਈ, ਕਿਰਪਾ ਕਰਕੇ ਤੀਜੀ-ਧਿਰ ਦੇ ਪਲੇਟਫਾਰਮਾਂ ਦੀ ਜਾਂਚ ਕਰੋ। ਇਸ ਤੋਂ ਇਲਾਵਾ, Espressif ਸਮਾਰਟਫੋਨ ਰਾਹੀਂ ਉਤਪਾਦਾਂ ਨੂੰ ਨਿਯੰਤਰਿਤ ਕਰਨ ਲਈ ਉਪਭੋਗਤਾਵਾਂ ਲਈ ਇੱਕ ਜਨਤਕ ਰੇਨਮੇਕਰ ਐਪ ਦੀ ਪੇਸ਼ਕਸ਼ ਕਰਦਾ ਹੈ। 20 ESP32-C3 ਵਾਇਰਲੈੱਸ ਐਡਵੈਂਚਰ: IoT ਲਈ ਇੱਕ ਵਿਆਪਕ ਗਾਈਡ

3.2 ESP ਰੇਨਮੇਕਰ ਨੂੰ ਲਾਗੂ ਕਰਨਾ
ਜਿਵੇਂ ਕਿ ਚਿੱਤਰ 3.2 ਵਿੱਚ ਦਿਖਾਇਆ ਗਿਆ ਹੈ, ESP ਰੇਨਮੇਕਰ ਵਿੱਚ ਚਾਰ ਭਾਗ ਹਨ: · ਸੇਵਾ ਦਾ ਦਾਅਵਾ ਕਰਨਾ, ਰੇਨਮੇਕਰ ਡਿਵਾਈਸਾਂ ਨੂੰ ਗਤੀਸ਼ੀਲ ਤੌਰ 'ਤੇ ਸਰਟੀਫਿਕੇਟ ਪ੍ਰਾਪਤ ਕਰਨ ਦੇ ਯੋਗ ਬਣਾਉਣਾ। · ਰੇਨਮੇਕਰ ਕਲਾਉਡ (ਕਲਾਉਡ ਬੈਕਐਂਡ ਵਜੋਂ ਵੀ ਜਾਣਿਆ ਜਾਂਦਾ ਹੈ), ਸੇਵਾਵਾਂ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ ਜਿਵੇਂ ਕਿ ਸੁਨੇਹਾ ਫਿਲਟਰਿੰਗ, ਉਪਭੋਗਤਾ ਪ੍ਰਬੰਧਨ, ਡੇਟਾ ਸਟੋਰੇਜ, ਅਤੇ ਤੀਜੀ-ਧਿਰ ਏਕੀਕਰਣ। · ਰੇਨਮੇਕਰ ਏਜੰਟ, ਰੇਨਮੇਕਰ ਡਿਵਾਈਸਾਂ ਨੂੰ ਰੇਨਮੇਕਰ ਕਲਾਉਡ ਨਾਲ ਜੁੜਨ ਦੇ ਯੋਗ ਬਣਾਉਂਦਾ ਹੈ। · ਰੇਨਮੇਕਰ ਕਲਾਇੰਟ (ਰੇਨਮੇਕਰ ਐਪ ਜਾਂ ਸੀਐਲਆਈ ਸਕ੍ਰਿਪਟ), ਪ੍ਰੋਵੀਜ਼ਨਿੰਗ, ਉਪਭੋਗਤਾ ਬਣਾਉਣ, ਡਿਵਾਈਸ ਐਸੋਸੀਏਸ਼ਨ ਅਤੇ ਨਿਯੰਤਰਣ, ਆਦਿ ਲਈ।
ਚਿੱਤਰ 3.2. ESP ਰੇਨਮੇਕਰ ਦਾ ਢਾਂਚਾ
ESP ਰੇਨਮੇਕਰ ਉਤਪਾਦ ਦੇ ਵਿਕਾਸ ਅਤੇ ਵੱਡੇ ਉਤਪਾਦਨ ਲਈ ਸੰਦਾਂ ਦਾ ਇੱਕ ਪੂਰਾ ਸੈੱਟ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ, ਜਿਸ ਵਿੱਚ ਸ਼ਾਮਲ ਹਨ: ਰੇਨਮੇਕਰ SDK
RainMaker SDK ESP-IDF 'ਤੇ ਅਧਾਰਤ ਹੈ ਅਤੇ ਫਰਮਵੇਅਰ ਵਿਕਾਸ ਲਈ ਡਿਵਾਈਸ-ਸਾਈਡ ਏਜੰਟ ਅਤੇ ਸੰਬੰਧਿਤ C APIs ਦਾ ਸਰੋਤ ਕੋਡ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ। ਡਿਵੈਲਪਰਾਂ ਨੂੰ ਸਿਰਫ਼ ਐਪਲੀਕੇਸ਼ਨ ਤਰਕ ਲਿਖਣਾ ਚਾਹੀਦਾ ਹੈ ਅਤੇ ਬਾਕੀ ਨੂੰ ਰੇਨਮੇਕਰ ਫਰੇਮਵਰਕ 'ਤੇ ਛੱਡਣਾ ਚਾਹੀਦਾ ਹੈ। C APIs ਬਾਰੇ ਹੋਰ ਜਾਣਕਾਰੀ ਲਈ, ਕਿਰਪਾ ਕਰਕੇ https://bookc3.espressif.com/rm/c-api-reference 'ਤੇ ਜਾਓ। ਰੇਨਮੇਕਰ ਐਪ ਰੇਨਮੇਕਰ ਐਪ ਦਾ ਜਨਤਕ ਸੰਸਕਰਣ ਡਿਵੈਲਪਰਾਂ ਨੂੰ ਡਿਵਾਈਸ ਪ੍ਰੋਵਿਜ਼ਨਿੰਗ ਨੂੰ ਪੂਰਾ ਕਰਨ, ਅਤੇ ਡਿਵਾਈਸਾਂ (ਜਿਵੇਂ ਕਿ ਸਮਾਰਟ ਲਾਈਟਿੰਗ ਉਤਪਾਦ) ਦੀ ਸਥਿਤੀ ਨੂੰ ਕੰਟਰੋਲ ਕਰਨ ਅਤੇ ਪੁੱਛਗਿੱਛ ਕਰਨ ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ। ਇਹ iOS ਅਤੇ Android ਐਪ ਸਟੋਰਾਂ 'ਤੇ ਉਪਲਬਧ ਹੈ। ਹੋਰ ਵੇਰਵਿਆਂ ਲਈ, ਕਿਰਪਾ ਕਰਕੇ ਅਧਿਆਇ 10 ਵੇਖੋ। REST APIs REST APIs ਉਪਭੋਗਤਾਵਾਂ ਨੂੰ ਰੇਨਮੇਕਰ ਐਪ ਦੇ ਸਮਾਨ ਉਹਨਾਂ ਦੀਆਂ ਆਪਣੀਆਂ ਐਪਲੀਕੇਸ਼ਨਾਂ ਬਣਾਉਣ ਵਿੱਚ ਮਦਦ ਕਰਦੇ ਹਨ। ਵਧੇਰੇ ਜਾਣਕਾਰੀ ਲਈ, ਕਿਰਪਾ ਕਰਕੇ https://swaggerapis.rainmaker.espressif.com/ 'ਤੇ ਜਾਓ।
ਅਧਿਆਇ 3. ESP ਰੇਨਮੇਕਰ 21 ਦੀ ਜਾਣ-ਪਛਾਣ

Python APIs ਇੱਕ ਪਾਈਥਨ-ਆਧਾਰਿਤ CLI, ਜੋ RainMaker SDK ਦੇ ਨਾਲ ਆਉਂਦਾ ਹੈ, ਸਮਾਰਟਫੋਨ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਦੇ ਸਮਾਨ ਸਾਰੇ ਫੰਕਸ਼ਨਾਂ ਨੂੰ ਲਾਗੂ ਕਰਨ ਲਈ ਪ੍ਰਦਾਨ ਕੀਤਾ ਗਿਆ ਹੈ। Python APIs ਬਾਰੇ ਹੋਰ ਜਾਣਕਾਰੀ ਲਈ, ਕਿਰਪਾ ਕਰਕੇ https://bookc3.espressif.com/rm/python-api-reference 'ਤੇ ਜਾਓ।
ਐਡਮਿਨ CLI ਐਡਮਿਨ CLI, ਉੱਚ ਪੱਧਰੀ ਪਹੁੰਚ ਦੇ ਨਾਲ, ਬਲਕ ਵਿੱਚ ਡਿਵਾਈਸ ਸਰਟੀਫਿਕੇਟ ਬਣਾਉਣ ਲਈ ESP RainMaker ਪ੍ਰਾਈਵੇਟ ਤੈਨਾਤੀ ਲਈ ਪ੍ਰਦਾਨ ਕੀਤੀ ਜਾਂਦੀ ਹੈ।
3.2.1 ਸੇਵਾ ਦਾ ਦਾਅਵਾ ਕਰਨਾ
ਰੇਨਮੇਕਰ ਡਿਵਾਈਸਾਂ ਅਤੇ ਕਲਾਉਡ ਬੈਕਐਂਡ ਵਿਚਕਾਰ ਸਾਰਾ ਸੰਚਾਰ MQTT+TLS ਦੁਆਰਾ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। ESP ਰੇਨਮੇਕਰ ਦੇ ਸੰਦਰਭ ਵਿੱਚ, "ਦਾਅਵਾ ਕਰਨਾ" ਉਹ ਪ੍ਰਕਿਰਿਆ ਹੈ ਜਿਸ ਵਿੱਚ ਡਿਵਾਈਸਾਂ ਕਲਾਉਡ ਬੈਕਐਂਡ ਨਾਲ ਜੁੜਨ ਲਈ ਦਾਅਵਾ ਸੇਵਾ ਤੋਂ ਸਰਟੀਫਿਕੇਟ ਪ੍ਰਾਪਤ ਕਰਦੀਆਂ ਹਨ। ਨੋਟ ਕਰੋ ਕਿ ਦਾਅਵਾ ਕਰਨ ਵਾਲੀ ਸੇਵਾ ਸਿਰਫ਼ ਜਨਤਕ ਰੇਨਮੇਕਰ ਸੇਵਾ 'ਤੇ ਲਾਗੂ ਹੁੰਦੀ ਹੈ, ਜਦੋਂ ਕਿ ਨਿੱਜੀ ਤੈਨਾਤੀ ਲਈ, ਐਡਮਿਨ CLI ਰਾਹੀਂ ਡਿਵਾਈਸ ਸਰਟੀਫਿਕੇਟਾਂ ਨੂੰ ਬਲਕ ਵਿੱਚ ਤਿਆਰ ਕਰਨ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ। ESP ਰੇਨਮੇਕਰ ਤਿੰਨ ਕਿਸਮਾਂ ਦੀਆਂ ਦਾਅਵਾ ਸੇਵਾ ਦਾ ਸਮਰਥਨ ਕਰਦਾ ਹੈ: ਸਵੈ-ਦਾਅਵਾ ਕਰਨਾ
ਡਿਵਾਈਸ ਖੁਦ ਇੰਟਰਨੈਟ ਨਾਲ ਕਨੈਕਟ ਹੋਣ ਤੋਂ ਬਾਅਦ eFuse ਵਿੱਚ ਪ੍ਰੀ-ਪ੍ਰੋਗਰਾਮ ਕੀਤੀ ਇੱਕ ਗੁਪਤ ਕੁੰਜੀ ਦੁਆਰਾ ਸਰਟੀਫਿਕੇਟ ਪ੍ਰਾਪਤ ਕਰਦੀ ਹੈ। ਹੋਸਟ ਡ੍ਰਾਈਵ ਕਲੇਮਿੰਗ ਸਰਟੀਫਿਕੇਟ ਰੇਨਮੇਕਰ ਖਾਤੇ ਨਾਲ ਵਿਕਾਸ ਹੋਸਟ ਤੋਂ ਪ੍ਰਾਪਤ ਕੀਤੇ ਜਾਂਦੇ ਹਨ। ਅਸਿਸਟਡ ਕਲੇਮਿੰਗ ਪ੍ਰੋਵੀਜ਼ਨਿੰਗ ਦੌਰਾਨ ਸਰਟੀਫਿਕੇਟ ਸਮਾਰਟਫੋਨ ਐਪਲੀਕੇਸ਼ਨਾਂ ਰਾਹੀਂ ਪ੍ਰਾਪਤ ਕੀਤੇ ਜਾਂਦੇ ਹਨ।
3.2.2 ਰੇਨਮੇਕਰ ਏਜੰਟ
ਚਿੱਤਰ 3.3. ਰੇਨਮੇਕਰ SDK ਦਾ ਢਾਂਚਾ ਰੇਨਮੇਕਰ ਏਜੰਟ ਦਾ ਪ੍ਰਾਇਮਰੀ ਕੰਮ ਕਨੈਕਟੀਵਿਟੀ ਪ੍ਰਦਾਨ ਕਰਨਾ ਹੈ ਅਤੇ ਅਪਲਿੰਕ/ਡਾਊਨਲਿੰਕ ਕਲਾਉਡ ਡੇਟਾ ਨੂੰ ਪ੍ਰੋਸੈਸ ਕਰਨ ਲਈ ਐਪਲੀਕੇਸ਼ਨ ਲੇਅਰ ਦੀ ਸਹਾਇਤਾ ਕਰਨਾ ਹੈ। ਇਹ ਰੇਨਮੇਕਰ SDK 22 ESP32-C3 ਵਾਇਰਲੈੱਸ ਐਡਵੈਂਚਰ ਦੁਆਰਾ ਬਣਾਇਆ ਗਿਆ ਹੈ: IoT ਲਈ ਇੱਕ ਵਿਆਪਕ ਗਾਈਡ

ਅਤੇ RTOS, NVS, ਅਤੇ MQTT ਵਰਗੇ ESP-IDF ਭਾਗਾਂ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ, ਸਾਬਤ ਹੋਏ ESP-IDF ਫਰੇਮਵਰਕ ਦੇ ਆਧਾਰ 'ਤੇ ਵਿਕਸਤ ਕੀਤਾ ਗਿਆ ਹੈ। ਚਿੱਤਰ 3.3 ਰੇਨਮੇਕਰ SDK ਦੀ ਬਣਤਰ ਨੂੰ ਦਰਸਾਉਂਦਾ ਹੈ।
ਰੇਨਮੇਕਰ SDK ਵਿੱਚ ਦੋ ਪ੍ਰਮੁੱਖ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਸ਼ਾਮਲ ਹਨ।
ਕਨੈਕਸ਼ਨ
i. ਡਿਵਾਈਸ ਸਰਟੀਫਿਕੇਟ ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ ਦਾਅਵਾ ਸੇਵਾ ਨਾਲ ਸਹਿਯੋਗ ਕਰਨਾ।
ii. ਰਿਮੋਟ ਕਨੈਕਟੀਵਿਟੀ ਪ੍ਰਦਾਨ ਕਰਨ ਅਤੇ ਰਿਮੋਟ ਕੰਟਰੋਲ, ਸੁਨੇਹਾ ਰਿਪੋਰਟਿੰਗ, ਉਪਭੋਗਤਾ ਪ੍ਰਬੰਧਨ, ਡਿਵਾਈਸ ਪ੍ਰਬੰਧਨ, ਆਦਿ ਨੂੰ ਲਾਗੂ ਕਰਨ ਲਈ ਸੁਰੱਖਿਅਤ MQTT ਪ੍ਰੋਟੋਕੋਲ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ ਕਲਾਉਡ ਬੈਕਐਂਡ ਨਾਲ ਕਨੈਕਟ ਕਰਨਾ। ਇਹ ਮੂਲ ਰੂਪ ਵਿੱਚ ESP-IDF ਵਿੱਚ MQTT ਕੰਪੋਨੈਂਟ ਦੀ ਵਰਤੋਂ ਕਰਦਾ ਹੈ ਅਤੇ ਦੂਜੇ ਨਾਲ ਇੰਟਰਫੇਸ ਕਰਨ ਲਈ ਇੱਕ ਐਬਸਟਰੈਕਸ਼ਨ ਲੇਅਰ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ। ਪ੍ਰੋਟੋਕੋਲ ਸਟੈਕ.
iii. ਵਾਈ-ਫਾਈ ਕਨੈਕਸ਼ਨ ਅਤੇ ਪ੍ਰੋਵੀਜ਼ਨਿੰਗ ਲਈ ਵਾਈ-ਫਾਈ ਪ੍ਰੋਵਿਜ਼ਨਿੰਗ ਕੰਪੋਨੈਂਟ, OTA ਅੱਪਗ੍ਰੇਡਾਂ ਲਈ esp https ota ਕੰਪੋਨੈਂਟ, ਅਤੇ ਸਥਾਨਕ ਡੀਵਾਈਸ ਖੋਜ ਅਤੇ ਕਨੈਕਸ਼ਨ ਲਈ esp ਲੋਕਲ ctrl ਕੰਪੋਨੈਂਟ ਮੁਹੱਈਆ ਕਰਨਾ। ਇਹ ਸਾਰੇ ਉਦੇਸ਼ ਸਧਾਰਨ ਸੰਰਚਨਾ ਦੁਆਰਾ ਪ੍ਰਾਪਤ ਕੀਤੇ ਜਾ ਸਕਦੇ ਹਨ.
ਡਾਟਾ ਪ੍ਰੋਸੈਸਿੰਗ
i. ਕਲੇਮਿੰਗ ਸਰਵਿਸ ਦੁਆਰਾ ਜਾਰੀ ਕੀਤੇ ਗਏ ਡਿਵਾਈਸ ਸਰਟੀਫਿਕੇਟ ਅਤੇ ਰੇਨਮੇਕਰ ਨੂੰ ਚਲਾਉਣ ਵੇਲੇ ਲੋੜੀਂਦੇ ਡੇਟਾ ਨੂੰ ਸਟੋਰ ਕਰਨਾ, ਡਿਫੌਲਟ ਰੂਪ ਵਿੱਚ nvs ਫਲੈਸ਼ ਕੰਪੋਨੈਂਟ ਦੁਆਰਾ ਪ੍ਰਦਾਨ ਕੀਤੇ ਇੰਟਰਫੇਸ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ, ਅਤੇ ਡਿਵੈਲਪਰਾਂ ਨੂੰ ਸਿੱਧੀ ਵਰਤੋਂ ਲਈ API ਪ੍ਰਦਾਨ ਕਰਨਾ।
ii. ਅਪਲਿੰਕ/ਡਾਊਨਲਿੰਕ ਕਲਾਉਡ ਡੇਟਾ ਨੂੰ ਪ੍ਰੋਸੈਸ ਕਰਨ ਲਈ ਕਾਲਬੈਕ ਵਿਧੀ ਦੀ ਵਰਤੋਂ ਕਰਨਾ ਅਤੇ ਡਿਵੈਲਪਰਾਂ ਦੁਆਰਾ ਆਸਾਨ ਪ੍ਰਕਿਰਿਆ ਲਈ ਐਪਲੀਕੇਸ਼ਨ ਲੇਅਰ ਵਿੱਚ ਡੇਟਾ ਨੂੰ ਸਵੈਚਲਿਤ ਤੌਰ 'ਤੇ ਅਨਬਲੌਕ ਕਰਨਾ। ਸਾਬਕਾ ਲਈample, RainMaker SDK TSL (ਥਿੰਗ ਸਪੈਸੀਫਿਕੇਸ਼ਨ ਲੈਂਗੂਏਜ) ਡੇਟਾ ਨੂੰ ਸਥਾਪਤ ਕਰਨ ਲਈ ਅਮੀਰ ਇੰਟਰਫੇਸ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ, ਜੋ IoT ਡਿਵਾਈਸਾਂ ਦਾ ਵਰਣਨ ਕਰਨ ਅਤੇ ਫੰਕਸ਼ਨਾਂ ਜਿਵੇਂ ਕਿ ਸਮਾਂ, ਕਾਉਂਟਡਾਊਨ, ਅਤੇ ਵੌਇਸ ਕੰਟਰੋਲ ਨੂੰ ਲਾਗੂ ਕਰਨ ਲਈ TSL ਮਾਡਲਾਂ ਨੂੰ ਪਰਿਭਾਸ਼ਿਤ ਕਰਨ ਲਈ ਲੋੜੀਂਦੇ ਹਨ। ਬੁਨਿਆਦੀ ਇੰਟਰਐਕਟਿਵ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਜਿਵੇਂ ਕਿ ਟਾਈਮਿੰਗ ਲਈ, RainMaker SDK ਇੱਕ ਵਿਕਾਸ-ਮੁਕਤ ਹੱਲ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ ਜਿਸਨੂੰ ਲੋੜ ਪੈਣ 'ਤੇ ਸਿਰਫ਼ ਯੋਗ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। ਫਿਰ, ਰੇਨਮੇਕਰ ਏਜੰਟ ਸਿੱਧੇ ਤੌਰ 'ਤੇ ਡੇਟਾ ਦੀ ਪ੍ਰਕਿਰਿਆ ਕਰੇਗਾ, ਇਸ ਨੂੰ ਸੰਬੰਧਿਤ MQTT ਵਿਸ਼ੇ ਦੁਆਰਾ ਕਲਾਉਡ ਨੂੰ ਭੇਜੇਗਾ, ਅਤੇ ਕਾਲਬੈਕ ਵਿਧੀ ਦੁਆਰਾ ਕਲਾਉਡ ਬੈਕਐਂਡ ਵਿੱਚ ਡੇਟਾ ਤਬਦੀਲੀਆਂ ਨੂੰ ਫੀਡ ਬੈਕ ਕਰੇਗਾ।
3.2.3 ਕਲਾਉਡ ਬੈਕਐਂਡ
ਕਲਾਉਡ ਬੈਕਐਂਡ AWS ਸਰਵਰ ਰਹਿਤ ਕੰਪਿਊਟਿੰਗ 'ਤੇ ਬਣਾਇਆ ਗਿਆ ਹੈ ਅਤੇ AWS Cognito (ਪਛਾਣ ਪ੍ਰਬੰਧਨ ਸਿਸਟਮ), Amazon API ਗੇਟਵੇ, AWS Lambda (ਸਰਵਰ ਰਹਿਤ ਕੰਪਿਊਟਿੰਗ ਸੇਵਾ), Amazon DynamoDB (NoSQL ਡਾਟਾਬੇਸ), AWS IoT ਕੋਰ (IoT ਐਕਸੈਸ ਕੋਰ ਜੋ MQTT ਪਹੁੰਚ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ ਦੁਆਰਾ ਪ੍ਰਾਪਤ ਕੀਤਾ ਗਿਆ ਹੈ) ਅਤੇ ਨਿਯਮ ਫਿਲਟਰਿੰਗ), Amazon ਸਧਾਰਨ ਈਮੇਲ ਸੇਵਾ (SES ਸਧਾਰਨ ਮੇਲ ਸੇਵਾ), Amazon CloudFront (ਫਾਸਟ ਡਿਲਿਵਰੀ ਨੈੱਟਵਰਕ), Amazon Simple Queue Service (SQS ਸੁਨੇਹਾ ਕਤਾਰ), ਅਤੇ Amazon S3 (ਬਾਲਟੀ ਸਟੋਰੇਜ ਸੇਵਾ)। ਇਸਦਾ ਉਦੇਸ਼ ਮਾਪਯੋਗਤਾ ਅਤੇ ਸੁਰੱਖਿਆ ਨੂੰ ਅਨੁਕੂਲ ਬਣਾਉਣਾ ਹੈ। ESP RainMaker ਦੇ ਨਾਲ, ਡਿਵੈਲਪਰ ਕਲਾਉਡ ਵਿੱਚ ਕੋਡ ਲਿਖੇ ਬਿਨਾਂ ਡਿਵਾਈਸਾਂ ਦਾ ਪ੍ਰਬੰਧਨ ਕਰ ਸਕਦੇ ਹਨ। ਡਿਵਾਈਸਾਂ ਦੁਆਰਾ ਰਿਪੋਰਟ ਕੀਤੇ ਗਏ ਸੁਨੇਹੇ ਪਾਰਦਰਸ਼ੀ ਤੌਰ 'ਤੇ ਪ੍ਰਸਾਰਿਤ ਕੀਤੇ ਜਾਂਦੇ ਹਨ
ਅਧਿਆਇ 3. ESP ਰੇਨਮੇਕਰ 23 ਦੀ ਜਾਣ-ਪਛਾਣ

ਐਪਲੀਕੇਸ਼ਨ ਕਲਾਇੰਟ ਜਾਂ ਹੋਰ ਤੀਜੀ-ਧਿਰ ਸੇਵਾਵਾਂ। ਸਾਰਣੀ 3.1 ਵਿਕਾਸ ਅਧੀਨ ਹੋਰ ਉਤਪਾਦਾਂ ਅਤੇ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਦੇ ਨਾਲ, ਕਲਾਉਡ ਬੈਕਐਂਡ ਵਿੱਚ ਵਰਤੇ ਗਏ AWS ਕਲਾਉਡ ਉਤਪਾਦਾਂ ਅਤੇ ਫੰਕਸ਼ਨਾਂ ਨੂੰ ਦਿਖਾਉਂਦਾ ਹੈ।
ਸਾਰਣੀ 3.1. AWS ਕਲਾਉਡ ਉਤਪਾਦ ਅਤੇ ਕਲਾਉਡ ਬੈਕਐਂਡ ਦੁਆਰਾ ਵਰਤੇ ਗਏ ਫੰਕਸ਼ਨ

RainMaker ਦੁਆਰਾ ਵਰਤਿਆ AWS ਕਲਾਉਡ ਉਤਪਾਦ

ਫੰਕਸ਼ਨ

AWS ਕੋਗਨਿਟੋ

ਉਪਭੋਗਤਾ ਪ੍ਰਮਾਣ ਪੱਤਰਾਂ ਦਾ ਪ੍ਰਬੰਧਨ ਕਰਨਾ ਅਤੇ ਤੀਜੀ-ਧਿਰ ਲੌਗਿਨ ਦਾ ਸਮਰਥਨ ਕਰਨਾ

AWS ਲਾਂਬਡਾ

ਕਲਾਉਡ ਬੈਕਐਂਡ ਦੇ ਮੁੱਖ ਵਪਾਰਕ ਤਰਕ ਨੂੰ ਲਾਗੂ ਕਰਨਾ

ਐਮਾਜ਼ਾਨ ਟਾਈਮਸਟ੍ਰੀਮ ਸਟੋਰਿੰਗ ਟਾਈਮ ਸੀਰੀਜ਼ ਡੇਟਾ

Amazon DynamoDB ਗਾਹਕਾਂ ਦੀ ਨਿੱਜੀ ਜਾਣਕਾਰੀ ਨੂੰ ਸਟੋਰ ਕਰਨਾ

AWS IoT ਕੋਰ

MQTT ਸੰਚਾਰ ਦਾ ਸਮਰਥਨ ਕਰਨਾ

ਐਮਾਜ਼ਾਨ SES

ਈਮੇਲ ਭੇਜਣ ਦੀਆਂ ਸੇਵਾਵਾਂ ਪ੍ਰਦਾਨ ਕਰਨਾ

Amazon CloudFront ਬੈਕਐਂਡ ਦੇ ਪ੍ਰਬੰਧਨ ਨੂੰ ਤੇਜ਼ ਕਰਦਾ ਹੈ webਸਾਈਟ ਪਹੁੰਚ

ਐਮਾਜ਼ਾਨ SQS

AWS IoT ਕੋਰ ਤੋਂ ਸੁਨੇਹਿਆਂ ਨੂੰ ਅੱਗੇ ਭੇਜਣਾ

3.2.4 ਰੇਨਮੇਕਰ ਕਲਾਇੰਟ
RainMaker ਕਲਾਇੰਟਸ, ਜਿਵੇਂ ਕਿ ਐਪ ਅਤੇ CLI, REST APIs ਦੁਆਰਾ ਕਲਾਉਡ ਬੈਕਐਂਡ ਨਾਲ ਸੰਚਾਰ ਕਰਦੇ ਹਨ। REST APIs ਬਾਰੇ ਵਿਸਤ੍ਰਿਤ ਜਾਣਕਾਰੀ ਅਤੇ ਹਦਾਇਤਾਂ Espressif ਦੁਆਰਾ ਪ੍ਰਦਾਨ ਕੀਤੇ ਸਵੈਗਰ ਦਸਤਾਵੇਜ਼ਾਂ ਵਿੱਚ ਮਿਲ ਸਕਦੀਆਂ ਹਨ। RainMaker ਦਾ ਮੋਬਾਈਲ ਐਪਲੀਕੇਸ਼ਨ ਕਲਾਇੰਟ iOS ਅਤੇ Android ਦੋਵਾਂ ਸਿਸਟਮਾਂ ਲਈ ਉਪਲਬਧ ਹੈ। ਇਹ ਡਿਵਾਈਸ ਪ੍ਰੋਵਿਜ਼ਨਿੰਗ, ਨਿਯੰਤਰਣ ਅਤੇ ਸ਼ੇਅਰਿੰਗ ਦੇ ਨਾਲ-ਨਾਲ ਕਾਉਂਟਡਾਊਨ ਕਾਰਜਾਂ ਨੂੰ ਬਣਾਉਣ ਅਤੇ ਸਮਰੱਥ ਕਰਨ ਅਤੇ ਤੀਜੀ-ਧਿਰ ਪਲੇਟਫਾਰਮਾਂ ਨਾਲ ਜੁੜਨ ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ। ਇਹ ਡਿਵਾਈਸਾਂ ਦੁਆਰਾ ਰਿਪੋਰਟ ਕੀਤੀ ਗਈ ਸੰਰਚਨਾ ਦੇ ਅਨੁਸਾਰ UI ਅਤੇ ਆਈਕਨਾਂ ਨੂੰ ਆਪਣੇ ਆਪ ਲੋਡ ਕਰ ਸਕਦਾ ਹੈ ਅਤੇ ਡਿਵਾਈਸ TSL ਨੂੰ ਪੂਰੀ ਤਰ੍ਹਾਂ ਪ੍ਰਦਰਸ਼ਿਤ ਕਰ ਸਕਦਾ ਹੈ।
ਸਾਬਕਾ ਲਈample, ਜੇਕਰ ਰੇਨਮੇਕਰ SDK-ਪ੍ਰਦਾਨ ਕੀਤੇ ਸਾਬਕਾ 'ਤੇ ਇੱਕ ਸਮਾਰਟ ਲਾਈਟ ਬਣਾਈ ਗਈ ਹੈamples, ਪ੍ਰੋਵਿਜ਼ਨਿੰਗ ਪੂਰੀ ਹੋਣ 'ਤੇ ਬਲਬ ਲਾਈਟ ਦਾ ਆਈਕਨ ਅਤੇ UI ਆਪਣੇ ਆਪ ਲੋਡ ਹੋ ਜਾਵੇਗਾ। ਉਪਭੋਗਤਾ ਇੰਟਰਫੇਸ ਰਾਹੀਂ ਰੋਸ਼ਨੀ ਦਾ ਰੰਗ ਅਤੇ ਚਮਕ ਬਦਲ ਸਕਦੇ ਹਨ ਅਤੇ ਅਲੈਕਸਾ ਸਮਾਰਟ ਹੋਮ ਸਕਿੱਲ ਜਾਂ ਗੂਗਲ ਸਮਾਰਟ ਹੋਮ ਐਕਸ਼ਨ ਨੂੰ ਆਪਣੇ ESP ਰੇਨਮੇਕਰ ਖਾਤਿਆਂ ਨਾਲ ਲਿੰਕ ਕਰਕੇ ਤੀਜੀ-ਧਿਰ ਨਿਯੰਤਰਣ ਪ੍ਰਾਪਤ ਕਰ ਸਕਦੇ ਹਨ। ਚਿੱਤਰ 3.4 ਆਈਕਾਨ ਅਤੇ UI ਸਾਬਕਾ ਦਿਖਾਉਂਦਾ ਹੈampਅਲੈਕਸਾ, ਗੂਗਲ ਹੋਮ, ਅਤੇ ਈਐਸਪੀ ਰੇਨਮੇਕਰ ਐਪ 'ਤੇ ਕ੍ਰਮਵਾਰ ਬੱਲਬ ਦੀ ਰੌਸ਼ਨੀ।

24 ESP32-C3 ਵਾਇਰਲੈੱਸ ਐਡਵੈਂਚਰ: IoT ਲਈ ਇੱਕ ਵਿਆਪਕ ਗਾਈਡ

(a) ਸਾਬਕਾample - ਅਲੈਕਸਾ

(ਬੀ) ਸਾਬਕਾample - ਗੂਗਲ ਹੋਮ

(c) ਸਾਬਕਾample - ESP ਰੇਨਮੇਕਰ
ਚਿੱਤਰ 3.4. ਸਾਬਕਾampਅਲੈਕਸਾ, ਗੂਗਲ ਹੋਮ, ਅਤੇ ESP ਰੇਨਮੇਕਰ ਐਪ 'ਤੇ ਬੱਲਬ ਲਾਈਟ ਦੇ ਆਈਕਨ ਅਤੇ UI ਦੇ ਲੇਸ
3.3 ਅਭਿਆਸ: ESP ਰੇਨਮੇਕਰ ਨਾਲ ਵਿਕਸਿਤ ਕਰਨ ਲਈ ਮੁੱਖ ਨੁਕਤੇ
ਇੱਕ ਵਾਰ ਡਿਵਾਈਸ ਡ੍ਰਾਈਵਰ ਲੇਅਰ ਪੂਰੀ ਹੋ ਜਾਣ ਤੋਂ ਬਾਅਦ, ਡਿਵੈਲਪਰ ਰੇਨਮੇਕਰ SDK ਦੁਆਰਾ ਪ੍ਰਦਾਨ ਕੀਤੇ APIs ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ TSL ਮਾਡਲ ਬਣਾਉਣਾ ਅਤੇ ਡਾਊਨਲਿੰਕ ਡੇਟਾ ਨੂੰ ਪ੍ਰੋਸੈਸ ਕਰਨਾ ਸ਼ੁਰੂ ਕਰ ਸਕਦੇ ਹਨ, ਅਤੇ ਉਤਪਾਦ ਪਰਿਭਾਸ਼ਾ ਅਤੇ ਲੋੜਾਂ ਦੇ ਅਧਾਰ ਤੇ ESP RainMaker ਬੁਨਿਆਦੀ ਸੇਵਾਵਾਂ ਨੂੰ ਸਮਰੱਥ ਕਰ ਸਕਦੇ ਹਨ।
ਅਧਿਆਇ 3. ESP ਰੇਨਮੇਕਰ 25 ਦੀ ਜਾਣ-ਪਛਾਣ

ਇਸ ਕਿਤਾਬ ਦਾ ਸੈਕਸ਼ਨ 9.4 ਰੇਨਮੇਕਰ ਵਿੱਚ LED ਸਮਾਰਟ ਲਾਈਟ ਨੂੰ ਲਾਗੂ ਕਰਨ ਦੀ ਵਿਆਖਿਆ ਕਰੇਗਾ। ਡੀਬੱਗਿੰਗ ਦੇ ਦੌਰਾਨ, ਡਿਵੈਲਪਰ ਸਮਾਰਟ ਲਾਈਟ (ਜਾਂ ਸਵੈਗਰ ਤੋਂ REST API ਨੂੰ ਕਾਲ ਕਰੋ) ਨਾਲ ਸੰਚਾਰ ਕਰਨ ਲਈ RainMaker SDK ਵਿੱਚ CLI ਟੂਲਸ ਦੀ ਵਰਤੋਂ ਕਰ ਸਕਦੇ ਹਨ।
ਅਧਿਆਇ 10 ਸਮਾਰਟਫ਼ੋਨ ਐਪਲੀਕੇਸ਼ਨਾਂ ਨੂੰ ਵਿਕਸਤ ਕਰਨ ਵਿੱਚ REST API ਦੀ ਵਰਤੋਂ ਬਾਰੇ ਵਿਸਤ੍ਰਿਤ ਕਰੇਗਾ। LED ਸਮਾਰਟ ਲਾਈਟਾਂ ਦੇ OTA ਅੱਪਗਰੇਡਾਂ ਨੂੰ ਅਧਿਆਇ 11 ਵਿੱਚ ਕਵਰ ਕੀਤਾ ਜਾਵੇਗਾ। ਜੇਕਰ ਡਿਵੈਲਪਰਾਂ ਨੇ ESP ਇਨਸਾਈਟਸ ਰਿਮੋਟ ਮਾਨੀਟਰਿੰਗ ਨੂੰ ਸਮਰੱਥ ਬਣਾਇਆ ਹੈ, ਤਾਂ ESP ਰੇਨਮੇਕਰ ਪ੍ਰਬੰਧਨ ਬੈਕਐਂਡ ESP ਇਨਸਾਈਟਸ ਡਾਟਾ ਪ੍ਰਦਰਸ਼ਿਤ ਕਰੇਗਾ। ਵੇਰਵੇ ਅਧਿਆਇ 15 ਵਿੱਚ ਪੇਸ਼ ਕੀਤੇ ਜਾਣਗੇ।
ESP ਰੇਨਮੇਕਰ ਪ੍ਰਾਈਵੇਟ ਤੈਨਾਤੀ ਦਾ ਸਮਰਥਨ ਕਰਦਾ ਹੈ, ਜੋ ਕਿ ਜਨਤਕ ਰੇਨਮੇਕਰ ਸਰਵਰ ਤੋਂ ਹੇਠਾਂ ਦਿੱਤੇ ਤਰੀਕਿਆਂ ਨਾਲ ਵੱਖਰਾ ਹੈ:
ਦਾਅਵਾ ਸੇਵਾ ਨਿੱਜੀ ਤੈਨਾਤੀਆਂ ਵਿੱਚ ਸਰਟੀਫਿਕੇਟ ਬਣਾਉਣ ਲਈ, ਦਾਅਵਾ ਕਰਨ ਦੀ ਬਜਾਏ ਰੇਨਮੇਕਰ ਐਡਮਿਨ CLI ਦੀ ਵਰਤੋਂ ਕਰਨ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ। ਜਨਤਕ ਸਰਵਰ ਦੇ ਨਾਲ, ਡਿਵੈਲਪਰਾਂ ਨੂੰ ਫਰਮਵੇਅਰ ਅੱਪਗਰੇਡ ਨੂੰ ਲਾਗੂ ਕਰਨ ਲਈ ਪ੍ਰਬੰਧਕ ਅਧਿਕਾਰ ਦਿੱਤੇ ਜਾਣੇ ਚਾਹੀਦੇ ਹਨ, ਪਰ ਵਪਾਰਕ ਤੈਨਾਤੀਆਂ ਵਿੱਚ ਇਹ ਅਣਚਾਹੇ ਹੈ। ਇਸ ਲਈ, ਸਵੈ-ਦਾਅਵਿਆਂ ਲਈ ਨਾ ਤਾਂ ਵੱਖਰੀ ਪ੍ਰਮਾਣਿਕਤਾ ਸੇਵਾ ਪ੍ਰਦਾਨ ਕੀਤੀ ਜਾ ਸਕਦੀ ਹੈ, ਨਾ ਹੀ ਹੋਸਟ ਦੁਆਰਾ ਸੰਚਾਲਿਤ ਜਾਂ ਸਹਾਇਤਾ ਪ੍ਰਾਪਤ ਦਾਅਵੇ ਲਈ ਪ੍ਰਬੰਧਕ ਅਧਿਕਾਰ।
ਫ਼ੋਨ ਐਪਸ ਨਿੱਜੀ ਤੈਨਾਤੀਆਂ ਵਿੱਚ, ਇਹ ਯਕੀਨੀ ਬਣਾਉਣ ਲਈ ਕਿ ਖਾਤਾ ਸਿਸਟਮ ਆਪਸ ਵਿੱਚ ਕੰਮ ਕਰਨ ਯੋਗ ਨਹੀਂ ਹਨ, ਐਪਲੀਕੇਸ਼ਨਾਂ ਨੂੰ ਵੱਖਰੇ ਤੌਰ 'ਤੇ ਕੌਂਫਿਗਰ ਅਤੇ ਕੰਪਾਇਲ ਕਰਨ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ।
ਤੀਜੀ ਧਿਰ ਦੇ ਲੌਗਿਨ ਅਤੇ ਵੌਇਸ ਏਕੀਕਰਣ ਵਿਕਾਸਕਾਰਾਂ ਨੂੰ ਤੀਸਰੀ ਧਿਰ ਲੌਗਿਨ ਦੇ ਨਾਲ-ਨਾਲ ਅਲੈਕਸਾ ਸਕਿੱਲ ਅਤੇ ਗੂਗਲ ਵੌਇਸ ਅਸਿਸਟੈਂਟ ਏਕੀਕਰਣ ਨੂੰ ਸਮਰੱਥ ਕਰਨ ਲਈ ਗੂਗਲ ਅਤੇ ਐਪਲ ਡਿਵੈਲਪਰ ਖਾਤਿਆਂ ਦੁਆਰਾ ਵੱਖਰੇ ਤੌਰ 'ਤੇ ਕੌਂਫਿਗਰ ਕਰਨਾ ਪੈਂਦਾ ਹੈ।
ਟਿਪਸ ਕਲਾਉਡ ਤੈਨਾਤੀ ਬਾਰੇ ਵੇਰਵਿਆਂ ਲਈ, ਕਿਰਪਾ ਕਰਕੇ https://customer.rainmaker.espressif 'ਤੇ ਜਾਓ। com. ਫਰਮਵੇਅਰ ਦੇ ਰੂਪ ਵਿੱਚ, ਜਨਤਕ ਸਰਵਰ ਤੋਂ ਪ੍ਰਾਈਵੇਟ ਸਰਵਰ ਵਿੱਚ ਮਾਈਗਰੇਸ਼ਨ ਲਈ ਸਿਰਫ ਡਿਵਾਈਸ ਸਰਟੀਫਿਕੇਟਾਂ ਨੂੰ ਬਦਲਣ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ, ਜੋ ਮਾਈਗ੍ਰੇਸ਼ਨ ਕੁਸ਼ਲਤਾ ਵਿੱਚ ਬਹੁਤ ਸੁਧਾਰ ਕਰਦਾ ਹੈ ਅਤੇ ਮਾਈਗ੍ਰੇਸ਼ਨ ਅਤੇ ਸੈਕੰਡਰੀ ਡੀਬੱਗਿੰਗ ਦੀ ਲਾਗਤ ਨੂੰ ਘਟਾਉਂਦਾ ਹੈ।
3.4 ESP ਰੇਨਮੇਕਰ ਦੀਆਂ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ
ESP ਰੇਨਮੇਕਰ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਮੁੱਖ ਤੌਰ 'ਤੇ ਤਿੰਨ ਪਹਿਲੂਆਂ 'ਤੇ ਨਿਸ਼ਾਨਾ ਹਨ - ਉਪਭੋਗਤਾ ਪ੍ਰਬੰਧਨ, ਅੰਤਮ ਉਪਭੋਗਤਾ ਅਤੇ ਪ੍ਰਸ਼ਾਸਕ। ਸਾਰੀਆਂ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਜਨਤਕ ਅਤੇ ਪ੍ਰਾਈਵੇਟ ਸਰਵਰਾਂ ਵਿੱਚ ਸਮਰਥਿਤ ਹਨ ਜਦੋਂ ਤੱਕ ਕਿ ਹੋਰ ਨਹੀਂ ਦੱਸਿਆ ਗਿਆ।
3.4.1 ਉਪਭੋਗਤਾ ਪ੍ਰਬੰਧਨ
ਉਪਭੋਗਤਾ ਪ੍ਰਬੰਧਨ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਅੰਤਮ ਉਪਭੋਗਤਾਵਾਂ ਨੂੰ ਰਜਿਸਟਰ ਕਰਨ, ਲੌਗ ਇਨ ਕਰਨ, ਪਾਸਵਰਡ ਬਦਲਣ, ਪਾਸਵਰਡ ਪ੍ਰਾਪਤ ਕਰਨ ਆਦਿ ਦੀ ਆਗਿਆ ਦਿੰਦੀਆਂ ਹਨ।
26 ESP32-C3 ਵਾਇਰਲੈੱਸ ਐਡਵੈਂਚਰ: IoT ਲਈ ਇੱਕ ਵਿਆਪਕ ਗਾਈਡ

ਰਜਿਸਟਰ ਕਰੋ ਅਤੇ ਲੌਗ ਇਨ ਕਰੋ ਰੇਨਮੇਕਰ ਦੁਆਰਾ ਸਮਰਥਿਤ ਰਜਿਸਟ੍ਰੇਸ਼ਨ ਅਤੇ ਲੌਗਇਨ ਵਿਧੀਆਂ ਵਿੱਚ ਸ਼ਾਮਲ ਹਨ: · ਈਮੇਲ ਆਈਡੀ + ਪਾਸਵਰਡ · ਫੋਨ ਨੰਬਰ + ਪਾਸਵਰਡ · ਗੂਗਲ ਖਾਤਾ · ਐਪਲ ਖਾਤਾ · ਗਿੱਟਹਬ ਖਾਤਾ (ਸਿਰਫ਼ ਜਨਤਕ ਸਰਵਰ) · ਐਮਾਜ਼ਾਨ ਖਾਤਾ (ਸਿਰਫ਼ ਨਿੱਜੀ ਸਰਵਰ)
ਨੋਟ ਕਰੋ Google/Amazon ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਸਾਈਨ ਅੱਪ ਕਰੋ ਉਪਭੋਗਤਾ ਦਾ ਈਮੇਲ ਪਤਾ RainMaker ਨਾਲ ਸਾਂਝਾ ਕਰਦਾ ਹੈ। ਐਪਲ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਸਾਈਨ ਅੱਪ ਕਰੋ ਇੱਕ ਡਮੀ ਪਤਾ ਸਾਂਝਾ ਕਰੋ ਜੋ ਐਪਲ ਖਾਸ ਤੌਰ 'ਤੇ ਰੇਨਮੇਕਰ ਸੇਵਾ ਲਈ ਉਪਭੋਗਤਾ ਲਈ ਨਿਰਧਾਰਤ ਕਰਦਾ ਹੈ। ਪਹਿਲੀ ਵਾਰ Google, Apple, ਜਾਂ Amazon ਖਾਤੇ ਨਾਲ ਸਾਈਨ ਇਨ ਕਰਨ ਵਾਲੇ ਉਪਭੋਗਤਾਵਾਂ ਲਈ ਇੱਕ RainMaker ਖਾਤਾ ਸਵੈਚਲਿਤ ਤੌਰ 'ਤੇ ਬਣਾਇਆ ਜਾਵੇਗਾ।
ਪਾਸਵਰਡ ਬਦਲੋ ਸਿਰਫ਼ ਈਮੇਲ ਆਈਡੀ/ਫ਼ੋਨ ਨੰਬਰ ਆਧਾਰਿਤ ਲੌਗਿਨ ਲਈ ਵੈਧ ਹੈ। ਪਾਸਵਰਡ ਬਦਲਣ ਤੋਂ ਬਾਅਦ ਬਾਕੀ ਸਾਰੇ ਕਿਰਿਆਸ਼ੀਲ ਸੈਸ਼ਨ ਲੌਗ ਆਊਟ ਹੋ ਜਾਣਗੇ। AWS ਕੋਗਨਿਟੋ ਵਿਵਹਾਰ ਦੇ ਅਨੁਸਾਰ, ਲੌਗ-ਆਊਟ ਸੈਸ਼ਨ 1 ਘੰਟੇ ਤੱਕ ਕਿਰਿਆਸ਼ੀਲ ਰਹਿ ਸਕਦੇ ਹਨ।
ਪਾਸਵਰਡ ਮੁੜ ਪ੍ਰਾਪਤ ਕਰੋ ਸਿਰਫ਼ ਈਮੇਲ ਆਈਡੀ/ਫ਼ੋਨ ਨੰਬਰ ਆਧਾਰਿਤ ਲੌਗਿਨ ਲਈ ਵੈਧ ਹੈ।
3.4.2 ਅੰਤਮ ਉਪਭੋਗਤਾ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ
ਅੰਤਮ ਉਪਭੋਗਤਾਵਾਂ ਲਈ ਖੁੱਲ੍ਹੀਆਂ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਵਿੱਚ ਸਥਾਨਕ ਅਤੇ ਰਿਮੋਟ ਕੰਟਰੋਲ ਅਤੇ ਨਿਗਰਾਨੀ, ਸਮਾਂ-ਸਾਰਣੀ, ਡਿਵਾਈਸ ਗਰੁੱਪਿੰਗ, ਡਿਵਾਈਸ ਸ਼ੇਅਰਿੰਗ, ਪੁਸ਼ ਸੂਚਨਾਵਾਂ, ਅਤੇ ਤੀਜੀ-ਧਿਰ ਏਕੀਕਰਣ ਸ਼ਾਮਲ ਹਨ।
ਰਿਮੋਟ ਕੰਟਰੋਲ ਅਤੇ ਨਿਗਰਾਨੀ · ਇੱਕ ਜਾਂ ਸਾਰੀਆਂ ਡਿਵਾਈਸਾਂ ਲਈ ਪੁੱਛਗਿੱਛ ਕੌਂਫਿਗਰੇਸ਼ਨ, ਪੈਰਾਮੀਟਰ ਮੁੱਲ, ਅਤੇ ਕਨੈਕਸ਼ਨ ਸਥਿਤੀ। · ਸਿੰਗਲ ਜਾਂ ਮਲਟੀਪਲ ਡਿਵਾਈਸਾਂ ਲਈ ਮਾਪਦੰਡ ਸੈੱਟ ਕਰੋ।
ਸਥਾਨਕ ਨਿਯੰਤਰਣ ਅਤੇ ਨਿਗਰਾਨੀ ਮੋਬਾਈਲ ਫੋਨ ਅਤੇ ਡਿਵਾਈਸ ਨੂੰ ਸਥਾਨਕ ਨਿਯੰਤਰਣ ਲਈ ਇੱਕੋ ਨੈਟਵਰਕ ਨਾਲ ਕਨੈਕਟ ਕਰਨ ਦੀ ਲੋੜ ਹੈ।
ਸਮਾਂ-ਤਹਿ · ਉਪਭੋਗਤਾ ਇੱਕ ਖਾਸ ਸਮੇਂ 'ਤੇ ਕੁਝ ਕਾਰਵਾਈਆਂ ਨੂੰ ਪਹਿਲਾਂ ਤੋਂ ਸੈੱਟ ਕਰਦੇ ਹਨ। · ਅਨੁਸੂਚੀ ਨੂੰ ਲਾਗੂ ਕਰਦੇ ਸਮੇਂ ਡਿਵਾਈਸ ਲਈ ਕੋਈ ਇੰਟਰਨੈਟ ਕਨੈਕਸ਼ਨ ਦੀ ਲੋੜ ਨਹੀਂ ਹੈ। · ਸਿੰਗਲ ਜਾਂ ਮਲਟੀਪਲ ਡਿਵਾਈਸਾਂ ਲਈ ਇੱਕ ਵਾਰ ਜਾਂ ਦੁਹਰਾਓ (ਦਿਨ ਨਿਰਧਾਰਤ ਕਰਕੇ)।
ਡਿਵਾਈਸ ਗਰੁੱਪਿੰਗ ਮਲਟੀ-ਲੈਵਲ ਐਬਸਟਰੈਕਟ ਗਰੁੱਪਿੰਗ ਦਾ ਸਮਰਥਨ ਕਰਦੀ ਹੈ ਗਰੁੱਪ ਮੈਟਾਡੇਟਾ ਨੂੰ ਹੋਮ ਰੂਮ ਬਣਤਰ ਬਣਾਉਣ ਲਈ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ।
ਅਧਿਆਇ 3. ESP ਰੇਨਮੇਕਰ 27 ਦੀ ਜਾਣ-ਪਛਾਣ

ਡਿਵਾਈਸ ਸ਼ੇਅਰਿੰਗ ਇੱਕ ਜਾਂ ਇੱਕ ਤੋਂ ਵੱਧ ਡਿਵਾਈਸਾਂ ਇੱਕ ਜਾਂ ਇੱਕ ਤੋਂ ਵੱਧ ਉਪਭੋਗਤਾਵਾਂ ਨਾਲ ਸਾਂਝੀਆਂ ਕੀਤੀਆਂ ਜਾ ਸਕਦੀਆਂ ਹਨ।
ਪੁਸ਼ ਸੂਚਨਾਵਾਂ ਅੰਤਮ ਉਪਭੋਗਤਾਵਾਂ ਨੂੰ ਇਵੈਂਟਾਂ ਲਈ ਪੁਸ਼ ਸੂਚਨਾਵਾਂ ਪ੍ਰਾਪਤ ਹੋਣਗੀਆਂ ਜਿਵੇਂ ਕਿ · ਨਵੀਂ ਡਿਵਾਈਸ(ਜ਼) ਜੋੜੇ/ਹਟਾਏ ਗਏ · ਡਿਵਾਈਸ ਕਲਾਉਡ ਨਾਲ ਕਨੈਕਟ ਕੀਤੀ ਗਈ · ਡਿਵਾਈਸ ਕਲਾਉਡ ਤੋਂ ਡਿਸਕਨੈਕਟ ਕੀਤੀ ਗਈ · ਡਿਵਾਈਸ ਸ਼ੇਅਰਿੰਗ ਬੇਨਤੀਆਂ ਬਣਾਈਆਂ/ਸਵੀਕਾਰ ਕੀਤੀਆਂ/ਅਸਵੀਕਾਰ ਕੀਤੀਆਂ ਗਈਆਂ · ਡਿਵਾਈਸਾਂ ਦੁਆਰਾ ਰਿਪੋਰਟ ਕੀਤੇ ਚੇਤਾਵਨੀ ਸੰਦੇਸ਼
ਥਰਡ ਪਾਰਟੀ ਏਕੀਕਰਣ ਅਲੈਕਸਾ ਅਤੇ ਗੂਗਲ ਵੌਇਸ ਅਸਿਸਟੈਂਟ ਰੇਨਮੇਕਰ ਡਿਵਾਈਸਾਂ ਨੂੰ ਕੰਟਰੋਲ ਕਰਨ ਲਈ ਸਮਰਥਿਤ ਹਨ, ਜਿਸ ਵਿੱਚ ਲਾਈਟਾਂ, ਸਵਿੱਚਾਂ, ਸਾਕਟਾਂ, ਪੱਖੇ ਅਤੇ ਤਾਪਮਾਨ ਸੈਂਸਰ ਸ਼ਾਮਲ ਹਨ।
3.4.3 ਪ੍ਰਬੰਧਕ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ
ਐਡਮਿਨ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਪ੍ਰਸ਼ਾਸਕਾਂ ਨੂੰ ਡਿਵਾਈਸ ਰਜਿਸਟ੍ਰੇਸ਼ਨ, ਡਿਵਾਈਸ ਗਰੁੱਪਿੰਗ, ਅਤੇ OTA ਅੱਪਗਰੇਡਾਂ ਨੂੰ ਲਾਗੂ ਕਰਨ ਦੀ ਇਜਾਜ਼ਤ ਦਿੰਦੀਆਂ ਹਨ, ਅਤੇ view ਅੰਕੜੇ ਅਤੇ ESP ਇਨਸਾਈਟਸ ਡੇਟਾ।
ਡਿਵਾਈਸ ਰਜਿਸਟ੍ਰੇਸ਼ਨ ਡਿਵਾਈਸ ਸਰਟੀਫਿਕੇਟ ਤਿਆਰ ਕਰੋ ਅਤੇ ਐਡਮਿਨ CLI (ਸਿਰਫ਼ ਪ੍ਰਾਈਵੇਟ ਸਰਵਰ) ਨਾਲ ਰਜਿਸਟਰ ਕਰੋ।
ਡਿਵਾਈਸ ਗਰੁੱਪਿੰਗ ਡਿਵਾਈਸ ਜਾਣਕਾਰੀ (ਸਿਰਫ਼ ਪ੍ਰਾਈਵੇਟ ਸਰਵਰ) ਦੇ ਆਧਾਰ 'ਤੇ ਐਬਸਟਰੈਕਟ ਜਾਂ ਸਟ੍ਰਕਚਰਡ ਗਰੁੱਪ ਬਣਾਓ।
ਓਵਰ-ਦੀ-ਏਅਰ (OTA) ਅੱਪਗ੍ਰੇਡ ਕਰਦਾ ਹੈ ਵਰਜਨ ਅਤੇ ਮਾਡਲ ਦੇ ਆਧਾਰ 'ਤੇ ਫਰਮਵੇਅਰ ਨੂੰ ਅੱਪਲੋਡ ਕਰੋ, ਇੱਕ ਜਾਂ ਇੱਕ ਤੋਂ ਵੱਧ ਡਿਵਾਈਸਾਂ ਜਾਂ ਇੱਕ ਗਰੁੱਪ ਮਾਨੀਟਰ, ਰੱਦ ਕਰੋ, ਜਾਂ OTA ਨੌਕਰੀਆਂ ਨੂੰ ਪੁਰਾਲੇਖ ਕਰੋ।
View ਅੰਕੜੇ Viewਯੋਗ ਅੰਕੜਿਆਂ ਵਿੱਚ ਸ਼ਾਮਲ ਹਨ: · ਡਿਵਾਈਸ ਰਜਿਸਟ੍ਰੇਸ਼ਨ (ਪ੍ਰਬੰਧਕ ਦੁਆਰਾ ਰਜਿਸਟਰ ਕੀਤੇ ਸਰਟੀਫਿਕੇਟ) · ਡਿਵਾਈਸ ਐਕਟੀਵੇਸ਼ਨ (ਪਹਿਲੀ ਵਾਰ ਡਿਵਾਈਸ ਕਨੈਕਟ ਕੀਤੀ ਗਈ) · ਉਪਭੋਗਤਾ ਖਾਤੇ · ਉਪਭੋਗਤਾ-ਡਿਵਾਈਸ ਐਸੋਸੀਏਸ਼ਨ
View ESP ਇਨਸਾਈਟਸ ਡੇਟਾ Viewਯੋਗ ESP ਇਨਸਾਈਟਸ ਡੇਟਾ ਵਿੱਚ ਸ਼ਾਮਲ ਹਨ: · ਗਲਤੀਆਂ, ਚੇਤਾਵਨੀਆਂ, ਅਤੇ ਕਸਟਮ ਲੌਗ · ਕਰੈਸ਼ ਰਿਪੋਰਟਾਂ ਅਤੇ ਵਿਸ਼ਲੇਸ਼ਣ · ਰੀਬੂਟ ਕਾਰਨ · ਮੈਮਰੀ ਵਰਤੋਂ, RSSI, ਆਦਿ। · ਕਸਟਮ ਮੈਟ੍ਰਿਕਸ ਅਤੇ ਵੇਰੀਏਬਲ
28 ESP32-C3 ਵਾਇਰਲੈੱਸ ਐਡਵੈਂਚਰ: IoT ਲਈ ਇੱਕ ਵਿਆਪਕ ਗਾਈਡ

੬.੪.੧ ਸਾਰ
ਇਸ ਅਧਿਆਇ ਵਿੱਚ, ਅਸੀਂ ਜਨਤਕ ਰੇਨਮੇਕਰ ਤੈਨਾਤੀ ਅਤੇ ਨਿੱਜੀ ਤੈਨਾਤੀ ਵਿੱਚ ਕੁਝ ਮੁੱਖ ਅੰਤਰ ਪੇਸ਼ ਕੀਤੇ ਹਨ। Espressif ਦੁਆਰਾ ਲਾਂਚ ਕੀਤਾ ਗਿਆ ਪ੍ਰਾਈਵੇਟ ESP RainMaker ਹੱਲ ਬਹੁਤ ਹੀ ਭਰੋਸੇਮੰਦ ਅਤੇ ਵਿਸਤ੍ਰਿਤ ਹੈ। ਸਾਰੀਆਂ ESP32 ਸੀਰੀਜ਼ ਚਿਪਸ ਨੂੰ AWS ਨਾਲ ਜੋੜਿਆ ਗਿਆ ਹੈ ਅਤੇ ਅਨੁਕੂਲਿਤ ਕੀਤਾ ਗਿਆ ਹੈ, ਜੋ ਲਾਗਤ ਨੂੰ ਬਹੁਤ ਘਟਾਉਂਦਾ ਹੈ। ਡਿਵੈਲਪਰ AWS ਕਲਾਉਡ ਉਤਪਾਦਾਂ ਬਾਰੇ ਸਿੱਖਣ ਤੋਂ ਬਿਨਾਂ ਪ੍ਰੋਟੋਟਾਈਪ ਤਸਦੀਕ 'ਤੇ ਧਿਆਨ ਦੇ ਸਕਦੇ ਹਨ। ਅਸੀਂ ESP RainMaker ਦੇ ਲਾਗੂਕਰਨ ਅਤੇ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ, ਅਤੇ ਪਲੇਟਫਾਰਮ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ ਵਿਕਾਸ ਲਈ ਕੁਝ ਮੁੱਖ ਨੁਕਤਿਆਂ ਬਾਰੇ ਵੀ ਦੱਸਿਆ।
Android ਲਈ ESP RainMaker ਨੂੰ ਡਾਊਨਲੋਡ ਕਰਨ ਲਈ ਸਕੈਨ ਕਰੋ iOS ਲਈ ESP RainMaker ਨੂੰ ਡਾਊਨਲੋਡ ਕਰਨ ਲਈ ਸਕੈਨ ਕਰੋ
ਅਧਿਆਇ 3. ESP ਰੇਨਮੇਕਰ 29 ਦੀ ਜਾਣ-ਪਛਾਣ

30 ESP32-C3 ਵਾਇਰਲੈੱਸ ਐਡਵੈਂਚਰ: IoT ਲਈ ਇੱਕ ਵਿਆਪਕ ਗਾਈਡ

ਅਧਿਆਇ 4 ਵਿਕਾਸ ਵਾਤਾਵਰਨ ਦੀ ਸਥਾਪਨਾ
ਇਹ ਅਧਿਆਇ ESP-IDF 'ਤੇ ਕੇਂਦਰਿਤ ਹੈ, ESP32-C3 ਲਈ ਅਧਿਕਾਰਤ ਸਾਫਟਵੇਅਰ ਡਿਵੈਲਪਮੈਂਟ ਫਰੇਮਵਰਕ। ਅਸੀਂ ਵਿਭਿੰਨ ਓਪਰੇਟਿੰਗ ਸਿਸਟਮਾਂ 'ਤੇ ਵਾਤਾਵਰਣ ਨੂੰ ਕਿਵੇਂ ਸਥਾਪਤ ਕਰਨਾ ਹੈ, ਅਤੇ ESP-IDF ਦੇ ਪ੍ਰੋਜੈਕਟ ਢਾਂਚੇ ਅਤੇ ਬਿਲਡ ਸਿਸਟਮ ਨੂੰ ਪੇਸ਼ ਕਰਨ ਦੇ ਨਾਲ ਨਾਲ ਸੰਬੰਧਿਤ ਵਿਕਾਸ ਸਾਧਨਾਂ ਦੀ ਵਰਤੋਂ ਬਾਰੇ ਦੱਸਾਂਗੇ। ਫਿਰ ਅਸੀਂ ਇੱਕ ਸਾਬਕਾ ਦੀ ਕੰਪਾਈਲਿੰਗ ਅਤੇ ਚੱਲ ਰਹੀ ਪ੍ਰਕਿਰਿਆ ਨੂੰ ਪੇਸ਼ ਕਰਾਂਗੇample ਪ੍ਰੋਜੈਕਟ, ਹਰੇਕ s 'ਤੇ ਆਉਟਪੁੱਟ ਲੌਗ ਦੀ ਵਿਸਤ੍ਰਿਤ ਵਿਆਖਿਆ ਦੀ ਪੇਸ਼ਕਸ਼ ਕਰਦੇ ਹੋਏtage.
4.1 ESP-IDF ਓਵਰview
ESP-IDF (Espressif IoT ਵਿਕਾਸ ਫਰੇਮਵਰਕ) Espressif ਤਕਨਾਲੋਜੀ ਦੁਆਰਾ ਪ੍ਰਦਾਨ ਕੀਤਾ ਗਿਆ ਇੱਕ ਵਨ-ਸਟਾਪ IoT ਵਿਕਾਸ ਫਰੇਮਵਰਕ ਹੈ। ਇਹ C/C++ ਨੂੰ ਮੁੱਖ ਵਿਕਾਸ ਭਾਸ਼ਾ ਵਜੋਂ ਵਰਤਦਾ ਹੈ ਅਤੇ ਮੁੱਖ ਧਾਰਾ ਓਪਰੇਟਿੰਗ ਸਿਸਟਮ ਜਿਵੇਂ ਕਿ ਲੀਨਕਸ, ਮੈਕ, ਅਤੇ ਵਿੰਡੋਜ਼ ਦੇ ਅਧੀਨ ਕਰਾਸ-ਕੰਪਲੇਸ਼ਨ ਦਾ ਸਮਰਥਨ ਕਰਦਾ ਹੈ। ਸਾਬਕਾampਇਸ ਕਿਤਾਬ ਵਿੱਚ ਸ਼ਾਮਲ le ਪ੍ਰੋਗਰਾਮਾਂ ਨੂੰ ESP-IDF ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਵਿਕਸਤ ਕੀਤਾ ਗਿਆ ਹੈ, ਜੋ ਕਿ ਹੇਠਾਂ ਦਿੱਤੀਆਂ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਦੀ ਪੇਸ਼ਕਸ਼ ਕਰਦਾ ਹੈ: · SoC ਸਿਸਟਮ-ਪੱਧਰ ਦੇ ਡਰਾਈਵਰ। ESP-IDF ਵਿੱਚ ESP32, ESP32-S2, ESP32-C3 ਲਈ ਡਰਾਈਵਰ ਸ਼ਾਮਲ ਹਨ,
ਅਤੇ ਹੋਰ ਚਿਪਸ। ਇਹਨਾਂ ਡਰਾਈਵਰਾਂ ਵਿੱਚ ਪੈਰੀਫਿਰਲ ਲੋਅ ਲੈਵਲ (LL) ਲਾਇਬ੍ਰੇਰੀ, ਹਾਰਡਵੇਅਰ ਐਬਸਟਰੈਕਸ਼ਨ ਲੇਅਰ (HAL) ਲਾਇਬ੍ਰੇਰੀ, RTOS ਸਪੋਰਟ ਅਤੇ ਅੱਪਰ-ਲੇਅਰ ਡਰਾਈਵਰ ਸਾਫਟਵੇਅਰ ਆਦਿ ਸ਼ਾਮਲ ਹਨ। · ਜ਼ਰੂਰੀ ਭਾਗ। ESP-IDF IoT ਵਿਕਾਸ ਲਈ ਲੋੜੀਂਦੇ ਬੁਨਿਆਦੀ ਭਾਗਾਂ ਨੂੰ ਸ਼ਾਮਲ ਕਰਦਾ ਹੈ। ਇਸ ਵਿੱਚ ਕਈ ਨੈੱਟਵਰਕ ਪ੍ਰੋਟੋਕੋਲ ਸਟੈਕ ਜਿਵੇਂ ਕਿ HTTP ਅਤੇ MQTT, ਗਤੀਸ਼ੀਲ ਬਾਰੰਬਾਰਤਾ ਮੋਡੂਲੇਸ਼ਨ ਵਾਲਾ ਇੱਕ ਪਾਵਰ ਪ੍ਰਬੰਧਨ ਫਰੇਮਵਰਕ, ਅਤੇ ਫਲੈਸ਼ ਐਨਕ੍ਰਿਪਸ਼ਨ ਅਤੇ ਸੁਰੱਖਿਅਤ ਬੂਟ, ਆਦਿ ਵਰਗੀਆਂ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਸ਼ਾਮਲ ਹਨ। · ਵਿਕਾਸ ਅਤੇ ਉਤਪਾਦਨ ਟੂਲ। ESP-IDF ਵਿਕਾਸ ਅਤੇ ਵੱਡੇ ਉਤਪਾਦਨ (ਚਿੱਤਰ 4.1 ਦੇਖੋ) ਦੇ ਦੌਰਾਨ ਬਿਲਡਿੰਗ, ਫਲੈਸ਼ ਅਤੇ ਡੀਬੱਗਿੰਗ ਲਈ ਆਮ ਤੌਰ 'ਤੇ ਵਰਤੇ ਜਾਂਦੇ ਟੂਲ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ, ਜਿਵੇਂ ਕਿ CMake 'ਤੇ ਆਧਾਰਿਤ ਬਿਲਡਿੰਗ ਸਿਸਟਮ, GCC 'ਤੇ ਆਧਾਰਿਤ ਕਰਾਸ-ਕੰਪਾਈਲੇਸ਼ਨ ਟੂਲ ਚੇਨ, ਅਤੇ ਜੇ.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 ਸਿਸਟਮ ਹਰ ਜਾਰੀ ਕੀਤੇ ਸਬ-ਵਰਜਨ ਲਈ ਬੱਗ ਫਿਕਸ ਅਤੇ ਸੁਰੱਖਿਆ ਪੈਚਾਂ ਲਈ 30-ਮਹੀਨੇ ਦੇ ਸਮਰਥਨ ਨੂੰ ਯਕੀਨੀ ਬਣਾਉਂਦਾ ਹੈ। ਇਸਲਈ, ਸਬਵਰਜਨਾਂ ਦੇ ਸੰਸ਼ੋਧਨ ਵੀ ਨਿਯਮਿਤ ਤੌਰ 'ਤੇ ਜਾਰੀ ਕੀਤੇ ਜਾਂਦੇ ਹਨ, ਜਿਵੇਂ ਕਿ v4.3.1, v4.2.2, ਆਦਿ। ਸਾਰਣੀ 4.1 ਐਸਪ੍ਰੇਸਿਫ ਚਿਪਸ ਲਈ ਵੱਖ-ਵੱਖ ESP-IDF ਸੰਸਕਰਣਾਂ ਦੀ ਸਹਾਇਤਾ ਸਥਿਤੀ ਨੂੰ ਦਰਸਾਉਂਦੀ ਹੈ, ਇਹ ਦਰਸਾਉਂਦੀ ਹੈ ਕਿ ਕੀ ਉਹ ਇੱਕ ਪ੍ਰੀ.view stage (ਪੂਰਵ ਲਈ ਸਹਾਇਤਾ ਦੀ ਪੇਸ਼ਕਸ਼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 ਲਈ ਇੱਕ ਵਿਆਪਕ ਗਾਈਡ

ਮੁੱਖ ਸੰਸਕਰਣਾਂ ਦੇ ਦੁਹਰਾਓ ਵਿੱਚ ਅਕਸਰ ਫਰੇਮਵਰਕ ਢਾਂਚੇ ਵਿੱਚ ਸਮਾਯੋਜਨ ਅਤੇ ਸੰਕਲਨ ਪ੍ਰਣਾਲੀ ਵਿੱਚ ਅੱਪਡੇਟ ਸ਼ਾਮਲ ਹੁੰਦੇ ਹਨ। ਸਾਬਕਾ ਲਈampਲੇ, v3.* ਤੋਂ v4.* ਵਿੱਚ ਵੱਡਾ ਬਦਲਾਅ ਮੇਕ ਤੋਂ CMake ਤੱਕ ਬਿਲਡ ਸਿਸਟਮ ਦਾ ਹੌਲੀ-ਹੌਲੀ ਮਾਈਗਰੇਸ਼ਨ ਸੀ। ਦੂਜੇ ਪਾਸੇ, ਮਾਮੂਲੀ ਸੰਸਕਰਣਾਂ ਦੇ ਦੁਹਰਾਓ ਵਿੱਚ ਆਮ ਤੌਰ 'ਤੇ ਨਵੀਆਂ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਜਾਂ ਨਵੇਂ ਚਿਪਸ ਲਈ ਸਮਰਥਨ ਸ਼ਾਮਲ ਹੁੰਦਾ ਹੈ।
ਸਥਿਰ ਸੰਸਕਰਣਾਂ ਅਤੇ GitHub ਸ਼ਾਖਾਵਾਂ ਵਿਚਕਾਰ ਸਬੰਧ ਨੂੰ ਵੱਖਰਾ ਕਰਨਾ ਅਤੇ ਸਮਝਣਾ ਮਹੱਤਵਪੂਰਨ ਹੈ। v*.* ਜਾਂ v*max ਦੇ ਤੌਰ ਤੇ ਲੇਬਲ ਕੀਤੇ ਸੰਸਕਰਣ ਉਹਨਾਂ ਸਥਿਰ ਸੰਸਕਰਣਾਂ ਨੂੰ ਦਰਸਾਉਂਦੇ ਹਨ ਜੋ Espressif ਦੁਆਰਾ ਪੂਰੀ ਅੰਦਰੂਨੀ ਜਾਂਚ ਪਾਸ ਕਰ ਚੁੱਕੇ ਹਨ। ਇੱਕ ਵਾਰ ਫਿਕਸ ਹੋ ਜਾਣ 'ਤੇ, ਉਸੇ ਸੰਸਕਰਣ ਲਈ ਕੋਡ, ਟੂਲ ਚੇਨ, ਅਤੇ ਰੀਲੀਜ਼ ਦਸਤਾਵੇਜ਼ਾਂ ਵਿੱਚ ਕੋਈ ਤਬਦੀਲੀ ਨਹੀਂ ਹੁੰਦੀ। ਹਾਲਾਂਕਿ, GitHub ਸ਼ਾਖਾਵਾਂ (ਉਦਾਹਰਨ ਲਈ, ਰੀਲੀਜ਼/v4.3 ਬ੍ਰਾਂਚ) ਅਕਸਰ ਰੋਜ਼ਾਨਾ ਆਧਾਰ 'ਤੇ, ਅਕਸਰ ਕੋਡ ਕਮਿਟਾਂ ਵਿੱਚੋਂ ਗੁਜ਼ਰਦੀਆਂ ਹਨ। ਇਸ ਲਈ, ਇੱਕੋ ਬ੍ਰਾਂਚ ਦੇ ਅਧੀਨ ਦੋ ਕੋਡ ਸਨਿੱਪਟ ਵੱਖ-ਵੱਖ ਹੋ ਸਕਦੇ ਹਨ, ਜਿਸ ਨਾਲ ਡਿਵੈਲਪਰਾਂ ਨੂੰ ਆਪਣੇ ਕੋਡ ਨੂੰ ਤੁਰੰਤ ਉਸ ਅਨੁਸਾਰ ਅਪਡੇਟ ਕਰਨ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ।
4.1.2 ESP-IDF ਗਿੱਟ ਵਰਕਫਲੋ
Espressif ESP-IDF ਲਈ ਇੱਕ ਖਾਸ ਗਿੱਟ ਵਰਕਫਲੋ ਦੀ ਪਾਲਣਾ ਕਰਦਾ ਹੈ, ਜਿਸਦੀ ਰੂਪਰੇਖਾ ਹੇਠਾਂ ਦਿੱਤੀ ਗਈ ਹੈ:
· ਮਾਸਟਰ ਬ੍ਰਾਂਚ 'ਤੇ ਨਵੇਂ ਬਦਲਾਅ ਕੀਤੇ ਗਏ ਹਨ, ਜੋ ਮੁੱਖ ਵਿਕਾਸ ਸ਼ਾਖਾ ਵਜੋਂ ਕੰਮ ਕਰਦੀ ਹੈ। ਮਾਸਟਰ ਬ੍ਰਾਂਚ 'ਤੇ ESP-IDF ਸੰਸਕਰਣ ਹਮੇਸ਼ਾ ਇੱਕ -dev ਰੱਖਦਾ ਹੈ tag ਇਹ ਦਰਸਾਉਣ ਲਈ ਕਿ ਇਹ ਵਰਤਮਾਨ ਵਿੱਚ ਵਿਕਾਸ ਅਧੀਨ ਹੈ, ਜਿਵੇਂ ਕਿ v4.3-dev. ਮਾਸਟਰ ਬ੍ਰਾਂਚ 'ਤੇ ਬਦਲਾਅ ਪਹਿਲਾਂ ਦੁਬਾਰਾ ਹੋਣਗੇviewed ਅਤੇ Espressif ਦੇ ਅੰਦਰੂਨੀ ਰਿਪੋਜ਼ਟਰੀ ਵਿੱਚ ਟੈਸਟ ਕੀਤਾ ਗਿਆ, ਅਤੇ ਫਿਰ ਸਵੈਚਲਿਤ ਟੈਸਟਿੰਗ ਪੂਰੀ ਹੋਣ ਤੋਂ ਬਾਅਦ GitHub ਵਿੱਚ ਧੱਕਿਆ ਗਿਆ।
· ਇੱਕ ਵਾਰ ਜਦੋਂ ਇੱਕ ਨਵਾਂ ਸੰਸਕਰਣ ਮਾਸਟਰ ਬ੍ਰਾਂਚ ਵਿੱਚ ਵਿਸ਼ੇਸ਼ਤਾ ਵਿਕਾਸ ਨੂੰ ਪੂਰਾ ਕਰ ਲੈਂਦਾ ਹੈ ਅਤੇ ਬੀਟਾ ਟੈਸਟਿੰਗ ਵਿੱਚ ਦਾਖਲ ਹੋਣ ਲਈ ਮਾਪਦੰਡਾਂ ਨੂੰ ਪੂਰਾ ਕਰਦਾ ਹੈ, ਤਾਂ ਇਹ ਇੱਕ ਨਵੀਂ ਸ਼ਾਖਾ ਵਿੱਚ ਤਬਦੀਲ ਹੋ ਜਾਂਦਾ ਹੈ, ਜਿਵੇਂ ਕਿ ਰਿਲੀਜ਼/ v4.3। ਇਸ ਤੋਂ ਇਲਾਵਾ ਇਹ ਨਵੀਂ ਸ਼ਾਖਾ ਹੈ tagged ਇੱਕ ਪ੍ਰੀ-ਰਿਲੀਜ਼ ਸੰਸਕਰਣ ਦੇ ਰੂਪ ਵਿੱਚ, ਜਿਵੇਂ ਕਿ v4.3-beta1. ਡਿਵੈਲਪਰ ਸ਼ਾਖਾਵਾਂ ਦੀ ਪੂਰੀ ਸੂਚੀ ਤੱਕ ਪਹੁੰਚ ਕਰਨ ਲਈ GitHub ਪਲੇਟਫਾਰਮ ਦਾ ਹਵਾਲਾ ਦੇ ਸਕਦੇ ਹਨ ਅਤੇ tags ESP-IDF ਲਈ। ਇਹ ਨੋਟ ਕਰਨਾ ਮਹੱਤਵਪੂਰਨ ਹੈ ਕਿ ਬੀਟਾ ਸੰਸਕਰਣ (ਪ੍ਰੀ-ਰਿਲੀਜ਼ ਸੰਸਕਰਣ) ਵਿੱਚ ਅਜੇ ਵੀ ਬਹੁਤ ਸਾਰੀਆਂ ਜਾਣੀਆਂ-ਪਛਾਣੀਆਂ ਸਮੱਸਿਆਵਾਂ ਹੋ ਸਕਦੀਆਂ ਹਨ। ਜਿਵੇਂ ਕਿ ਬੀਟਾ ਸੰਸਕਰਣ ਲਗਾਤਾਰ ਟੈਸਟਿੰਗ ਵਿੱਚੋਂ ਗੁਜ਼ਰਦਾ ਹੈ, ਬੱਗ ਫਿਕਸ ਇਸ ਸੰਸਕਰਣ ਅਤੇ ਮਾਸਟਰ ਬ੍ਰਾਂਚ ਦੋਵਾਂ ਵਿੱਚ ਇੱਕੋ ਸਮੇਂ ਸ਼ਾਮਲ ਕੀਤੇ ਜਾਂਦੇ ਹਨ। ਇਸ ਦੌਰਾਨ, ਮਾਸਟਰ ਬ੍ਰਾਂਚ ਨੇ ਅਗਲੇ ਸੰਸਕਰਣ ਲਈ ਪਹਿਲਾਂ ਹੀ ਨਵੀਆਂ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਨੂੰ ਵਿਕਸਤ ਕਰਨਾ ਸ਼ੁਰੂ ਕਰ ਦਿੱਤਾ ਹੈ। ਜਦੋਂ ਟੈਸਟਿੰਗ ਲਗਭਗ ਪੂਰੀ ਹੋ ਜਾਂਦੀ ਹੈ, ਤਾਂ ਬ੍ਰਾਂਚ ਵਿੱਚ ਇੱਕ ਰੀਲੀਜ਼ ਉਮੀਦਵਾਰ (rc) ਲੇਬਲ ਜੋੜਿਆ ਜਾਂਦਾ ਹੈ, ਇਹ ਦਰਸਾਉਂਦਾ ਹੈ ਕਿ ਇਹ ਅਧਿਕਾਰਤ ਰੀਲੀਜ਼ ਲਈ ਇੱਕ ਸੰਭਾਵੀ ਉਮੀਦਵਾਰ ਹੈ, ਜਿਵੇਂ ਕਿ v4.3-rc1। ਇਸ ਮੌਕੇ ਐੱਸtage, ਸ਼ਾਖਾ ਇੱਕ ਪ੍ਰੀ-ਰਿਲੀਜ਼ ਸੰਸਕਰਣ ਰਹਿੰਦੀ ਹੈ।
· ਜੇਕਰ ਕੋਈ ਮੁੱਖ ਬੱਗ ਖੋਜੇ ਜਾਂ ਰਿਪੋਰਟ ਨਹੀਂ ਕੀਤੇ ਜਾਂਦੇ ਹਨ, ਤਾਂ ਪ੍ਰੀ-ਰਿਲੀਜ਼ ਸੰਸਕਰਣ ਅੰਤ ਵਿੱਚ ਇੱਕ ਪ੍ਰਮੁੱਖ ਸੰਸਕਰਣ ਲੇਬਲ (ਉਦਾਹਰਨ ਲਈ, v5.0) ਜਾਂ ਇੱਕ ਮਾਮੂਲੀ ਸੰਸਕਰਣ ਲੇਬਲ (ਉਦਾਹਰਨ ਲਈ, v4.3) ਪ੍ਰਾਪਤ ਕਰਦਾ ਹੈ ਅਤੇ ਇੱਕ ਅਧਿਕਾਰਤ ਰੀਲੀਜ਼ ਸੰਸਕਰਣ ਬਣ ਜਾਂਦਾ ਹੈ, ਜਿਸਦਾ ਦਸਤਾਵੇਜ਼ੀਕਰਨ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। ਰੀਲੀਜ਼ ਨੋਟਸ ਪੰਨੇ ਵਿੱਚ। ਇਸ ਤੋਂ ਬਾਅਦ, ਇਸ ਸੰਸਕਰਣ ਵਿੱਚ ਪਛਾਣੇ ਗਏ ਕਿਸੇ ਵੀ ਬੱਗ ਨੂੰ ਰੀਲੀਜ਼ ਸ਼ਾਖਾ ਵਿੱਚ ਹੱਲ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। ਮੈਨੂਅਲ ਟੈਸਟਿੰਗ ਪੂਰੀ ਹੋਣ ਤੋਂ ਬਾਅਦ, ਬ੍ਰਾਂਚ ਨੂੰ ਇੱਕ ਬੱਗ-ਫਿਕਸ ਵਰਜ਼ਨ ਲੇਬਲ (ਜਿਵੇਂ ਕਿ, v4.3.2) ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ, ਜੋ ਰੀਲੀਜ਼ ਨੋਟਸ ਪੰਨੇ 'ਤੇ ਵੀ ਪ੍ਰਤੀਬਿੰਬਿਤ ਹੁੰਦਾ ਹੈ।
ਅਧਿਆਇ 4. ਵਿਕਾਸ ਵਾਤਾਵਰਣ ਸਥਾਪਤ ਕਰਨਾ 33

4.1.3 ਇੱਕ ਅਨੁਕੂਲ ਸੰਸਕਰਣ ਚੁਣਨਾ
ਕਿਉਂਕਿ ESP-IDF ਨੇ ਅਧਿਕਾਰਤ ਤੌਰ 'ਤੇ ਵਰਜਨ v32 ਤੋਂ ESP3-C4.3 ਦਾ ਸਮਰਥਨ ਕਰਨਾ ਸ਼ੁਰੂ ਕੀਤਾ ਹੈ, ਅਤੇ ਇਸ ਕਿਤਾਬ ਨੂੰ ਲਿਖਣ ਵੇਲੇ v4.4 ਨੂੰ ਅਜੇ ਅਧਿਕਾਰਤ ਤੌਰ 'ਤੇ ਜਾਰੀ ਨਹੀਂ ਕੀਤਾ ਗਿਆ ਹੈ, ਇਸ ਕਿਤਾਬ ਵਿੱਚ ਵਰਤਿਆ ਗਿਆ ਸੰਸਕਰਣ v4.3.2 ਹੈ, ਜੋ ਕਿ ਇੱਕ ਸੋਧਿਆ ਹੋਇਆ ਸੰਸਕਰਣ ਹੈ। v4.3 ਦਾ। ਹਾਲਾਂਕਿ, ਇਹ ਨੋਟ ਕਰਨਾ ਮਹੱਤਵਪੂਰਨ ਹੈ ਕਿ ਜਦੋਂ ਤੱਕ ਤੁਸੀਂ ਇਸ ਕਿਤਾਬ ਨੂੰ ਪੜ੍ਹਦੇ ਹੋ, v4.4 ਜਾਂ ਨਵੇਂ ਸੰਸਕਰਣ ਪਹਿਲਾਂ ਹੀ ਉਪਲਬਧ ਹੋ ਸਕਦੇ ਹਨ। ਇੱਕ ਸੰਸਕਰਣ ਦੀ ਚੋਣ ਕਰਦੇ ਸਮੇਂ, ਅਸੀਂ ਹੇਠ ਲਿਖਿਆਂ ਦੀ ਸਿਫ਼ਾਰਿਸ਼ ਕਰਦੇ ਹਾਂ:
· ਐਂਟਰੀ-ਪੱਧਰ ਦੇ ਡਿਵੈਲਪਰਾਂ ਲਈ, ਸਥਿਰ v4.3 ਸੰਸਕਰਣ ਜਾਂ ਇਸਦੇ ਸੰਸ਼ੋਧਿਤ ਸੰਸਕਰਣ ਦੀ ਚੋਣ ਕਰਨ ਦੀ ਸਲਾਹ ਦਿੱਤੀ ਜਾਂਦੀ ਹੈ, ਜੋ ਸਾਬਕਾ ਦੇ ਨਾਲ ਇਕਸਾਰ ਹੁੰਦਾ ਹੈample ਵਰਜਨ ਇਸ ਕਿਤਾਬ ਵਿੱਚ ਵਰਤਿਆ ਗਿਆ ਹੈ.
· ਵੱਡੇ ਉਤਪਾਦਨ ਦੇ ਉਦੇਸ਼ਾਂ ਲਈ, ਸਭ ਤੋਂ ਨਵੀਨਤਮ ਤਕਨੀਕੀ ਸਹਾਇਤਾ ਤੋਂ ਲਾਭ ਲੈਣ ਲਈ ਨਵੀਨਤਮ ਸਥਿਰ ਸੰਸਕਰਣ ਦੀ ਵਰਤੋਂ ਕਰਨ ਦੀ ਸਿਫਾਰਸ਼ ਕੀਤੀ ਜਾਂਦੀ ਹੈ।
· ਜੇਕਰ ਤੁਸੀਂ ਨਵੇਂ ਚਿਪਸ ਨਾਲ ਪ੍ਰਯੋਗ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ ਜਾਂ ਨਵੇਂ ਉਤਪਾਦ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਦੀ ਪੜਚੋਲ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ, ਤਾਂ ਕਿਰਪਾ ਕਰਕੇ ਮਾਸਟਰ ਬ੍ਰਾਂਚ ਦੀ ਵਰਤੋਂ ਕਰੋ। ਨਵੀਨਤਮ ਸੰਸਕਰਣ ਵਿੱਚ ਸਾਰੀਆਂ ਨਵੀਨਤਮ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਸ਼ਾਮਲ ਹਨ, ਪਰ ਧਿਆਨ ਵਿੱਚ ਰੱਖੋ ਕਿ ਜਾਣੇ-ਪਛਾਣੇ ਜਾਂ ਅਣਜਾਣ ਬੱਗ ਮੌਜੂਦ ਹੋ ਸਕਦੇ ਹਨ।
· ਜੇਕਰ ਵਰਤੇ ਜਾ ਰਹੇ ਸਥਿਰ ਸੰਸਕਰਣ ਵਿੱਚ ਲੋੜੀਂਦੀਆਂ ਨਵੀਆਂ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਸ਼ਾਮਲ ਨਹੀਂ ਹਨ ਅਤੇ ਤੁਸੀਂ ਮਾਸਟਰ ਸ਼ਾਖਾ ਨਾਲ ਜੁੜੇ ਜੋਖਮਾਂ ਨੂੰ ਘੱਟ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ, ਤਾਂ ਸੰਬੰਧਿਤ ਰੀਲੀਜ਼ ਸ਼ਾਖਾ ਦੀ ਵਰਤੋਂ ਕਰਨ 'ਤੇ ਵਿਚਾਰ ਕਰੋ, ਜਿਵੇਂ ਕਿ ਰੀਲੀਜ਼/v4.4 ਸ਼ਾਖਾ। Espressif ਦੀ GitHub ਰਿਪੋਜ਼ਟਰੀ ਪਹਿਲਾਂ ਰੀਲੀਜ਼/v4.4 ਬ੍ਰਾਂਚ ਬਣਾਏਗੀ ਅਤੇ ਬਾਅਦ ਵਿੱਚ ਸਾਰੇ ਵਿਸ਼ੇਸ਼ਤਾ ਵਿਕਾਸ ਅਤੇ ਟੈਸਟਿੰਗ ਨੂੰ ਪੂਰਾ ਕਰਨ ਤੋਂ ਬਾਅਦ, ਇਸ ਸ਼ਾਖਾ ਦੇ ਇੱਕ ਖਾਸ ਇਤਿਹਾਸਕ ਸਨੈਪਸ਼ਾਟ ਦੇ ਅਧਾਰ ਤੇ ਸਥਿਰ v4.4 ਸੰਸਕਰਣ ਜਾਰੀ ਕਰੇਗੀ।
4.1.4 ਓਵਰview ESP-IDF SDK ਡਾਇਰੈਕਟਰੀ ਦੀ
ESP-IDF SDK ਵਿੱਚ ਦੋ ਮੁੱਖ ਡਾਇਰੈਕਟਰੀਆਂ ਹਨ: esp-idf ਅਤੇ .espressif। ਪਹਿਲੇ ਵਿੱਚ ESP-IDF ਰਿਪੋਜ਼ਟਰੀ ਦਾ ਸਰੋਤ ਕੋਡ ਹੁੰਦਾ ਹੈ files ਅਤੇ ਕੰਪਾਇਲੇਸ਼ਨ ਸਕ੍ਰਿਪਟਾਂ, ਜਦੋਂ ਕਿ ਬਾਅਦ ਵਾਲੇ ਮੁੱਖ ਤੌਰ 'ਤੇ ਕੰਪਾਇਲੇਸ਼ਨ ਟੂਲ ਚੇਨ ਅਤੇ ਹੋਰ ਸੌਫਟਵੇਅਰ ਸਟੋਰ ਕਰਦੇ ਹਨ। ਇਹਨਾਂ ਦੋ ਡਾਇਰੈਕਟਰੀਆਂ ਨਾਲ ਜਾਣੂ ਹੋਣ ਨਾਲ ਡਿਵੈਲਪਰਾਂ ਨੂੰ ਉਪਲਬਧ ਸਰੋਤਾਂ ਦੀ ਬਿਹਤਰ ਵਰਤੋਂ ਕਰਨ ਅਤੇ ਵਿਕਾਸ ਪ੍ਰਕਿਰਿਆ ਨੂੰ ਤੇਜ਼ ਕਰਨ ਵਿੱਚ ਮਦਦ ਮਿਲੇਗੀ। ESP-IDF ਦੀ ਡਾਇਰੈਕਟਰੀ ਬਣਤਰ ਦਾ ਵਰਣਨ ਹੇਠਾਂ ਦਿੱਤਾ ਗਿਆ ਹੈ:
(1) ESP-IDF ਰਿਪੋਜ਼ਟਰੀ ਕੋਡ ਡਾਇਰੈਕਟਰੀ (/esp/esp-idf), ਜਿਵੇਂ ਕਿ ਚਿੱਤਰ 4.2 ਵਿੱਚ ਦਿਖਾਇਆ ਗਿਆ ਹੈ।
a ਕੰਪੋਨੈਂਟ ਡਾਇਰੈਕਟਰੀ ਦੇ ਹਿੱਸੇ
ਇਹ ਕੋਰ ਡਾਇਰੈਕਟਰੀ ESP-IDF ਦੇ ਬਹੁਤ ਸਾਰੇ ਜ਼ਰੂਰੀ ਸਾਫਟਵੇਅਰ ਭਾਗਾਂ ਨੂੰ ਏਕੀਕ੍ਰਿਤ ਕਰਦੀ ਹੈ। ਇਸ ਡਾਇਰੈਕਟਰੀ ਦੇ ਅੰਦਰਲੇ ਭਾਗਾਂ 'ਤੇ ਭਰੋਸਾ ਕੀਤੇ ਬਿਨਾਂ ਕੋਈ ਪ੍ਰੋਜੈਕਟ ਕੋਡ ਕੰਪਾਇਲ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। ਇਸ ਵਿੱਚ ਵੱਖ-ਵੱਖ Espressif ਚਿਪਸ ਲਈ ਡਰਾਈਵਰ ਸਹਾਇਤਾ ਸ਼ਾਮਲ ਹੈ। ਪੈਰੀਫਿਰਲਾਂ ਲਈ ਐਲਐਲ ਲਾਇਬ੍ਰੇਰੀ ਅਤੇ ਐਚਏਐਲ ਲਾਇਬ੍ਰੇਰੀ ਇੰਟਰਫੇਸ ਤੋਂ ਉਪਰਲੇ ਪੱਧਰ ਦੇ ਡਰਾਈਵਰ ਅਤੇ ਵਰਚੁਅਲ ਤੱਕ File ਸਿਸਟਮ (VFS) ਲੇਅਰ ਸਪੋਰਟ, ਡਿਵੈਲਪਰ ਆਪਣੀਆਂ ਵਿਕਾਸ ਲੋੜਾਂ ਲਈ ਵੱਖ-ਵੱਖ ਪੱਧਰਾਂ 'ਤੇ ਢੁਕਵੇਂ ਹਿੱਸੇ ਚੁਣ ਸਕਦੇ ਹਨ। ESP-IDF ਮਲਟੀਪਲ ਸਟੈਂਡਰਡ ਨੈੱਟਵਰਕ ਪ੍ਰੋਟੋਕੋਲ ਸਟੈਕ ਦਾ ਵੀ ਸਮਰਥਨ ਕਰਦਾ ਹੈ ਜਿਵੇਂ ਕਿ TCP/IP, HTTP, MQTT, Webਸਾਕਟ, ਆਦਿ। ਡਿਵੈਲਪਰ ਨੈਟਵਰਕ ਐਪਲੀਕੇਸ਼ਨਾਂ ਬਣਾਉਣ ਲਈ ਸਾਕਟ ਵਰਗੇ ਜਾਣੇ-ਪਛਾਣੇ ਇੰਟਰਫੇਸ ਦੀ ਵਰਤੋਂ ਕਰ ਸਕਦੇ ਹਨ। ਹਿੱਸੇ ਸਮਝ ਪ੍ਰਦਾਨ ਕਰਦੇ ਹਨ-
34 ESP32-C3 ਵਾਇਰਲੈੱਸ ਐਡਵੈਂਚਰ: IoT ਲਈ ਇੱਕ ਵਿਆਪਕ ਗਾਈਡ

ਚਿੱਤਰ 4.2. ESP-IDF ਰਿਪੋਜ਼ਟਰੀ ਕੋਡ ਡਾਇਰੈਕਟਰੀ
sive ਕਾਰਜਕੁਸ਼ਲਤਾ ਅਤੇ ਆਸਾਨੀ ਨਾਲ ਐਪਲੀਕੇਸ਼ਨਾਂ ਵਿੱਚ ਏਕੀਕ੍ਰਿਤ ਕੀਤੀ ਜਾ ਸਕਦੀ ਹੈ, ਜਿਸ ਨਾਲ ਡਿਵੈਲਪਰਾਂ ਨੂੰ ਸਿਰਫ਼ ਵਪਾਰਕ ਤਰਕ 'ਤੇ ਧਿਆਨ ਕੇਂਦਰਿਤ ਕਰਨ ਦੀ ਇਜਾਜ਼ਤ ਦਿੱਤੀ ਜਾ ਸਕਦੀ ਹੈ। ਕੁਝ ਆਮ ਕੰਪੋਨੈਂਟਸ ਵਿੱਚ ਸ਼ਾਮਲ ਹਨ: · ਡਰਾਈਵਰ: ਇਸ ਕੰਪੋਨੈਂਟ ਵਿੱਚ ਵੱਖ-ਵੱਖ ਐਸਪ੍ਰੇਸਿਫ ਲਈ ਪੈਰੀਫਿਰਲ ਡਰਾਈਵਰ ਪ੍ਰੋਗਰਾਮ ਸ਼ਾਮਲ ਹੁੰਦੇ ਹਨ।
ਚਿੱਪ ਸੀਰੀਜ਼, ਜਿਵੇਂ ਕਿ GPIO, I2C, SPI, UART, LEDC (PWM), ਆਦਿ। ਇਸ ਕੰਪੋਨੈਂਟ ਵਿੱਚ ਪੈਰੀਫਿਰਲ ਡਰਾਈਵਰ ਪ੍ਰੋਗਰਾਮ ਚਿੱਪ-ਸੁਤੰਤਰ ਐਬਸਟਰੈਕਟ ਇੰਟਰਫੇਸ ਪੇਸ਼ ਕਰਦੇ ਹਨ। ਹਰੇਕ ਪੈਰੀਫਿਰਲ ਦਾ ਇੱਕ ਸਾਂਝਾ ਸਿਰਲੇਖ ਹੁੰਦਾ ਹੈ file (ਜਿਵੇਂ ਕਿ gpio.h), ਵੱਖ-ਵੱਖ ਚਿੱਪ-ਵਿਸ਼ੇਸ਼ ਸਮਰਥਨ ਸਵਾਲਾਂ ਨਾਲ ਨਜਿੱਠਣ ਦੀ ਲੋੜ ਨੂੰ ਖਤਮ ਕਰਨਾ। · esp_wifi: Wi-Fi, ਇੱਕ ਵਿਸ਼ੇਸ਼ ਪੈਰੀਫਿਰਲ ਵਜੋਂ, ਇੱਕ ਵੱਖਰੇ ਹਿੱਸੇ ਵਜੋਂ ਮੰਨਿਆ ਜਾਂਦਾ ਹੈ। ਇਸ ਵਿੱਚ ਕਈ API ਸ਼ਾਮਲ ਹਨ ਜਿਵੇਂ ਕਿ ਵੱਖ-ਵੱਖ Wi-Fi ਡਰਾਈਵਰ ਮੋਡਾਂ ਦੀ ਸ਼ੁਰੂਆਤ, ਪੈਰਾਮੀਟਰ ਸੰਰਚਨਾ, ਅਤੇ ਇਵੈਂਟ ਪ੍ਰੋਸੈਸਿੰਗ। ਇਸ ਕੰਪੋਨੈਂਟ ਦੇ ਕੁਝ ਫੰਕਸ਼ਨ ਸਟੈਟਿਕ ਲਿੰਕ ਲਾਇਬ੍ਰੇਰੀਆਂ ਦੇ ਰੂਪ ਵਿੱਚ ਦਿੱਤੇ ਗਏ ਹਨ। ESP-IDF ਵਰਤੋਂ ਵਿੱਚ ਸੌਖ ਲਈ ਵਿਆਪਕ ਡਰਾਈਵਰ ਦਸਤਾਵੇਜ਼ ਵੀ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ।
ਅਧਿਆਇ 4. ਵਿਕਾਸ ਵਾਤਾਵਰਣ ਸਥਾਪਤ ਕਰਨਾ 35

· freertos: ਇਸ ਹਿੱਸੇ ਵਿੱਚ ਪੂਰਾ FreeRTOS ਕੋਡ ਹੁੰਦਾ ਹੈ। ਇਸ ਓਪਰੇਟਿੰਗ ਸਿਸਟਮ ਲਈ ਵਿਆਪਕ ਸਹਾਇਤਾ ਪ੍ਰਦਾਨ ਕਰਨ ਤੋਂ ਇਲਾਵਾ, Espressif ਨੇ ਡੁਅਲ-ਕੋਰ ਚਿਪਸ ਲਈ ਵੀ ਆਪਣਾ ਸਮਰਥਨ ਵਧਾ ਦਿੱਤਾ ਹੈ। ESP32 ਅਤੇ ESP32-S3 ਵਰਗੇ ਡਿਊਲ-ਕੋਰ ਚਿਪਸ ਲਈ, ਉਪਭੋਗਤਾ ਖਾਸ ਕੋਰ 'ਤੇ ਕੰਮ ਬਣਾ ਸਕਦੇ ਹਨ।
ਬੀ. ਦਸਤਾਵੇਜ਼ ਡਾਇਰੈਕਟਰੀ ਦਸਤਾਵੇਜ਼
ਇਸ ਡਾਇਰੈਕਟਰੀ ਵਿੱਚ ESP-IDF ਨਾਲ ਸਬੰਧਤ ਵਿਕਾਸ ਦਸਤਾਵੇਜ਼ ਸ਼ਾਮਲ ਹਨ, ਜਿਸ ਵਿੱਚ Get Started Guide, API ਰੈਫਰੈਂਸ ਮੈਨੂਅਲ, ਵਿਕਾਸ ਗਾਈਡ ਆਦਿ ਸ਼ਾਮਲ ਹਨ।
ਸੂਚਨਾ ਸਵੈਚਲਿਤ ਟੂਲਸ ਦੁਆਰਾ ਕੰਪਾਇਲ ਕੀਤੇ ਜਾਣ ਤੋਂ ਬਾਅਦ, ਇਸ ਡਾਇਰੈਕਟਰੀ ਦੀਆਂ ਸਮੱਗਰੀਆਂ ਨੂੰ https://docs.espressif.com/projects/esp-idf 'ਤੇ ਤੈਨਾਤ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। ਕਿਰਪਾ ਕਰਕੇ ਦਸਤਾਵੇਜ਼ ਦੇ ਟੀਚੇ ਨੂੰ ESP32-C3 ਵਿੱਚ ਬਦਲਣਾ ਯਕੀਨੀ ਬਣਾਓ ਅਤੇ ਨਿਰਧਾਰਤ ESP-IDF ਸੰਸਕਰਣ ਚੁਣੋ।
c. ਸਕ੍ਰਿਪਟ ਟੂਲ ਟੂਲ
ਇਸ ਡਾਇਰੈਕਟਰੀ ਵਿੱਚ ਆਮ ਤੌਰ 'ਤੇ ਵਰਤੇ ਜਾਂਦੇ ਕੰਪਾਈਲੇਸ਼ਨ ਫਰੰਟ-ਐਂਡ ਟੂਲ ਹਨ ਜਿਵੇਂ ਕਿ idf.py, ਅਤੇ ਮਾਨੀਟਰ ਟਰਮੀਨਲ ਟੂਲ idf_monitor.py, ਆਦਿ। ਸਬ-ਡਾਇਰੈਕਟਰੀ cmake ਵਿੱਚ ਕੋਰ ਸਕ੍ਰਿਪਟ ਵੀ ਹੁੰਦੀ ਹੈ। fileਸੰਕਲਨ ਪ੍ਰਣਾਲੀ ਦਾ s, ESP-IDF ਸੰਕਲਨ ਨਿਯਮਾਂ ਨੂੰ ਲਾਗੂ ਕਰਨ ਲਈ ਬੁਨਿਆਦ ਵਜੋਂ ਕੰਮ ਕਰਦਾ ਹੈ। ਵਾਤਾਵਰਣ ਵੇਰੀਏਬਲ ਨੂੰ ਜੋੜਦੇ ਸਮੇਂ, ਟੂਲ ਡਾਇਰੈਕਟਰੀ ਦੇ ਅੰਦਰ ਸਮੱਗਰੀ ਨੂੰ ਸਿਸਟਮ ਵਾਤਾਵਰਣ ਵੇਰੀਏਬਲ ਵਿੱਚ ਜੋੜਿਆ ਜਾਂਦਾ ਹੈ, ਜਿਸ ਨਾਲ idf.py ਨੂੰ ਸਿੱਧੇ ਪ੍ਰੋਜੈਕਟ ਮਾਰਗ ਦੇ ਅਧੀਨ ਚਲਾਇਆ ਜਾ ਸਕਦਾ ਹੈ।
d. ਸਾਬਕਾample ਪ੍ਰੋਗਰਾਮ ਡਾਇਰੈਕਟਰੀ ਸਾਬਕਾamples
ਇਸ ਡਾਇਰੈਕਟਰੀ ਵਿੱਚ ESP-IDF ਸਾਬਕਾ ਦਾ ਇੱਕ ਵਿਸ਼ਾਲ ਸੰਗ੍ਰਹਿ ਸ਼ਾਮਲ ਹੈample ਪ੍ਰੋਗਰਾਮ ਜੋ ਕੰਪੋਨੈਂਟ API ਦੀ ਵਰਤੋਂ ਦਾ ਪ੍ਰਦਰਸ਼ਨ ਕਰਦੇ ਹਨ। ਸਾਬਕਾamples ਨੂੰ ਉਹਨਾਂ ਦੀਆਂ ਸ਼੍ਰੇਣੀਆਂ ਦੇ ਅਧਾਰ ਤੇ ਵੱਖ-ਵੱਖ ਉਪ-ਡਾਇਰੈਕਟਰੀਆਂ ਵਿੱਚ ਸੰਗਠਿਤ ਕੀਤਾ ਗਿਆ ਹੈ:
· ਸ਼ੁਰੂ-ਸ਼ੁਰੂ ਕਰੋ: ਇਸ ਉਪ-ਡਾਇਰੈਕਟਰੀ ਵਿੱਚ ਐਂਟਰੀ-ਪੱਧਰ ਦੇ ਸਾਬਕਾ ਸ਼ਾਮਲ ਹਨampਉਪਭੋਗਤਾਵਾਂ ਨੂੰ ਮੂਲ ਗੱਲਾਂ ਨੂੰ ਸਮਝਣ ਵਿੱਚ ਮਦਦ ਕਰਨ ਲਈ "ਹੈਲੋ ਵਰਲਡ" ਅਤੇ "ਬਲਿੰਕ" ਵਰਗੇ les.
· ਬਲੂਟੁੱਥ: ਤੁਸੀਂ ਬਲੂਟੁੱਥ ਨਾਲ ਸਬੰਧਤ ਸਾਬਕਾ ਲੱਭ ਸਕਦੇ ਹੋamples ਇੱਥੇ, ਬਲੂਟੁੱਥ LE ਮੇਸ਼, ਬਲੂਟੁੱਥ LE HID, BluFi, ਅਤੇ ਹੋਰ ਵੀ ਸ਼ਾਮਲ ਹਨ।
· wifi: ਇਹ ਉਪ-ਡਾਇਰੈਕਟਰੀ Wi-Fi ਸਾਬਕਾ 'ਤੇ ਕੇਂਦਰਿਤ ਹੈamples, Wi-Fi SoftAP, Wi-Fi ਸਟੇਸ਼ਨ, espnow, ਅਤੇ ਮਲਕੀਅਤ ਸੰਚਾਰ ਪ੍ਰੋਟੋਕੋਲ ਵਰਗੇ ਬੁਨਿਆਦੀ ਪ੍ਰੋਗਰਾਮਾਂ ਸਮੇਤampEspressif ਤੋਂ les. ਇਸ ਵਿੱਚ ਮਲਟੀਪਲ ਐਪਲੀਕੇਸ਼ਨ ਲੇਅਰ ਵੀ ਸ਼ਾਮਲ ਹੈampWi-Fi 'ਤੇ ਆਧਾਰਿਤ, ਜਿਵੇਂ ਕਿ Iperf, Sniffer, ਅਤੇ Smart Config।
· ਪੈਰੀਫਿਰਲ: ਇਸ ਵਿਆਪਕ ਉਪ-ਡਾਇਰੈਕਟਰੀ ਨੂੰ ਪੈਰੀਫਿਰਲ ਨਾਵਾਂ ਦੇ ਆਧਾਰ 'ਤੇ ਕਈ ਉਪ-ਫੋਲਡਰਾਂ ਵਿੱਚ ਵੰਡਿਆ ਗਿਆ ਹੈ। ਇਸ ਵਿੱਚ ਮੁੱਖ ਤੌਰ 'ਤੇ ਪੈਰੀਫਿਰਲ ਡਰਾਈਵਰ ਐਕਸampEspressif ਚਿਪਸ ਲਈ les, ਹਰੇਕ ਸਾਬਕਾ ਦੇ ਨਾਲample ਕਈ ਸਬ-ਐਕਸamples. ਉਦਾਹਰਨ ਲਈ, gpio ਸਬ-ਡਾਇਰੈਕਟਰੀ ਵਿੱਚ ਦੋ ਸਾਬਕਾ ਸ਼ਾਮਲ ਹਨamples: GPIO ਅਤੇ GPIO ਮੈਟ੍ਰਿਕਸ ਕੀਬੋਰਡ। ਇਹ ਨੋਟ ਕਰਨਾ ਮਹੱਤਵਪੂਰਨ ਹੈ ਕਿ ਸਾਰੇ ਸਾਬਕਾ ਨਹੀਂampਇਸ ਡਾਇਰੈਕਟਰੀ ਵਿਚਲੇ les ESP32-C3 'ਤੇ ਲਾਗੂ ਹਨ।
36 ESP32-C3 ਵਾਇਰਲੈੱਸ ਐਡਵੈਂਚਰ: IoT ਲਈ ਇੱਕ ਵਿਆਪਕ ਗਾਈਡ

ਸਾਬਕਾ ਲਈample, ਸਾਬਕਾamples in usb/host ਸਿਰਫ਼ USB ਹੋਸਟ ਹਾਰਡਵੇਅਰ (ਜਿਵੇਂ ਕਿ ESP32-S3) ਵਾਲੇ ਪੈਰੀਫਿਰਲਾਂ 'ਤੇ ਲਾਗੂ ਹੁੰਦੇ ਹਨ, ਅਤੇ ESP32-C3 ਕੋਲ ਇਹ ਪੈਰੀਫਿਰਲ ਨਹੀਂ ਹੈ। ਸੰਕਲਨ ਸਿਸਟਮ ਖਾਸ ਤੌਰ 'ਤੇ ਟੀਚਾ ਨਿਰਧਾਰਤ ਕਰਨ ਵੇਲੇ ਪ੍ਰੋਂਪਟ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ। README file ਹਰੇਕ ਸਾਬਕਾ ਦਾample ਸਮਰਥਿਤ ਚਿਪਸ ਨੂੰ ਸੂਚੀਬੱਧ ਕਰਦਾ ਹੈ। · ਪ੍ਰੋਟੋਕੋਲ: ਇਸ ਉਪ-ਡਾਇਰੈਕਟਰੀ ਵਿੱਚ ਸਾਬਕਾampMQTT, HTTP, HTTP ਸਰਵਰ, PPPoS, Modbus, mDNS, SNTP ਸਮੇਤ ਵੱਖ-ਵੱਖ ਸੰਚਾਰ ਪ੍ਰੋਟੋਕੋਲਾਂ ਲਈ les, ਸੰਚਾਰ ਪ੍ਰੋਟੋਕੋਲ ਸਾਬਕਾ ਦੀ ਇੱਕ ਵਿਸ਼ਾਲ ਸ਼੍ਰੇਣੀ ਨੂੰ ਕਵਰ ਕਰਦੇ ਹੋਏampIoT ਵਿਕਾਸ ਲਈ ਲੋੜੀਂਦਾ ਹੈ। · ਪ੍ਰੋਵੀਜ਼ਨਿੰਗ: ਇੱਥੇ, ਤੁਸੀਂ ਪ੍ਰੋਵਿਜ਼ਨਿੰਗ ਐਕਸampਵੱਖ-ਵੱਖ ਤਰੀਕਿਆਂ ਲਈ les, ਜਿਵੇਂ ਕਿ Wi-Fi ਪ੍ਰੋਵਿਜ਼ਨਿੰਗ ਅਤੇ ਬਲੂਟੁੱਥ LE ਪ੍ਰੋਵਿਜ਼ਨਿੰਗ। · ਸਿਸਟਮ: ਇਸ ਉਪ-ਡਾਇਰੈਕਟਰੀ ਵਿੱਚ ਸਿਸਟਮ ਡੀਬੱਗਿੰਗ ਸ਼ਾਮਲ ਹੈamples (ਉਦਾਹਰਨ ਲਈ, ਸਟੈਕ ਟਰੇਸਿੰਗ, ਰਨਟਾਈਮ ਟਰੇਸਿੰਗ, ਟਾਸਕ ਮਾਨੀਟਰਿੰਗ), ਪਾਵਰ ਪ੍ਰਬੰਧਨ ਸਾਬਕਾamples (ਉਦਾਹਰਨ ਲਈ, ਵੱਖ-ਵੱਖ ਸਲੀਪ ਮੋਡ, ਸਹਿ-ਪ੍ਰੋਸੈਸਰ), ਅਤੇ ਸਾਬਕਾampਕੰਸੋਲ ਟਰਮੀਨਲ, ਇਵੈਂਟ ਲੂਪ, ਅਤੇ ਸਿਸਟਮ ਟਾਈਮਰ ਵਰਗੇ ਆਮ ਸਿਸਟਮ ਕੰਪੋਨੈਂਟਸ ਨਾਲ ਸੰਬੰਧਿਤ ਹਨ। · ਸਟੋਰੇਜ: ਇਸ ਉਪ-ਡਾਇਰੈਕਟਰੀ ਦੇ ਅੰਦਰ, ਤੁਸੀਂ ਖੋਜ ਕਰੋਗੇ ਸਾਬਕਾampਸਭ ਦੇ les file ESP-IDF (ਜਿਵੇਂ ਕਿ ਫਲੈਸ਼, SD ਕਾਰਡ ਅਤੇ ਹੋਰ ਸਟੋਰੇਜ ਮੀਡੀਆ ਨੂੰ ਪੜ੍ਹਨਾ ਅਤੇ ਲਿਖਣਾ), ਅਤੇ ਨਾਲ ਹੀ ਸਾਬਕਾampਗੈਰ-ਅਸਥਿਰ ਸਟੋਰੇਜ (NVS), FatFS, SPIFFS ਅਤੇ ਹੋਰ file ਸਿਸਟਮ ਓਪਰੇਸ਼ਨ. · ਸੁਰੱਖਿਆ: ਇਸ ਉਪ-ਡਾਇਰੈਕਟਰੀ ਵਿੱਚ ਸਾਬਕਾampਫਲੈਸ਼ ਐਨਕ੍ਰਿਪਸ਼ਨ ਨਾਲ ਸਬੰਧਤ. (2) ESP-IDF ਕੰਪਾਇਲੇਸ਼ਨ ਟੂਲ ਚੇਨ ਡਾਇਰੈਕਟਰੀ (/.espressif), ਜਿਵੇਂ ਕਿ ਚਿੱਤਰ 4.3 ਵਿੱਚ ਦਿਖਾਇਆ ਗਿਆ ਹੈ।
ਚਿੱਤਰ 4.3. ESP-IDF ਕੰਪਾਇਲੇਸ਼ਨ ਟੂਲ ਚੇਨ ਡਾਇਰੈਕਟਰੀ
ਅਧਿਆਇ 4. ਵਿਕਾਸ ਵਾਤਾਵਰਣ ਸਥਾਪਤ ਕਰਨਾ 37

a ਸਾਫਟਵੇਅਰ ਡਿਸਟ੍ਰੀਬਿਊਸ਼ਨ ਡਾਇਰੈਕਟਰੀ ਜਿਲਾ
ESP-IDF ਟੂਲ ਚੇਨ ਅਤੇ ਹੋਰ ਸੌਫਟਵੇਅਰ ਕੰਪਰੈੱਸਡ ਪੈਕੇਜਾਂ ਦੇ ਰੂਪ ਵਿੱਚ ਵੰਡੇ ਜਾਂਦੇ ਹਨ। ਇੰਸਟਾਲੇਸ਼ਨ ਪ੍ਰਕਿਰਿਆ ਦੇ ਦੌਰਾਨ, ਇੰਸਟਾਲੇਸ਼ਨ ਟੂਲ ਪਹਿਲਾਂ ਕੰਪਰੈੱਸਡ ਪੈਕੇਜ ਨੂੰ ਡਿਸਟ ਡਾਇਰੈਕਟਰੀ ਵਿੱਚ ਡਾਊਨਲੋਡ ਕਰਦਾ ਹੈ, ਅਤੇ ਫਿਰ ਇਸਨੂੰ ਨਿਰਧਾਰਤ ਡਾਇਰੈਕਟਰੀ ਵਿੱਚ ਐਕਸਟਰੈਕਟ ਕਰਦਾ ਹੈ। ਇੱਕ ਵਾਰ ਇੰਸਟਾਲੇਸ਼ਨ ਮੁਕੰਮਲ ਹੋਣ ਤੋਂ ਬਾਅਦ, ਇਸ ਡਾਇਰੈਕਟਰੀ ਵਿੱਚ ਸਮੱਗਰੀ ਨੂੰ ਸੁਰੱਖਿਅਤ ਢੰਗ ਨਾਲ ਹਟਾਇਆ ਜਾ ਸਕਦਾ ਹੈ।
ਬੀ. ਪਾਈਥਨ ਵਰਚੁਅਲ ਵਾਤਾਵਰਣ ਡਾਇਰੈਕਟਰੀ ਪਾਈਥਨ env
ESP-IDF ਦੇ ਵੱਖ-ਵੱਖ ਸੰਸਕਰਣ Python ਪੈਕੇਜਾਂ ਦੇ ਖਾਸ ਸੰਸਕਰਣਾਂ 'ਤੇ ਨਿਰਭਰ ਕਰਦੇ ਹਨ। ਇਹਨਾਂ ਪੈਕੇਜਾਂ ਨੂੰ ਉਸੇ ਹੋਸਟ ਉੱਤੇ ਸਿੱਧਾ ਇੰਸਟਾਲ ਕਰਨ ਨਾਲ ਪੈਕੇਜ ਸੰਸਕਰਣਾਂ ਵਿੱਚ ਟਕਰਾਅ ਪੈਦਾ ਹੋ ਸਕਦਾ ਹੈ। ਇਸ ਨੂੰ ਹੱਲ ਕਰਨ ਲਈ, ESP-IDF ਵੱਖ-ਵੱਖ ਪੈਕੇਜ ਸੰਸਕਰਣਾਂ ਨੂੰ ਅਲੱਗ ਕਰਨ ਲਈ Python ਵਰਚੁਅਲ ਵਾਤਾਵਰਨ ਦੀ ਵਰਤੋਂ ਕਰਦਾ ਹੈ। ਇਸ ਵਿਧੀ ਨਾਲ, ਡਿਵੈਲਪਰ ਇੱਕੋ ਹੋਸਟ 'ਤੇ ESP-IDF ਦੇ ਕਈ ਸੰਸਕਰਣਾਂ ਨੂੰ ਸਥਾਪਿਤ ਕਰ ਸਕਦੇ ਹਨ ਅਤੇ ਵੱਖ-ਵੱਖ ਵਾਤਾਵਰਣ ਵੇਰੀਏਬਲਾਂ ਨੂੰ ਆਯਾਤ ਕਰਕੇ ਆਸਾਨੀ ਨਾਲ ਉਹਨਾਂ ਵਿਚਕਾਰ ਸਵਿਚ ਕਰ ਸਕਦੇ ਹਨ।
c. ESP-IDF ਕੰਪਾਇਲੇਸ਼ਨ ਟੂਲ ਚੇਨ ਡਾਇਰੈਕਟਰੀ ਟੂਲ
ਇਸ ਡਾਇਰੈਕਟਰੀ ਵਿੱਚ ਮੁੱਖ ਤੌਰ 'ਤੇ ESP-IDF ਪ੍ਰੋਜੈਕਟਾਂ ਨੂੰ ਕੰਪਾਇਲ ਕਰਨ ਲਈ ਲੋੜੀਂਦੇ ਕਰਾਸ-ਕੰਪਾਈਲੇਸ਼ਨ ਟੂਲ ਸ਼ਾਮਲ ਹੁੰਦੇ ਹਨ, ਜਿਵੇਂ ਕਿ CMake ਟੂਲ, ਨਿਨਜਾ ਬਿਲਡ ਟੂਲ, ਅਤੇ gcc ਟੂਲ ਚੇਨ ਜੋ ਅੰਤਿਮ ਐਗਜ਼ੀਕਿਊਟੇਬਲ ਪ੍ਰੋਗਰਾਮ ਨੂੰ ਤਿਆਰ ਕਰਦੀ ਹੈ। ਇਸ ਤੋਂ ਇਲਾਵਾ, ਇਸ ਡਾਇਰੈਕਟਰੀ ਵਿੱਚ ਸੰਬੰਧਿਤ ਸਿਰਲੇਖ ਦੇ ਨਾਲ C/C++ ਭਾਸ਼ਾ ਦੀ ਮਿਆਰੀ ਲਾਇਬ੍ਰੇਰੀ ਹੈ। fileਐੱਸ. ਜੇਕਰ ਇੱਕ ਪ੍ਰੋਗਰਾਮ ਇੱਕ ਸਿਸਟਮ ਹੈਡਰ ਦਾ ਹਵਾਲਾ ਦਿੰਦਾ ਹੈ file ਜਿਵੇਂ #ਸ਼ਾਮਲ , ਕੰਪਾਇਲੇਸ਼ਨ ਟੂਲ ਚੇਨ stdio.h ਦਾ ਪਤਾ ਲਗਾਏਗੀ file ਇਸ ਡਾਇਰੈਕਟਰੀ ਦੇ ਅੰਦਰ.
4.2 ESP-IDF ਵਿਕਾਸ ਵਾਤਾਵਰਨ ਸੈਟ ਅਪ ਕਰਨਾ
ESP-IDF ਵਿਕਾਸ ਵਾਤਾਵਰਣ ਮੁੱਖ ਧਾਰਾ ਓਪਰੇਟਿੰਗ ਸਿਸਟਮਾਂ ਜਿਵੇਂ ਕਿ ਵਿੰਡੋਜ਼, ਲੀਨਕਸ, ਅਤੇ ਮੈਕੋਸ ਦਾ ਸਮਰਥਨ ਕਰਦਾ ਹੈ। ਇਹ ਭਾਗ ਜਾਣੂ ਕਰਵਾਏਗਾ ਕਿ ਹਰੇਕ ਸਿਸਟਮ 'ਤੇ ਵਿਕਾਸ ਵਾਤਾਵਰਣ ਕਿਵੇਂ ਸਥਾਪਤ ਕਰਨਾ ਹੈ। ਲੀਨਕਸ ਸਿਸਟਮ 'ਤੇ ESP32-C3 ਨੂੰ ਵਿਕਸਤ ਕਰਨ ਦੀ ਸਿਫਾਰਸ਼ ਕੀਤੀ ਜਾਂਦੀ ਹੈ, ਜਿਸ ਨੂੰ ਇੱਥੇ ਵਿਸਥਾਰ ਵਿੱਚ ਪੇਸ਼ ਕੀਤਾ ਜਾਵੇਗਾ। ਵਿਕਾਸ ਸਾਧਨਾਂ ਦੀ ਸਮਾਨਤਾ ਦੇ ਕਾਰਨ ਬਹੁਤ ਸਾਰੀਆਂ ਹਦਾਇਤਾਂ ਪਲੇਟਫਾਰਮਾਂ ਵਿੱਚ ਲਾਗੂ ਹੁੰਦੀਆਂ ਹਨ। ਇਸ ਲਈ, ਇਸ ਭਾਗ ਦੀ ਸਮੱਗਰੀ ਨੂੰ ਧਿਆਨ ਨਾਲ ਪੜ੍ਹਨ ਦੀ ਸਲਾਹ ਦਿੱਤੀ ਜਾਂਦੀ ਹੈ।
ਨੋਟ ਤੁਸੀਂ https://bookc3.espressif.com/esp32c3 'ਤੇ ਉਪਲਬਧ ਔਨਲਾਈਨ ਦਸਤਾਵੇਜ਼ਾਂ ਦਾ ਹਵਾਲਾ ਦੇ ਸਕਦੇ ਹੋ, ਜੋ ਇਸ ਭਾਗ ਵਿੱਚ ਜ਼ਿਕਰ ਕੀਤੀਆਂ ਕਮਾਂਡਾਂ ਪ੍ਰਦਾਨ ਕਰਦੇ ਹਨ।
4.2.1 ਲੀਨਕਸ ਉੱਤੇ ESP-IDF ਵਿਕਾਸ ਵਾਤਾਵਰਨ ਸੈਟ ਅਪ ਕਰਨਾ
ESP-IDF ਵਿਕਾਸ ਵਾਤਾਵਰਨ ਲਈ ਲੋੜੀਂਦੇ GNU ਵਿਕਾਸ ਅਤੇ ਡੀਬੱਗਿੰਗ ਟੂਲ ਲੀਨਕਸ ਸਿਸਟਮ ਦੇ ਮੂਲ ਹਨ। ਇਸ ਤੋਂ ਇਲਾਵਾ, ਲੀਨਕਸ ਵਿੱਚ ਕਮਾਂਡ-ਲਾਈਨ ਟਰਮੀਨਲ ਸ਼ਕਤੀਸ਼ਾਲੀ ਅਤੇ ਉਪਭੋਗਤਾ-ਅਨੁਕੂਲ ਹੈ, ਇਸ ਨੂੰ 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
ਸੁਝਾਅ ਤੁਹਾਨੂੰ ਉੱਪਰ ਦਿੱਤੀ ਕਮਾਂਡ ਲਈ ਪ੍ਰਸ਼ਾਸਕ ਖਾਤਾ ਅਤੇ ਪਾਸਵਰਡ ਵਰਤਣ ਦੀ ਲੋੜ ਹੈ। ਮੂਲ ਰੂਪ ਵਿੱਚ, ਪਾਸਵਰਡ ਦਾਖਲ ਕਰਨ ਵੇਲੇ ਕੋਈ ਵੀ ਜਾਣਕਾਰੀ ਪ੍ਰਦਰਸ਼ਿਤ ਨਹੀਂ ਹੋਵੇਗੀ। ਪ੍ਰਕਿਰਿਆ ਨੂੰ ਜਾਰੀ ਰੱਖਣ ਲਈ ਬਸ "ਐਂਟਰ" ਕੁੰਜੀ ਨੂੰ ਦਬਾਓ।
Git ESP-IDF ਵਿੱਚ ਇੱਕ ਮੁੱਖ ਕੋਡ ਪ੍ਰਬੰਧਨ ਸਾਧਨ ਹੈ। ਵਿਕਾਸ ਵਾਤਾਵਰਣ ਨੂੰ ਸਫਲਤਾਪੂਰਵਕ ਸਥਾਪਤ ਕਰਨ ਤੋਂ ਬਾਅਦ, ਤੁਸੀਂ git log ਕਮਾਂਡ ਦੀ ਵਰਤੋਂ ਕਰ ਸਕਦੇ ਹੋ view ESP-IDF ਦੀ ਸਿਰਜਣਾ ਤੋਂ ਬਾਅਦ ਸਾਰੇ ਕੋਡ ਬਦਲਾਅ ਕੀਤੇ ਗਏ ਹਨ। ਇਸ ਤੋਂ ਇਲਾਵਾ, ਸੰਸਕਰਣ ਜਾਣਕਾਰੀ ਦੀ ਪੁਸ਼ਟੀ ਕਰਨ ਲਈ Git ਦੀ ਵਰਤੋਂ ESP-IDF ਵਿੱਚ ਵੀ ਕੀਤੀ ਜਾਂਦੀ ਹੈ, ਜੋ ਕਿ ਖਾਸ ਸੰਸਕਰਣਾਂ ਦੇ ਅਨੁਸਾਰੀ ਸਹੀ ਟੂਲ ਚੇਨ ਨੂੰ ਸਥਾਪਤ ਕਰਨ ਲਈ ਜ਼ਰੂਰੀ ਹੈ। ਗਿੱਟ ਦੇ ਨਾਲ, ਹੋਰ ਮਹੱਤਵਪੂਰਨ ਸਿਸਟਮ ਟੂਲਸ ਵਿੱਚ ਪਾਈਥਨ ਸ਼ਾਮਲ ਹਨ। 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 ਨੂੰ ਇੱਕ Python ਸੰਸਕਰਣ ਦੀ ਲੋੜ ਹੈ ਜੋ 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)। ਪੈਰਾਮੀਟਰ -recursive ਇਹ ਯਕੀਨੀ ਬਣਾਉਂਦਾ ਹੈ ਕਿ ESP-IDF ਦੀਆਂ ਸਾਰੀਆਂ ਉਪ-ਰਿਪੋਜ਼ਟਰੀਆਂ ਮੁੜ-ਮੁੜ ਡਾਊਨਲੋਡ ਕੀਤੀਆਂ ਜਾਂਦੀਆਂ ਹਨ। ਉਪ-ਰਿਪੋਜ਼ਟਰੀਆਂ ਬਾਰੇ ਜਾਣਕਾਰੀ .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 ਟੂਲ ਇੰਸਟੌਲਰ ਡਾਊਨਲੋਡ ਕਰੋ
ਸੁਝਾਅ ESP-IDF ਵਿਕਾਸ ਵਾਤਾਵਰਨ ਨੂੰ Windows 10 ਜਾਂ ਇਸ ਤੋਂ ਉੱਪਰ ਦੇ 'ਤੇ ਸੈੱਟਅੱਪ ਕਰਨ ਦੀ ਸਿਫ਼ਾਰਸ਼ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਤੁਸੀਂ https://dl.espressif.com/dl/esp-idf/ ਤੋਂ ਇੰਸਟਾਲਰ ਨੂੰ ਡਾਊਨਲੋਡ ਕਰ ਸਕਦੇ ਹੋ। ਇੰਸਟਾਲਰ ਇੱਕ ਓਪਨ-ਸੋਰਸ ਸੌਫਟਵੇਅਰ ਵੀ ਹੈ, ਅਤੇ ਇਸਦਾ ਸਰੋਤ ਕੋਡ ਹੋ ਸਕਦਾ ਹੈ viewhttps://github.com/espressif/idf-installer 'ਤੇ ed.
· ਔਨਲਾਈਨ ESP-IDF ਟੂਲ ਇੰਸਟਾਲਰ
ਇਹ ਇੰਸਟਾਲਰ ਮੁਕਾਬਲਤਨ ਛੋਟਾ ਹੈ, ਆਕਾਰ ਵਿੱਚ ਲਗਭਗ 4 MB ਹੈ, ਅਤੇ ਹੋਰ ਪੈਕੇਜ ਅਤੇ ਕੋਡ ਇੰਸਟਾਲੇਸ਼ਨ ਪ੍ਰਕਿਰਿਆ ਦੌਰਾਨ ਡਾਊਨਲੋਡ ਕੀਤੇ ਜਾਣਗੇ। ਅਡਵਾਨtagਔਨਲਾਈਨ ਇੰਸਟੌਲਰ ਦਾ e ਇਹ ਹੈ ਕਿ ਇੰਸਟਾਲੇਸ਼ਨ ਪ੍ਰਕਿਰਿਆ ਦੌਰਾਨ ਮੰਗ 'ਤੇ ਨਾ ਸਿਰਫ਼ ਸੌਫਟਵੇਅਰ ਪੈਕੇਜ ਅਤੇ ਕੋਡ ਡਾਊਨਲੋਡ ਕੀਤੇ ਜਾ ਸਕਦੇ ਹਨ, ਬਲਕਿ ESP-IDF ਦੀਆਂ ਸਾਰੀਆਂ ਉਪਲਬਧ ਰੀਲੀਜ਼ਾਂ ਅਤੇ GitHub ਕੋਡ ਦੀ ਨਵੀਨਤਮ ਸ਼ਾਖਾ (ਜਿਵੇਂ ਕਿ ਮਾਸਟਰ ਬ੍ਰਾਂਚ) ਦੀ ਸਥਾਪਨਾ ਦੀ ਵੀ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ। . ਨੁਕਸਾਨtage ਇਹ ਹੈ ਕਿ ਇਸ ਨੂੰ ਇੰਸਟਾਲੇਸ਼ਨ ਕਾਰਜ ਦੌਰਾਨ ਇੱਕ ਨੈੱਟਵਰਕ ਕੁਨੈਕਸ਼ਨ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ, ਜੋ ਕਿ ਨੈੱਟਵਰਕ ਸਮੱਸਿਆਵਾਂ ਕਾਰਨ ਇੰਸਟਾਲੇਸ਼ਨ ਅਸਫਲ ਹੋ ਸਕਦੀ ਹੈ।
40 ESP32-C3 ਵਾਇਰਲੈੱਸ ਐਡਵੈਂਚਰ: IoT ਲਈ ਇੱਕ ਵਿਆਪਕ ਗਾਈਡ

· ਔਫਲਾਈਨ ESP-IDF ਟੂਲ ਇੰਸਟੌਲਰ ਇਹ ਇੰਸਟੌਲਰ ਵੱਡਾ ਹੈ, ਲਗਭਗ 1 GB ਦਾ ਆਕਾਰ ਹੈ, ਅਤੇ ਇਸ ਵਿੱਚ ਵਾਤਾਵਰਣ ਸੈੱਟਅੱਪ ਲਈ ਲੋੜੀਂਦੇ ਸਾਰੇ ਸਾਫਟਵੇਅਰ ਪੈਕੇਜ ਅਤੇ ਕੋਡ ਸ਼ਾਮਲ ਹਨ। ਮੁੱਖ ਸਲਾਹtagਔਫਲਾਈਨ ਇੰਸਟੌਲਰ ਦਾ e ਇਹ ਹੈ ਕਿ ਇਹ ਇੰਟਰਨੈਟ ਪਹੁੰਚ ਤੋਂ ਬਿਨਾਂ ਕੰਪਿਊਟਰਾਂ 'ਤੇ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ, ਅਤੇ ਆਮ ਤੌਰ 'ਤੇ ਇਸਦੀ ਸਥਾਪਨਾ ਸਫਲਤਾ ਦਰ ਉੱਚੀ ਹੁੰਦੀ ਹੈ। ਇਹ ਨੋਟ ਕੀਤਾ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ ਕਿ ਔਫਲਾਈਨ ਇੰਸਟੌਲਰ ਸਿਰਫ v*.* ਜਾਂ v** ਦੁਆਰਾ ਪਛਾਣੇ ਗਏ ESP-IDF ਦੀਆਂ ਸਥਿਰ ਰੀਲੀਜ਼ਾਂ ਨੂੰ ਸਥਾਪਿਤ ਕਰ ਸਕਦਾ ਹੈ।
2. ਇੰਸਟਾਲਰ ਦਾ ਢੁਕਵਾਂ ਸੰਸਕਰਣ ਡਾਊਨਲੋਡ ਕਰਨ ਤੋਂ ਬਾਅਦ ESP-IDF ਟੂਲ ਇੰਸਟੌਲਰ ਚਲਾਓ (ਸਾਬਕਾ ਲਈ ESP-IDF ਟੂਲਸ ਔਫਲਾਈਨ 4.3.2 ਲਓample ਇੱਥੇ), 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 ਵਿੱਚ ਦਿਖਾਇਆ ਗਿਆ ਹੈ। ਤੁਸੀਂ "ESP-IDF PowerShell ਵਾਤਾਵਰਣ ਚਲਾਓ" ਜਾਂ "ESP-IDF ਕਮਾਂਡ ਪ੍ਰੋਂਪਟ ਚਲਾਓ" ਨੂੰ ਚੁਣ ਸਕਦੇ ਹੋ। ਇਹ ਯਕੀਨੀ ਬਣਾਉਣ ਲਈ ਕਿ ਵਿਕਾਸ ਵਾਤਾਵਰਣ ਆਮ ਤੌਰ 'ਤੇ ਕੰਮ ਕਰਦਾ ਹੈ, ਇੰਸਟਾਲੇਸ਼ਨ ਤੋਂ ਬਾਅਦ ਸੰਕਲਨ ਵਿੰਡੋ ਨੂੰ ਸਿੱਧਾ ਚਲਾਓ।
ਚਿੱਤਰ 4.11। ਇੰਸਟਾਲੇਸ਼ਨ ਪੂਰੀ ਹੋਈ (8) ਪ੍ਰੋਗਰਾਮ ਸੂਚੀ ਵਿੱਚ ਸਥਾਪਿਤ ਵਿਕਾਸ ਵਾਤਾਵਰਣ ਨੂੰ ਖੋਲ੍ਹੋ (ਜਾਂ ਤਾਂ ESP-IDF 4.3)
CMD ਜਾਂ ESP-IDF 4.3 PowerShell ਟਰਮੀਨਲ, ਜਿਵੇਂ ਕਿ ਚਿੱਤਰ 4.12 ਵਿੱਚ ਦਿਖਾਇਆ ਗਿਆ ਹੈ), ਅਤੇ 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 ਮੈਕ 'ਤੇ ESP-IDF ਵਿਕਾਸ ਵਾਤਾਵਰਣ ਸੈਟ ਕਰਨਾ
ਮੈਕ ਸਿਸਟਮ ਤੇ ESP-IDF ਵਿਕਾਸ ਵਾਤਾਵਰਣ ਨੂੰ ਸਥਾਪਿਤ ਕਰਨ ਦੀ ਪ੍ਰਕਿਰਿਆ ਲੀਨਕਸ ਸਿਸਟਮ ਦੇ ਸਮਾਨ ਹੈ। ਰਿਪੋਜ਼ਟਰੀ ਕੋਡ ਨੂੰ ਡਾਊਨਲੋਡ ਕਰਨ ਅਤੇ ਟੂਲ ਚੇਨ ਨੂੰ ਸਥਾਪਿਤ ਕਰਨ ਲਈ ਕਮਾਂਡਾਂ ਬਿਲਕੁਲ ਇੱਕੋ ਜਿਹੀਆਂ ਹਨ। ਨਿਰਭਰਤਾ ਪੈਕੇਜਾਂ ਨੂੰ ਇੰਸਟਾਲ ਕਰਨ ਲਈ ਸਿਰਫ਼ ਕਮਾਂਡਾਂ ਥੋੜੀਆਂ ਵੱਖਰੀਆਂ ਹਨ। 1. ਨਿਰਭਰਤਾ ਪੈਕੇਜ ਇੰਸਟਾਲ ਕਰੋ ਇੱਕ ਟਰਮੀਨਲ ਖੋਲ੍ਹੋ, ਅਤੇ ਪਾਈਥਨ ਪੈਕੇਜ ਪ੍ਰਬੰਧਨ ਟੂਲ, ਪਾਈਪ ਨੂੰ ਇੰਸਟਾਲ ਕਰੋ, ਹੇਠ ਦਿੱਤੀ ਕਮਾਂਡ ਚਲਾ ਕੇ:
% sudo ਆਸਾਨ ਇੰਸਟਾਲ ਪਾਈਪ
ਹੋਮਬਰੂ ਨੂੰ ਇੰਸਟਾਲ ਕਰੋ, ਮੈਕੋਸ ਲਈ ਪੈਕੇਜ ਪ੍ਰਬੰਧਨ ਟੂਲ, ਹੇਠ ਦਿੱਤੀ ਕਮਾਂਡ ਚਲਾ ਕੇ:
% /bin/bash -c “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/ HEAD/install.sh)”
ਹੇਠ ਦਿੱਤੀ ਕਮਾਂਡ ਚਲਾ ਕੇ ਲੋੜੀਂਦੇ ਨਿਰਭਰਤਾ ਪੈਕੇਜਾਂ ਨੂੰ ਸਥਾਪਿਤ ਕਰੋ:
% brew python3 install 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 ਵਿੱਚ ਕੋਡ ਸੰਪਾਦਨ ਟੂਲ ਸ਼ਾਮਲ ਨਹੀਂ ਹੁੰਦਾ ਹੈ (ਹਾਲਾਂਕਿ ਵਿੰਡੋਜ਼ ਲਈ ਨਵੀਨਤਮ ESP-IDF ਸਥਾਪਕ ESP-IDF Eclipse ਨੂੰ ਸਥਾਪਤ ਕਰਨ ਦਾ ਵਿਕਲਪ ਪੇਸ਼ ਕਰਦਾ ਹੈ)। ਤੁਸੀਂ ਕੋਡ ਨੂੰ ਸੰਪਾਦਿਤ ਕਰਨ ਲਈ ਆਪਣੀ ਪਸੰਦ ਦੇ ਕਿਸੇ ਵੀ ਟੈਕਸਟ ਐਡੀਟਿੰਗ ਟੂਲ ਦੀ ਵਰਤੋਂ ਕਰ ਸਕਦੇ ਹੋ ਅਤੇ ਫਿਰ ਟਰਮੀਨਲ ਕਮਾਂਡਾਂ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਇਸਨੂੰ ਕੰਪਾਇਲ ਕਰ ਸਕਦੇ ਹੋ।
ਇੱਕ ਪ੍ਰਸਿੱਧ ਕੋਡ ਸੰਪਾਦਨ ਟੂਲ ਹੈ VS ਕੋਡ (ਵਿਜ਼ੂਅਲ ਸਟੂਡੀਓ ਕੋਡ), ਜੋ ਇੱਕ ਉਪਭੋਗਤਾ-ਅਨੁਕੂਲ ਇੰਟਰਫੇਸ ਵਾਲਾ ਇੱਕ ਮੁਫਤ ਅਤੇ ਵਿਸ਼ੇਸ਼ਤਾ ਭਰਪੂਰ ਕੋਡ ਸੰਪਾਦਕ ਹੈ। ਇਹ ਵੱਖ-ਵੱਖ ਪੇਸ਼ਕਸ਼ ਕਰਦਾ ਹੈ plugins ਜੋ ਕੋਡ ਨੈਵੀਗੇਸ਼ਨ, ਸਿੰਟੈਕਸ ਹਾਈਲਾਈਟਿੰਗ, ਗਿੱਟ ਸੰਸਕਰਣ ਨਿਯੰਤਰਣ, ਅਤੇ ਟਰਮੀਨਲ ਏਕੀਕਰਣ ਵਰਗੀਆਂ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਪ੍ਰਦਾਨ ਕਰਦੇ ਹਨ। ਇਸ ਤੋਂ ਇਲਾਵਾ, Espressif ਨੇ VS ਕੋਡ ਲਈ Espressif IDF ਨਾਮਕ ਇੱਕ ਸਮਰਪਿਤ ਪਲੱਗਇਨ ਵਿਕਸਿਤ ਕੀਤਾ ਹੈ, ਜੋ ਪ੍ਰੋਜੈਕਟ ਕੌਂਫਿਗਰੇਸ਼ਨ ਅਤੇ ਡੀਬੱਗਿੰਗ ਨੂੰ ਸਰਲ ਬਣਾਉਂਦਾ ਹੈ।
ਤੁਸੀਂ VS ਕੋਡ ਵਿੱਚ ਮੌਜੂਦਾ ਫੋਲਡਰ ਨੂੰ ਤੇਜ਼ੀ ਨਾਲ ਖੋਲ੍ਹਣ ਲਈ ਟਰਮੀਨਲ ਵਿੱਚ ਕੋਡ ਕਮਾਂਡ ਦੀ ਵਰਤੋਂ ਕਰ ਸਕਦੇ ਹੋ। ਵਿਕਲਪਕ ਤੌਰ 'ਤੇ, ਤੁਸੀਂ VS ਕੋਡ ਦੇ ਅੰਦਰ ਸਿਸਟਮ ਦੇ ਡਿਫਾਲਟ ਟਰਮੀਨਲ ਕੰਸੋਲ ਨੂੰ ਖੋਲ੍ਹਣ ਲਈ ਸ਼ਾਰਟਕੱਟ Ctrl+ ਦੀ ਵਰਤੋਂ ਕਰ ਸਕਦੇ ਹੋ।
ਸੁਝਾਅ ESP32-C3 ਕੋਡ ਵਿਕਾਸ ਲਈ VS ਕੋਡ ਦੀ ਵਰਤੋਂ ਕਰਨ ਦੀ ਸਿਫਾਰਸ਼ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। VS ਕੋਡ ਦਾ ਨਵੀਨਤਮ ਸੰਸਕਰਣ https://code.visualstudio.com/ 'ਤੇ ਡਾਊਨਲੋਡ ਅਤੇ ਸਥਾਪਿਤ ਕਰੋ।
4.2.5 ਥਰਡ-ਪਾਰਟੀ ਡਿਵੈਲਪਮੈਂਟ ਵਾਤਾਵਰਨ ਨਾਲ ਜਾਣ-ਪਛਾਣ
ਅਧਿਕਾਰਤ ESP-IDF ਵਿਕਾਸ ਵਾਤਾਵਰਣ ਤੋਂ ਇਲਾਵਾ, ਜੋ ਮੁੱਖ ਤੌਰ 'ਤੇ C ਭਾਸ਼ਾ ਦੀ ਵਰਤੋਂ ਕਰਦਾ ਹੈ, ESP32-C3 ਹੋਰ ਮੁੱਖ ਧਾਰਾ ਪ੍ਰੋਗਰਾਮਿੰਗ ਭਾਸ਼ਾਵਾਂ ਅਤੇ ਤੀਜੀ-ਧਿਰ ਵਿਕਾਸ ਵਾਤਾਵਰਣਾਂ ਦੀ ਇੱਕ ਵਿਸ਼ਾਲ ਸ਼੍ਰੇਣੀ ਦਾ ਵੀ ਸਮਰਥਨ ਕਰਦਾ ਹੈ। ਕੁਝ ਮਹੱਤਵਪੂਰਨ ਵਿਕਲਪਾਂ ਵਿੱਚ ਸ਼ਾਮਲ ਹਨ:
Arduino: ਹਾਰਡਵੇਅਰ ਅਤੇ ਸੌਫਟਵੇਅਰ ਦੋਵਾਂ ਲਈ ਇੱਕ ਓਪਨ-ਸੋਰਸ ਪਲੇਟਫਾਰਮ, ESP32-C3 ਸਮੇਤ ਵੱਖ-ਵੱਖ ਮਾਈਕ੍ਰੋਕੰਟਰੋਲਰਸ ਦਾ ਸਮਰਥਨ ਕਰਦਾ ਹੈ।
ਇਹ C++ ਭਾਸ਼ਾ ਦੀ ਵਰਤੋਂ ਕਰਦਾ ਹੈ ਅਤੇ ਇੱਕ ਸਰਲ ਅਤੇ ਪ੍ਰਮਾਣਿਤ API ਪੇਸ਼ ਕਰਦਾ ਹੈ, ਜਿਸਨੂੰ ਆਮ ਤੌਰ 'ਤੇ Arduino ਭਾਸ਼ਾ ਕਿਹਾ ਜਾਂਦਾ ਹੈ। Arduino ਵਿਆਪਕ ਤੌਰ 'ਤੇ ਪ੍ਰੋਟੋਟਾਈਪ ਵਿਕਾਸ ਅਤੇ ਵਿਦਿਅਕ ਸੰਦਰਭਾਂ ਵਿੱਚ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ। ਇਹ ਇੱਕ ਐਕਸਟੈਂਸੀਬਲ ਸੌਫਟਵੇਅਰ ਪੈਕੇਜ ਅਤੇ ਇੱਕ IDE ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ ਜੋ ਆਸਾਨ ਸੰਕਲਨ ਅਤੇ ਫਲੈਸ਼ਿੰਗ ਲਈ ਸਹਾਇਕ ਹੈ।
ਮਾਈਕ੍ਰੋਪਾਈਥਨ: ਇੱਕ ਪਾਈਥਨ 3 ਭਾਸ਼ਾ ਦੁਭਾਸ਼ੀਏ ਨੂੰ ਏਮਬੈਡਡ ਮਾਈਕ੍ਰੋਕੰਟਰੋਲਰ ਪਲੇਟਫਾਰਮਾਂ 'ਤੇ ਚਲਾਉਣ ਲਈ ਤਿਆਰ ਕੀਤਾ ਗਿਆ ਹੈ।
ਇੱਕ ਸਧਾਰਨ ਸਕ੍ਰਿਪਟ ਭਾਸ਼ਾ ਦੇ ਨਾਲ, ਇਹ ESP32-C3 ਦੇ ਪੈਰੀਫਿਰਲ ਸਰੋਤਾਂ (ਜਿਵੇਂ ਕਿ UART, SPI, ਅਤੇ I2C) ਅਤੇ ਸੰਚਾਰ ਕਾਰਜਾਂ (ਜਿਵੇਂ ਕਿ Wi-Fi ਅਤੇ ਬਲੂਟੁੱਥ LE) ਤੱਕ ਸਿੱਧੇ ਪਹੁੰਚ ਕਰ ਸਕਦਾ ਹੈ।
46 ESP32-C3 ਵਾਇਰਲੈੱਸ ਐਡਵੈਂਚਰ: IoT ਲਈ ਇੱਕ ਵਿਆਪਕ ਗਾਈਡ

ਇਹ ਹਾਰਡਵੇਅਰ ਇੰਟਰੈਕਸ਼ਨ ਨੂੰ ਸਰਲ ਬਣਾਉਂਦਾ ਹੈ। ਮਾਈਕਰੋਪਾਈਥਨ, ਪਾਈਥਨ ਦੀ ਵਿਆਪਕ ਗਣਿਤਿਕ ਓਪਰੇਸ਼ਨ ਲਾਇਬ੍ਰੇਰੀ ਦੇ ਨਾਲ ਮਿਲ ਕੇ, ESP32-C3 'ਤੇ ਗੁੰਝਲਦਾਰ ਐਲਗੋਰਿਦਮ ਨੂੰ ਲਾਗੂ ਕਰਨ ਦੇ ਯੋਗ ਬਣਾਉਂਦਾ ਹੈ, AI-ਸਬੰਧਤ ਐਪਲੀਕੇਸ਼ਨਾਂ ਦੇ ਵਿਕਾਸ ਦੀ ਸਹੂਲਤ ਦਿੰਦਾ ਹੈ। ਇੱਕ ਲਿਪੀ ਭਾਸ਼ਾ ਦੇ ਰੂਪ ਵਿੱਚ, ਵਾਰ-ਵਾਰ ਸੰਕਲਨ ਦੀ ਕੋਈ ਲੋੜ ਨਹੀਂ ਹੈ; ਸੋਧਾਂ ਕੀਤੀਆਂ ਜਾ ਸਕਦੀਆਂ ਹਨ ਅਤੇ ਸਕ੍ਰਿਪਟਾਂ ਨੂੰ ਸਿੱਧਾ ਚਲਾਇਆ ਜਾ ਸਕਦਾ ਹੈ।
NodeMCU: ESP ਸੀਰੀਜ਼ ਚਿਪਸ ਲਈ ਵਿਕਸਿਤ ਕੀਤਾ ਗਿਆ ਇੱਕ LUA ਭਾਸ਼ਾ ਦੁਭਾਸ਼ੀਏ।
ਇਹ ESP ਚਿਪਸ ਦੇ ਲਗਭਗ ਸਾਰੇ ਪੈਰੀਫਿਰਲ ਫੰਕਸ਼ਨਾਂ ਦਾ ਸਮਰਥਨ ਕਰਦਾ ਹੈ ਅਤੇ ਮਾਈਕ੍ਰੋਪਾਈਥਨ ਨਾਲੋਂ ਹਲਕਾ ਹੈ। ਮਾਈਕ੍ਰੋਪਾਈਥਨ ਦੇ ਸਮਾਨ, ਨੋਡਐਮਸੀਯੂ ਇੱਕ ਸਕ੍ਰਿਪਟ ਭਾਸ਼ਾ ਦੀ ਵਰਤੋਂ ਕਰਦਾ ਹੈ, ਜਿਸ ਨਾਲ ਵਾਰ-ਵਾਰ ਸੰਕਲਨ ਦੀ ਜ਼ਰੂਰਤ ਨੂੰ ਖਤਮ ਕੀਤਾ ਜਾਂਦਾ ਹੈ।
ਇਸ ਤੋਂ ਇਲਾਵਾ, ESP32-C3 NuttX ਅਤੇ Zephyr ਓਪਰੇਟਿੰਗ ਸਿਸਟਮਾਂ ਦਾ ਵੀ ਸਮਰਥਨ ਕਰਦਾ ਹੈ। NuttX ਇੱਕ ਰੀਅਲ-ਟਾਈਮ ਓਪਰੇਟਿੰਗ ਸਿਸਟਮ ਹੈ ਜੋ POSIX-ਅਨੁਕੂਲ ਇੰਟਰਫੇਸ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ, ਐਪਲੀਕੇਸ਼ਨ ਪੋਰਟੇਬਿਲਟੀ ਨੂੰ ਵਧਾਉਂਦਾ ਹੈ। Zephyr ਇੱਕ ਛੋਟਾ ਰੀਅਲ-ਟਾਈਮ ਓਪਰੇਟਿੰਗ ਸਿਸਟਮ ਹੈ ਜੋ ਖਾਸ ਤੌਰ 'ਤੇ IoT ਐਪਲੀਕੇਸ਼ਨਾਂ ਲਈ ਤਿਆਰ ਕੀਤਾ ਗਿਆ ਹੈ। ਇਸ ਵਿੱਚ ਆਈਓਟੀ ਵਿਕਾਸ ਵਿੱਚ ਲੋੜੀਂਦੀਆਂ ਕਈ ਸੌਫਟਵੇਅਰ ਲਾਇਬ੍ਰੇਰੀਆਂ ਸ਼ਾਮਲ ਹਨ, ਹੌਲੀ ਹੌਲੀ ਇੱਕ ਵਿਆਪਕ ਸਾਫਟਵੇਅਰ ਈਕੋਸਿਸਟਮ ਵਿੱਚ ਵਿਕਸਤ ਹੋ ਰਹੀਆਂ ਹਨ।
ਇਹ ਕਿਤਾਬ ਉਪਰੋਕਤ ਵਿਕਾਸ ਵਾਤਾਵਰਨ ਲਈ ਵਿਸਤ੍ਰਿਤ ਇੰਸਟਾਲੇਸ਼ਨ ਨਿਰਦੇਸ਼ ਪ੍ਰਦਾਨ ਨਹੀਂ ਕਰਦੀ ਹੈ। ਤੁਸੀਂ ਸੰਬੰਧਿਤ ਦਸਤਾਵੇਜ਼ਾਂ ਅਤੇ ਨਿਰਦੇਸ਼ਾਂ ਦੀ ਪਾਲਣਾ ਕਰਕੇ ਆਪਣੀਆਂ ਜ਼ਰੂਰਤਾਂ ਦੇ ਅਧਾਰ ਤੇ ਇੱਕ ਵਿਕਾਸ ਵਾਤਾਵਰਣ ਸਥਾਪਤ ਕਰ ਸਕਦੇ ਹੋ।
4.3 ESP-IDF ਕੰਪਾਇਲੇਸ਼ਨ ਸਿਸਟਮ
4.3.1 ਸੰਕਲਨ ਪ੍ਰਣਾਲੀ ਦੀਆਂ ਬੁਨਿਆਦੀ ਧਾਰਨਾਵਾਂ
ਇੱਕ ESP-IDF ਪ੍ਰੋਜੈਕਟ ਇੱਕ ਐਂਟਰੀ ਫੰਕਸ਼ਨ ਅਤੇ ਮਲਟੀਪਲ ਸੁਤੰਤਰ ਫੰਕਸ਼ਨਲ ਕੰਪੋਨੈਂਟਸ ਦੇ ਨਾਲ ਇੱਕ ਮੁੱਖ ਪ੍ਰੋਗਰਾਮ ਦਾ ਸੰਗ੍ਰਹਿ ਹੈ। ਸਾਬਕਾ ਲਈample, ਇੱਕ ਪ੍ਰੋਜੈਕਟ ਜੋ LED ਸਵਿੱਚਾਂ ਨੂੰ ਨਿਯੰਤਰਿਤ ਕਰਦਾ ਹੈ ਵਿੱਚ ਮੁੱਖ ਤੌਰ 'ਤੇ ਇੱਕ ਐਂਟਰੀ ਪ੍ਰੋਗਰਾਮ ਮੇਨ ਅਤੇ ਇੱਕ ਡਰਾਈਵਰ ਕੰਪੋਨੈਂਟ ਹੁੰਦਾ ਹੈ ਜੋ GPIO ਨੂੰ ਕੰਟਰੋਲ ਕਰਦਾ ਹੈ। ਜੇਕਰ ਤੁਸੀਂ LED ਰਿਮੋਟ ਕੰਟਰੋਲ ਨੂੰ ਮਹਿਸੂਸ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ, ਤਾਂ ਤੁਹਾਨੂੰ Wi-Fi, TCP/IP ਪ੍ਰੋਟੋਕੋਲ ਸਟੈਕ, ਆਦਿ ਨੂੰ ਵੀ ਜੋੜਨ ਦੀ ਲੋੜ ਹੈ।
ਕੰਪਾਈਲੇਸ਼ਨ ਸਿਸਟਮ ਐਗਜ਼ੀਕਿਊਟੇਬਲ ਨੂੰ ਕੰਪਾਈਲ, ਲਿੰਕ ਅਤੇ ਜਨਰੇਟ ਕਰ ਸਕਦਾ ਹੈ fileਬਿਲਡਿੰਗ ਨਿਯਮਾਂ ਦੇ ਇੱਕ ਸੈੱਟ ਰਾਹੀਂ ਕੋਡ ਲਈ s (.bin)। ESP-IDF v4.0 ਅਤੇ ਉਪਰੋਕਤ ਸੰਸਕਰਣਾਂ ਦਾ ਸੰਕਲਨ ਸਿਸਟਮ ਮੂਲ ਰੂਪ ਵਿੱਚ CMake 'ਤੇ ਅਧਾਰਤ ਹੈ, ਅਤੇ ਸੰਕਲਨ ਸਕ੍ਰਿਪਟ CMakeLists.txt ਦੀ ਵਰਤੋਂ ਕੋਡ ਦੇ ਸੰਕਲਨ ਵਿਵਹਾਰ ਨੂੰ ਨਿਯੰਤਰਿਤ ਕਰਨ ਲਈ ਕੀਤੀ ਜਾ ਸਕਦੀ ਹੈ। CMake ਦੇ ਮੂਲ ਸੰਟੈਕਸ ਦਾ ਸਮਰਥਨ ਕਰਨ ਤੋਂ ਇਲਾਵਾ, ESP-IDF ਕੰਪਾਈਲੇਸ਼ਨ ਸਿਸਟਮ ਡਿਫੌਲਟ ਕੰਪਾਈਲੇਸ਼ਨ ਨਿਯਮਾਂ ਅਤੇ CMake ਫੰਕਸ਼ਨਾਂ ਦਾ ਇੱਕ ਸੈੱਟ ਵੀ ਪਰਿਭਾਸ਼ਿਤ ਕਰਦਾ ਹੈ, ਅਤੇ ਤੁਸੀਂ ਸਧਾਰਨ ਕਥਨਾਂ ਨਾਲ ਸੰਕਲਨ ਸਕ੍ਰਿਪਟ ਲਿਖ ਸਕਦੇ ਹੋ।
4.3.2 ਪ੍ਰੋਜੈਕਟ File ਬਣਤਰ
ਇੱਕ ਪ੍ਰੋਜੈਕਟ ਇੱਕ ਫੋਲਡਰ ਹੁੰਦਾ ਹੈ ਜਿਸ ਵਿੱਚ ਇੱਕ ਐਂਟਰੀ ਪ੍ਰੋਗਰਾਮ ਮੁੱਖ, ਉਪਭੋਗਤਾ ਦੁਆਰਾ ਪਰਿਭਾਸ਼ਿਤ ਭਾਗ ਅਤੇ fileਐਗਜ਼ੀਕਿਊਟੇਬਲ ਐਪਲੀਕੇਸ਼ਨ ਬਣਾਉਣ ਲਈ ਲੋੜੀਂਦਾ ਹੈ, ਜਿਵੇਂ ਕਿ ਕੰਪਾਈਲੇਸ਼ਨ ਸਕ੍ਰਿਪਟਾਂ, ਸੰਰਚਨਾ
ਅਧਿਆਇ 4. ਵਿਕਾਸ ਵਾਤਾਵਰਣ ਸਥਾਪਤ ਕਰਨਾ 47

files, ਭਾਗ ਟੇਬਲ, ਆਦਿ ਪ੍ਰੋਜੈਕਟਾਂ ਨੂੰ ਕਾਪੀ ਅਤੇ ਪਾਸ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ, ਅਤੇ ਉਹੀ ਐਗਜ਼ੀਕਿਊਟੇਬਲ file ESP-IDF ਵਿਕਾਸ ਵਾਤਾਵਰਣ ਦੇ ਸਮਾਨ ਸੰਸਕਰਣ ਵਾਲੀਆਂ ਮਸ਼ੀਨਾਂ ਵਿੱਚ ਕੰਪਾਇਲ ਅਤੇ ਤਿਆਰ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। ਇੱਕ ਆਮ ESP-IDF ਪ੍ਰੋਜੈਕਟ file ਬਣਤਰ ਚਿੱਤਰ 4.14 ਵਿੱਚ ਦਿਖਾਇਆ ਗਿਆ ਹੈ।
ਚਿੱਤਰ 4.14. ਆਮ ESP-IDF ਪ੍ਰੋਜੈਕਟ file ਸੰਰਚਨਾ ਕਿਉਂਕਿ ESP-IDF ESP32, ESP32-S ਸੀਰੀਜ਼, ESP32-C ਸੀਰੀਜ਼, ESP32-H ਸੀਰੀਜ਼, ਆਦਿ ਸਮੇਤ Espressif ਤੋਂ ਮਲਟੀਪਲ IoT ਚਿਪਸ ਦਾ ਸਮਰਥਨ ਕਰਦਾ ਹੈ, ਕੋਡ ਨੂੰ ਕੰਪਾਇਲ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ ਇੱਕ ਟੀਚਾ ਨਿਰਧਾਰਤ ਕਰਨ ਦੀ ਲੋੜ ਹੈ। ਟੀਚਾ ਉਹ ਹਾਰਡਵੇਅਰ ਡਿਵਾਈਸ ਹੈ ਜੋ ਐਪਲੀਕੇਸ਼ਨ ਪ੍ਰੋਗਰਾਮ ਨੂੰ ਚਲਾਉਂਦਾ ਹੈ ਅਤੇ ਕੰਪਾਇਲੇਸ਼ਨ ਸਿਸਟਮ ਦਾ ਬਿਲਡ ਟੀਚਾ ਹੈ। ਤੁਹਾਡੀਆਂ ਜ਼ਰੂਰਤਾਂ 'ਤੇ ਨਿਰਭਰ ਕਰਦਿਆਂ, ਤੁਸੀਂ ਆਪਣੇ ਪ੍ਰੋਜੈਕਟ ਲਈ ਇੱਕ ਜਾਂ ਵੱਧ ਟੀਚੇ ਨਿਰਧਾਰਤ ਕਰ ਸਕਦੇ ਹੋ। ਸਾਬਕਾ ਲਈample, ਕਮਾਂਡ idf.py ਸੈੱਟ-ਟਾਰਗੇਟ esp32c3 ਰਾਹੀਂ, ਤੁਸੀਂ ਕੰਪਾਈਲੇਸ਼ਨ ਟੀਚੇ ਨੂੰ ESP32-C3 'ਤੇ ਸੈੱਟ ਕਰ ਸਕਦੇ ਹੋ, ਜਿਸ ਦੌਰਾਨ ESP32C3 ਲਈ ਡਿਫੌਲਟ ਪੈਰਾਮੀਟਰ ਅਤੇ ਕੰਪਾਈਲੇਸ਼ਨ ਟੂਲ ਚੇਨ ਮਾਰਗ ਲੋਡ ਕੀਤਾ ਜਾਵੇਗਾ। ਸੰਕਲਨ ਤੋਂ ਬਾਅਦ, ESP32C3 ਲਈ ਇੱਕ ਐਗਜ਼ੀਕਿਊਟੇਬਲ ਪ੍ਰੋਗਰਾਮ ਤਿਆਰ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। ਤੁਸੀਂ ਇੱਕ ਵੱਖਰਾ ਟੀਚਾ ਸੈੱਟ ਕਰਨ ਲਈ ਕਮਾਂਡ ਸੈੱਟ-ਟਾਰਗੇਟ ਨੂੰ ਦੁਬਾਰਾ ਵੀ ਚਲਾ ਸਕਦੇ ਹੋ, ਅਤੇ ਕੰਪਾਈਲੇਸ਼ਨ ਸਿਸਟਮ ਆਪਣੇ ਆਪ ਸਾਫ਼ ਅਤੇ ਮੁੜ ਸੰਰਚਿਤ ਹੋ ਜਾਵੇਗਾ। ਕੰਪੋਨੈਂਟਸ
ESP-IDF ਵਿੱਚ ਕੰਪੋਨੈਂਟ ਸੰਕਲਨ ਪ੍ਰਣਾਲੀ ਦੇ ਅੰਦਰ ਪ੍ਰਬੰਧਿਤ ਮਾਡਿਊਲਰ ਅਤੇ ਸੁਤੰਤਰ ਕੋਡ ਇਕਾਈਆਂ ਹਨ। ਉਹਨਾਂ ਨੂੰ ਫੋਲਡਰਾਂ ਦੇ ਰੂਪ ਵਿੱਚ ਵਿਵਸਥਿਤ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਫੋਲਡਰ ਨਾਮ ਡਿਫਾਲਟ ਰੂਪ ਵਿੱਚ ਕੰਪੋਨੈਂਟ ਨਾਮ ਨੂੰ ਦਰਸਾਉਂਦਾ ਹੈ। ਹਰੇਕ ਹਿੱਸੇ ਦੀ ਆਪਣੀ ਸੰਕਲਨ ਸਕ੍ਰਿਪਟ ਹੈ ਜੋ ਕਿ 48 ESP32-C3 ਵਾਇਰਲੈੱਸ ਐਡਵੈਂਚਰ: ਆਈਓਟੀ ਲਈ ਇੱਕ ਵਿਆਪਕ ਗਾਈਡ

ਇਸਦੇ ਸੰਕਲਨ ਪੈਰਾਮੀਟਰ ਅਤੇ ਨਿਰਭਰਤਾਵਾਂ ਨੂੰ ਨਿਸ਼ਚਿਤ ਕਰਦਾ ਹੈ। ਸੰਕਲਨ ਪ੍ਰਕਿਰਿਆ ਦੇ ਦੌਰਾਨ, ਭਾਗਾਂ ਨੂੰ ਵੱਖਰੀਆਂ ਸਥਿਰ ਲਾਇਬ੍ਰੇਰੀਆਂ ਵਿੱਚ ਕੰਪਾਇਲ ਕੀਤਾ ਜਾਂਦਾ ਹੈ (.a files) ਅਤੇ ਅੰਤ ਵਿੱਚ ਐਪਲੀਕੇਸ਼ਨ ਪ੍ਰੋਗਰਾਮ ਬਣਾਉਣ ਲਈ ਦੂਜੇ ਭਾਗਾਂ ਨਾਲ ਮਿਲਾਇਆ ਜਾਂਦਾ ਹੈ।
ESP-IDF ਜ਼ਰੂਰੀ ਫੰਕਸ਼ਨ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ, ਜਿਵੇਂ ਕਿ ਓਪਰੇਟਿੰਗ ਸਿਸਟਮ, ਪੈਰੀਫਿਰਲ ਡਰਾਈਵਰ, ਅਤੇ ਨੈੱਟਵਰਕ ਪ੍ਰੋਟੋਕੋਲ ਸਟੈਕ, ਭਾਗਾਂ ਦੇ ਰੂਪ ਵਿੱਚ। ਇਹ ਭਾਗ ESP-IDF ਰੂਟ ਡਾਇਰੈਕਟਰੀ ਦੇ ਅੰਦਰ ਸਥਿਤ ਕੰਪੋਨੈਂਟ ਡਾਇਰੈਕਟਰੀ ਵਿੱਚ ਸਟੋਰ ਕੀਤੇ ਜਾਂਦੇ ਹਨ। ਡਿਵੈਲਪਰਾਂ ਨੂੰ ਇਹਨਾਂ ਭਾਗਾਂ ਨੂੰ ਮਾਈਪ੍ਰੋਜੈਕਟ ਦੀ ਕੰਪੋਨੈਂਟ ਡਾਇਰੈਕਟਰੀ ਵਿੱਚ ਕਾਪੀ ਕਰਨ ਦੀ ਲੋੜ ਨਹੀਂ ਹੈ। ਇਸਦੀ ਬਜਾਏ, ਉਹਨਾਂ ਨੂੰ ਪ੍ਰੋਜੈਕਟ ਦੇ CMakeLists.txt ਵਿੱਚ ਇਹਨਾਂ ਭਾਗਾਂ ਦੇ ਨਿਰਭਰਤਾ ਸਬੰਧਾਂ ਨੂੰ ਨਿਸ਼ਚਿਤ ਕਰਨ ਦੀ ਲੋੜ ਹੈ file REQUIRES ਜਾਂ PRIV_REQUIRES ਨਿਰਦੇਸ਼ਾਂ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ। ਕੰਪਾਈਲੇਸ਼ਨ ਸਿਸਟਮ ਲੋੜੀਂਦੇ ਭਾਗਾਂ ਨੂੰ ਆਪਣੇ ਆਪ ਲੱਭੇਗਾ ਅਤੇ ਕੰਪਾਇਲ ਕਰੇਗਾ।
ਇਸ ਲਈ, ਮਾਈਪ੍ਰੋਜੈਕਟ ਦੇ ਅਧੀਨ ਭਾਗਾਂ ਦੀ ਡਾਇਰੈਕਟਰੀ ਜ਼ਰੂਰੀ ਨਹੀਂ ਹੈ। ਇਹ ਸਿਰਫ ਪ੍ਰੋਜੈਕਟ ਦੇ ਕੁਝ ਕਸਟਮ ਭਾਗਾਂ ਨੂੰ ਸ਼ਾਮਲ ਕਰਨ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ, ਜੋ ਕਿ ਤੀਜੀ-ਧਿਰ ਲਾਇਬ੍ਰੇਰੀਆਂ ਜਾਂ ਉਪਭੋਗਤਾ ਦੁਆਰਾ ਪਰਿਭਾਸ਼ਿਤ ਕੋਡ ਹੋ ਸਕਦਾ ਹੈ। ਇਸ ਤੋਂ ਇਲਾਵਾ, ਭਾਗਾਂ ਨੂੰ 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 ਵਿੱਚ ਸੰਰਚਨਾ ਆਈਟਮਾਂ ਜੋੜਦੇ ਹਨ।
ਬਿਲਡ ਡਾਇਰੈਕਟਰੀ ਮੂਲ ਰੂਪ ਵਿੱਚ, ਪ੍ਰੋਜੈਕਟ ਦੇ ਅੰਦਰ ਬਿਲਡ ਡਾਇਰੈਕਟਰੀ ਇੰਟਰਮੀਡੀਏਟ ਸਟੋਰ ਕਰਦੀ ਹੈ files ਅਤੇ ਫਾਈ-
ਅਧਿਆਇ 4. ਵਿਕਾਸ ਵਾਤਾਵਰਣ ਸਥਾਪਤ ਕਰਨਾ 49

nal ਐਗਜ਼ੀਕਿਊਟੇਬਲ ਪ੍ਰੋਗਰਾਮ idf.py ਬਿਲਡ ਕਮਾਂਡ ਦੁਆਰਾ ਤਿਆਰ ਕੀਤੇ ਗਏ ਹਨ। ਆਮ ਤੌਰ 'ਤੇ, ਬਿਲਡ ਡਾਇਰੈਕਟਰੀ ਦੀਆਂ ਸਮੱਗਰੀਆਂ ਨੂੰ ਸਿੱਧਾ ਐਕਸੈਸ ਕਰਨਾ ਜ਼ਰੂਰੀ ਨਹੀਂ ਹੈ। ESP-IDF ਡਾਇਰੈਕਟਰੀ ਨਾਲ ਇੰਟਰੈਕਟ ਕਰਨ ਲਈ ਪਹਿਲਾਂ ਤੋਂ ਪਰਿਭਾਸ਼ਿਤ ਕਮਾਂਡਾਂ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ, ਜਿਵੇਂ ਕਿ ਕੰਪਾਇਲ ਕੀਤੀ ਬਾਈਨਰੀ ਨੂੰ ਆਪਣੇ ਆਪ ਲੱਭਣ ਲਈ idf.py ਫਲੈਸ਼ ਕਮਾਂਡ ਦੀ ਵਰਤੋਂ ਕਰਨਾ। file ਅਤੇ ਇਸ ਨੂੰ ਨਿਰਧਾਰਤ ਫਲੈਸ਼ ਪਤੇ 'ਤੇ ਫਲੈਸ਼ ਕਰੋ, ਜਾਂ ਪੂਰੀ ਬਿਲਡ ਡਾਇਰੈਕਟਰੀ ਨੂੰ ਸਾਫ਼ ਕਰਨ ਲਈ idf.py fullclean ਕਮਾਂਡ ਦੀ ਵਰਤੋਂ ਕਰੋ।
ਪਾਰਟੀਸ਼ਨ ਟੇਬਲ (partitions.csv) ਹਰੇਕ ਪ੍ਰੋਜੈਕਟ ਨੂੰ ਫਲੈਸ਼ ਦੀ ਸਪੇਸ ਨੂੰ ਵੰਡਣ ਅਤੇ ਐਗਜ਼ੀਕਿਊਟੇਬਲ ਪ੍ਰੋਗਰਾਮ ਅਤੇ ਉਪਭੋਗਤਾ ਡੇਟਾ ਸਪੇਸ ਦਾ ਆਕਾਰ ਅਤੇ ਸ਼ੁਰੂਆਤੀ ਪਤਾ ਨਿਰਧਾਰਤ ਕਰਨ ਲਈ ਇੱਕ ਭਾਗ ਸਾਰਣੀ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ। ਕਮਾਂਡ idf.py ਫਲੈਸ਼ ਜਾਂ OTA ਅੱਪਗਰੇਡ ਪ੍ਰੋਗਰਾਮ ਫਰਮਵੇਅਰ ਨੂੰ ਇਸ ਸਾਰਣੀ ਦੇ ਅਨੁਸਾਰ ਸੰਬੰਧਿਤ ਪਤੇ 'ਤੇ ਫਲੈਸ਼ ਕਰੇਗਾ। ESP-IDF components/ partition_table ਵਿੱਚ ਕਈ ਡਿਫਾਲਟ ਭਾਗ ਟੇਬਲ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ, ਜਿਵੇਂ partitions_singleapp.csv ਅਤੇ partitions_two_ ota.csv, ਜੋ ਕਿ ਮੇਨੂ ਕੌਂਫਿਗ ਵਿੱਚ ਚੁਣੇ ਜਾ ਸਕਦੇ ਹਨ।
ਜੇਕਰ ਸਿਸਟਮ ਦੀ ਡਿਫਾਲਟ ਭਾਗ ਸਾਰਣੀ ਪ੍ਰੋਜੈਕਟ ਦੀਆਂ ਲੋੜਾਂ ਨੂੰ ਪੂਰਾ ਨਹੀਂ ਕਰ ਸਕਦੀ, ਤਾਂ ਇੱਕ ਕਸਟਮ partitions.csv ਨੂੰ ਪ੍ਰੋਜੈਕਟ ਡਾਇਰੈਕਟਰੀ ਵਿੱਚ ਜੋੜਿਆ ਜਾ ਸਕਦਾ ਹੈ ਅਤੇ ਮੇਨੂ ਕੌਂਫਿਗ ਵਿੱਚ ਚੁਣਿਆ ਜਾ ਸਕਦਾ ਹੈ।
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 ਨਾਮ ਦਿੱਤਾ ਗਿਆ ਹੈ। ਸਾਬਕਾ ਲਈample, CONFIG_LOG_ ਜੋੜ ਰਿਹਾ ਹੈ
50 ESP32-C3 ਵਾਇਰਲੈੱਸ ਐਡਵੈਂਚਰ: IoT ਲਈ ਇੱਕ ਵਿਆਪਕ ਗਾਈਡ

DEFAULT_LEVEL_NONE = y ਮੂਲ ਰੂਪ ਵਿੱਚ ਲਾਗ ਡੇਟਾ ਨੂੰ ਪ੍ਰਿੰਟ ਨਾ ਕਰਨ ਲਈ UART ਇੰਟਰਫੇਸ ਨੂੰ ਸੰਰਚਿਤ ਕਰ ਸਕਦਾ ਹੈ। ਇਸ ਤੋਂ ਇਲਾਵਾ, ਜੇਕਰ ਕਿਸੇ ਖਾਸ ਟੀਚੇ ਲਈ ਖਾਸ ਮਾਪਦੰਡਾਂ ਨੂੰ ਸੈੱਟ ਕਰਨ ਦੀ ਲੋੜ ਹੈ, ਤਾਂ ਇੱਕ ਸੰਰਚਨਾ file ਨਾਮ sdkconfig.defaults.TARGET_NAME ਸ਼ਾਮਲ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ, ਜਿੱਥੇ TARGET_NAME esp32s2, esp32c3, ਅਤੇ ਹੋਰ ਵੀ ਹੋ ਸਕਦਾ ਹੈ। ਇਹ ਸੰਰਚਨਾ files ਨੂੰ ਸੰਕਲਨ ਦੇ ਦੌਰਾਨ sdkconfig ਵਿੱਚ ਆਯਾਤ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਆਮ ਮੂਲ ਸੰਰਚਨਾ ਦੇ ਨਾਲ file sdkconfig.defaults ਨੂੰ ਪਹਿਲਾਂ ਆਯਾਤ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ, ਇਸਦੇ ਬਾਅਦ ਟੀਚਾ-ਵਿਸ਼ੇਸ਼ ਸੰਰਚਨਾ file, ਜਿਵੇਂ ਕਿ sdkconfig.defaults.esp32c3. ਉਹਨਾਂ ਮਾਮਲਿਆਂ ਵਿੱਚ ਜਿੱਥੇ ਇੱਕੋ ਨਾਮ ਨਾਲ ਸੰਰਚਨਾ ਆਈਟਮਾਂ ਹਨ, ਬਾਅਦ ਵਾਲੀ ਸੰਰਚਨਾ file ਸਾਬਕਾ ਨੂੰ ਓਵਰਰਾਈਡ ਕਰੇਗਾ।
4.3.4 ਸੰਕਲਨ ਸਕ੍ਰਿਪਟ ਦੀ ਜਾਣ-ਪਛਾਣ
ESP-IDF ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ ਇੱਕ ਪ੍ਰੋਜੈਕਟ ਵਿਕਸਿਤ ਕਰਦੇ ਸਮੇਂ, ਡਿਵੈਲਪਰਾਂ ਨੂੰ ਨਾ ਸਿਰਫ਼ ਸਰੋਤ ਕੋਡ ਲਿਖਣ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ ਸਗੋਂ ਪ੍ਰੋਜੈਕਟ ਅਤੇ ਭਾਗਾਂ ਲਈ CMakeLists.txt ਲਿਖਣ ਦੀ ਵੀ ਲੋੜ ਹੁੰਦੀ ਹੈ। CMakeLists.txt ਇੱਕ ਟੈਕਸਟ ਹੈ file, ਇੱਕ ਸੰਕਲਨ ਸਕ੍ਰਿਪਟ ਵਜੋਂ ਵੀ ਜਾਣੀ ਜਾਂਦੀ ਹੈ, ਜੋ ਕਿ ਸੰਕਲਨ ਵਸਤੂਆਂ, ਸੰਕਲਨ ਸੰਰਚਨਾ ਆਈਟਮਾਂ, ਅਤੇ ਸਰੋਤ ਕੋਡ ਦੀ ਸੰਕਲਨ ਪ੍ਰਕਿਰਿਆ ਦੀ ਅਗਵਾਈ ਕਰਨ ਲਈ ਕਮਾਂਡਾਂ ਦੀ ਇੱਕ ਲੜੀ ਨੂੰ ਪਰਿਭਾਸ਼ਿਤ ਕਰਦੀ ਹੈ। ESP-IDF 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. ਪ੍ਰੋਜੈਕਟ(myProject)
ਉਹਨਾਂ ਵਿੱਚੋਂ, cmake_minimum_required (VERSION 3.5) ਨੂੰ ਪਹਿਲੀ ਲਾਈਨ 'ਤੇ ਰੱਖਿਆ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ, ਜਿਸਦੀ ਵਰਤੋਂ ਪ੍ਰੋਜੈਕਟ ਦੁਆਰਾ ਲੋੜੀਂਦੇ ਘੱਟੋ-ਘੱਟ CMake ਸੰਸਕਰਣ ਨੰਬਰ ਨੂੰ ਦਰਸਾਉਣ ਲਈ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। CMake ਦੇ ਨਵੇਂ ਸੰਸਕਰਣ ਆਮ ਤੌਰ 'ਤੇ ਪੁਰਾਣੇ ਸੰਸਕਰਣਾਂ ਦੇ ਅਨੁਕੂਲ ਹੁੰਦੇ ਹਨ, ਇਸਲਈ ਅਨੁਕੂਲਤਾ ਨੂੰ ਯਕੀਨੀ ਬਣਾਉਣ ਲਈ ਨਵੇਂ CMake ਕਮਾਂਡਾਂ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਸਮੇਂ ਉਸ ਅਨੁਸਾਰ ਸੰਸਕਰਣ ਨੰਬਰ ਨੂੰ ਵਿਵਸਥਿਤ ਕਰੋ।
ਸ਼ਾਮਲ ਕਰੋ($ENV {IDF_PATH}/tools/cmake/project.cmake) ਪਹਿਲਾਂ ਤੋਂ ਪਰਿਭਾਸ਼ਿਤ ਸੰਰਚਨਾ ਆਈਟਮਾਂ ਅਤੇ ESP-IDF ਕੰਪਾਈਲੇਸ਼ਨ ਸਿਸਟਮ ਦੀਆਂ ਕਮਾਂਡਾਂ ਨੂੰ ਆਯਾਤ ਕਰਦਾ ਹੈ, ਸੈਕਸ਼ਨ 4.3.3 ਵਿੱਚ ਵਰਣਿਤ ਕੰਪਾਈਲੇਸ਼ਨ ਸਿਸਟਮ ਦੇ ਡਿਫਾਲਟ ਬਿਲਡ ਨਿਯਮਾਂ ਸਮੇਤ। ਪ੍ਰੋਜੈਕਟ (ਮਾਈਪ੍ਰੋਜੈਕਟ) ਖੁਦ ਪ੍ਰੋਜੈਕਟ ਬਣਾਉਂਦਾ ਹੈ ਅਤੇ ਇਸਦਾ ਨਾਮ ਨਿਰਧਾਰਤ ਕਰਦਾ ਹੈ। ਇਹ ਨਾਮ ਅੰਤਿਮ ਆਉਟਪੁੱਟ ਬਾਈਨਰੀ ਵਜੋਂ ਵਰਤਿਆ ਜਾਵੇਗਾ file ਨਾਮ, ਭਾਵ, myProject.elf ਅਤੇ myProject.bin।
ਇੱਕ ਪ੍ਰੋਜੈਕਟ ਵਿੱਚ ਮੁੱਖ ਭਾਗ ਸਮੇਤ ਕਈ ਭਾਗ ਹੋ ਸਕਦੇ ਹਨ। ਹਰੇਕ ਕੰਪੋਨੈਂਟ ਦੀ ਉੱਚ-ਪੱਧਰੀ ਡਾਇਰੈਕਟਰੀ ਵਿੱਚ ਇੱਕ CMakeLists.txt ਹੁੰਦੀ ਹੈ file, ਜਿਸ ਨੂੰ ਕੰਪੋਨੈਂਟ ਕੰਪਾਈਲੇਸ਼ਨ ਸਕ੍ਰਿਪਟ ਕਿਹਾ ਜਾਂਦਾ ਹੈ। ਕੰਪੋਨੈਂਟ ਕੰਪਾਈਲੇਸ਼ਨ ਸਕ੍ਰਿਪਟਾਂ ਮੁੱਖ ਤੌਰ 'ਤੇ ਕੰਪੋਨੈਂਟ ਨਿਰਭਰਤਾ, ਸੰਰਚਨਾ ਮਾਪਦੰਡ, ਸਰੋਤ ਕੋਡ ਨੂੰ ਨਿਰਧਾਰਤ ਕਰਨ ਲਈ ਵਰਤੀਆਂ ਜਾਂਦੀਆਂ ਹਨ files, ਅਤੇ ਸਿਰਲੇਖ ਸ਼ਾਮਲ ਹਨ fileਲਈ s
ਅਧਿਆਇ 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, ਵੇਰੀਏਬਲ ਸੈੱਟ ਕਰਨ ਲਈ ਕਮਾਂਡ ਸੈੱਟ ਦੀ ਵਰਤੋਂ ਕਰੋ, ਜਿਵੇਂ ਕਿ ਸੈੱਟ(ਵੈਰੀਏਬਲ “ਵੈਲਯੂ”)।

4.3.5 ਆਮ ਕਮਾਂਡਾਂ ਨਾਲ ਜਾਣ-ਪਛਾਣ
ਈਐਸਪੀ-ਆਈਡੀਐਫ ਕੋਡ ਸੰਕਲਨ ਦੀ ਪ੍ਰਕਿਰਿਆ ਵਿੱਚ ਸੀਮੇਕ (ਪ੍ਰੋਜੈਕਟ ਕੌਂਫਿਗਰੇਸ਼ਨ ਟੂਲ), ਨਿਨਜਾ (ਪ੍ਰੋਜੈਕਟ ਬਿਲਡਿੰਗ ਟੂਲ) ਅਤੇ ਐਸਪਟੂਲ (ਫਲੈਸ਼ ਟੂਲ) ਦੀ ਵਰਤੋਂ ਕਰਦਾ ਹੈ। ਹਰੇਕ ਟੂਲ ਸੰਕਲਨ, ਬਿਲਡਿੰਗ ਅਤੇ ਫਲੈਸ਼ ਪ੍ਰਕਿਰਿਆ ਵਿੱਚ ਇੱਕ ਵੱਖਰੀ ਭੂਮਿਕਾ ਨਿਭਾਉਂਦਾ ਹੈ, ਅਤੇ ਵੱਖ-ਵੱਖ ਓਪਰੇਟਿੰਗ ਕਮਾਂਡਾਂ ਦਾ ਸਮਰਥਨ ਵੀ ਕਰਦਾ ਹੈ। ਉਪਭੋਗਤਾ ਦੇ ਸੰਚਾਲਨ ਦੀ ਸਹੂਲਤ ਲਈ, ESP-IDF ਇੱਕ ਯੂਨੀਫਾਈਡ ਫਰੰਟ-ਐਂਡ idf.py ਜੋੜਦਾ ਹੈ ਜੋ ਉਪਰੋਕਤ ਕਮਾਂਡਾਂ ਨੂੰ ਤੇਜ਼ੀ ਨਾਲ ਕਾਲ ਕਰਨ ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ।
idf.py ਦੀ ਵਰਤੋਂ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ, ਯਕੀਨੀ ਬਣਾਓ ਕਿ:
· ESP-IDF ਦਾ ਵਾਤਾਵਰਣ ਵੇਰੀਏਬਲ IDF_PATH ਮੌਜੂਦਾ ਟਰਮੀਨਲ ਵਿੱਚ ਜੋੜਿਆ ਗਿਆ ਹੈ। · ਕਮਾਂਡ ਐਗਜ਼ੀਕਿਊਸ਼ਨ ਡਾਇਰੈਕਟਰੀ ਪ੍ਰੋਜੈਕਟ ਦੀ ਰੂਟ ਡਾਇਰੈਕਟਰੀ ਹੈ, ਜਿਸ ਵਿੱਚ
ਪ੍ਰੋਜੈਕਟ ਕੰਪਾਇਲੇਸ਼ਨ ਸਕ੍ਰਿਪਟ CMakeLists.txt.
idf.py ਦੀਆਂ ਆਮ ਕਮਾਂਡਾਂ ਇਸ ਪ੍ਰਕਾਰ ਹਨ:
· idf.py -help: ਕਮਾਂਡਾਂ ਦੀ ਸੂਚੀ ਅਤੇ ਉਹਨਾਂ ਦੀ ਵਰਤੋਂ ਦੀਆਂ ਹਦਾਇਤਾਂ ਨੂੰ ਪ੍ਰਦਰਸ਼ਿਤ ਕਰਨਾ। · idf.py ਸੈੱਟ-ਟਾਰਗੇਟ : ਸੰਕਲਨ taidf.py fullcleanrget ਸੈੱਟ ਕਰਨਾ, ਜਿਵੇਂ ਕਿ
ਨੂੰ ਤਬਦੀਲ ਕਰਨ ਦੇ ਤੌਰ ਤੇ esp32c3 ਨਾਲ। · idf.py menuconfig: ਮੇਨੂ ਕੌਂਫਿਗਰੇਸ਼ਨ ਲਾਂਚ ਕਰਨਾ, ਇੱਕ ਟਰਮੀਨਲ ਗ੍ਰਾਫਿਕਲ ਸੰਰਚਨਾ
ਟੂਲ, ਜੋ ਸੰਰਚਨਾ ਚੋਣਾਂ ਨੂੰ ਚੁਣ ਜਾਂ ਸੋਧ ਸਕਦਾ ਹੈ, ਅਤੇ ਸੰਰਚਨਾ ਨਤੀਜੇ sdkconfig ਵਿੱਚ ਸੁਰੱਖਿਅਤ ਕੀਤੇ ਜਾਂਦੇ ਹਨ। file. · idf.py ਬਿਲਡ: ਕੋਡ ਸੰਕਲਨ ਸ਼ੁਰੂ ਕਰਨਾ। ਵਿਚਕਾਰਲਾ files ਅਤੇ ਕੰਪਾਈਲੇਸ਼ਨ ਦੁਆਰਾ ਤਿਆਰ ਅੰਤਿਮ ਐਗਜ਼ੀਕਿਊਟੇਬਲ ਪ੍ਰੋਗਰਾਮ ਨੂੰ ਡਿਫਾਲਟ ਰੂਪ ਵਿੱਚ ਪ੍ਰੋਜੈਕਟ ਦੀ ਬਿਲਡ ਡਾਇਰੈਕਟਰੀ ਵਿੱਚ ਸੁਰੱਖਿਅਤ ਕੀਤਾ ਜਾਵੇਗਾ। ਸੰਕਲਨ ਪ੍ਰਕਿਰਿਆ ਵਧਦੀ ਹੈ, ਜਿਸਦਾ ਮਤਲਬ ਹੈ ਕਿ ਜੇਕਰ ਸਿਰਫ ਇੱਕ ਸਰੋਤ ਹੈ file ਸੋਧਿਆ ਗਿਆ ਹੈ, ਸਿਰਫ ਸੋਧਿਆ ਗਿਆ ਹੈ file ਅਗਲੀ ਵਾਰ ਕੰਪਾਇਲ ਕੀਤਾ ਜਾਵੇਗਾ।

52 ESP32-C3 ਵਾਇਰਲੈੱਸ ਐਡਵੈਂਚਰ: IoT ਲਈ ਇੱਕ ਵਿਆਪਕ ਗਾਈਡ

· idf.py ਸਾਫ਼: ਵਿਚਕਾਰਲੇ ਦੀ ਸਫਾਈ files ਪ੍ਰੋਜੈਕਟ ਕੰਪਾਇਲੇਸ਼ਨ ਦੁਆਰਾ ਤਿਆਰ ਕੀਤਾ ਗਿਆ ਹੈ। ਪੂਰੇ ਪ੍ਰੋਜੈਕਟ ਨੂੰ ਅਗਲੇ ਸੰਕਲਨ ਵਿੱਚ ਕੰਪਾਇਲ ਕਰਨ ਲਈ ਮਜਬੂਰ ਕੀਤਾ ਜਾਵੇਗਾ. ਯਾਦ ਰੱਖੋ ਕਿ CMake ਸੰਰਚਨਾ ਅਤੇ menuconfig ਦੁਆਰਾ ਕੀਤੀ ਸੰਰਚਨਾ ਸੋਧਾਂ ਨੂੰ ਸਫਾਈ ਦੌਰਾਨ ਨਹੀਂ ਹਟਾਇਆ ਜਾਵੇਗਾ।
· idf.py fullclean: ਸਾਰੀ ਬਿਲਡ ਡਾਇਰੈਕਟਰੀ ਨੂੰ ਮਿਟਾਉਣਾ, ਸਾਰੇ CMake ਸੰਰਚਨਾ ਆਉਟਪੁੱਟ ਸਮੇਤ fileਐੱਸ. ਪ੍ਰੋਜੈਕਟ ਨੂੰ ਦੁਬਾਰਾ ਬਣਾਉਣ ਵੇਲੇ, CMake ਪ੍ਰੋਜੈਕਟ ਨੂੰ ਸਕ੍ਰੈਚ ਤੋਂ ਕੌਂਫਿਗਰ ਕਰੇਗਾ। ਕਿਰਪਾ ਕਰਕੇ ਧਿਆਨ ਦਿਓ ਕਿ ਇਹ ਕਮਾਂਡ ਵਾਰ-ਵਾਰ ਸਭ ਨੂੰ ਮਿਟਾ ਦੇਵੇਗੀ files ਬਿਲਡ ਡਾਇਰੈਕਟਰੀ ਵਿੱਚ ਹੈ, ਇਸਲਈ ਇਸਨੂੰ ਸਾਵਧਾਨੀ ਨਾਲ ਵਰਤੋ, ਅਤੇ ਪ੍ਰੋਜੈਕਟ ਸੰਰਚਨਾ 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 ਅਭਿਆਸ: ਕੰਪਾਈਲਿੰਗ ਐਕਸampਲੇ ਪ੍ਰੋਗਰਾਮ "ਬਲਿੰਕ"
4.4.1 ਸਾਬਕਾample ਵਿਸ਼ਲੇਸ਼ਣ
ਇਹ ਸੈਕਸ਼ਨ ਪ੍ਰੋਗ੍ਰਾਮ ਬਲਿੰਕ ਨੂੰ ਸਾਬਕਾ ਵਜੋਂ ਲਵੇਗਾampਦਾ ਵਿਸ਼ਲੇਸ਼ਣ ਕਰਨ ਲਈ file ਵਿਸਤਾਰ ਵਿੱਚ ਇੱਕ ਅਸਲੀ ਪ੍ਰੋਜੈਕਟ ਦੀ ਬਣਤਰ ਅਤੇ ਕੋਡਿੰਗ ਨਿਯਮ। ਬਲਿੰਕ ਪ੍ਰੋਗਰਾਮ LED ਬਲਿੰਕਿੰਗ ਪ੍ਰਭਾਵ ਨੂੰ ਲਾਗੂ ਕਰਦਾ ਹੈ, ਅਤੇ ਪ੍ਰੋਜੈਕਟ ਡਾਇਰੈਕਟਰੀ ਐਕਸ ਵਿੱਚ ਸਥਿਤ ਹੈamples/get-started/blink, ਜਿਸ ਵਿੱਚ ਇੱਕ ਸਰੋਤ ਸ਼ਾਮਲ ਹੈ file, ਸੰਰਚਨਾ files, ਅਤੇ ਕਈ ਸੰਕਲਨ ਸਕ੍ਰਿਪਟਾਂ।
ਇਸ ਕਿਤਾਬ ਵਿੱਚ ਪੇਸ਼ ਕੀਤਾ ਗਿਆ ਸਮਾਰਟ ਲਾਈਟ ਪ੍ਰੋਜੈਕਟ ਇਸ ਸਾਬਕਾ 'ਤੇ ਆਧਾਰਿਤ ਹੈample ਪ੍ਰੋਗਰਾਮ. ਅੰਤ ਵਿੱਚ ਇਸਨੂੰ ਪੂਰਾ ਕਰਨ ਲਈ ਫੰਕਸ਼ਨਾਂ ਨੂੰ ਹੌਲੀ ਹੌਲੀ ਬਾਅਦ ਦੇ ਅਧਿਆਵਾਂ ਵਿੱਚ ਜੋੜਿਆ ਜਾਵੇਗਾ।
ਸਰੋਤ ਕੋਡ ਪੂਰੀ ਵਿਕਾਸ ਪ੍ਰਕਿਰਿਆ ਨੂੰ ਪ੍ਰਦਰਸ਼ਿਤ ਕਰਨ ਲਈ, ਬਲਿੰਕ ਪ੍ਰੋਗਰਾਮ ਨੂੰ esp32c3-iot-projects/device firmware/1 blink ਵਿੱਚ ਕਾਪੀ ਕੀਤਾ ਗਿਆ ਹੈ।
ਬਲਿੰਕ ਪ੍ਰੋਜੈਕਟ ਦੀ ਡਾਇਰੈਕਟਰੀ ਬਣਤਰ files ਨੂੰ ਚਿੱਤਰ 4.15 ਵਿੱਚ ਦਿਖਾਇਆ ਗਿਆ ਹੈ।
ਬਲਿੰਕ ਪ੍ਰੋਜੈਕਟ ਵਿੱਚ ਸਿਰਫ ਇੱਕ ਮੁੱਖ ਡਾਇਰੈਕਟਰੀ ਹੈ, ਜੋ ਕਿ ਇੱਕ ਵਿਸ਼ੇਸ਼ ਭਾਗ ਹੈ
ਅਧਿਆਇ 4. ਵਿਕਾਸ ਵਾਤਾਵਰਣ ਸਥਾਪਤ ਕਰਨਾ 53

ਚਿੱਤਰ 4.15. File ਬਲਿੰਕ ਪ੍ਰੋਜੈਕਟ ਦੀ ਡਾਇਰੈਕਟਰੀ ਬਣਤਰ

ਸੈਕਸ਼ਨ 4.3.2 ਵਿੱਚ ਦੱਸੇ ਅਨੁਸਾਰ ਸ਼ਾਮਲ ਕੀਤਾ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ। ਮੁੱਖ ਡਾਇਰੈਕਟਰੀ ਦੀ ਵਰਤੋਂ ਮੁੱਖ ਤੌਰ 'ਤੇ app_main() ਫੰਕਸ਼ਨ ਨੂੰ ਲਾਗੂ ਕਰਨ ਲਈ ਸਟੋਰ ਕਰਨ ਲਈ ਕੀਤੀ ਜਾਂਦੀ ਹੈ, ਜੋ ਕਿ ਉਪਭੋਗਤਾ ਪ੍ਰੋਗਰਾਮ ਲਈ ਐਂਟਰੀ ਪੁਆਇੰਟ ਹੈ। ਬਲਿੰਕ ਪ੍ਰੋਜੈਕਟ ਵਿੱਚ ਕੰਪੋਨੈਂਟ ਡਾਇਰੈਕਟਰੀ ਸ਼ਾਮਲ ਨਹੀਂ ਹੈ, ਕਿਉਂਕਿ ਇਹ ਸਾਬਕਾample ਨੂੰ ਸਿਰਫ਼ ਉਹਨਾਂ ਭਾਗਾਂ ਦੀ ਵਰਤੋਂ ਕਰਨ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ ਜੋ ESP-IDF ਨਾਲ ਆਉਂਦੇ ਹਨ ਅਤੇ ਵਾਧੂ ਭਾਗਾਂ ਦੀ ਲੋੜ ਨਹੀਂ ਹੁੰਦੀ ਹੈ। ਬਲਿੰਕ ਪ੍ਰੋਜੈਕਟ ਵਿੱਚ ਸ਼ਾਮਲ CMakeLists.txt ਦੀ ਵਰਤੋਂ ਸੰਕਲਨ ਪ੍ਰਕਿਰਿਆ ਦੀ ਅਗਵਾਈ ਕਰਨ ਲਈ ਕੀਤੀ ਜਾਂਦੀ ਹੈ, ਜਦੋਂ ਕਿ Kconfig.projbuild ਦੀ ਵਰਤੋਂ ਇਸ ਸਾਬਕਾ ਲਈ ਸੰਰਚਨਾ ਆਈਟਮਾਂ ਨੂੰ ਜੋੜਨ ਲਈ ਕੀਤੀ ਜਾਂਦੀ ਹੈampmenuconfig ਵਿੱਚ le ਪ੍ਰੋਗਰਾਮ. ਹੋਰ ਬੇਲੋੜੀ files ਕੋਡ ਦੇ ਸੰਕਲਨ ਨੂੰ ਪ੍ਰਭਾਵਤ ਨਹੀਂ ਕਰੇਗਾ, ਇਸਲਈ ਉਹਨਾਂ ਦੀ ਇੱਥੇ ਚਰਚਾ ਨਹੀਂ ਕੀਤੀ ਜਾਵੇਗੀ। ਬਲਿੰਕ ਪ੍ਰੋਜੈਕਟ ਦੀ ਵਿਸਤ੍ਰਿਤ ਜਾਣ-ਪਛਾਣ files ਹੇਠ ਲਿਖੇ ਅਨੁਸਾਰ ਹੈ।

1. /*blink.c ਵਿੱਚ ਹੇਠਾਂ ਦਿੱਤਾ ਹੈਡਰ ਸ਼ਾਮਲ ਹੈ files*/

2. #ਸ਼ਾਮਲ

//ਸਟੈਂਡਰਡ C ਲਾਇਬ੍ਰੇਰੀ ਹੈਡਰ 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ਫੰਕਸ਼ਨ ਘੋਸ਼ਣਾ ਦੇ ਅਨੁਸਾਰੀ-

tions. ESP-IDF ਆਮ ਤੌਰ 'ਤੇ ਸਟੈਂਡਰਡ ਲਾਇਬ੍ਰੇਰੀ ਹੈਡਰ ਨੂੰ ਸ਼ਾਮਲ ਕਰਨ ਦੇ ਕ੍ਰਮ ਦੀ ਪਾਲਣਾ ਕਰਦਾ ਹੈ files, FreeR-

TOS ਸਿਰਲੇਖ files, ਡਰਾਈਵਰ ਹੈਡਰ files, ਹੋਰ ਕੰਪੋਨੈਂਟ ਹੈਡਰ files, ਅਤੇ ਪ੍ਰੋਜੈਕਟ ਹੈਡਰ files.

ਜਿਸ ਕ੍ਰਮ ਵਿੱਚ ਹੈਡਰ files ਸ਼ਾਮਲ ਕੀਤੇ ਗਏ ਹਨ ਅੰਤਮ ਸੰਕਲਨ ਨਤੀਜੇ ਨੂੰ ਪ੍ਰਭਾਵਤ ਕਰ ਸਕਦੇ ਹਨ, ਇਸ ਲਈ ਕੋਸ਼ਿਸ਼ ਕਰੋ

ਡਿਫਾਲਟ ਨਿਯਮਾਂ ਦੀ ਪਾਲਣਾ ਕਰੋ। ਇਹ ਨੋਟ ਕੀਤਾ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ ਕਿ sdkconfig.h ਸਵੈਚਲਿਤ ਤੌਰ 'ਤੇ ਤਿਆਰ ਹੁੰਦਾ ਹੈ

kconfig ਦੁਆਰਾ ਅਤੇ ਸਿਰਫ idf.py ਮੇਨੂconfig ਕਮਾਂਡ ਦੁਆਰਾ ਸੰਰਚਿਤ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ।

ਇਸ ਸਿਰਲੇਖ ਦੀ ਸਿੱਧੀ ਸੋਧ file ਨੂੰ ਓਵਰਰਾਈਟ ਕੀਤਾ ਜਾਵੇਗਾ।

1. /*ਤੁਸੀਂ idf.py menuconfig ਵਿੱਚ LED ਨਾਲ ਸੰਬੰਧਿਤ GPIO ਦੀ ਚੋਣ ਕਰ ਸਕਦੇ ਹੋ, ਅਤੇ menuconfig ਦਾ ਸੋਧ ਨਤੀਜਾ ਇਹ ਹੈ ਕਿ CONFIG_BLINK ਦਾ ਮੁੱਲ

_GPIO ਬਦਲਿਆ ਜਾਵੇਗਾ। ਤੁਸੀਂ ਸਿੱਧੇ ਤੌਰ 'ਤੇ ਮੈਕਰੋ ਪਰਿਭਾਸ਼ਾ ਨੂੰ ਵੀ ਸੋਧ ਸਕਦੇ ਹੋ

ਇੱਥੇ, ਅਤੇ CONFIG_BLINK_GPIO ਨੂੰ ਇੱਕ ਨਿਸ਼ਚਿਤ ਮੁੱਲ ਵਿੱਚ ਬਦਲੋ।*/ 2. #BLINK_GPIO CONFIG_BLINK_GPIO ਨੂੰ ਪਰਿਭਾਸ਼ਤ ਕਰੋ

3. void app_main(void)

4. {

5.

/*IO ਨੂੰ GPIO ਡਿਫੌਲਟ ਫੰਕਸ਼ਨ ਵਜੋਂ ਕੌਂਫਿਗਰ ਕਰੋ, ਪੁੱਲ-ਅੱਪ ਮੋਡ ਨੂੰ ਸਮਰੱਥ ਬਣਾਓ, ਅਤੇ

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("LEDn ਬੰਦ ਕਰਨਾ"); /*LED ਬੰਦ ਕਰੋ (ਆਉਟਪੁੱਟ ਲੋਅ ਲੈਵਲ)*/ gpio_set_level(BLINK_GPIO, 0); /*ਦੇਰੀ (1000 ms)*/ vTaskDelay(1000 / portTICK_PERIOD_MS); printf ("LEDn ਚਾਲੂ ਕਰਨਾ"); /*LED ਚਾਲੂ ਕਰੋ (ਆਉਟਪੁੱਟ ਉੱਚ ਪੱਧਰ)*/ gpio_set_level(BLINK_GPIO, 1); vTaskDelay(1000 / portTICK_PERIOD_MS); }

ਬਲਿੰਕ ਐਕਸ ਵਿੱਚ app_main() ਫੰਕਸ਼ਨample ਪ੍ਰੋਗਰਾਮ ਉਪਭੋਗਤਾ ਪ੍ਰੋਗਰਾਮਾਂ ਲਈ ਐਂਟਰੀ ਪੁਆਇੰਟ ਵਜੋਂ ਕੰਮ ਕਰਦਾ ਹੈ। ਇਹ ਇੱਕ ਸਧਾਰਨ ਫੰਕਸ਼ਨ ਹੈ ਜਿਸ ਵਿੱਚ ਕੋਈ ਮਾਪਦੰਡ ਅਤੇ ਕੋਈ ਵਾਪਸੀ ਮੁੱਲ ਨਹੀਂ ਹੈ। ਇਸ ਫੰਕਸ਼ਨ ਨੂੰ ਸਿਸਟਮ ਦੁਆਰਾ ਸ਼ੁਰੂਆਤੀਕਰਣ ਪੂਰਾ ਕਰਨ ਤੋਂ ਬਾਅਦ ਬੁਲਾਇਆ ਜਾਂਦਾ ਹੈ, ਜਿਸ ਵਿੱਚ ਲੌਗ ਸੀਰੀਅਲ ਪੋਰਟ ਨੂੰ ਸ਼ੁਰੂ ਕਰਨਾ, ਸਿੰਗਲ/ਡੁਅਲ ਕੋਰ ਕੌਂਫਿਗਰ ਕਰਨਾ, ਅਤੇ ਵਾਚਡੌਗ ਨੂੰ ਕੌਂਫਿਗਰ ਕਰਨਾ ਸ਼ਾਮਲ ਹੁੰਦਾ ਹੈ।

app_main() ਫੰਕਸ਼ਨ ਮੇਨ ਨਾਮ ਦੇ ਕੰਮ ਦੇ ਸੰਦਰਭ ਵਿੱਚ ਚੱਲਦਾ ਹੈ। ਸਟੈਕ ਸਾਈਜ਼ ਅਤੇ ਇਸ ਕੰਮ ਦੀ ਤਰਜੀਹ ਨੂੰ ਮੇਨੂਕੌਫਿਗ ਕੰਪੋਨੈਂਟਕਨਫਿਗ ਕਾਮਨ ESP-ਸੰਬੰਧਿਤ ਵਿੱਚ ਐਡਜਸਟ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ।

LED ਨੂੰ ਬਲਿੰਕ ਕਰਨ ਵਰਗੇ ਸਧਾਰਨ ਕੰਮਾਂ ਲਈ, ਸਾਰੇ ਲੋੜੀਂਦੇ ਕੋਡ ਨੂੰ ਸਿੱਧੇ app_main() ਫੰਕਸ਼ਨ ਵਿੱਚ ਲਾਗੂ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। ਇਸ ਵਿੱਚ ਆਮ ਤੌਰ 'ਤੇ LED ਦੇ ਅਨੁਸਾਰੀ GPIO ਨੂੰ ਸ਼ੁਰੂ ਕਰਨਾ ਅਤੇ LED ਨੂੰ ਚਾਲੂ ਅਤੇ ਬੰਦ ਕਰਨ ਲਈ ਕੁਝ ਸਮੇਂ (1) ਲੂਪ ਦੀ ਵਰਤੋਂ ਕਰਨਾ ਸ਼ਾਮਲ ਹੁੰਦਾ ਹੈ। ਵਿਕਲਪਕ ਤੌਰ 'ਤੇ, ਤੁਸੀਂ ਇੱਕ ਨਵਾਂ ਕੰਮ ਬਣਾਉਣ ਲਈ FreeRTOS API ਦੀ ਵਰਤੋਂ ਕਰ ਸਕਦੇ ਹੋ ਜੋ LED ਬਲਿੰਕਿੰਗ ਨੂੰ ਸੰਭਾਲਦਾ ਹੈ। ਇੱਕ ਵਾਰ ਨਵਾਂ ਟਾਸਕ ਸਫਲਤਾਪੂਰਵਕ ਬਣ ਗਿਆ ਹੈ, ਤੁਸੀਂ 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 ਵਿੱਚ ਜੋੜਿਆ ਗਿਆ ਹੈ, ਅਤੇ ਸਰੋਤ files ਨੂੰ SRCS ਵਿੱਚ ਜੋੜਿਆ ਜਾਵੇਗਾ। ਉਸੇ ਸਮੇਂ, ".", ਜੋ ਉਸ ਮਾਰਗ ਨੂੰ ਦਰਸਾਉਂਦਾ ਹੈ ਜਿੱਥੇ CMakeLists.txt ਸਥਿਤ ਹੈ, ਨੂੰ INCLUDE_DIRS ਵਿੱਚ ਸਿਰਲੇਖ ਲਈ ਖੋਜ ਡਾਇਰੈਕਟਰੀਆਂ ਵਜੋਂ ਜੋੜਿਆ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ। fileਐੱਸ. CMakeLists.txt ਦੀ ਸਮੱਗਰੀ ਇਸ ਤਰ੍ਹਾਂ ਹੈ:
1. #v3.5 ਨੂੰ ਮੌਜੂਦਾ ਪ੍ਰੋਜੈਕਟ ਦੁਆਰਾ ਸਮਰਥਿਤ ਸਭ ਤੋਂ ਪੁਰਾਣੇ CMake ਸੰਸਕਰਣ ਦੇ ਤੌਰ ਤੇ ਨਿਰਧਾਰਤ ਕਰੋ 2. ਸੰਕਲਨ ਜਾਰੀ ਰਹਿਣ ਤੋਂ ਪਹਿਲਾਂ #v3.5 ਤੋਂ ਘੱਟ ਸੰਸਕਰਣਾਂ ਨੂੰ ਅਪਗ੍ਰੇਡ ਕੀਤਾ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ 3. cmake_minimum_required(VERSION 3.5) 4. #ESP ਦੀ ਡਿਫੌਲਟ CMake ਸੰਰਚਨਾ ਸ਼ਾਮਲ ਕਰੋ -IDF ਸੰਕਲਨ ਸਿਸਟਮ

ਅਧਿਆਇ 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 ਦੁਆਰਾ ਪ੍ਰਦਾਨ ਕੀਤਾ ਗਿਆ। ਇਹ con ਕਰਨ ਲਈ ਵਰਤਿਆ ਗਿਆ ਹੈ

ਦਸਤਾਵੇਜ਼ / ਸਰੋਤ

Espressif ਸਿਸਟਮ ESP32-C3 ਵਾਇਰਲੈੱਸ ਐਡਵੈਂਚਰ [pdf] ਯੂਜ਼ਰ ਗਾਈਡ
ESP32-C3 ਵਾਇਰਲੈੱਸ ਐਡਵੈਂਚਰ, ESP32-C3, ਵਾਇਰਲੈੱਸ ਐਡਵੈਂਚਰ, ਐਡਵੈਂਚਰ

ਹਵਾਲੇ

ਇੱਕ ਟਿੱਪਣੀ ਛੱਡੋ

ਤੁਹਾਡਾ ਈਮੇਲ ਪਤਾ ਪ੍ਰਕਾਸ਼ਿਤ ਨਹੀਂ ਕੀਤਾ ਜਾਵੇਗਾ। ਲੋੜੀਂਦੇ ਖੇਤਰਾਂ ਨੂੰ ਚਿੰਨ੍ਹਿਤ ਕੀਤਾ ਗਿਆ ਹੈ *