Automotive and Embedded Networks

cancel
Showing results for 
Search instead for 
Did you mean: 

Are Non-Standard LIN Interface Baud Rates Above 65535 Baud Possible with XNET?

Solved!
Go to solution

Hi Everyone,

 

I'm currently working on a microcontroller reflash procedure.

In normal operation, the micro is a slave node on a LIN bus at 10.417 kbaud.

Additionally, we have our own internal diagnostics through a bootloader running LIN at 19.2 kbaud.

So as it stands now, I can reflash the application code through the bootloader using UDS at 19.2 kbaud.

 

However, this takes too long. I can't change the file size, so I need to increase the baud rate.

With my NI-9860 cDAQ Card, I'm able to get the bootloader communication to run up to the max 65.535 kbaud that the XNET API allows.

 

Is there a way I can get the XNET LIN Baud Rate even higher?

I see that it concatenates the u32 property to u16 because the property is used for both CAN and LIN, and I'm sure it's concatenated because of the LIN Transceiver onboard the hardware, but still; can this be done with any NI Hardware?

 

Another engineer I'm working with has managed to get 115.2 kbaud to work with some Vector hardware, but I can't automate with that.

 

Is there any NI Hardware that allows for LIN Baud Rates above the u16 65535 limit?

Do future versions of XNET API allow more than 16-bits to be specified? I'm using XNET 15.0 and LabVIEW 2014 sp1 f3.

 

I know I'm asking for something very non-standard (actual LIN buses max out at 20 kbaud, but this reflash won't happen on a LIN bus, just on my testers) but I figured I would ask before telling anyone it couldn't be done.

 

Thanks for any help!

-Rob Afton

0 Kudos
Message 1 of 4
(3,108 Views)

RobAfton,

 

Here is a link to the NI-XNET Hardware and Software Manual. Specifically, look at pages 5-141 and 5-336 and their sections on LIN.

 

"For LIN, this rate can be 2400–20000 inclusive." pg. 5-141

 

"Any custom value higher than 65535 is masked to a 16-bit value. As with the noncustom values, the interface internally calculates the appropriate divisor values to program into its UART." pg. 5-336

 

Hope this helps answer your question!

 

Regards,

Alyssa H.

National Instruments

0 Kudos
Message 2 of 4
(3,084 Views)

Thanks for the response.

 

So you're saying that no NI LIN Hardware or Software exists that can go above the u16 65535 limit?

I understand that the LIN spec only allows up to 20k baud during normal operation and that the version of the API I'm using masks LIN bauds to u16 values.

I'm asking if there is any way to get around that before I go and create a non-NI solution.

0 Kudos
Message 3 of 4
(3,080 Views)
Solution
Accepted by topic author RobAfton

The true limiting factor is the LIN transceiver. The LIN TRC-8546 uses a TJA1028 transceiver which is only certified up to 20 kBd. XNET allows you to enter custom baud rates that are higher than that but we don't guarantee their performance. 

 

NI does not currently offer a LIN device with a transceiver certified for baud rates above 20 kBd.

Jeff L
National Instruments
0 Kudos
Message 4 of 4
(3,075 Views)