Skip to content

Conversation

@fpdotmonkey
Copy link
Contributor

Some subdevices, like my ABB FECA-01 + ACS880, will enter into a bad state if you write to this parameter. This removes all implicit writes to it.

I believe that this parameter was added to Wireshark in error and every maindevice impl has it because surely Wireshark can't be wrong. However, it's in SOES since 2017 so there could be subdevices out there that depend on this parameter, so it must be kept. Let's leave it to the user to consult their datasheet on how to use this parameter. Especially since as far as I can tell, there are no other descriptions of this parameter's semantics.

@jamwaffles
Copy link
Collaborator

Yes this is a bizarre field isn't it... I'm not opposed to removing EtherCrab-internal writes to it.

There's also a write to it in subdevice_group/mod.rs. Does your SubDevice work with that write still included but not the reset? If so, that's strange. Or maybe you forgot to remove it in the PR?

@fpdotmonkey
Copy link
Contributor Author

That's in subdevice_group::configure_dc_sync, which I don't call in my code and, based on a quick grep, is never indirectly called by another method. So I'm guessing my subdevice wouldn't have liked this either. I'll update the commit to remove that, thanks for checking on that.

Some subdevices, like my ABB FECA-01 + ACS880, will enter into a bad
state if you write to this parameter.  This removes all implicit writes
to it.

I believe that this parameter was added to Wireshark in error and
every maindevice impl has it because surely Wireshark can't be wrong.
However, it's in SOES since 2017 so there could be subdevices out there
that depend on this parameter, so it must be kept.  Let's leave it to
the user to consult their datasheet on how to use this parameter.
Especially since as far as I can tell, there are no other descriptions
of this parameter's semantics.
@fpdotmonkey
Copy link
Contributor Author

Incidentally, there's a comment "Write access to EtherCAT". Do you know where that comes from? Seems to have been added in 328102d, which points to #198, but that doesn't seem to provide much context. It's at least always been attached to DcCyclicUnitControl, so I don't feel bad deleting it.

@jamwaffles
Copy link
Collaborator

thanks for checking on that.

Any time!

Do you know where that comes from?

SOEM: https://github.com/OpenEtherCATsociety/SOEM/blob/a7c74cea13786426929ae71e94195fa91c4b9faf/src/ec_dc.c#L50 with no more context given in that code either 😁

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants