2022-08-25 12:42 AM
Hello there,
I am newbie in CAN communication. Although there is no problem in loopback mode, I get acknowledgment error in normal mode. For this reason, the tx message I sent continues to be sent because it was not ACKed, and after a while, all mailboxes fill up and the HAL_ADDTX function returns HAL_CAN_ERROR_PARAM. When I check the LEC register, I get Acknowledgment Error. I shared the diagram I used and my codes. You can review the main.c msp.c and it.c files on the Github link. The reason I don't use 120 ohms between CANH and CANL is because it's in my cjmcu230(with SN65HVD230) transciever module. I am using the same code on two STM32F429 boards. Thank you in advance for your help.
Github Link:
My Diagram:
CANTx logic signals in my logic analyzer(you can see it keep repeats the same msg):
2022-08-25 05:51 AM
Yes, in case your wiring is correct, this is definitely a sign for a transceiver problem.
Do you have an oscilloscope available so that you can measure the CAN_L and CAN_H signals?
2022-08-25 05:53 AM
Yes i have.
2022-08-25 06:48 AM
So, is there any activity on the CAN_L CAN_H signals? If not, then your transceivers are definitely not working as intended.