Skip to content

Commit 20fc8e3

Browse files
committed
docs: Improve suggestions on bytes_invalid in CANBUS_Troubleshooting.md
Signed-off-by: Kevin O'Connor <[email protected]>
1 parent b16cb65 commit 20fc8e3

File tree

1 file changed

+27
-11
lines changed

1 file changed

+27
-11
lines changed

Diff for: docs/CANBUS_Troubleshooting.md

+27-11
Original file line numberDiff line numberDiff line change
@@ -37,20 +37,36 @@ hours or more frequently) then it is an indication of a severe
3737
problem.
3838

3939
Incrementing `bytes_invalid` on a CAN bus connection is a symptom of
40-
reordered messages on the CAN bus. There are two known causes of
41-
reordered messages:
42-
1. Old versions of the popular candlight_firmware for USB CAN adapters
43-
had a bug that could cause reordered messages. If using a USB CAN
44-
adapter running this firmware then make sure to update to the
45-
latest firmware if incrementing `bytes_invalid` is observed.
46-
2. Some Linux kernel builds for embedded devices have been known to
47-
reorder CAN bus messages. It may be necessary to use an alternative
48-
Linux kernel or to use alternative hardware that supports
49-
mainstream Linux kernels that do not exhibit this problem.
40+
reordered messages on the CAN bus. If seen, make sure to:
41+
* Use a Linux kernel version 6.6.0 or later.
42+
* If using a USB-to-CANBUS adapter running candlelight firmware, use
43+
v2.0 or later of candleLight_fw.
44+
* If using Klipper's USB-to-CANBUS bridge mode, make sure the bridge
45+
node is flashed with Klipper v0.12.0 or later.
5046

5147
Reordered messages is a severe problem that must be fixed. It will
5248
result in unstable behavior and can lead to confusing errors at any
53-
part of a print.
49+
part of a print. An incrementing `bytes_invalid` is not caused by
50+
wiring or similar hardware issues and can only be fixed by identifying
51+
and updating the faulty software.
52+
53+
Older versions of the Linux kernel had a bug in the gs_usb canbus
54+
driver code that could cause reordered canbus packets. The issue is
55+
thought to be fixed in
56+
[Linux commit 24bc41b4](https://github.com/torvalds/linux/commit/24bc41b4558347672a3db61009c339b1f5692169)
57+
which was released in v6.6.0. In some cases, older Linux versions may
58+
not show the problem (due to how hardware interrupts are configured),
59+
however if problems are seen the recommended solution is to upgrade to
60+
a newer kernel.
61+
62+
Older versions of candlelight firmware could reorder canbus packets,
63+
and the issue is thought to be fixed in
64+
[candlelight_fw commit 8b3a7b45](https://github.com/candle-usb/candleLight_fw/commit/8b3a7b4565a3c9521b762b154c94c72c5acb2bcf).
65+
66+
Older versions of Klipper's USB-to-CANBUS bridge code could
67+
incorrectly drop canbus messages. This is not as severe as reordering
68+
messages, but it should still be fixed. It is thought to be fixed with
69+
[Klipper PR #6175](https://github.com/Klipper3d/klipper/pull/6175).
5470

5571
## Use an appropriate txqueuelen setting
5672

0 commit comments

Comments
 (0)