12-16-2013 09:19 AM
I want to set the flag YouOnlyLiveTwice on my RT to TRUE to prevent the RT from automatically rebooting.
(http://digital.ni.com/public.nsf/allkb/41E8E448E2547CEF86256CFD00678340)
What I don't want to do is remember to change this flag manually whenever we format an RT. Is there a way that this flag can be added to the build definition for my RT executable?
12-16-2013 02:02 PM
@jtay wrote:
I want to set the flag YouOnlyLiveTwice on my RT to TRUE to prevent the RT from automatically rebooting.
I think you're thinking of another flag.
YouOnlyLiveTwice was a flag we originally added to support some Compact Fieldpoint systems that were installed in a remote ice station in Alaska. Normally when a system crashes during boot (or shortly after boot), the system will reboot but "remember" that it crashed during startup, and it will only allow the system to crash twice-in-a-row during this period before dropping into Safe Mode (so that bad software, bad hardware, or otherwise won't make the target unreachable or leave in an infinite reboot state). Well, these devices up in Alaska were mostly immune to the cold, but sometimes the temperatures would drop so low the hardware wouldn't work correctly; this caused them to reboot, and when they rebooted they would crash on reboot (because the hardware didn't work correctly in those temps). The "fix" was to just allow the systems to keep crashing and NOT drop into Safe Mode after the second crash. Thus we named the token, "YouOnlyLiveTwice", and it's actually set to TRUE by default. If you want to allow the controller to just keep rebooting and crashing - as we did in the case of the Alaska Ice Station - then you'd set the YouOnlyLiveTwice token to FALSE.
-Danny
12-16-2013 02:31 PM - edited 12-16-2013 02:34 PM
@jtay wrote:
What I don't want to do is remember to change this flag manually whenever we format an RT. Is there a way that this flag can be added to the build definition for my RT executable?
Oh, right, I forgot to answer the second part of your question.
No, there's no way to set a token within the Build Specification for an RT Executable, everything that I can think of would be a post type process.
<MERGEINI>
[SECTION NAME]
TOKEN=VALUE
</MERGEINI>
-Danny
12-16-2013 02:51 PM
I had no idea that YouOnlyLiveTwice was so situation specific. My goal here is to not allow my RT to reboot itself at all. Depending on what what state the I/O is in and what is happening in the test cell at the time, automatic reboots could be dangerous. I'm still not too sure what even causes an automatic reboot. I've seen RT crashes before, but only rarely have I seen an RT reboot itself. I had a tough time finding info on it, and YouOnlyLiveTwice was the only promising bit of info I found.
12-16-2013 03:18 PM
@jtay wrote:
My goal here is to not allow my RT to reboot itself at all.
Oh, I see. An RT system is not "normally" supposed to reboot itself - at least, not unless you specifically programmatically tell it to reboot. The system will reboot under these circumstances:
You cannot prevent 2-6 from rebooting the controller, but you can prevent 1 from rebooting the controller if you put a password on the controller via the web server (or via MAX).
-Danny