I have two STM3220G evl boards. I want to have CAN communication between these two boards.
I am running standard CAN network example provided in STM32Cube_FW_F2_V1.6.0.
Jumper settings are as below
JP3 - 2 and 3 (CAN1)
JP10 - 2 and 3 (CAN1)
JP9 - connected to enable load register
CAN cable used is https://esd.eu/sites/default/files/manuals/CAN-Cable_Datasheet_en_0.pdf
Below are my observations
1. Some times demo works as expected
2. Most of the times HAL_CAN_Transmit() fails and return timeout error. When I check CAN message using logic analyzer I observed that it is showing NAK. Why CAN controller sending NAK? Is there any extra configuration required?
3. Some times HAL_CAN_Transmit() is successful but no receive interrupt on another board.
Has anyone observed same behavior?
Is there any bug in HAL library or issue with my setup? I read on community that F4 HAL had same issue in V1.6 but it has been fixed in V1.7.
Appreciate views and comments.
Thanks in advance.