what kind of problem do you have with reliability?
Multicore just give to possibility to distribute parts of the application to specific cores.
Maybe on a high loaded system this helps, but in general for better reliability ...

BR
Edwin

If you would like to refer to this comment somewhere else in this project, copy and paste the following link:

My application requires up to 10 simultaneous remote users connecting via visualizations and I need my application running at all times, hence the attempt to use the redundancy configuration.

I'm experiencing ad-hoc crashing of my application, most likely as a result of my programming but the root cause seems hard to find. When it does crash, I need to manually load up Codesys and stop/start the via menu "Tools - Update Raspberry Pi". I've tried to determine by looking through the "Runtime Info" logs for clues for the malfunction but I can't seem to spot exactly where it's crashing.

So if redundancy is not an option for the RP, can my RP be configured to automatically restart the Codesys application on my RP or even automatically reboot the RP upon system crash? My apologies if this has already been covered elsewhere in this forum.

If you would like to refer to this comment somewhere else in this project, copy and paste the following link:

hm.. I would try to solve the root cause, try to improve the application - did you already use checkbounds and things like
that?
If it crash, is it just the CODESYS runtime or does the Pi freeze is unreachable by ssh?
How often a week does it occure?

I would start the runtime manually to get mot log information in case of an runtime crash.
1. stop the runtime: by sudo /etc/init.d/codesyscontrol stop
2. cd /var/opt/codesys
sudo /opt/codesys/bin/codesyscontrol.bin -d /etc/CODESYSControl.cfg
3. in a second CLI : tail -f /tmp/codesyscontrol.log

In case of a crash you should see more information, first you need to know does it crash in the IEC code or does crash the runtime
-> is there a coredump generated by codesys available -> crash in the iec code

BR
Edwin

Last edit: eschwellinger 2020-05-01

If you would like to refer to this comment somewhere else in this project, copy and paste the following link:

if the crash is in IEC the application it should be possible to go to the plclogger and rightclick on the exception line to get the line of code where it happens.
So this is the first what youi need to do.

Last edit: eschwellinger 2020-05-01

If you would like to refer to this comment somewhere else in this project, copy and paste the following link:

Using this method of fault finding was invaluable and helped identify errors in my code which was really difficult to find otherwise, the main issue I found that my application was crashing because is was under very rare conditions entering into an infinite loop.

Thanks for showing me this and I'll definitely use this in the future.

If you would like to refer to this comment somewhere else in this project, copy and paste the following link:

CODESYS Group | We software Automation.
The CODESYS Group is the manufacturer of CODESYS, the leading hardware-independent IEC 61131-3 automation software for developing and engineering controller applications.
3S-Smart Software Solutions GmbH
A member of the CODESYS Group
Memminger Straße 151, 87439 Kempten
Germany
Tel.: +49-831-54031-0
info@codesys.com