Search Results (Searched for: )
- Cooped-Up
- Cooped-Up
19 Jun 2025 10:38
Replied by Cooped-Up on topic Mesa card issues Maho MH800E Retrofit Project
Mesa card issues Maho MH800E Retrofit Project
Category: Computers and Hardware
So I tried to upload the firmware and I have somehow broken the 5i25t as it no longer is recognized by the computer. is this something I can flash an eprom with a programmer?
- meister
- meister
19 Jun 2025 09:44
Replied by meister on topic LinuxCNC-RIO - RealtimeIO for LinuxCNC based on FPGA (ICE40 / ECP5)
LinuxCNC-RIO - RealtimeIO for LinuxCNC based on FPGA (ICE40 / ECP5)
Category: Computers and Hardware
there is no real protocol,
it is a frame with a fixed length (depending on the config) in which all necessary data is sent and received in byte blocks.
Here is an example of the default Tangbob config:
the frames are then filled with zeros so that they are always divisible by 8 bits and RX and TX frames have the same length so that they can be transmitted via SPI full duplex
a hal component (riocomp.c) is also generated for each config, which can read and write the frames and, if necessary, does a few floating point calculations that I wanted to keep away from the FPGA
This makes it possible to manage without SoftCore in the FPGA, i.e. only pure logic
it is a frame with a fixed length (depending on the config) in which all necessary data is sent and received in byte blocks.
Here is an example of the default Tangbob config:
cat Output/Tangbob/DOC/INTERFACE.md
# Interface
## Host to FPGA
| POS | SIZE | NAME |
| --- | --- | --- |
| 0 | 32bits | RX_HEADER |
| 32 | 128bits | VAROUT128_MODBUS0_TXDATA |
| 160 | 32bits | VAROUT32_PWMOUT0_DTY |
| 192 | 32bits | VAROUT32_STEPDIR0_VELOCITY |
| 224 | 32bits | VAROUT32_STEPDIR1_VELOCITY |
| 256 | 32bits | VAROUT32_STEPDIR2_VELOCITY |
| 288 | 32bits | VAROUT32_STEPDIR3_VELOCITY |
| 320 | 1bit | VAROUT1_WLED0_0_GREEN |
| 321 | 1bit | VAROUT1_WLED0_0_BLUE |
| 322 | 1bit | VAROUT1_WLED0_0_RED |
| 323 | 1bit | VAROUT1_BITOUT0_BIT |
| 324 | 1bit | VAROUT1_BITOUT1_BIT |
| 325 | 1bit | VAROUT1_PWMOUT0_ENABLE |
| 326 | 1bit | VAROUT1_STEPDIR0_ENABLE |
| 327 | 1bit | VAROUT1_STEPDIR1_ENABLE |
| 328 | 1bit | VAROUT1_STEPDIR2_ENABLE |
| 329 | 1bit | VAROUT1_STEPDIR3_ENABLE |
## FPGA to Host
| POS | SIZE | NAME |
| --- | --- | --- |
| 0 | 32bits | TX_HEADER |
| 32 | 32bits | TIMESTAMP |
| 64 | 16bits | MULTIPLEXED_INPUT_VALUE |
| 80 | 8bits | MULTIPLEXED_INPUT_ID |
| 88 | 128bits | VARIN128_MODBUS0_RXDATA |
| 216 | 32bits | VARIN32_STEPDIR0_POSITION |
| 248 | 32bits | VARIN32_STEPDIR1_POSITION |
| 280 | 32bits | VARIN32_STEPDIR2_POSITION |
| 312 | 32bits | VARIN32_STEPDIR3_POSITION |
| 344 | 1bit | VARIN1_BITIN0_BIT |
| 345 | 1bit | VARIN1_BITIN1_BIT |
| 346 | 1bit | VARIN1_BITIN2_BIT |
| 347 | 1bit | VARIN1_BITIN3_BIT |
| 348 | 1bit | VARIN1_BITIN4_BIT |
the frames are then filled with zeros so that they are always divisible by 8 bits and RX and TX frames have the same length so that they can be transmitted via SPI full duplex
a hal component (riocomp.c) is also generated for each config, which can read and write the frames and, if necessary, does a few floating point calculations that I wanted to keep away from the FPGA
This makes it possible to manage without SoftCore in the FPGA, i.e. only pure logic
- Aciera

19 Jun 2025 09:37
Replied by Aciera on topic Emulating lathe compound angle via manipulation of X & Z drives
Emulating lathe compound angle via manipulation of X & Z drives
Category: HAL Examples
For jogging there is the 'anglejog' component:
linuxcnc.org/docs/stable/html/man/man9/anglejog.9.html
linuxcnc.org/docs/stable/html/man/man9/anglejog.9.html
- pippin88
- pippin88
19 Jun 2025 08:47
Replied by pippin88 on topic How to jog when beyond soft limits
How to jog when beyond soft limits
Category: EtherCAT
I can see you issue and agree that a better solution is needed for absolute encoder setups.
Maybe two sets of software limits are needed?
Working area
Absolute maximum travel
If machine is within "working area" travel/jogging outside is needed
If machine is outside "working area" but within "absolute maximum travel", then allow jogging. Once within "working area" don't allow jogging/movement back out
Work around:
Move machine off soft limits on shut-down
forum.linuxcnc.org/49-basic-configuratio...tion-shutdown#226443
Maybe two sets of software limits are needed?
Working area
Absolute maximum travel
If machine is within "working area" travel/jogging outside is needed
If machine is outside "working area" but within "absolute maximum travel", then allow jogging. Once within "working area" don't allow jogging/movement back out
Work around:
Move machine off soft limits on shut-down
forum.linuxcnc.org/49-basic-configuratio...tion-shutdown#226443
- slowpoke
- slowpoke
19 Jun 2025 07:34 - 19 Jun 2025 07:34
Emulating lathe compound angle via manipulation of X & Z drives was created by slowpoke
Emulating lathe compound angle via manipulation of X & Z drives
Category: HAL Examples
Axis GUI for a lathe, using Mesa
I have servos driving the X (cross slide), and Z (carriage) all working.
I also have MPG to manipulate X & Z.
I have removed my compound to make the lathe more rigid, with the rationale that I can emulate the compound via correct step pulse generation of the X & Z drives via the MPG.
Has someone done this?
HAL example?
Thank you
I have servos driving the X (cross slide), and Z (carriage) all working.
I also have MPG to manipulate X & Z.
I have removed my compound to make the lathe more rigid, with the rationale that I can emulate the compound via correct step pulse generation of the X & Z drives via the MPG.
Has someone done this?
HAL example?
Thank you
- tivoi

19 Jun 2025 05:45
- Kieran
- Kieran
19 Jun 2025 05:18 - 19 Jun 2025 05:20
Replied by Kieran on topic How to jog when beyond soft limits
How to jog when beyond soft limits
Category: EtherCAT
On my AXIS gui setup, I can switch to "joint mode" by hitting $ (shift-4)
which lets the servos jog slowly back into the normal travel range. Hit $ again to go back to "world mode" to run as normal from there. Im guessing the other GUI have an easy way to get into joint mode as well. you could also manually turn the ballscrew a little
which lets the servos jog slowly back into the normal travel range. Hit $ again to go back to "world mode" to run as normal from there. Im guessing the other GUI have an easy way to get into joint mode as well. you could also manually turn the ballscrew a little
- Kieran
- Kieran
19 Jun 2025 04:58 - 19 Jun 2025 05:05
Getting Ebay 2.6kw ethercat kit going. was created by Kieran
Getting Ebay 2.6kw ethercat kit going.
Category: EtherCAT
Im trying to get my 2.6kw spindle servo going. its got a P200SE drive. the instructions are written in Chinese. I used google translate and it worked pretty good. Right now im running it as a Z axis just to see if i can get it working. I got my XML setup enough that Linuxcnc reads the encoder no problem. the servo powers up and holds position along with my stepperonline X and y servos. my current roadblock is that its not listening to commands and doesnt move and it gets a following error shortly after. if i power off and turn the motor the DRO moves the distance expected so that's a good sign. the servo load meter on the PYvcp is workign for this servo too, when i "fight" the servo. i must just be missing something simple in my XML?
lcec_configgen gives me this
my xml so far
lcec_configgen gives me this
Warning: Spoiler!
<masters>
<master idx="0">
<slave idx="0" type="generic" vid="0x00400000" pid="0x00000715" name="D1">
<!--AS715N_sAxis_V0.10-->
<syncManager idx="0" dir="in"/>
<syncManager idx="1" dir="out"/>
<syncManager idx="2" dir="out">
<pdo idx="1701">
<pdoEntry idx="6040" subIdx="00" bitLen="16" halPin="pin-6040-00" halType="BLANK"/>
<pdoEntry idx="607a" subIdx="00" bitLen="32" halPin="pin-607a-00" halType="BLANK"/>
<pdoEntry idx="60b8" subIdx="00" bitLen="16" halPin="pin-60b8-00" halType="BLANK"/>
<pdoEntry idx="60fe" subIdx="01" bitLen="32" halPin="pin-60fe-01" halType="BLANK"/>
</pdo>
</syncManager>
<syncManager idx="3" dir="in">
<pdo idx="1b01">
<pdoEntry idx="603f" subIdx="00" bitLen="16" halPin="pin-603f-00" halType="BLANK"/>
<pdoEntry idx="6041" subIdx="00" bitLen="16" halPin="pin-6041-00" halType="BLANK"/>
<pdoEntry idx="6064" subIdx="00" bitLen="32" halPin="pin-6064-00" halType="BLANK"/>
<pdoEntry idx="6077" subIdx="00" bitLen="16" halPin="pin-6077-00" halType="BLANK"/>
<pdoEntry idx="60f4" subIdx="00" bitLen="32" halPin="pin-60f4-00" halType="BLANK"/>
<pdoEntry idx="60b9" subIdx="00" bitLen="16" halPin="pin-60b9-00" halType="BLANK"/>
<pdoEntry idx="60ba" subIdx="00" bitLen="32" halPin="pin-60ba-00" halType="BLANK"/>
<pdoEntry idx="60bc" subIdx="00" bitLen="32" halPin="pin-60bc-00" halType="BLANK"/>
<pdoEntry idx="60fd" subIdx="00" bitLen="32" halPin="pin-60fd-00" halType="BLANK"/>
</pdo>
</syncManager>
</slave>
<slave idx="1" type="generic" vid="0x00400000" pid="0x00000715" name="D2">
<!--AS715N_sAxis_V0.10-->
<syncManager idx="0" dir="in"/>
<syncManager idx="1" dir="out"/>
<syncManager idx="2" dir="out">
<pdo idx="1701">
<pdoEntry idx="6040" subIdx="00" bitLen="16" halPin="pin-6040-00" halType="BLANK"/>
<pdoEntry idx="607a" subIdx="00" bitLen="32" halPin="pin-607a-00" halType="BLANK"/>
<pdoEntry idx="60b8" subIdx="00" bitLen="16" halPin="pin-60b8-00" halType="BLANK"/>
<pdoEntry idx="60fe" subIdx="01" bitLen="32" halPin="pin-60fe-01" halType="BLANK"/>
</pdo>
</syncManager>
<syncManager idx="3" dir="in">
<pdo idx="1b01">
<pdoEntry idx="603f" subIdx="00" bitLen="16" halPin="pin-603f-00" halType="BLANK"/>
<pdoEntry idx="6041" subIdx="00" bitLen="16" halPin="pin-6041-00" halType="BLANK"/>
<pdoEntry idx="6064" subIdx="00" bitLen="32" halPin="pin-6064-00" halType="BLANK"/>
<pdoEntry idx="6077" subIdx="00" bitLen="16" halPin="pin-6077-00" halType="BLANK"/>
<pdoEntry idx="60f4" subIdx="00" bitLen="32" halPin="pin-60f4-00" halType="BLANK"/>
<pdoEntry idx="60b9" subIdx="00" bitLen="16" halPin="pin-60b9-00" halType="BLANK"/>
<pdoEntry idx="60ba" subIdx="00" bitLen="32" halPin="pin-60ba-00" halType="BLANK"/>
<pdoEntry idx="60bc" subIdx="00" bitLen="32" halPin="pin-60bc-00" halType="BLANK"/>
<pdoEntry idx="60fd" subIdx="00" bitLen="32" halPin="pin-60fd-00" halType="BLANK"/>
</pdo>
</syncManager>
</slave>
<slave idx="2" type="basic_cia402" vid="0x00445653" pid="0x00009252" name="D3">
<!--DVS_ETHCAT_v1.004-->
<modParam name="ciaRxPDOEntryLimit" value="9"/>
<modParam name="ciaTxPDOEntryLimit" value="9"/>
<modParam name="enablePP" value="true"/>
<modParam name="enablePV" value="true"/>
<modParam name="enableTQ" value="true"/>
<modParam name="enableHM" value="true"/>
<modParam name="enableCSP" value="true"/>
<modParam name="enableCSV" value="true"/>
<modParam name="enableCST" value="true"/>
<modParam name="enableActualFollowingError" value="true"/>
<modParam name="enableActualTorque" value="true"/>
<modParam name="enableDigitalInput" value="true"/>
<modParam name="digitalInChannels" value="16"/>
<modParam name="enableDigitalOutput" value="true"/>
<modParam name="digitalOutChannels" value="16"/>
<modParam name="enableErrorCode" value="true"/>
<modParam name="enableFollowingErrorWindow" value="true"/>
<modParam name="enableHomeAccel" value="true"/>
<modParam name="enableInterpolationTimePeriod" value="true"/>
<modParam name="enableMaximumTorque" value="true"/>
<modParam name="enableMotorRatedTorque" value="true"/>
<modParam name="enablePolarity" value="true"/>
<modParam name="enablePositionDemand" value="true"/>
<modParam name="enablePositioningTime" value="true"/>
<modParam name="enablePositioningWindow" value="true"/>
<modParam name="enableProbeStatus" value="true"/>
<modParam name="enableProfileAccel" value="true"/>
<modParam name="enableProfileDecel" value="true"/>
<modParam name="enableProfileMaxVelocity" value="true"/>
<modParam name="enableProfileVelocity" value="true"/>
<modParam name="enableTargetTorque" value="true"/>
<modParam name="enableTorqueDemand" value="true"/>
<modParam name="enableTorqueSlope" value="true"/>
<modParam name="enableVelocityErrorTime" value="true"/>
<modParam name="enableVelocityErrorWindow" value="true"/>
</slave>
</master>
</masters>
<master idx="0">
<slave idx="0" type="generic" vid="0x00400000" pid="0x00000715" name="D1">
<!--AS715N_sAxis_V0.10-->
<syncManager idx="0" dir="in"/>
<syncManager idx="1" dir="out"/>
<syncManager idx="2" dir="out">
<pdo idx="1701">
<pdoEntry idx="6040" subIdx="00" bitLen="16" halPin="pin-6040-00" halType="BLANK"/>
<pdoEntry idx="607a" subIdx="00" bitLen="32" halPin="pin-607a-00" halType="BLANK"/>
<pdoEntry idx="60b8" subIdx="00" bitLen="16" halPin="pin-60b8-00" halType="BLANK"/>
<pdoEntry idx="60fe" subIdx="01" bitLen="32" halPin="pin-60fe-01" halType="BLANK"/>
</pdo>
</syncManager>
<syncManager idx="3" dir="in">
<pdo idx="1b01">
<pdoEntry idx="603f" subIdx="00" bitLen="16" halPin="pin-603f-00" halType="BLANK"/>
<pdoEntry idx="6041" subIdx="00" bitLen="16" halPin="pin-6041-00" halType="BLANK"/>
<pdoEntry idx="6064" subIdx="00" bitLen="32" halPin="pin-6064-00" halType="BLANK"/>
<pdoEntry idx="6077" subIdx="00" bitLen="16" halPin="pin-6077-00" halType="BLANK"/>
<pdoEntry idx="60f4" subIdx="00" bitLen="32" halPin="pin-60f4-00" halType="BLANK"/>
<pdoEntry idx="60b9" subIdx="00" bitLen="16" halPin="pin-60b9-00" halType="BLANK"/>
<pdoEntry idx="60ba" subIdx="00" bitLen="32" halPin="pin-60ba-00" halType="BLANK"/>
<pdoEntry idx="60bc" subIdx="00" bitLen="32" halPin="pin-60bc-00" halType="BLANK"/>
<pdoEntry idx="60fd" subIdx="00" bitLen="32" halPin="pin-60fd-00" halType="BLANK"/>
</pdo>
</syncManager>
</slave>
<slave idx="1" type="generic" vid="0x00400000" pid="0x00000715" name="D2">
<!--AS715N_sAxis_V0.10-->
<syncManager idx="0" dir="in"/>
<syncManager idx="1" dir="out"/>
<syncManager idx="2" dir="out">
<pdo idx="1701">
<pdoEntry idx="6040" subIdx="00" bitLen="16" halPin="pin-6040-00" halType="BLANK"/>
<pdoEntry idx="607a" subIdx="00" bitLen="32" halPin="pin-607a-00" halType="BLANK"/>
<pdoEntry idx="60b8" subIdx="00" bitLen="16" halPin="pin-60b8-00" halType="BLANK"/>
<pdoEntry idx="60fe" subIdx="01" bitLen="32" halPin="pin-60fe-01" halType="BLANK"/>
</pdo>
</syncManager>
<syncManager idx="3" dir="in">
<pdo idx="1b01">
<pdoEntry idx="603f" subIdx="00" bitLen="16" halPin="pin-603f-00" halType="BLANK"/>
<pdoEntry idx="6041" subIdx="00" bitLen="16" halPin="pin-6041-00" halType="BLANK"/>
<pdoEntry idx="6064" subIdx="00" bitLen="32" halPin="pin-6064-00" halType="BLANK"/>
<pdoEntry idx="6077" subIdx="00" bitLen="16" halPin="pin-6077-00" halType="BLANK"/>
<pdoEntry idx="60f4" subIdx="00" bitLen="32" halPin="pin-60f4-00" halType="BLANK"/>
<pdoEntry idx="60b9" subIdx="00" bitLen="16" halPin="pin-60b9-00" halType="BLANK"/>
<pdoEntry idx="60ba" subIdx="00" bitLen="32" halPin="pin-60ba-00" halType="BLANK"/>
<pdoEntry idx="60bc" subIdx="00" bitLen="32" halPin="pin-60bc-00" halType="BLANK"/>
<pdoEntry idx="60fd" subIdx="00" bitLen="32" halPin="pin-60fd-00" halType="BLANK"/>
</pdo>
</syncManager>
</slave>
<slave idx="2" type="basic_cia402" vid="0x00445653" pid="0x00009252" name="D3">
<!--DVS_ETHCAT_v1.004-->
<modParam name="ciaRxPDOEntryLimit" value="9"/>
<modParam name="ciaTxPDOEntryLimit" value="9"/>
<modParam name="enablePP" value="true"/>
<modParam name="enablePV" value="true"/>
<modParam name="enableTQ" value="true"/>
<modParam name="enableHM" value="true"/>
<modParam name="enableCSP" value="true"/>
<modParam name="enableCSV" value="true"/>
<modParam name="enableCST" value="true"/>
<modParam name="enableActualFollowingError" value="true"/>
<modParam name="enableActualTorque" value="true"/>
<modParam name="enableDigitalInput" value="true"/>
<modParam name="digitalInChannels" value="16"/>
<modParam name="enableDigitalOutput" value="true"/>
<modParam name="digitalOutChannels" value="16"/>
<modParam name="enableErrorCode" value="true"/>
<modParam name="enableFollowingErrorWindow" value="true"/>
<modParam name="enableHomeAccel" value="true"/>
<modParam name="enableInterpolationTimePeriod" value="true"/>
<modParam name="enableMaximumTorque" value="true"/>
<modParam name="enableMotorRatedTorque" value="true"/>
<modParam name="enablePolarity" value="true"/>
<modParam name="enablePositionDemand" value="true"/>
<modParam name="enablePositioningTime" value="true"/>
<modParam name="enablePositioningWindow" value="true"/>
<modParam name="enableProbeStatus" value="true"/>
<modParam name="enableProfileAccel" value="true"/>
<modParam name="enableProfileDecel" value="true"/>
<modParam name="enableProfileMaxVelocity" value="true"/>
<modParam name="enableProfileVelocity" value="true"/>
<modParam name="enableTargetTorque" value="true"/>
<modParam name="enableTorqueDemand" value="true"/>
<modParam name="enableTorqueSlope" value="true"/>
<modParam name="enableVelocityErrorTime" value="true"/>
<modParam name="enableVelocityErrorWindow" value="true"/>
</slave>
</master>
</masters>
my xml so far
Warning: Spoiler!
<masters>
<master idx="0" appTimePeriod="1000000" refClockSyncCycles="1">
<slave idx="0" type="generic" vid="00400000" pid="00000715" configPdos="true" >
<dcConf assignActivate="300" sync0Cycle="*1" sync0Shift="25000"/>
<watchdog divider="2498" intervals="1000"/>
<syncManager idx="2" dir="out">
<pdo idx="1600">
<pdoEntry idx="6040" subIdx="00" bitLen="16" halPin="control-word" halType="u32"/>
<pdoEntry idx="6060" subIdx="00" bitLen="8" halPin="opmode" halType="s32"/>
<pdoEntry idx="607A" subIdx="00" bitLen="32" halPin="target-position" halType="s32"/>
<pdoEntry idx="60B8" subIdx="00" bitLen="16" halPin="touch-probe-function" halType="u32"/>
</pdo>
</syncManager>
<syncManager idx="3" dir="in">
<pdo idx="1A00">
<pdoEntry idx="6041" subIdx="00" bitLen="16" halPin="status-word" halType="u32"/>
<pdoEntry idx="6064" subIdx="00" bitLen="32" halPin="pos-actual" halType="s32"/>
<pdoEntry idx="60BA" subIdx="00" bitLen="32" halPin="touch-probe-1" halType="s32"/>
<pdoEntry idx="60BC" subIdx="00" bitLen="32" halPin="touch-probe-2" halType="s32"/>
<pdoEntry idx="60B9" subIdx="00" bitLen="16" halPin="touch-probe-status" halType="s32"/>
<pdoEntry idx="603F" subIdx="00" bitLen="16" halPin="fault-code" halType="s32"/>
<pdoEntry idx="60FD" subIdx="00" bitLen="32" halPin="DI-status" halType="u32"/>
<pdoEntry idx="60F4" subIdx="00" bitLen="32" halPin="follow-error" halType="s32"/>
<pdoEntry idx="6077" subIdx="00" bitLen="16" halPin="actual-torque" halType="s32"/>
</pdo>
</syncManager>
</slave>
<slave idx="1" type="generic" vid="00400000" pid="00000715" configPdos="true" >
<dcConf assignActivate="300" sync0Cycle="*1" sync0Shift="25000"/>
<watchdog divider="2498" intervals="1000"/>
<syncManager idx="2" dir="out">
<pdo idx="1600">
<pdoEntry idx="6040" subIdx="00" bitLen="16" halPin="control-word" halType="u32"/>
<pdoEntry idx="6060" subIdx="00" bitLen="8" halPin="opmode" halType="s32"/>
<pdoEntry idx="607A" subIdx="00" bitLen="32" halPin="target-position" halType="s32"/>
<pdoEntry idx="60B8" subIdx="00" bitLen="16" halPin="touch-probe-function" halType="u32"/>
</pdo>
</syncManager>
<syncManager idx="3" dir="in">
<pdo idx="1A00">
<pdoEntry idx="6041" subIdx="00" bitLen="16" halPin="status-word" halType="u32"/>
<pdoEntry idx="6064" subIdx="00" bitLen="32" halPin="pos-actual" halType="s32"/>
<pdoEntry idx="60BA" subIdx="00" bitLen="32" halPin="touch-probe-1" halType="s32"/>
<pdoEntry idx="60BC" subIdx="00" bitLen="32" halPin="touch-probe-2" halType="s32"/>
<pdoEntry idx="60B9" subIdx="00" bitLen="16" halPin="touch-probe-status" halType="s32"/>
<pdoEntry idx="603F" subIdx="00" bitLen="16" halPin="fault-code" halType="s32"/>
<pdoEntry idx="60FD" subIdx="00" bitLen="32" halPin="DI-status" halType="u32"/>
<pdoEntry idx="60F4" subIdx="00" bitLen="32" halPin="follow-error" halType="s32"/>
<pdoEntry idx="6077" subIdx="00" bitLen="16" halPin="actual-torque" halType="s32"/>
</pdo>
</syncManager>
</slave>
<slave idx="2" type="generic" vid="0x00445653" pid="0x00009252" configPdos="true" >
<dcConf assignActivate="300" sync0Cycle="*1" sync0Shift="25000"/>
<watchdog divider="2498" intervals="1000"/>
<syncManager idx="2" dir="out">
<pdo idx="1600">
<pdoEntry idx="6040" subIdx="00" bitLen="16" halPin="control-word" halType="u32"/>
<pdoEntry idx="6060" subIdx="00" bitLen="8" halPin="opmode" halType="s32"/>
<pdoEntry idx="607A" subIdx="00" bitLen="32" halPin="target-position" halType="s32"/>
<pdoEntry idx="60B8" subIdx="00" bitLen="16" halPin="touch-probe-function" halType="u32"/>
</pdo>
</syncManager>
<syncManager idx="3" dir="in">
<pdo idx="1A00">
<pdoEntry idx="6041" subIdx="00" bitLen="16" halPin="status-word" halType="u32"/>
<pdoEntry idx="6064" subIdx="00" bitLen="32" halPin="pos-actual" halType="s32"/>
<pdoEntry idx="60BA" subIdx="00" bitLen="32" halPin="touch-probe-1" halType="s32"/>
<pdoEntry idx="60BC" subIdx="00" bitLen="32" halPin="touch-probe-2" halType="s32"/>
<pdoEntry idx="60B9" subIdx="00" bitLen="16" halPin="touch-probe-status" halType="s32"/>
<pdoEntry idx="603F" subIdx="00" bitLen="16" halPin="fault-code" halType="s32"/>
<pdoEntry idx="60FD" subIdx="00" bitLen="32" halPin="DI-status" halType="u32"/>
<pdoEntry idx="60F4" subIdx="00" bitLen="32" halPin="follow-error" halType="s32"/>
<pdoEntry idx="6077" subIdx="00" bitLen="16" halPin="actual-torque" halType="s32"/>
</pdo>
</syncManager>
</slave>
</master>
</masters>
<master idx="0" appTimePeriod="1000000" refClockSyncCycles="1">
<slave idx="0" type="generic" vid="00400000" pid="00000715" configPdos="true" >
<dcConf assignActivate="300" sync0Cycle="*1" sync0Shift="25000"/>
<watchdog divider="2498" intervals="1000"/>
<syncManager idx="2" dir="out">
<pdo idx="1600">
<pdoEntry idx="6040" subIdx="00" bitLen="16" halPin="control-word" halType="u32"/>
<pdoEntry idx="6060" subIdx="00" bitLen="8" halPin="opmode" halType="s32"/>
<pdoEntry idx="607A" subIdx="00" bitLen="32" halPin="target-position" halType="s32"/>
<pdoEntry idx="60B8" subIdx="00" bitLen="16" halPin="touch-probe-function" halType="u32"/>
</pdo>
</syncManager>
<syncManager idx="3" dir="in">
<pdo idx="1A00">
<pdoEntry idx="6041" subIdx="00" bitLen="16" halPin="status-word" halType="u32"/>
<pdoEntry idx="6064" subIdx="00" bitLen="32" halPin="pos-actual" halType="s32"/>
<pdoEntry idx="60BA" subIdx="00" bitLen="32" halPin="touch-probe-1" halType="s32"/>
<pdoEntry idx="60BC" subIdx="00" bitLen="32" halPin="touch-probe-2" halType="s32"/>
<pdoEntry idx="60B9" subIdx="00" bitLen="16" halPin="touch-probe-status" halType="s32"/>
<pdoEntry idx="603F" subIdx="00" bitLen="16" halPin="fault-code" halType="s32"/>
<pdoEntry idx="60FD" subIdx="00" bitLen="32" halPin="DI-status" halType="u32"/>
<pdoEntry idx="60F4" subIdx="00" bitLen="32" halPin="follow-error" halType="s32"/>
<pdoEntry idx="6077" subIdx="00" bitLen="16" halPin="actual-torque" halType="s32"/>
</pdo>
</syncManager>
</slave>
<slave idx="1" type="generic" vid="00400000" pid="00000715" configPdos="true" >
<dcConf assignActivate="300" sync0Cycle="*1" sync0Shift="25000"/>
<watchdog divider="2498" intervals="1000"/>
<syncManager idx="2" dir="out">
<pdo idx="1600">
<pdoEntry idx="6040" subIdx="00" bitLen="16" halPin="control-word" halType="u32"/>
<pdoEntry idx="6060" subIdx="00" bitLen="8" halPin="opmode" halType="s32"/>
<pdoEntry idx="607A" subIdx="00" bitLen="32" halPin="target-position" halType="s32"/>
<pdoEntry idx="60B8" subIdx="00" bitLen="16" halPin="touch-probe-function" halType="u32"/>
</pdo>
</syncManager>
<syncManager idx="3" dir="in">
<pdo idx="1A00">
<pdoEntry idx="6041" subIdx="00" bitLen="16" halPin="status-word" halType="u32"/>
<pdoEntry idx="6064" subIdx="00" bitLen="32" halPin="pos-actual" halType="s32"/>
<pdoEntry idx="60BA" subIdx="00" bitLen="32" halPin="touch-probe-1" halType="s32"/>
<pdoEntry idx="60BC" subIdx="00" bitLen="32" halPin="touch-probe-2" halType="s32"/>
<pdoEntry idx="60B9" subIdx="00" bitLen="16" halPin="touch-probe-status" halType="s32"/>
<pdoEntry idx="603F" subIdx="00" bitLen="16" halPin="fault-code" halType="s32"/>
<pdoEntry idx="60FD" subIdx="00" bitLen="32" halPin="DI-status" halType="u32"/>
<pdoEntry idx="60F4" subIdx="00" bitLen="32" halPin="follow-error" halType="s32"/>
<pdoEntry idx="6077" subIdx="00" bitLen="16" halPin="actual-torque" halType="s32"/>
</pdo>
</syncManager>
</slave>
<slave idx="2" type="generic" vid="0x00445653" pid="0x00009252" configPdos="true" >
<dcConf assignActivate="300" sync0Cycle="*1" sync0Shift="25000"/>
<watchdog divider="2498" intervals="1000"/>
<syncManager idx="2" dir="out">
<pdo idx="1600">
<pdoEntry idx="6040" subIdx="00" bitLen="16" halPin="control-word" halType="u32"/>
<pdoEntry idx="6060" subIdx="00" bitLen="8" halPin="opmode" halType="s32"/>
<pdoEntry idx="607A" subIdx="00" bitLen="32" halPin="target-position" halType="s32"/>
<pdoEntry idx="60B8" subIdx="00" bitLen="16" halPin="touch-probe-function" halType="u32"/>
</pdo>
</syncManager>
<syncManager idx="3" dir="in">
<pdo idx="1A00">
<pdoEntry idx="6041" subIdx="00" bitLen="16" halPin="status-word" halType="u32"/>
<pdoEntry idx="6064" subIdx="00" bitLen="32" halPin="pos-actual" halType="s32"/>
<pdoEntry idx="60BA" subIdx="00" bitLen="32" halPin="touch-probe-1" halType="s32"/>
<pdoEntry idx="60BC" subIdx="00" bitLen="32" halPin="touch-probe-2" halType="s32"/>
<pdoEntry idx="60B9" subIdx="00" bitLen="16" halPin="touch-probe-status" halType="s32"/>
<pdoEntry idx="603F" subIdx="00" bitLen="16" halPin="fault-code" halType="s32"/>
<pdoEntry idx="60FD" subIdx="00" bitLen="32" halPin="DI-status" halType="u32"/>
<pdoEntry idx="60F4" subIdx="00" bitLen="32" halPin="follow-error" halType="s32"/>
<pdoEntry idx="6077" subIdx="00" bitLen="16" halPin="actual-torque" halType="s32"/>
</pdo>
</syncManager>
</slave>
</master>
</masters>
Time to create page: 0.461 seconds