L_CanPdoTransmit sends data in the ¨Forced transmission¨ mode even without action call

Which products are affected?
LenzeCanDrv.lib and LenzeCanDrv0221.lib libraries

EPL-10200 (Drive PLC V7.1 and lower)
EVS93xxEI (Servo PLC V7.2 and lower)
EVS93xxET (Servo PLC with technology function V7.2 and lower)
ECS axis module ECSxx series, operating software V7.4 and lower

What happens?
When the function block L_CanPdoTransmit is in the 'Forced transmission' (function block input byTransmitMode = 3) mode a CAN telegram is send out of the LenzeCanDrv.lib library even if the action <Instance name>.SendData is not called.

When does the problem occur?
When the function block L_CanPdoTransmit is in the 'Forced transmission' (function block input byTransmitMode = 3) mode a CAN telegram is sent once when being called for the first time even if the <Instance name>.SendData action is not called.

Possible diagnostics?
CAN diagnostics, e.g. by means of the PCAN explorer.

Short-term measures/recommendations?
Use the 'Time controlled transmission' (byTransmitMode = 1) mode instead of the 'Forced transmission' mode and set the transmit interval (tRepeatTime) to T#0ms. As a result, exactly one telegram is sent whenever the function block L_CanPdoTransmit is called.

Evaluation:
When the function block L_CanPdoTransmit is called in the 'Forced transmission' mode for the first time, a telegram is not sent. In most application this behaviour will not have further consequences.

URL for linking this AKB article: https://www.lenze.com/en-de/go/akb/200707713/1/
Contact form