Regarding adding the 'new data' flag, that's a good idea. If your msg unpacking routine is intensive, you might just copy your message from the interrupt to a global, set a 'new msg 1501' flag, then later unpack it in...
No need to use can.events() if you are using mailbox interrupts. The interrupt will fire upon receipt of each message, and the received message object will be passed as an input arg. You can use one interrupt function...
If you have a limited enough set of rx IDs, I find it easiest to just assign each its own mailbox using the mailbox filters. Unless you are logging data or receiving multi-frame data packets, you generally only...
Do you have an oscilloscope or logic analyzer that you can use to verify signals? Viewing CANH/CANL and TX/RX signals would make quick work of troubleshooting.
As @tonton81 mentioned, I've had success with both the TCAN330 and TCAN337. Aside from the special function pins and being powered by 3.3V, these transceivers function the as well as any others I've used with teensy...
Rayan, just an idea:
Can you record a single frame on your scope, with the probes on the receiving node's RX and TX signals?
Does RX look like a proper CAN frame?
Is TX quiet, except for a single ACK bit?
Can you...
Do you have proper bus termination resistors? Combined resistance between CANH and CANL should be 60 ohms.
Also, can you clarify what the leds are doing with the Rs pin? If it isn't strongly pulled to ground, it's...