Skip to content

Choose a tag to compare

@Lukasz-Juranek Lukasz-Juranek released this 03 Nov 14:39

Bugfix

  • Monitor mode: frames sent back to back were lost. The monitor does not know a frame's length, so it ends a frame after about 3 ms of bus idle. When the next frame's break arrived sooner (e.g. one-shot frames sent as fast as the converter acknowledges them, about 4 ms apart at 19200 baud), the reception was reset and the previous frame was dropped — roughly every other frame. The monitor now reports the previous frame (checksum checked as before) when the next break arrives.

Testing

Two converters on one LIN bus, both on 3.8: 32 one-shot frames sent back to back, the monitor received all 32 in order (before: 15 of 32). New regression test test_monitor_reports_back_to_back_frames (fails on 3.7, passes on 3.8); full test suite 66/66 with both role assignments. CANgaroo uLC driver hardware test: 32/32 checks passed.

Unchanged from 3.7: slave fix after an unanswered header, clock recovery (CRS) on the internal 48 MHz oscillator, USB ID 1209:2779 from pid.codes, master slot timing from 3.4.

Firmware version string: v0308. Flash over USB DFU (send boot, then STM32CubeProgrammer).

SHA-256 of LUC_0308.bin: 94fa7b5d1345e7f78c7a74bb715be0d0c6d0cf6c817fb9bac423e000825088d1