Problem with CANBUS during print/idle

BTT U2C (F072) is easy to get and use to test the same setup with no CAN bridge to determine whether the issue is with the bridge or the EBB.

Note: the BTT U2C (G0B1) has issues updating using CanBoot.

Hi @tiaanv,

so you are using the CAN bus directly on the board, right?
My printer is now 2 days and 5 prints w/o issues.
I redid my wiring and twisted the pair (wasnā€™t before).

1 Like

@flow

Yes. Directly. I have other CAN boards I can hook up to the PI, for some testing. Might do that to see. But I think it would be valuable to have better CAN debugging available when bridge mode is usedā€¦

My wiring is already CAT5 twisted pair. Seems, only really demanding prints with aggressive prints (curves) sometimes make the printer halt. in general, the printer is useable.
Iā€™ve now left my printer idle (still with regular CAN comms between board and controller) for three days, and its still runningā€¦

Iā€™m not sure I can improve my CAN physical setup in ANY meaningful way:

  • Canā€™t make it shorter
  • Already twisted pair
  • properly terminated

Iā€™ll keep digging. Hopefully eventually find the solutionā€¦

Typically CAT5 cabling is solid not stranded wires, solid would not be recommended for wires that move or bend.

1 Like

Agreed, but not really relevant to the issue, I do intend to replace it with something better.

For what it is worth, that looks like some error occurring at the USB hardware level. When these types of errors have come up in the past, they were typically traced back to voltage or wiring issues - see Frequently Asked Questions - Klipper documentation . Debugging would involve inspecting the linux system logs to see what the OS is doing.

Separately, the Klipper log is incomplete - only the full unmodified klipper log is useful. That said, I doubt a klipper log would provide any additional information.

-Kevin

1 Like

Iā€™m not sure this is useful information yet, but I am shooting in the dark to see what I can find:

I reflashed my Octopus and EBB42 (both CanBoot and Klipper), and set the bitrate to 250 000 from 1 000 000, just to see the impact. I then did a complex print, and Eureka the print completed after about 5 hrs!!!.

The next day I repeated the print, and it failed after about 1.5hrsā€¦ The errors in the log are a little more obvious now:

'Got error -1 in can write: (105)No buffer space available'

This makes sense I guessā€¦ Before the shutdown, higher up in the log I can see this message twice, and the increased bytes_retransmit accordingly.

I have a few questions:

  1. Any reason the CAN comms would work great, an then suddenly not? Some ideas of insight form you guys would be great
  2. Is there any rational reason why increasing the txqueuelen from 128 to a higher number would improve this situation?
  3. Does Bridge mode even care about the setting?

It might be over-taxing the Octopus at higher bit rates for your prints, Klipper communicating to the Octopus via CAN bus, and RPi channeling CAN bus communications via USB.

The Octopus communicating via CAN bus, then that adds another layer of communications to control the Octopus.

I wonder, with this setup, if the Klipper Octopus communications could be changed to UART and leave the bridge on the USB.

After the failure and successful prints, do an ifconfig and screenshot the can0 for comparison.

The buffer is at the RPi for its processing, transmit & receive for the bus.

Unclear if an increased txqueuelen number would have prevented your failure since we donā€™t know if the buffer full was the Octopus or the EBB failure.

FYI the BTT Hermit Crab CAN setup has txqueuelen set at 1024

Chiming in here as well, I see a very similar issue to @tiaanv using the octopus in bridge mode. Currently, i have the bitrate set at 500000 and prints fail randomly but almost always within 30 mins or so.

I tried can-utils, running cangen I dont see any dropped packets at all but have exactly the same reproducible symptoms that @tiaanv flagged in post #17 above, the mcu disconnects.

At this point, im planning to switch to a 250k bitrate and try again. Do I need to reflash canboot on the octopus board as well with the new bitrate?

If that doesnā€™t work, I guess the other option is to get a u2c board and hope that fixes the issue from what I see in this discussion?

Edit: Can reliably get klipper to disconnect using cangen in about 2 mins every time. No packet drops at all

Your results mimic mine exactlyā€¦
@ 250k my problem just changed. not sure if this is a CAN bridge issue, Octopus issue or whatā€¦
My next experiment is to go back to a CAN hat on the PI and see where that goesā€¦

cangen does the exact for me on higher baud rate (1000000), but on 250k it does nothing. At least not in a short time.
EDIT: Tested for longerā€¦ got it to error out. Whatā€™s strange is that cangen continues happily, so I guess that means that at least the USB->CAN bridge is still fineā€¦

PS. increasing the txq to 256 did not change anything.

log after cangen error:
250k took less than 2 minutes
klippy (16).log (38.7 KB)

Havenā€™t had a more frustrating issue than this with any electronic project in yearsā€¦ :rofl:

So though Iā€™d do some repeatability testingā€¦ Run cangen, time when it breaks, and log the RX/TX stats from ifconfigā€¦ After three testsā€¦

ELAPSED: 05:51
        RX packets 12917  bytes 94330 (92.1 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 3273  bytes 19142 (18.6 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

ELAPSED: 07:20
        RX packets 16113  bytes 117716 (114.9 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 3908  bytes 22777 (22.2 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

ELAPSED: 07:14
        RX packets 15390  bytes 112457 (109.8 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 3780  bytes 21875 (21.3 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

ELAPSED 29:43
        RX packets 58089  bytes 423608 (413.6 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 14106  bytes 84341 (82.3 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

Almost got excited. Thoughā€¦ hmmā€¦ some consistency with the last two tests. Was hoping for a similar third, to perhaps start seeing a patternā€¦ Alas :upside_down_face:

The fourth test tanked after 30 minutesā€¦
What does that indicateā€¦ Instinctively, to me that does not point to a software issueā€¦ I thinkā€¦ honestly don;t know yet.

Going to continue this line of testing, and then also see similar tests at different bitrates etcā€¦

Then after that do similar tests on pi HAT

Ultimately my thought is still that klipper is to time-sensitive for it to play nice with many CAN set-upsā€¦ Not sure if something can be done to make it more tolerant, because by its nature it is VERY time sensitiveā€¦

Will keep my feedback posted here until we resolve this. Iā€™m hoping it will prove valuable to others trying to debug similar situations, and know what ends up being rabbit holes, foolā€™s errands, and ultimately what mattersā€¦

Hereā€™s an interesting finding.

If I leave the printer idle for some time, then come back and run the cangen test, if breaks within secondsā€¦
Also FWIW I stripped down all additional accessories I added one by one, and the removal of any of them progressively had no positive impact:

  • Servo
  • Neopixel
  • Usb Camera
  • Klipperscreen

To be thorough, I also swapped out the USB cable between PI and Octopus. No improvement.

EDIT:
I would like someone to do a sanity test, preferably with a BRIDGE setup:

  • CAN Btirate 250k
  • Run CanGen with: cangen can0 -g 5 -p 10 -x

The cangen command above is sending a packet every 10ms, load testing technically is 0ms. The default is 200ms (if you donā€™t specify parameters)

When I run this I can get the firmware to fall over within 10 seconds. What I am trying to establish, is if cangen is a valid way of testing stabilityā€¦ since what I think is happening is that cangen is simply hogging the interface, and klipper times out, then stops.

Itā€™s worth noting that the klipper code will NEVER up that error count in ifconfig. That threw me for a long while. I donā€™t see anything in the thread about verifying termination, I would recommend doing that. Itā€™s 2 seconds with a meter. Can is pretty stout electrically, but it has to be properly terminated or all bets are off. Make sure you are running the 32bit kernel too, there is something wrong with CAN timings in the AArch64 one.

@tshackelton FWIW:

pi@mainsail:~ $ uname -a
Linux mainsail 5.10.103-v7+ #1529 SMP Tue Mar 8 12:21:37 GMT 2022 armv7l GNU/Linux
pi@mainsail:~ $ getconf LONG_BIT
32

Resistance measured (60.84 ohm).

So all seems correct :man_shrugging:

@koconnor

as per your discord suggestion:

pi@mainsail:~ $ candump -t z -Ddex can0,#FFFFFFF
 (000.000000)  can0  RX - -  10B   [8]  0E 19 59 09 82 8F E2 F9
 (000.000127)  can0  RX - -  10B   [6]  2C BA 35 94 6A 7E
 (000.010240)  can0  RX - -  10B   [8]  0F 19 59 0A 82 90 8A 81
 (000.010369)  can0  RX - -  10B   [7]  2C 81 F2 47 C4 8C 7E
 (000.010499)  can0  TX B E  108   [6]  06 1B 05 C9 7E 7E
 (000.010617)  can0  RX - -  109   [8]  0B 1C 52 85 E2 E3 EE 47
 (000.010743)  can0  RX - -  109   [8]  15 8E 7E 05 1C 54 ED 7E
 (000.059624)  can0  RX - -  109   [8]  0F 1C 59 0F 86 80 97 D1
 (000.059742)  can0  RX - -  109   [7]  40 81 F2 4B D8 F6 7E
 (000.079873)  can0  RX - -  109   [8]  0E 1C 59 11 86 81 F3 AE
 (000.079991)  can0  RX - -  109   [6]  40 BB 63 9B 77 7E
 (000.300117)  can0  RX - -  10B   [8]  0E 19 59 09 82 98 F6 E9
 (000.300239)  can0  RX - -  10B   [6]  2C BA 34 81 73 7E
 (000.310361)  can0  RX - -  10B   [8]  0F 19 59 0A 82 99 9D F1
 (000.310486)  can0  RX - -  10B   [7]  2C 81 F2 47 CE 27 7E
 (000.360603)  can0  RX - -  109   [8]  0F 1C 59 0F 86 99 F7 C4
 (000.360730)  can0  RX - -  109   [7]  40 81 F2 4C 4D 1C 7E
 (000.379607)  can0  RX - -  109   [8]  0E 1C 59 11 86 9B D3 A1
 (000.379733)  can0  RX - -  109   [6]  40 BB 62 33 28 7E
 (000.599847)  can0  RX - -  10B   [8]  0E 19 59 09 82 A2 8A D9
 (000.599977)  can0  RX - -  10B   [6]  2C BA 37 73 07 7E
 (000.610095)  can0  RX - -  10B   [8]  0F 19 59 0A 82 A2 B1 E1
 (000.610226)  can0  RX - -  10B   [7]  2C 81 F2 47 6E 3B 7E
 (000.660341)  can0  RX - -  109   [8]  0F 1C 59 0F 86 B3 D7 B7
 (000.660465)  can0  RX - -  109   [7]  40 81 F2 4C 4A 97 7E
 (000.680588)  can0  RX - -  109   [8]  0E 1C 59 11 86 B5 B3 94
 (000.680714)  can0  RX - -  109   [6]  40 BB 64 69 CA 7E
 (000.747091)  can0  TX - E  10A   [6]  06 19 05 FA CE 7E
 (000.748461)  can0  RX - -  10B   [8]  0B 1A 52 82 9D D3 F2 06
 (000.748592)  can0  RX - -  10B   [8]  7C 31 7E 05 1A 31 DB 7E
 (000.899961)  can0  RX - -  10B   [8]  0E 1A 59 09 82 AB 9E C9
 (000.900094)  can0  RX - -  10B   [6]  2C BA 30 0C 53 7E
 (000.910211)  can0  RX - -  10B   [8]  0F 1A 59 0A 82 AB C5 D1
 (000.910338)  can0  RX - -  10B   [7]  2C 81 F2 46 C1 44 7E
 (000.960458)  can0  RX - -  109   [8]  0F 1C 59 0F 86 CD B7 AA
 (000.960588)  can0  RX - -  109   [7]  40 81 F2 4A F7 49 7E
 (000.979472)  can0  RX - -  109   [8]  0E 1C 59 11 86 CF 93 87
 (000.979713)  can0  RX - -  109   [6]  40 BB 5E 9D E1 7E
 (000.994834)  can0  TX B E  108   [6]  06 1C 05 84 76 7E
 (000.994973)  can0  RX - -  109   [8]  0B 1D 52 86 B7 AA B7 1A
 (000.995088)  can0  RX - -  109   [8]  3B 31 7E 05 1D 45 64 7E
 (001.200205)  can0  RX - -  10B   [8]  0E 1A 59 09 82 B4 B2 B9
 (001.200336)  can0  RX - -  10B   [6]  2C BA 31 2F 07 7E
 (001.210451)  can0  RX - -  10B   [8]  0F 1A 59 0A 82 B4 D9 C1
 (001.210580)  can0  RX - -  10B   [7]  2C 81 F2 48 43 03 7E
 (001.259453)  can0  RX - -  109   [8]  0F 1D 59 0F 86 E7 97 9D
 (001.259586)  can0  RX - -  109   [7]  40 81 F2 4D 3D DE 7E
 (001.279703)  can0  RX - -  109   [8]  0E 1D 59 11 86 E8 F2 FA
 (001.279828)  can0  RX - -  109   [6]  40 BB 64 CD 93 7E
 (001.487455)  can0  RX - -  10B   [8]  0E 1A 50 81 47 88 F4 06
 (001.487587)  can0  RX - -  10B   [6]  B2 CC 4A 65 0F 7E
 (001.487701)  can0  RX - -  109   [8]  11 1D 50 97 4B 80 FE C7
 (001.487826)  can0  RX - -  109   [8]  76 81 DB D4 DB 7E 4F F3
 (001.487954)  can0  RX - -  109   [1]  7E
 (001.500567)  can0  RX - -  10B   [8]  0E 1A 59 09 82 BD C6 A9
 (001.500697)  can0  RX - -  10B   [6]  2C BA 34 A6 9B 7E
 (001.509570)  can0  RX - -  10B   [8]  0F 1A 59 0A 82 BD ED B1
 (001.510942)  can0  RX - -  10B   [7]  2C 81 F2 44 0A D9 7E
 (001.559813)  can0  RX - -  109   [8]  0F 1D 59 0F 87 80 F7 90
 (001.559944)  can0  RX - -  109   [7]  40 81 F2 4A 50 86 7E
 (001.580064)  can0  RX - -  109   [8]  0E 1D 59 11 87 82 D2 ED
 (001.580191)  can0  RX - -  109   [6]  40 BB 60 4E CC 7E
 (001.734065)  can0  TX - E  10A   [6]  06 1A 05 D0 A6 7E
 (001.734197)  can0  RX - -  10B   [8]  0B 1B 52 82 BB DF DB 36
 (001.734318)  can0  RX - -  10B   [8]  47 26 7E 05 1B 20 52 7E
 (001.800679)  can0  RX - -  10B   [8]  0E 1B 59 09 82 C6 DA 99
 (001.800811)  can0  RX - -  10B   [6]  2C BA 30 AB 3E 7E
 (001.809679)  can0  RX - -  10B   [8]  0F 1B 59 0A 82 C7 81 A1
 (001.809820)  can0  RX - -  10B   [7]  2C 81 F2 43 D1 E9 7E
 (001.859926)  can0  RX - -  109   [8]  0F 1D 59 0F 87 9A D7 83
 (001.860056)  can0  RX - -  109   [7]  40 81 F2 4D 54 4B 7E
 (001.880177)  can0  RX - -  109   [8]  0E 1D 59 11 87 9C B2 E0
 (001.880307)  can0  RX - -  109   [6]  40 BB 5F D6 96 7E
 (001.980430)  can0  TX B E  108   [6]  06 1D 05 9D AE 7E
 (001.980562)  can0  RX - -  109   [8]  0B 1E 52 87 8B ED AC 63
 (001.980681)  can0  RX - -  109   [8]  56 D1 7E 05 1E 77 FF 7E
 (002.099562)  can0  RX - -  10B   [8]  0E 1B 59 09 82 CF EE 89
 (002.100924)  can0  RX - -  10B   [6]  2C BA 30 B4 2D 7E
 (002.109802)  can0  RX - -  10B   [8]  0F 1B 59 0A 82 D0 95 91
 (002.109929)  can0  RX - -  10B   [7]  2C 81 F2 46 72 58 7E
 (002.160053)  can0  RX - -  109   [8]  0F 1E 59 0F 87 B4 B6 F6
 (002.160176)  can0  RX - -  109   [7]  40 81 F2 4A 8B D8 7E
 (002.180317)  can0  RX - -  109   [8]  0E 1E 59 11 87 B6 92 D3
 (002.180431)  can0  RX - -  109   [6]  40 BB 63 FC D0 7E
 (002.400551)  can0  RX - -  10B   [8]  0E 1B 59 09 82 D9 81 F9
 (002.400676)  can0  RX - -  10B   [6]  2C BA 32 5C 7F 7E
 (002.409545)  can0  RX - -  10B   [8]  0F 1B 59 0A 82 D9 A9 81
 (002.410914)  can0  RX - -  10B   [7]  2C 81 F2 46 71 05 7E
 (002.459796)  can0  RX - -  109   [8]  0F 1E 59 0F 87 CE 96 E9
 (002.459919)  can0  RX - -  109   [7]  40 81 F2 4C 4D 29 7E
 (002.480049)  can0  RX - -  109   [8]  0E 1E 59 11 87 CF F2 C6

this is without running cangen:
Then when I run cangen:

 (202.246107)  can0  TX B E  10A   [8]  7E 06 17 05 60 DE 7E 06
 (202.246237)  can0  TX B E  10A   [8]  18 05 E3 16 7E 06 19 05
 (202.246355)  can0  TX B E  10A   [8]  FA CE 7E 06 1A 05 D0 A6
 (202.246497)  can0  RX - -  109   [8]  0E 1E 50 86 4A 9D F4 76
 (202.246626)  can0  TX B E  10A   [8]  7E 06 1B 05 C9 7E 7E 06
 (202.246754)  can0  TX B E  10A   [8]  1C 03 E1 40 7E 06 1D 05
 (202.246877)  can0  TX B E  10A   [8]  9D AE 7E 06 1E 05 B7 C6
 (202.247031)  can0  RX - -  109   [6]  D7 FC 59 C3 E8 7E
 (202.247157)  can0  TX B E  10A   [8]  7E 06 1F 05 AE 1E 7E 06
 (202.247437)  can0  TX B E  10A   [8]  10 05 2D D6 7E 06 11 05
 (202.247495)  can0  TX B E  10A   [8]  34 0E 7E 06 12 05 1E 66
 (202.247608)  can0  TX B E  10A   [1]  7E
 (202.252730)  can0  RX - -  109   [8]  0F 1E 59 0F 85 E5 9E C9
 (202.252854)  can0  RX - -  109   [7]  40 81 F2 4C 12 8E 7E
 (202.271731)  can0  RX - -  109   [8]  0E 1E 59 11 85 E6 FA A6
 (202.271858)  can0  RX - -  109   [6]  40 BB 5F BF 64 7E
 (202.551978)  can0  RX - -  109   [8]  0F 1E 59 0F 85 FE FE BC
 (202.552108)  can0  RX - -  109   [7]  40 81 F2 4C 65 D3 7E
 (202.572229)  can0  RX - -  109   [8]  0E 1E 59 11 86 80 DA 99
 (202.572347)  can0  RX - -  109   [6]  40 BB 61 CE 26 7E
 (202.852464)  can0  RX - -  109   [8]  0F 1E 59 0F 86 98 DE AF
 (202.852591)  can0  RX - -  109   [7]  40 81 F2 4D 2E 2E 7E
 (202.872708)  can0  RX - -  109   [8]  0E 1E 59 11 86 9A BA 8C
 (202.872838)  can0  RX - -  109   [6]  40 BB 63 8A CF 7E
 (202.911705)  can0  TX - -  108   [6]  06 1E 05 B7 C6 7E
 (202.911834)  can0  RX - -  109   [8]  0B 1F 52 86 84 D4 80 7F
 (202.911959)  can0  RX - -  109   [8]  3A 77 7E 05 1F 66 76 7E
 (203.152097)  can0  RX - -  109   [8]  0F 1F 59 0F 86 B2 BE A2
 (203.152210)  can0  RX - -  109   [7]  40 81 F2 4A 7E 11 7E
 (203.172321)  can0  RX - -  109   [8]  0E 1F 59 11 86 B4 99 FF
 (203.172453)  can0  RX - -  109   [6]  40 BB 5F E3 10 7E
 (203.452562)  can0  RX - -  109   [8]  0F 1F 59 0F 86 CC 9E 95
 (203.452693)  can0  RX - -  109   [7]  40 81 F2 4E CE 35 7E
 (203.472811)  can0  RX - -  109   [8]  0E 1F 59 11 86 CD F9 F2
 (203.472940)  can0  RX - -  109   [6]  40 BB 64 A6 0E 7E
 (203.751803)  can0  RX - -  109   [8]  0F 1F 59 0F 86 E5 FE 88
 (203.751933)  can0  RX - -  109   [7]  40 81 F2 4B F4 A7 7E
 (203.772051)  can0  RX - -  109   [8]  0E 1F 59 11 86 E7 D9 E5
 (203.772183)  can0  RX - -  109   [6]  40 BB 5F 71 21 7E
 (203.896059)  can0  TX - -  108   [6]  06 1F 05 AE 1E 7E
 (203.896186)  can0  RX - -  109   [8]  0B 10 52 86 D9 98 DB 2F
 (203.896308)  can0  RX - -  109   [8]  BB 15 7E 05 10 9E 81 7E
 (204.052683)  can0  RX - -  109   [8]  0F 10 59 0F 86 FF DD FB
 (204.052805)  can0  RX - -  109   [7]  40 81 F2 47 FF 3B 7E
 (204.071670)  can0  RX - -  109   [8]  0E 10 59 11 87 81 B9 D8
 (204.071801)  can0  RX - -  109   [6]  40 BB 60 73 D9 7E
 (204.351934)  can0  RX - -  109   [8]  0F 10 59 0F 87 99 BD EE
 (204.352161)  can0  RX - -  109   [7]  40 81 F2 4A 4C 8C 7E
 (204.372171)  can0  RX - -  109   [8]  0E 10 59 11 87 9B 99 CB
 (204.372296)  can0  RX - -  109   [6]  40 BB 5E 46 67 7E
 (204.652418)  can0  RX - -  109   [8]  0F 10 59 0F 87 B3 9D E1
 (204.652533)  can0  RX - -  109   [7]  40 81 F2 4B 38 4D 7E
 (204.672653)  can0  RX - -  109   [8]  0E 10 59 11 87 B4 F9 BE
 (204.672779)  can0  RX - -  109   [6]  40 BB 5C 48 3D 7E
 (204.880394)  can0  TX - -  108   [6]  06 10 05 2D D6 7E
 (204.880525)  can0  RX - -  109   [8]  0B 11 52 87 AD D5 8A 74
 (204.880652)  can0  RX - -  109   [8]  D8 5D 7E 05 11 8F 08 7E
 (204.952019)  can0  RX - -  109   [8]  0F 11 59 0F 87 CC FD D4
 (204.952148)  can0  RX - -  109   [7]  40 81 F2 4B 10 50 7E
 (204.972269)  can0  RX - -  109   [8]  0E 11 59 11 87 CE D9 B1
 (204.972393)  can0  RX - -  109   [6]  40 BB 61 B0 1B 7E
 (205.252516)  can0  RX - -  109   [8]  0F 11 59 0F 87 E6 DD C7
 (205.252639)  can0  RX - -  109   [7]  40 81 F2 4B B6 68 7E
 (205.272761)  can0  RX - -  109   [8]  0E 11 59 11 87 E8 B9 A4
 (205.272885)  can0  RX - -  109   [6]  40 BB 63 02 D6 7E
 (205.551751)  can0  RX - -  109   [8]  0F 11 59 0F 88 80 BD BA
 (205.551886)  can0  RX - -  109   [7]  40 81 F2 4A 04 2D 7E
 (205.572003)  can0  RX - -  109   [8]  0E 11 59 11 88 82 99 97
 (205.572136)  can0  RX - -  109   [6]  40 BB 60 8E A8 7E
 (205.852267)  can0  RX - -  109   [8]  0F 11 59 0F 88 9A 9D AD
 (205.852435)  can0  RX - -  109   [7]  40 81 F2 4B 48 C6 7E
 (205.864994)  can0  TX - -  108   [6]  06 11 05 34 0E 7E
 (205.865126)  can0  RX - -  109   [8]  0B 12 52 88 82 97 BD 24
 (205.865248)  can0  RX - -  109   [8]  3D 84 7E 05 12 BD 93 7E
 (205.871618)  can0  RX - -  109   [8]  0E 12 59 11 88 9B F9 8A
 (205.871755)  can0  RX - -  109   [6]  40 BB 61 65 16 7E
 (206.151853)  can0  RX - -  109   [8]  0F 12 59 0F 88 B3 FD A0
 (206.151988)  can0  RX - -  109   [7]  40 81 F2 4B 6F 0A 7E
 (206.172104)  can0  RX - -  109   [8]  0E 12 59 11 88 B5 D8 FD
 (206.172233)  can0  RX - -  109   [6]  40 BB 5F 67 98 7E
 (206.452346)  can0  RX - -  109   [8]  0F 12 59 0F 88 CD DD 93
 (206.452477)  can0  RX - -  109   [7]  40 81 F2 4D D1 2C 7E
 (206.472594)  can0  RX - -  109   [8]  0E 12 59 11 88 CF B8 F0
 (206.472723)  can0  RX - -  109   [6]  40 BB 61 79 56 7E
 (206.751588)  can0  RX - -  109   [8]  0F 12 59 0F 88 E7 BD 86
 (206.751718)  can0  RX - -  109   [7]  40 81 F2 4A 3A E2 7E
 (206.771840)  can0  RX - -  109   [8]  0E 12 59 11 88 E9 98 E3
 (206.771973)  can0  RX - -  109   [6]  40 BB 5F BA CC 7E
 (206.849587)  can0  TX - -  108   [6]  06 12 05 1E 66 7E
 (206.849717)  can0  RX - -  109   [8]  0B 13 52 88 D6 D8 D5 31
 (206.849838)  can0  RX - -  109   [8]  A5 A3 7E 05 13 AC 1A 7E
 (207.052473)  can0  RX - -  109   [8]  0F 13 59 0F 89 81 9C F9
 (207.052614)  can0  RX - -  109   [7]  40 81 F2 46 26 AC 7E
 (207.072710)  can0  RX - -  109   [8]  0E 13 59 11 89 82 F8 D6
 (207.072835)  can0  RX - -  109   [6]  40 BB 63 DB 53 7E
 (207.247953)  can0  TX B E  10A   [8]  7E 06 17 05 60 DE 7E 06
 (207.248085)  can0  TX B E  10A   [8]  18 05 E3 16 7E 06 19 05
 (207.248209)  can0  TX B E  10A   [8]  FA CE 7E 06 1A 05 D0 A6
 (207.248327)  can0  RX - -  109   [8]  0E 13 50 85 08 97 F2 6F
 (207.248478)  can0  RX - -  109   [6]  CC A5 07 77 64 7E
 (207.248595)  can0  TX B E  10A   [8]  7E 06 1B 05 C9 7E 7E 06
 (207.248727)  can0  TX B E  10A   [8]  1C 03 E1 40 7E 06 1D 05
 (207.248838)  can0  TX B E  10A   [8]  9D AE 7E 06 1E 05 B7 C6
 (207.248959)  can0  TX B E  10A   [8]  7E 06 1F 05 AE 1E 7E 06
 (207.249111)  can0  TX B E  10A   [8]  10 05 2D D6 7E 06 11 05
 (207.249208)  can0  TX B E  10A   [8]  34 0E 7E 06 12 05 1E 66
 (207.250575)  can0  TX B E  10A   [1]  7E
 (207.351961)  can0  RX - -  109   [8]  0F 13 59 0F 89 9A FC EC

From what I understand is the the E flag is indicating an error state. The B, is bitrate change?? not sure how relevant that isā€¦
Clearly before it fails, the amount of failures increases significantlyā€¦ Not sure if this sheds ANY light on the subjectā€¦
I am going to redo the CAN wiring AGAIN for good measureā€¦ see if it has ANY effect.

I have switched to a CAN hat on the Pi for additional tests.
The candump information is pretty inconclusiveā€¦ but i can see similar data, now running on a dual CAN HAT.

I have rewired the can wires. no difference.

I am ready to throw in the towel and revert to a wire loom againā€¦ It shouldnā€™t be this intricate.

Final thoughts are that klipper is not ready to use CAN.
I am not sure if the issue lies with the klipper firmware on the EBB42, or if it lies with klipper. but something is not ready for primetimeā€¦

Did you redo the firmware on the Octopus, so it is not a CAN bridge but just on the CAN bus?

Also, make sure you look through the development posts while testing the Klipper bridge.

@NAPCAL

Yes. Was bit of a mission, but reflashed in normal USB(SERIAL) mode. The Octopus is no longer connected to the CAN bus. only the EBB to the CAN hat.

It is hard to tell how it will behave if I try a print, Iā€™m not prepared to waste more filament. Running cangen for an indeterminate amount of time gets it to error out.

That thread was one of the first I read throughā€¦ Thereā€™s nothing in there thatā€™s helpful. The branch has been merged some time ago. I see there are others with the exact same symptoms on Discord. This is not isolated. To be clear this does not seem to be isolated to USB-bridge-mode. I can reproduce it with a normal hat, if the can bus gets a little pressure from cangenā€¦

I found this video, it is about diagnostic CAN bus on a scope for automotive, but does have some information for detecting issues, if you have a scope. Quick Tip: CAN Bus Diagnostics

@NAPCAL Thx for the info. I will take a look. I have a small project scope. I had done a few CAN projects before with other hardware, and ran @ higher bitrates over longer lengths, albeit not timing sensitive, I think this issue is beyond simple CAN performance.