When using the crystal-less operation on the LPC5536 will the bit timing requirements for the CAN (or CAN FD) peripheral be met? I've seen references online for the full bus speed range of the CAN protocol, a maximum oscillator tolerance of 1.58% is required.
Thanks for the help,
Dave
Solved! Go to Solution.
Hi Dave,
Sorry for the delay, I just received more information from the product team, they mention the following:
"Given that the internal FRO for LPC5536JHI48 has a variation of ±2% across the extended temperature range, and the CAN spec mandates a maximum oscillator tolerance of 1.58% for bit rates up to 125 kbit/s, there's a potential mismatch.
To achieve CAN FD bit rates compliant with the CAN FD spec, you would typically want an oscillator with tolerance within the mandated 1.58%. Using the internal FRO, which has a higher variation, might lead to issues especially in edge cases or over extended periods of operation, particularly in environments with fluctuating temperatures.
That being said, if your application has a more controlled environment or shorter bus lengths, it might be possible to make it work within acceptable error margins, but there would be risks involved (We suggest bit rate switch function is not enabled, and CANFD just work as CAN2.0 mode).
If CAN FD reliability and compliance are critical for your application, you might want to consider using the LPC553x packages that support external oscillators with tighter tolerances."
Let me know any question and apologies for the inconvenience, I have asked the team to add a note in the datasheet highlighting this limitation.
Regards,
Carlos Mendoza
Hi,
I have checked the data sheet of LPC553x, there is not CAN-FD clock tolerance spec, because two CAN nodes communicate, I suppose there is requirement for the two CAN node clock frequency matching requirement, but it is complicated.
Pls refer to the paper I searched on Google:
https://www.can-cia.org/fileadmin/resources/documents/proceedings/2013_mutter.pdf
Hope it is helpful
BR
XiangJun Rong
Based on your answer, I get the impression NXP hasn't specifically tested the LPC5536JHI48 to verify proper CAN (including CAN FD) operation over the full voltage and temperature range. Is this correct?
Thanks for the help,
Dave
Hi Dave,
The LPC5536 CAN FD module conforms with CAN protocol version 2.0 part A, B and ISO 11898-1. The reason the data sheet does not mention a data rate limit is because this is not only defined by the controller but also by the PCBA line, line length and the transceiver, we have an application note where we tested a data phase bit rate of 5 Mbit/s which is the highest bit rate that the onboard transceiver can support:
https://www.nxp.com/docs/en/application-note/AN12728.pdf
I would recommend you also review our hardware recommendation for the CAN-FD module in the section 7.1:
https://www.nxp.com/docs/en/application-note/AN13033.pdf
Regarding the oscillator tolerance, the 1.58% you mention applies only for a bus speed of up to 125kbit/s. For the full speed range you need to consider these conditions:
The parameters for the above conditions are given by your bit timing configuration and will result in a graph like this:
Hope this help.
Regards,
Carlos Mendoza
FAE
Carlos,
Thank you for the reply and the attached information. Based on the responses in this thread I don't believe I've been clear with my question. Our current application is for legacy CAN but can be upgraded/changed to CAN FD in the future. My specific concern is when using the crystal-less operation on the LPC5536 which is the only available option when using the HVQFN48 package. Looking at the attached App Note (AN12728), the development boards used (PCXpresso55S16/LPCXpresso55S08) have 100 pin devices. I didn't look through the software but I'm assuming the CAN is being operated from the attached on board oscillator which I have no doubt would meet the CAN standard. My question still is has NXP specifically tested the LPC5536JHI48 to verify proper CAN (including CAN FD) operation over the full voltage and temperature range for the HVQFN48 package using crystal-less operation? I understand that speed and length of the network will have a major impact on CAN performance but for my application question lets assume a simple network 5m long with only 2 LPC5536JHI48 devices attached.
Sorry for any confusion and thanks for the help,
Dave
Hi Dave,
That is a good point, I was not aware about the HVQFN48 package not having the option to add an external oscillator, I'm already investigating with the product team about this, I will keep you updated.
Regards,
Carlos Mendoza
Any updates on an answer?
Dave
Hi Dave,
Sorry for the delay, I just received more information from the product team, they mention the following:
"Given that the internal FRO for LPC5536JHI48 has a variation of ±2% across the extended temperature range, and the CAN spec mandates a maximum oscillator tolerance of 1.58% for bit rates up to 125 kbit/s, there's a potential mismatch.
To achieve CAN FD bit rates compliant with the CAN FD spec, you would typically want an oscillator with tolerance within the mandated 1.58%. Using the internal FRO, which has a higher variation, might lead to issues especially in edge cases or over extended periods of operation, particularly in environments with fluctuating temperatures.
That being said, if your application has a more controlled environment or shorter bus lengths, it might be possible to make it work within acceptable error margins, but there would be risks involved (We suggest bit rate switch function is not enabled, and CANFD just work as CAN2.0 mode).
If CAN FD reliability and compliance are critical for your application, you might want to consider using the LPC553x packages that support external oscillators with tighter tolerances."
Let me know any question and apologies for the inconvenience, I have asked the team to add a note in the datasheet highlighting this limitation.
Regards,
Carlos Mendoza