LPC55S16JBD64 CAN is not working after configuring board files #62566
-
Hello Everyone , I have already tested CAN feature with LPC55S16JBD100 (100 pin) now, I'm trying to use CAN in LPC55S16JBD64 controller, so I configured board files and if I try to send or receive something the data is not showing on CAN bus , I'm using TJA1462AT driver schematic refrence for CAN, I'll share my board file configurations and sample code for your reference. .dtsi file
Kconfig.board
and I have added few lines in the Kconfig.Soc soc\arm\nxp_lpc\lpc55xxx\Kconfig.soc start with line number 83, I have added the few lines to avoid build errors
Sample code to test micro controller receive functionality
If I provide input from PEAK CAN with 125kbps baud rate I'm getting the following prints but I'm not getting any prints related to Message Received or failed to receive can frame, am I missing something , please help me to fix this issue. Note : Also I have probed with oscilloscope with CAN pins (CAN0_RD_PIO1_3 and CAN0_TD_PIO1_2), I'm not getting any signals from those pins, but during the reception I can see data at the RX pin of transceiver IC (sent from PEAK CAN) |
Beta Was this translation helpful? Give feedback.
Replies: 2 comments 1 reply
-
Hi @aravinth-kalai , You confirmed the CAN example succeeds on the LPC55S16JBD100 device, and I assume that is using the NXP board lpcxpresso55s16. Your board with the 64-pin device must be a custom board. Have you already ruled out any hardware issues with the custom board? Or hardware differences that require a different config in Zephyr? Since you have this working with the 100-pin package, I would build a single firmware image to run on both devices. And use that to test the other board. If it runs fine on the 100-pin device, but fails on the other board, it points to a hardware issue or some hardware difference of that board that needs to be configured differently. You should be able to build this image using the LPC55S16JBD100 device name, since that hardware is working for you, but pick pins that are in common with the 64-pin package. Another potential option to consider is to use a CAN example from the MCUXpresso SDK to confirm your hardware. Let us know what you find |
Beta Was this translation helpful? Give feedback.
-
Hi @aravinth-kalai , I recommend you post you question at NXP's support forum https://community.nxp.com, in your case specifically at LPC Microcontrollers. Then your issue can be assigned to NXP support engineers focused on this CAN peripheral, and this MCU. And with them, I would focus on your MCUXpresso SDK project, to simplify the firmware differences by removing Zephyr. Once you find the root cause and resolve it, you can update your Zephyr board files to match. Once you create your post at https://community.nxp.com, please add that link back to this Discussion. Then the rest of us with interest in this can follow the solution. Best regards |
Beta Was this translation helpful? Give feedback.
Hi @aravinth-kalai ,
The difference between LPC55S16JBD100 and LPC55S16JBD64 is just the package. It is the same SoC, just less pins offered in the 64-pin package. So the SoC configuration for the Zephyr firmware should be basically the same, except maybe the pins used in the pinctrl.
You confirmed the CAN example succeeds on the LPC55S16JBD100 device, and I assume that is using the NXP board lpcxpresso55s16. Your board with the 64-pin device must be a custom board. Have you already ruled out any hardware issues with the custom board? Or hardware differences that require a different config in Zephyr?
Since you have this working with the 100-pin package, I would build a single firmware ima…