Announcements

Webinar: Integrated solutions for smaller, simpler low-voltage motor control design.
Join the webinar to experience!

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
zhanghongjian
Level 1
Level 1
First reply posted First question asked Welcome!

I want to design a tool to update tle9853 use the chip's fastlin bsl boot

I use another tle9853 board send uart data via lin,the passphrase frame is

FF 4C 49 4E 50 41 53 C8

FF 50 48 52 41 53 56 D5

then I send get nac frame:

01 90 91

 

but I got no answer, the target chip is erased by jlink,

0 Likes
1 Solution
Raj_C
Moderator
Moderator
Moderator
500 replies posted 50 likes received 250 replies posted

Hi @zhanghongjian,

Thanks for confirming the solution:

 

1) Resultant passphrase after adding a checksum should be:

Passphrase Frame #1:

FF 4C 49 4E 50 41 53 37

Passphrase Frame #2:

FF 50 48 52 41 53 45 3B

 

2) Checksum can be calculated by above piece of code or the LIN Checksum Calculation and Verification Tool. 

 

Thank you

Best Regards

Raj Chaudhari

View solution in original post

0 Likes
4 Replies
Raj_C
Moderator
Moderator
Moderator
500 replies posted 50 likes received 250 replies posted

Hi @zhanghongjian,

 

For the TLE9853 the passphrase should be as follows:

Raj_JC_0-1673179440926.png

 

Additionally, please ensure the following points:

  • Host is running with the correct baudrate that is 115.2kBaud
  • Signal integrity on the LIN line is good

Please refer to the TLE985x Firmware User Manual for additional information.

 

Thank you

Best Regards

Raj Chaudhari

0 Likes
zhanghongjian
Level 1
Level 1
First reply posted First question asked Welcome!

Thank you for your reply

I have a byte mistake for the unlock sequence,  But after I fixed it, there seems not work either:

Passphrase Frame #1:

FF 4C 49 4E 50 41 53 C8

Passphrase Frame #2:

FF 50 48 52 41 53 45 C4

 

Because my slave device is erased by jlink, so I sended the NAD 0xFF,  that is the first byte of the frame #1 and frame #2

The last byte of the #1 and #2 frame is checksum, the checksum code I wrote is as follows:

uint8_t CalculateCheckSum(uint8_t * data, uint8_t len)

{

    uint16_t checksum = 0;

    uint8_t loop = 0u;

 

    for(loop=0; loop<len; loop++)

   {

        checksum += data[loop];

        if (checksum >= 0x100u)

       {

               checksum -= 0xffu;

        }   

   }

   return (uint8_t)checksum;

}

 

the boaudrat I had confired is 115200bps

The lin connection is the host lin port direct connected to slave port both on TLE9853, the line is very close, the signal should be OK

 

By the way, the slave chip is erased, I think the slave chip is always waited for unlock frame  no matter the NAC, so I didn't reset the slave when I tried the unlock action. 

 

because the unlock frame didn't response, so I tried the get nac frame to confirm that the chip is in BSL mode:

the frame is:  

01 90 91

01 is the length , 90 is the getnac code 

 

 

0 Likes
zhanghongjian
Level 1
Level 1
First reply posted First question asked Welcome!

the problem is solved

I didn't fill right checksum in the last byte, because I didn't undstand the firmware handbook

 

The checksum should inverted at last.

 

uint8_t CalculateCheckSum(uint8_t * data, uint8_t len)

{

    uint16_t checksum = 0;

    uint8_t loop = 0u;

 

    for(loop=0; loop<len; loop++)

   {

        checksum += data[loop];

        if (checksum >= 0x100u)

       {

               checksum -= 0xffu;

        }   

   }

   return (~(uint8_t)checksum);

}

 

0 Likes
Raj_C
Moderator
Moderator
Moderator
500 replies posted 50 likes received 250 replies posted

Hi @zhanghongjian,

Thanks for confirming the solution:

 

1) Resultant passphrase after adding a checksum should be:

Passphrase Frame #1:

FF 4C 49 4E 50 41 53 37

Passphrase Frame #2:

FF 50 48 52 41 53 45 3B

 

2) Checksum can be calculated by above piece of code or the LIN Checksum Calculation and Verification Tool. 

 

Thank you

Best Regards

Raj Chaudhari

0 Likes