Skip to main content
FDane
Associate
May 9, 2019
Solved

CAN-bus transmitting but not receiving

  • May 9, 2019
  • 1 reply
  • 3074 views

I have a setup with a STM32L452 Nucleo-64, and has connected a CAN transceiver to it. This is in turn connected to a CANDO dongle to a PC. With the current setup I'm currently able to transmit data from the STM32 to the PC with no fail. The reception on the STM32 however does not work.

I have measured the traffic on the CAN RX to pinout with an oscilloscope and the data seems to be there just as expected. Yet it is not picked up by the CAN interface on the STM32.

I have tried both using a callback and polling to see whether the RX fifo ever gets any data, but that is not the case.

I have also tried watching the CAN1_RX0_IRQHandler to see if it ever gets triggered, which I understand it should when data is received, yet it does not.

I dont really know how to go forward from here, so any help would be appreciated.

This topic has been closed for replies.
Best answer by FDane

Hi,

Thanks turboscrew, the issue was indeed the receive filters, they were not properly aligned for 32 bit filter scale. Everything works fine now

1 reply

turboscrew
Senior III
May 9, 2019

Could be the receive filters? And I think the CAN1_RX0_IRQ is really a callback from the actual CAN interrupt handler.

Have you activated the receive notifications? If not, then the receive functions are not called.

FDane
FDaneAuthorBest answer
Associate
May 10, 2019

Hi,

Thanks turboscrew, the issue was indeed the receive filters, they were not properly aligned for 32 bit filter scale. Everything works fine now