Application failing to boot after system reboot

patrik
2024-11-20
2024-11-21
  • patrik - 2024-11-20

    Hi!

    I'm having issues with my applications failing to boot up after the hardware getting restarted by the customer.
    I've attached a picture of the related log lines in the PLC log. I'm running this on a windows server.
    The version I'm currently running is CoDeSys win V3 x64 3.5.19.50

    Is there any way to get more information why it's failing to boot? I've had this issue on several versions of the runtime. I don't think it's version related but I don't know. All I know is that sometimes when the client gets a power outage or something that kills the machine some of my applications fail to boot.

    Any help is deeply appreciated. Thanks in advance!

     
    • Strucc.c

      Strucc.c - 2024-11-21

      I started to experience the same issue, after upgrading to 3.5.19 , and still persists with 3.5.20.3 , using CodesysControlWinV3 x64 on Windows.

      Unfortunately, this is a live application, normally it is running for months without interruption - so it was a surprise at the last cold start...

      It was not possible to go online with the original version, so I couldn't see the application, or system status, just the log message.

      First time I manually clean the Application from the PlcLogic directory (there was no coredump file in there), then I could start the runtime service, and do a fresh download, and set the bootproject. I could not try a cold system reboot - it's in a 24/7 production environment, and I was under heavy pressure to start... What I did, I have created a backup from the * complete * runtime directory, from the failed, and fixed version - before and after download. This directory in my case C:\ProgramData\CODESYS\CODESYSControlWinV3x64\55096128 -

      At the next shutdown, it was sufficient to copy back this backup completely, and could start the runtime service afterwards. Ugly, but local staff with some skills can do it without programming tool...

      I don't store any live data, configuration, log files, persistent data in this directory - the only reason I need this is to edit the CodesysControl... .cfg file.... And to see the logfiles in emergencies like this.

      The application concerned doesn't use any retain area. - exactly for these reasons - Maybe that is causing the problem with the newer runtime versions

      As far as I see, this problem occurs only if the power of the Windows PLC is interrupted without a proper shutdown. Unfortunately, this can happen sometimes.

      The newer versions, seems tp modify CodesysControl.cfg on the fly, and register the applications, and bootproject information after download. (I don't really see CodesysControl.cfg a proper location for this... but that's just my feeling)

      So now I had a look at CodesysCotrol.cfg on my laptop and I found:

      [CmpRetain]
      ;Retain.SRAM.Size=0x200200
      ;Retain.SRAM.Address=0xFA3C5776
      ;SimulateSRAM=1
      
      [CmpApp]
      ;Bootproject.CreateOnDownload=0
      ;Bootproject.StoreOnlyOnDownload=0
      ;Bootproject.InvalidateByRename=1
      ;Bootproject.InvalidateBySetting=1
      ;Bootproject.InvalidateNever=0
      ;PersistentForce=0
      ;RetainType.Applications=InSRAM
      ;RetainType.Applications=OnPowerfail
      ;RetainType.Applications=None
      ;Exception.Hardware.GlobalStop=1
      Application.1=MyTestAppNoRetain
      

      The last line appeared after download and boot project creation.

      Maybe... Should set RetainType.Applications=None?

      I wonder about all these settings, but... Will write separately about it.

      I hope this helps a little...

       

      Last edit: Strucc.c 2024-11-21

Log in to post a comment.