Showing results for 
Search instead for 
Did you mean: 

Different position when switch off / switch on the machine working with Softmotion

Different position when switch off / switch on the machine working with Softmotion

Occasional Contributor


We have a customer working with an ctrlX Core X7 and 26 axes with Softmotion, the problem comes when it switches off / on the machine,

It seems that some axes that are configured as modulo value lose their position, we did some tests and here I attach a table,

It appears that when the actual position of the drive (S-0-0051) is positive then the position of the Softmotion is not the same when we switch off/ switch on


We have scaled the drive following the link:

Does someone has encountered this problem before?

Many thanks,


Community Moderator
Community Moderator

Moved to corresponding sub forum CODESYS - PLC Add-ons.

From Rexroth side there is no issue known related to your description. As the CODESYS SoftMotion if directly accessing the current drive position via the EtherCat master, we would suggest checking is e.g. the axis has moved or if there is problem with the encoder.

Occasional Contributor

Have you seen this thread, in particular the comments by @eschwellinger regarding the configuration of the drive's position data format?

SoftMotion always expects the physical drive to be configured with "Absolute" position data format.  If the corresponding SoftMotion axis is configured as "Modulo", the rollover behaviour is handled internally by SoftMotion.   See also the comments regarding the proper configuration of the Maximum travel range (S-0-0278).   My guess is that this is your issue.


Occasional Contributor


Yes the axis is correctly scaled,


It seems that the problem comes when you overrun the position backwards and then switch off / switch on the Core or if you do a reset Cold,

It would be nice if someone could try this, I have tried it here with one axis with Softmotion and the same happens to me, 

If you check the diActualPosition (Position FBK of the Drive) and you are in for example -2100000 position and then you go to 230000 and you perform a reset cold the factualposition (position of the Softmotion) is not the same as before the reset. 

We have tried the fb "SMC_SetPersistPosition" and it seems that using this fb solves the issue if you enable the fb before the Softmotion starts, the output of the fb "PositionRestored" should be in the "TRUE" state to confirm that the position of the Softmotion before the machine was powered off is the same as now

Now the problem comes when you perform a Login with Download, it seems that the output of the fb "PositionRestored" is in FALSE state when you download the code,

Can someone check this?

Thank you,

Can you provide a project (archive) example that includes the versions/DevDesc's (SoftMotion, Compiler, Runtime...) used here?
What we have not yet been able to recognize: is the behavior found with all axes, or only in some of them?
And, are they these always the same axes then?

Occasional Contributor

The project archive is too heavy, may I can send this to an email adress?

This happens with all the axes, if you try with a single axis in modulo and overrun it like in this video the position of the Softmotion is not the same, the position in the drive yes,

A correction, a "Login with download" also maintains the position, the problem is when the PLC Engineering asks you to do a "complete download", I do not know the difference between this download and a "Login with download" to be honest,


You can send it to

i will distribute the data