Flexy Basic Script

Something has changed in the firmware of the Flexy units that is causing a reboot cycle when there is an error in the basic script.

Currently the basic script is set to auto run when Flexy is started up.

In the past when there was an error in the basic script the script would just report the error and move on. Now if there is an error in the basic script the Flexy will log a watchdog scp error and then reboot the unit. This will occur non stop until the script is set to not auto run then the unit will reboot and stay running.

The latest example of this a unit a tag name that was renamed and the it was also referenced in the basic script. Since the tag name was different than what was in the script when the unit was rebooted it got stuck in the reboot cycle.

There needs to be a better way of handling this.

Hello Ted,

can you provide the back up with support files?

Specific errors trigger the watchdog, and if it occurs multiple times then a reboot will occur. What is the error that is occuring?

The log files did not show an error message just the watchdog scp.

Attached is a backupMOVED TO STAFF NOTE (264 KB)

Hello Ted,

I did take a look at the event logs and scripting, I do see your Label “Error” is being tiggered, but i don’t see the logio event that it corresponds to. I do see many Modbus IO errors in the event logs.

I didn’t see a specific LogIO event that corresponds the error, but i do believe it is tied to your modbus side.

Are you suggesting that the LogIO error caused the reboot loop?

When I changed the name of the tag in the basic script then there were no more reboot loops.

What about the handling of the errors so the reboot loop of death does not happen?

image001.jpg

image002.jpg

Hello,

What tag did you rename? There are several tags, and functions that are occuring on the device. I

I would have to take a look at the Tag to verify where it is being referenced in the script that could cause the reboot loop.
,

IT was one of the tags that is referenced in the onchange statements in the beginning of the script.

image001.jpg

image002.jpg

Hello,

I looked over the device, and logs. There is an error being flagged in the script that corresponds to it rebooting. As it doesn’t show which where the error is occuring, i would suggest you reviewing the script to ensure there are not issues.

Given the size and complexity of the script, it would be difficult for us to determine where the fault is coming from without have a full scope of the project.

I would check you code, and run tests to see which portion is causing the reboots.

I have already determined what caused the reboots as was posted in my last reply.

What about the handling of the errors so the reboot loop of death does not happen?

Please review my first post and I will wait for some suggestions.

Hello,

Unfortunately, there is no way to disable the Watchdog feature, or the device rebooting once the watchdog is triggered.

The best way to work around it, is to test as you build. Ensure to check for errors, and code the may conflict with the core functionality of the unit.

I will escalate the issue to our development to see if there is a way that reboots can be better tracked, and to determine if there is a bug involved