Boschxdkcloudconnectivity error
Antwort
21.11.18 00:28

Hi,

I have successfully run Boschxdkcloudconnedtivity example in my xdk device and got live data from Bosch ioT cloud via WPA enterprise wifi (Workbench 3.4). However, I got return code during the start up time as below:

Package ID: 153    Module ID: 20    Severity code: 3    Error code: 97
 

How can I interprete these code? Or know where the list of code is?

I left the xdk running overnight and when I came back in next morning, I found that red and yellow light were blinking, xdk was in the bootloader mode and not connected to Bosch cloud.

Do you know what was happening?

Thank you,

0 (0 Stimmen)
RE: Boschxdkcloudconnectivity error
Antwort
22.11.18 11:02 als Antwort auf Kim Dang.
Hello Kim,

congratulations on your success with the connection to the IoT Cloud using enterprise Wi-Fi.

The Package ID 153 is a good indicator for the location where to look at. You can find a list of all used Package IDs in the following path: /SDK/xdk110/Common/source/SystemStartup.c .
In this case, "XDK110 Application" is a indication to check the XdkCommonInfo.h , which is located at /SDK/xdk110/Common/include/ .

The Module IDs, in your case 20 can be found within enum XDK_Common_ModuleID_E , which lists all the Module IDs. Simply hover your mouse cursor over the enumberations, to see the ID.
ID 20 relates to XDK_COMMON_ID_LWM2MOBJECTFIRMWAREUPDATE .

The Error code itself gives also a good hint, which finds itself listed in the enum XDK_Common_Retcode_E , also in within the file XdkCommonInfo.h . In your case, ID 97 belongs to RETCODE_HTTP_CLIENT_INIT_FAILED .
The severity code handling can be found within the file BCDS_Retcode.h and is located at /SDK/xdk110/Platform/Essentials/include/ . The severity error 3 is listed within the enumeration enum Retcode_Severity_E and means RETCODE_SEVERITY_WARNING .

All together leads to the error output that your XDK received a warning within the LWM2M firmware update and failed at initializing.

I assume, it all could be triggered by a connection error, router sided. I could imagine, that the Router resets and receives a new IP adress, therefore the XDK device tries to reconnect and fails to do so, therefore sends himself into Bootloader mode.


Maybe you would like to try the new XDK-Workbench version 3.5.0, which has been released yesterday. The BoschXDKCloudConnectivity out of this XDK-Workbench version received also a fix, which removes the requirement of the end of line character (blank line) within the config.txt file.

Please let me know if this was helpful and feel free to ask if you have further questions.

Kind regards,
Franjo
0 (0 Stimmen)
RE: Boschxdkcloudconnectivity error
Antwort
05.12.18 22:11 als Antwort auf Franjo Stjepandic.

Hi Franjo,

Thank you for your reply. I have tried the WB 3.5 version as you said but XDK still got itself into bootloader mode after a day or so of connection to cloud. I have also checked the WB console during XDK running. It is actually reconnected every now and then showing message "DNS resolved (since xx sec)".

Do you know how to fix this?

Thanks.

 

 

0 (0 Stimmen)
RE: Boschxdkcloudconnectivity error
Antwort
06.12.18 15:41 als Antwort auf Kim Dang.
Hello Kim,

Could you go more into detail about what you mean that the XDK is setting itself into Bootloader mode after a day of connection?

Due to my knowledge, entering the Bootloader mode must always be done manually. As such, I would rather assume that the XDK is restarting. Is that you had in mind by saying that the XDK is going into Bootloader mode?

Kind regards,
Franjo
0 (0 Stimmen)
RE: Boschxdkcloudconnectivity error
Antwort
10.12.18 00:01 als Antwort auf Franjo Stjepandic.

Hi Franjo,

After a day of working, the XDK connection with Bosch cloud was lost. The yellow and red LEDs were blinking at the same time. Then I connected XDK to WB via USB and WB show that it was in bootloader mode, not application mode. If I pressed boot button in the WB, XDK restarted and connected back to cloud.

Do you know what was happening?

Thank you.

 

0 (0 Stimmen)
RE: Boschxdkcloudconnectivity error
Antwort
10.12.18 16:23 als Antwort auf Kim Dang.
Dear Kim,

Thank you for providing further information. Normally a reconnection to the XDK-Workbench always forces the XDK into Bootloader mode. As such, determining the cause about the connection loss to the Bosch IoT cloud would require extra steps like logging errors to the SD-Card.

In normal circumstances, a blinking red LED and the orange LED on or off means that the application flashed on the XDK is invalid and cannot be booted. The described LED behaviour does not seem to match the bootloader indications which you can read up here .

Furthermore, the red and orange LED are used in the BoschXDKCloudConnectivity within the application callback, which is used to display the registration states.

In your case, I assume that the LEDs are switched during the registration succeed and failure and that is causing both LEDs to blink.

Otherwise, a blinking orange LED would indicate in configured test mode, that the orange LED is controlled by the light control Lwm2m object.

To confirm this, I would ask to make a longterm test, while connecting the XDK to your notebook, to be able to determine the cause of the lost control. Alternatively, you could log the SDKs error output onto an SD-Card. Preferably without a hardcoded filename to avoid overwriting if the XDK starts running the code again.

Additionally, I would recommend checking if the XDK has over the day a stable Wi-Fi connection as the code does not contain an actual reconnect if the connection is lost. This might also be a possible cause for your issue.

Please let me know if this was helpful and feel free to ask if you have further questions.

Kind regards,
Franjo
0 (0 Stimmen)