Wondering why board does not recover (i.e. reboot and come back up running from reset vector) after an MbedOS error such as shown below. We’ve had other errors (out of stack space) with same result. It seems MBED generates an error such as below, then board requires hard power cycle to begin running again. Is this to be expected with MBED OS? Is MBED hung in some loop? Perhaps we have a bug (good chance), but I am accustomed to a reboot, board comes back up running, after such a fatal error, on other RTOS I have worked on. Maybe there is some MBED parameters, settings we need to configure to allow for auto reboot, come back up running? Thanks.
yes, this is standard Mbed OS behavior. The Os will save data in specific part of memory when an exception occured, then restart it self. After restart it will print out the error, and stay in a loop with specific led blinking patern.
I won’t say what is correct or best, but for me the behavior is OK. I do not want release a program with auto crash restart I want to identify and solve the issue. But it depends on situation and I can imagine it can be like temporary workaround.
Yes of course it is possible. Please be so kind and take a look to post below.
Thanks everyone for your replies. The issue is, we do not want to deploy a unit in field that can boot due to MBED OS error and hang. The unit is then bricked, must be replaced in field. While we do not expect to have such issues go to field, the hope is we find and fix all such issues before deployment, but is very undesirable to have a unit hung in field and results in a truck roll to replace unit in field.
Simply saying, definition of this macro can be found in ProjectName\BUILD\TargetName\mbed_config.h file, but can not be changed here because it is auto generated by build system.
Macro like this, with MBED_CONF_, have to be changed via mbed_lib.json file. According to part PLATFORM its location will be mbed-os\platform\mbed_lib.json and according to its name ERROR_FILENAME_CAPTURE_ENABLED it will be the the settings on line 54.
These settings can be overridden with mbed_app.json file. If you do not already have it in your project, then create same file with this name in root folder of your project and place necassary settings inside.