diff --git a/.gitmodules b/.gitmodules index ee1d150..70b94b3 100644 --- a/.gitmodules +++ b/.gitmodules @@ -4,3 +4,6 @@ [submodule "components/esp-aws-iot"] path = components/esp-aws-iot url = https://github.com/espressif/esp-aws-iot.git +[submodule "esp-idf"] + path = esp-idf + url = git@github.com:espressif/esp-idf.git diff --git a/GettingStartedGuide.md b/GettingStartedGuide.md index 68066b9..69c32ef 100644 --- a/GettingStartedGuide.md +++ b/GettingStartedGuide.md @@ -45,6 +45,7 @@ Once completed, one can progress to the [Use Security Features](UseSecurityFeatu - WiFi access point with access to the internet. ### 1.2 Software Requirements +> **NOTE:** For convenience sake, there is an esp-idf v5.1.1 submoduled at the root of the directory, other versions on esp-idf may also be used but does not guarantee full compatibility. - ESP-IDF 4.4.3 or higher to configure, build, and flash the project. To setup for the ESP32-C3, follow Espressif's [Getting Started Guide for the ESP32-C3](https://docs.espressif.com/projects/esp-idf/en/latest/esp32c3/get-started/index.html). - [Python3](https://www.python.org/downloads/) @@ -61,6 +62,7 @@ Once completed, one can progress to the [Use Security Features](UseSecurityFeatu to configure the basic settings (security credentials, the default AWS output format and the default AWS Region) that AWS CLI uses to interact with AWS. (If you don't have an AWS account and user, follow steps 1 and 2 in the AWS IoT Core Setup Guide below before following the Configuration basics for the AWS CLI.) + ## 2 Demo setup ### 2.1 Setup AWS IoT Core @@ -71,6 +73,7 @@ After you have followed the instructions in the AWS IoT Core Setup Guide, you wi ### 2.2 Configure the project with the AWS IoT Thing Name and AWS device Endpoint The demo will connect to the AWS IoT device Endpoint that you configure here. +> Note: remember to set your build target using `idf.py set-target ` 1. From a terminal/command prompt, run `idf.py menuconfig`. This assumes the ESP-IDF environment is exported-- i.e. that export.bat/export.sh, which can be found under the ESP-IDF directory, has been run, or that you are using the ESP-IDF command prompt/terminal. For Visual Studio (VS) Code users who are using the Espressif IDF extension, do ->View->Command Palette->Search for `ESP-IDF: SDK Configuration editor (menuconfig)` and select the command. The `SDK Configuration editor` window should pop up after a moment. (Note: If running menuconfig from within a VS Code command prompt, 'j' and 'k' may have to be used in place of the 'up' and 'down' arrow keys. Alternately, one can use a command prompt/terminal outside of the VS Code editor). @@ -78,7 +81,10 @@ The demo will connect to the AWS IoT device Endpoint that you configure here. 3. Set `Endpoint for MQTT Broker to use` to your **AWS device Endpoint**. 4. Set `Port for MQTT Broker to use` to `8883`. 5. Set `Thing name` to your **Thing Name**. -6. Go back to main menu, Save and Exit. +6. If you are using the `ESP32` chip you may experience buffer overflow, feel free to decrease the task's buffer size of the demo or `coreMQTT-Agent network buffer size` to fit your use case. +7. You may also increase the `Timeout for receiving CONNACK in milliseconds` if you are experiencing timeout issues. +8. Furthermore you may want to use the Amazon's FreeRTOS that can be enabled from `Component config > FreeRTOS > Kernel> Run the Amazon SMP FreeRTOS kernel instead (FEATURE UNDER DEVELOPMENT)` +8. Go back to main menu, Save and Exit. ### 2.3 Provision the ESP32-C3 with the private key, device certificate and CA certificate in Development Mode diff --git a/esp-idf b/esp-idf new file mode 160000 index 0000000..e088c37 --- /dev/null +++ b/esp-idf @@ -0,0 +1 @@ +Subproject commit e088c3766ba440e72268b458a68f27b6e7d63986