Forums - Issue with AWS on board demo

1 post / 0 new
Issue with AWS on board demo
ashariff
Join Date: 8 Jan 24
Posts: 3
Posted: Tue, 2024-01-30 22:23

Hi, All

I am trying to run the demo example Onboard_demo with AWS on my QCA4020 dev kit, I am following the "80-YA121-140_REV_E_QCA402X__CDB2X__Development_Kit_User_Guide.pdf" section 5 Onboard demo with cloud mode. I successfully downloaded the    AWS SDK and followed the steps as it is intsructed by the guide.

When I try to build the application I got some errors while linking 

 
D:\HUBV02\SDK\qca4020-or-3-6\target\quartz\demo\Onboard_demo\build\gcc>build.bar prepare 4020 cdb
'build.bar' is not recognized as an internal or external command,
operable program or batch file.
 
D:\HUBV02\SDK\qca4020-or-3-6\target\quartz\demo\Onboard_demo\build\gcc>ecosystem.bat 1
ecosystem set to awsiot
 
D:\HUBV02\SDK\qca4020-or-3-6\target\quartz\demo\Onboard_demo\build\gcc>build.bat t 4020 2 1 1 cdb
Python version:Python 3.8.0
awsiot
 
Selected Radio Is ZIGBEE
Selected Zigbee mode is COORDINATOR
 
SECBOOT: false
SECBOOT_XML: false
CDB
****************************************************************************
                     Building Onboard AWS demo for v2 Chipset
                     RTOS              threadx
                     CHIPSET VARIANT   qca4020
                     Onboard Via       WIFI
                     Battery Operated  0
                     Ecosystem         awsiot
*****************************************************************************
"CFG_FEATURE_SEPARATED_M4_SBL=true"
"CFG_FEATURE_SBL_IMAGE_TYPE=sbl_merged"
"Building for AWS"
Exporting Device config files....
GENERATING DEVCFG....
Building sbrk.c
Building onboard.c
Building utils\util.c
Building utils\led_utils.c
Building utils\wifi_util.c
Building utils\net_util.c
Building utils\ble_util.c
Building ble\ble_zigbee_service.c
Building ble\ble_thread_service.c
Building onboard_via_wifi.c
Building qcli\qcli.c
Building qcli\qcli_util.c
Building qcli\pal.c
Building lp\lp_demo.c
Building lp\fom_lp_test.c
Building lp\som_lp_test.c
Building lp\mom_lp_test.c
Building thread\thread_joiner.c
Building thread\thread_util.c
Building thread\thread_udp_joiner.c
Building thread\thread_border_router.c
Building thread\thread_udp_border_router.c
Building thread\thread_router.c
Building zigbee\zigbee_util.c
Building zigbee\zigbee_coordinator.c
Building zigbee\zigbee_router.c
Building zigbee\zigbee_enddevice.c
Building zigbee\zcl_util.c
Building zigbee\clusters\zcl_alarms_demo.c
Building zigbee\clusters\zcl_basic_demo.c
Building zigbee\clusters\zcl_colorcontrol_demo.c
Building zigbee\clusters\zcl_custom_demo.c
Building zigbee\clusters\zcl_groups_demo.c
Building zigbee\clusters\zcl_identify_demo.c
Building zigbee\clusters\zcl_levelcontrol_demo.c
Building zigbee\clusters\zcl_onoff_demo.c
Building zigbee\clusters\zcl_ota_demo.c
Building zigbee\clusters\zcl_scenes_demo.c
Building zigbee\clusters\zcl_time_demo.c
Building zigbee\clusters\zcl_touchlink_demo.c
Building zigbee\clusters\zcl_powerconfig_demo.c
Building zigbee\clusters\zcl_devicetemp_demo.c
Building sensors\sensors.c
Building sensors\pir_int.c
Building export\platform_oem.c
Building export\platform_oem_som.c
Building export\platform_oem_mom.c
Building export\DALConfig_devcfg.c
Building export\DALConfig_fom.c
Building export\devcfg_devcfg_data.c
Building export\devcfg_fom_data.c
Building export\UsrEDL.c
Building ecosystem\aws\aws_run.c
Building sensors\sensor_json.c
Building ..\..\..\..\quartz\ecosystem\aws\port\aws_timer.c
Building ..\..\..\..\quartz\ecosystem\\aws\port\network_qca4020_wrapper.c
Building ..\..\..\..\thirdparty\aws\awsiot\external_libs\jsmn\jsmn.c
Building ..\..\..\..\thirdparty\aws\awsiot\src\aws_iot_json_utils.c
..\..\src\..\..\..\..\thirdparty\aws\awsiot\src\aws_iot_json_utils.c: In function 'parseUnsignedInteger32Value':
..\..\src\..\..\..\..\thirdparty\aws\awsiot\src\aws_iot_json_utils.c:54:93: warning: format '%u' expects argument of type 'unsigned int *', but argument 3 has type 'uint32_t * {aka long unsigned int *}' [-Wformat=]
  if(('-' == (char) (jsonString[token->start])) || (1 != sscanf(jsonString + token->start, "%u", i))) {
                                                                                             ^
..\..\src\..\..\..\..\thirdparty\aws\awsiot\src\aws_iot_json_utils.c: In function 'parseInteger32Value':
..\..\src\..\..\..\..\thirdparty\aws\awsiot\src\aws_iot_json_utils.c:96:46: warning: format '%i' expects argument of type 'int *', but argument 3 has type 'int32_t * {aka long int *}' [-Wformat=]
  if(1 != sscanf(jsonString + token->start, "%i", i)) {
                                              ^
Building ..\..\..\..\thirdparty\aws\awsiot\src\aws_iot_mqtt_client.c
Building ..\..\..\..\thirdparty\aws\awsiot\src\aws_iot_mqtt_client_common_internal.c
Building ..\..\..\..\thirdparty\aws\awsiot\src\aws_iot_mqtt_client_connect.c
Building ..\..\..\..\thirdparty\aws\awsiot\src\aws_iot_mqtt_client_publish.c
Building ..\..\..\..\thirdparty\aws\awsiot\src\aws_iot_mqtt_client_subscribe.c
Building ..\..\..\..\thirdparty\aws\awsiot\src\aws_iot_mqtt_client_unsubscribe.c
Building ..\..\..\..\thirdparty\aws\awsiot\src\aws_iot_mqtt_client_yield.c
Building ..\..\..\..\thirdparty\aws\awsiot\src\aws_iot_shadow.c
Building ..\..\..\..\thirdparty\aws\awsiot\src\aws_iot_shadow_actions.c
Building ..\..\..\..\thirdparty\aws\awsiot\src\aws_iot_shadow_records.c
Building ..\..\..\..\thirdparty\aws\awsiot\src\aws_iot_shadow_json.c
..\..\src\..\..\..\..\thirdparty\aws\awsiot\src\aws_iot_shadow_json.c: In function 'convertDataToString':
..\..\src\..\..\..\..\thirdparty\aws\awsiot\src\aws_iot_shadow_json.c:347:67: warning: format '%i' expects argument of type 'int', but argument 4 has type 'int32_t {aka long int}' [-Wformat=]
   snPrintfReturn = snprintf(pStringBuffer, maxSizoStringBuffer, "%i,", *(int32_t *) (pData));
                                                                   ^
..\..\src\..\..\..\..\thirdparty\aws\awsiot\src\aws_iot_shadow_json.c:353:67: warning: format '%u' expects argument of type 'unsigned int', but argument 4 has type 'uint32_t {aka long unsigned int}' [-Wformat=]
   snPrintfReturn = snprintf(pStringBuffer, maxSizoStringBuffer, "%u,", *(uint32_t *) (pData));
                                                                   ^
Attempting to convert windows paths: output\LinkerLibs.txt
Generating Linker Scripts...
Linking...
arm-none-eabi-ld: cannot find -lc_nano
arm-none-eabi-ld: cannot find -lnosys
arm-none-eabi-ld: cannot find -lgcc
Usage: python diagMsgCompact.py <Output ELF> <Output string database File> <Input ELF> <input pickle file> <CompactType: Intermediate or Final>
 
diagMsgCompact.py: error: Specified ELF file does not exist.
Hashing...
Traceback (most recent call last):
  File "D:\HUBV02\SDK\qca4020-or-3-6\target\build\scripts\mbn_tools.py", line 2180, in OPEN
    fp = open(file_name, mode)
FileNotFoundError: [Errno 2] No such file or directory: 'output\\Quartz.elf'
 
During handling of the above exception, another exception occurred:
 
Traceback (most recent call last):
  File "..\..\..\..\..\build\scripts\createxbl.py", line 696, in <module>
    main()
  File "..\..\..\..\..\build\scripts\createxbl.py", line 210, in main
    merge_elfs([],
  File "..\..\..\..\..\build\scripts\createxbl.py", line 281, in merge_elfs
    mbn_tools.preprocess_elf_file(elf_in_file_name1)
  File "D:\HUBV02\SDK\qca4020-or-3-6\target\build\scripts\mbn_tools.py", line 1980, in preprocess_elf_file
    elf_fp = OPEN(elf_file_name, 'rb')
  File "D:\HUBV02\SDK\qca4020-or-3-6\target\build\scripts\mbn_tools.py", line 2182, in OPEN
    raise RuntimeError("The file could not be opened: " + file_name)
RuntimeError: The file could not be opened: output\Quartz.elf
Merging...
The system cannot find the file specified.
mergeAppSbl.py Failed, output\Quartz_HASHED.elf.org does not exist
 
Please suggest me if I am missing any steps ?
Any help is appreciated.
Thanks
 

 

  • Up0
  • Down0

Opinions expressed in the content posted here are the personal opinions of the original authors, and do not necessarily reflect those of Qualcomm Incorporated or its subsidiaries (“Qualcomm”). The content is provided for informational purposes only and is not meant to be an endorsement or representation by Qualcomm or any other party. This site may also provide links or references to non-Qualcomm sites and resources. Qualcomm makes no representations, warranties, or other commitments whatsoever about any non-Qualcomm sites or third-party resources that may be referenced, accessible from, or linked to this site.