FORUM CTRLX AUTOMATION
ctrlX World Partner Apps for ctrlX AUTOMATION
Dear Community User! We have started the migration process.
This community is now in READ ONLY mode.
Read more: Important
information on the platform change.
11-19-2021 02:20 PM - edited 11-19-2021 02:31 PM
Hello Community,
after trying out the sample from the ctrlx-sdk (automation.scheduler)
see https://github.com/boschrexroth/ctrlx-automation-sdk/tree/1.10.0/samples-cpp/automation.scheduler
we get a watchdog error, if we swap from operation mode into service mode.
The actual error:
Is the sample still up to date / supported?
Is there more detailed documentation?
Looking forward to hear from you,
Sincerely Elleshar
Solved! Go to Solution.
11-22-2021 07:46 AM - edited 11-22-2021 07:48 AM
Please beware that the SDK version (1.10) has to fit to your system version (automation core + device admin 1.10) so that the used interface are fitting.
At the moment no problems are known with this example and it is working on my control:
11-23-2021 08:49 AM
Hello CodeShepherd,
our version was correct, also our SDK.
But we found out that the problem is with the scheduler.
If you make an own task, our program and the sample from github
causes a watchdog Error. If you add the Callable to the ctrlXAutomation-Task
it works fine. Why is the sample not working under a own task?
Is this unknown or undefined behaviour?
Where's the documentation for it? It was fustrating to figure it out.
Sincerely Elleshar
11-23-2021 09:25 AM - edited 11-23-2021 10:14 AM
That is quite easy to explain because of the structure of the system. As a realtime bundle snap you are part of the CELIX framework in which environment also all other real time applications are running. So if you take a part of the code out of the task scheduling of all the others you will break up the timing behaviour of the complete project and cause a watchdog to occur.
11-23-2021 10:00 AM
Ok, thanks.
Does the SDK-Supports own task in a specific way?
11-23-2021 10:21 AM - edited 11-23-2021 10:22 AM
I do not get you question. As a bundle you always add an own callable to the system that has to run in your realtime task (for deterministic purposes). If you want to have an independent task simply use a non bundle snap.