Repository navigation
3.7
Bugfix
- Slave mode: the slave lost the frame after a header nobody answered. When the slave subscribed a frame that no node answered, the next header's break byte was counted as that frame's data and the count was not reset when the break was detected. The following frame was then read one byte off: its last data byte was taken as the checksum and the frame was dropped. With a subscribed slot that stays unanswered every cycle (e.g. simulating one slave while another node is missing), the slave never received the frame after it.
Testing
Two converters on one LIN bus, both on 3.7: the slave now receives every frame after an unanswered subscribed header (23 of 23 in 1.5 s, before 0). New regression test test_slave_subscribed_to_unanswered_header_keeps_next_frame; full test suite 65/65 with both role assignments.
Unchanged from 3.6: 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: v0307. Flash over USB DFU (send boot, then STM32CubeProgrammer).
SHA-256 of LUC_0307.bin: 6d84682b9e651428d3c9535ef48e914ead0362c4c8b3b67f01972c8e5d6dac2d