I have an issue with a PCAN-USB and the PCAN-PassThru API.
I configured the PassThru API to recieve/transmit both CAN 29-bits and 11-bits IDs.
Everything is normal when I send 29-bits CAN ID messages with the PassThru API.Time Function TPCANTPStatus Extra message
6453640 PassThruOpen STATUS_NOERROR (0x00) PARAMS={pName=J2534-2:PEAK 0x51, *pDeviceID=81}
6453875 PassThruConnect STATUS_NOERROR (0x00) PARAMS={DeviceID=81, ProtocolID=5, Flags=256, BaudRate=250000, *pChannelID=1358954501}
6453875 PassThruStartMsgFilter STATUS_NOERROR (0x00) PARAMS={ChannelID=1358954501, FilterType=1, pMaskMsg=0x8b7dce4, pPatternMsg=0x8b7ed1c, pFlowControlMsg=0x0, *pFilterID=139816280}
" --> * pMaskMsg=PASSTHRU_MSG {ProtocolID=0x05, RxStatus=0x00, TxFlags=0x00, Timestamp=0, DataSize=0x04, ExtraDataIndex=0x04, Data=[00 00 00 00 ]}"
" --> * pPatternMsg=PASSTHRU_MSG {ProtocolID=0x05, RxStatus=0x00, TxFlags=0x00, Timestamp=0, DataSize=0x04, ExtraDataIndex=0x04, Data=[00 00 00 00 ]}"
" --> * pFlowControlMsg=NULL"
6453875 PassThruStartMsgFilter STATUS_NOERROR (0x00) PARAMS={ChannelID=1358954501, FilterType=1, pMaskMsg=0x8b7dce4, pPatternMsg=0x8b7ed1c, pFlowControlMsg=0x0, *pFilterID=139828752}
" --> * pMaskMsg=PASSTHRU_MSG {ProtocolID=0x05, RxStatus=0x100, TxFlags=0x100, Timestamp=0, DataSize=0x04, ExtraDataIndex=0x04, Data=[00 00 00 00 ]}"
" --> * pPatternMsg=PASSTHRU_MSG {ProtocolID=0x05, RxStatus=0x100, TxFlags=0x100, Timestamp=0, DataSize=0x04, ExtraDataIndex=0x04, Data=[00 00 00 00 ]}"
" --> * pFlowControlMsg=NULL"
When I send a 11-bits ID CAN message, the message is processed and then the PCAN-USB device stops sending anyother messages (29 and 11-bits CAN ID messages).
I noticed that the 11-bit CAN ID message is echoed and appears in my recieved messages (no loopback was configured and this message is never recieved, always sent by my application).
Below is the corresponding CAN traces, with the 11-bits CAN ID message flagged as Rx and not Tx:6467500 PassThruReadMsgs ERR_BUFFER_EMPTY (0x10) PARAMS={ChannelID=1358954501, pMsg=0xa03e750, *pNumMsgs=0/1, Timeout=100}
6467593 PassThruReadMsgs ERR_BUFFER_EMPTY (0x10) PARAMS={ChannelID=1358954501, pMsg=0xa03e750, *pNumMsgs=0/1, Timeout=100}
6467687 PassThruReadMsgs STATUS_NOERROR (0x00) PARAMS={ChannelID=1358954501, pMsg=0xa03e750, *pNumMsgs=1/1, Timeout=100}
" --> * pMsg[0]=PASSTHRU_MSG {ProtocolID=0x05, RxStatus=0x100, TxFlags=0x00, Timestamp=2172884575, DataSize=0x0c, ExtraDataIndex=0x0c, Data=[18 ef ff 8c 64 01 ff ff ff ff ff ff ]}"
6467796 PassThruReadMsgs ERR_BUFFER_EMPTY (0x10) PARAMS={ChannelID=1358954501, pMsg=0xa03e750, *pNumMsgs=0/1, Timeout=100}
6467812 PassThruWriteMsgs STATUS_NOERROR (0x00) PARAMS={ChannelID=1358954501, pMsg=0x9efea54, *pNumMsgs[In]=1, *pNumMsgs[Out]=1, Timeout=100}
" --> * pMsg[0]=PASSTHRU_MSG {ProtocolID=0x05, RxStatus=0x00, TxFlags=0x00, Timestamp=2173000416, DataSize=0x0c, ExtraDataIndex=0x0c, Data=[00 00 01 23 18 27 36 45 54 63 72 81 ]}"
6467812 PassThruReadMsgs STATUS_NOERROR (0x00) PARAMS={ChannelID=1358954501, pMsg=0xa03e750, *pNumMsgs=1/1, Timeout=100}
" --> * pMsg[0]=PASSTHRU_MSG {ProtocolID=0x05, RxStatus=0x00, TxFlags=0x00, Timestamp=2173001517, DataSize=0x0c, ExtraDataIndex=0x0c, Data=[00 00 01 23 18 27 36 45 54 63 72 81 ]}"
6467921 PassThruWriteMsgs STATUS_NOERROR (0x00) PARAMS={ChannelID=1358954501, pMsg=0x9efea54, *pNumMsgs[In]=1, *pNumMsgs[Out]=1, Timeout=100}
6467921 PassThruReadMsgs ERR_BUFFER_EMPTY (0x10) PARAMS={ChannelID=1358954501, pMsg=0xa03e750, *pNumMsgs=0/1, Timeout=100}
" --> * pMsg[0]=PASSTHRU_MSG {ProtocolID=0x05, RxStatus=0x00, TxFlags=0x00, Timestamp=2173112730, DataSize=0x0c, ExtraDataIndex=0x0c, Data=[00 00 01 23 18 27 36 45 54 63 72 81 ]}"
6468000 PassThruReadMsgs STATUS_NOERROR (0x00) PARAMS={ChannelID=1358954501, pMsg=0xa03e750, *pNumMsgs=1/1, Timeout=100}
" --> * pMsg[0]=PASSTHRU_MSG {ProtocolID=0x05, RxStatus=0x100, TxFlags=0x00, Timestamp=2173184457, DataSize=0x0c, ExtraDataIndex=0x0c, Data=[18 ef ff 8c 64 01 ff ff ff ff ff ff ]}"
6468031 PassThruWriteMsgs STATUS_NOERROR (0x00) PARAMS={ChannelID=1358954501, pMsg=0x9efea54, *pNumMsgs[In]=1, *pNumMsgs[Out]=1, Timeout=100}
" --> * pMsg[0]=PASSTHRU_MSG {ProtocolID=0x05, RxStatus=0x00, TxFlags=0x00, Timestamp=2173223043, DataSize=0x0c, ExtraDataIndex=0x0c, Data=[00 00 01 23 18 27 36 45 54 63 72 81 ]}"
6468093 PassThruReadMsgs ERR_BUFFER_EMPTY (0x10) PARAMS={ChannelID=1358954501, pMsg=0xa03e750, *pNumMsgs=0/1, Timeout=100}
6468140 PassThruWriteMsgs STATUS_NOERROR (0x00) PARAMS={ChannelID=1358954501, pMsg=0x9efea54, *pNumMsgs[In]=1, *pNumMsgs[Out]=1, Timeout=100}
" --> * pMsg[0]=PASSTHRU_MSG {ProtocolID=0x05, RxStatus=0x00, TxFlags=0x00, Timestamp=2173333167, DataSize=0x0c, ExtraDataIndex=0x0c, Data=[00 00 01 23 18 27 36 45 54 63 72 81 ]}"
6468187 PassThruReadMsgs ERR_BUFFER_EMPTY (0x10) PARAMS={ChannelID=1358954501, pMsg=0xa03e750, *pNumMsgs=0/1, Timeout=100}
No Error is return by the Passthru API, and the debug log of the Pass-thru API continues to record the reception and transmission activity.157) 13799.7 Rx 18EFFF8C 8 64 01 FF FF FF FF FF FF
158) 13916.6 Rx 0123 8 18 27 36 45 54 63 72 81
159) 14099.5 Rx 18EFFF8C 8 64 01 FF FF FF FF FF FF
A soft reset of the PCAN-USB device is required to recover Tx communications.
My CAN Bus has 2 controllers and the PCAN-USB
Device & API versions:
PassThru v04.04 API: 3.0.2.153
PCAN-Basic API: 4.6.1.728
PCAN_USB driver: 4.3.0.16563
PCAN-USB FW: 5.3.2
Did you noticed that behavior before ? Is this an issue regarding my message flags or my API configuration ?
Please find attached the full logs.