Open dominjon opened 5 months ago
The new data is saved to .msg.data
, no matter which branch is taken:
AFAICS, modify_data
is only used to update the task without affecting the timing (see the python-can source). If modify_data
is not available, the workaround is to restart the task, thus affecting the timing for the subsequent task execution.
Do you have a code snippet to reproduce the failure you're seeing?
I believe I've found a bug when attempting to update a periodic RPDO whose values I'm setting.
The logic of
network.PeriodicTask.update
attempts to check if the data are new by checking the argument it's been passed against the existing value in thepdo.Map
. However,pdo.Map.update
is passingnetwork.PeriodicTask.update
the same value. If the task does not have themodify_data
attribute, then the fact thatnew_data != old_data
is trivially false means that the data are never updated.