Hey folks,
I have an odd problem. I'm trying to set up a Delta MS300 VFD with a CMM-EC01 EtherCAT option card. I've got it working save for speed control.
It seems that the speed value sent to the VFD is lacking one of the two bytes of data:
EtherCAT PDO entry:
Code:
<pdoEntry idx="6042" subIdx="00" bitLen="16" halPin="target-velocity" halType="s32"/>
Debugging:
Code:
> halcmd getp lcec.0.3.target-velocity
10000
> ethercat upload -p 3 -t int16 0x6042 0
0x0027 39
> python -c 'print(hex(10000))'
0x2710
As you can see, it looks like the device has been told the speed should be
instead of
, as if it's missing the first byte.
Anyone have any idea how to go about fixing this? I'm not averse to diving into code but as far as I can see from the linuxcnc-ethercat code, this is just a wrapper around IgH EtherCAT's
, which I assume can be trusted.
I've attached all my config files.