Namaste Forum Member,
I’ve downloaded the FreeRTOS Device Software from the below Amazon AWS link after logging into my AWS account.
Details of the downloaded FreeRTOS Device Software are as below:
- Configuration: ConnecttoAWSIoT-ESP32-DevKitC
- Hardware platform: ESP32-DevKitC
- FreeRTOS Version: 202002.00
I could compile and build the aws_demos project and generate the aws_demos.bin file. The output of the ninja command is shared below.
========== Log starts ==========
0/2 Re-checking globbed directories…
31/820 Building C object CMakeFiles/afr_ota.dir/libraries/freertos_plus/aws/ota/src/mqtt/aws_iot_ota_mqtt.c.obj
In file included from …/libraries/freertos_plus/aws/ota/src/mqtt/aws_iot_ota_mqtt.c:38:0:
…/libraries/freertos_plus/aws/ota/src/mqtt/aws_iot_ota_mqtt.c: In function ‘prvSendCallbackEvent’:
…/libraries/freertos_plus/aws/ota/include/aws_iot_ota_agent.h:56:65: warning: unused variable ‘OTA_METHOD_NAME’ https://forums.aws.amazon.com/
#define DEFINE_OTA_METHOD_NAME( name ) static const char OTA_METHOD_NAME = name;
… Skipping the complete build log
51/55 Linking C static library esp-idf\bootloader_support\libbootloader_support.a
52/55 Generating idf_component_bootloader_support.sections_info
53/55 Building C object CMakeFiles/bootloader.elf.dir/dummy_main_src.c.obj
54/55 Linking C executable bootloader.elf
55/55 Generating bootloader.bin
626/820 Building C object esp-idf/nimble/CMakeFiles/idf_component_nimble.dir/nimble/nimble/host/src/ble_sm.c.obj
…/vendors/espressif/esp-idf/components/nimble/nimble/nimble/host/src/ble_sm.c: In function ‘ble_sm_pairing_req’:
…/vendors/espressif/esp-idf/components/nimble/nimble/nimble/host/src/ble_sm.c:831:9: warning: unused variable ‘rc’ https://forums.aws.amazon.com/
815/820 Building C object CMakeFiles/aws_demos.dir/demos/ble/aws_ble_gatt_server_demo.c.obj
…/demos/ble/aws_ble_gatt_server_demo.c:275:19: warning: ‘vGattDemoSvcHook’ defined but not used https://forums.aws.amazon.com/
static BaseType_t vGattDemoSvcHook( void )
820/820 Generating aws_demos.bin
========== Log ends ==========
The aws_demos project is a project created for demonstration of all the AWS features supported; libraries of the like BLE Management, MQTT, OTA Updates, etc.
For creating a new project, do I need to create another project folder (Example: “myProject01”) in the same folder where the “aws_demos” folder resides i.e., the “…\FreeRTOS\vendors\espressif\boards\esp32” folder? In this case, there would be a lot many CMakeLists.txt files (inside multiple folders of the parent “FreeRTOS” folder), inside which I need to make “file-path” changes to point to the “myProject01” folder instead of the “aws_demos” folder. Is this correct or is there any better way for compiling and building a new project?
How do I get project specific compilation and build, considering multiple projects inside the “…\FreeRTOS\vendors\espressif\boards\esp32” folder. For example, there could be multiple projects inside the below esp32 folder, as below.
a) …\FreeRTOS\vendors\espressif\boards\esp32\aws_demos - Existing demo project
b) …\FreeRTOS\vendors\espressif\boards\esp32\myProject01 - My first application project
c) …\FreeRTOS\vendors\espressif\boards\esp32\myProject02 - My second application project
d) …\FreeRTOS\vendors\espressif\boards\esp32\myProject03 - My third application project
For example, I might need to compile “myProject01” and “myProject02” projects separately or, only one of them.
Does the current Amazon FreeRTOS and ESP32 framework/ architecture mandate to create new projects inside the below path?
Thanks | Regards,