Showing posts from April, 2022

MatLab CRC8 SAE J1850

 I got unexpected request for help of porting  CRC8 SAE J1850 to MatLab code. So I decided to publish it also here if anyone else needs it. Code is here: Screenshot from MatLab online: I hope this can help you.  Best Regards, Igor Mišić

Fastest automotive Base64 encoder and decoder

 Base64 will probably not be used in the safety-critical parts of code, but if needed for some other segment, why not use the fastest and most secure and safe one? Background story We started IMProject back in 2021. It is in general Bootloader and Flasher ecosystem. Soon we figured out that we would like to use JSON for easy human readability of some identification and this is where we introduced Base64 into our project.  Since we are writing our code following MISRA C:2012 we were searching for an automotive or avionic Base64 code but without luck. We figured out that we will need to do it by ourselves. This is where Juraj jumped in and reused the algorithm of the fastest open-source Base64 encoder and decoder to rewrite it in C by MISRA C:2012 coding guidance. What did we use? There is a guy Gaspard Petit who tested probably all available base64 algorithms. He went to the conclusion that the fastest base64 encoder is jounimalinen  and polfosol  decoder. The original StackOverflow