Bltouch sensor state fail then mcu timeout - dual MCU IDEX

Hi,
I have built a dual MCU IDEX with klipper and so far it works well except for a few quirks.

First MCU (mcu) has X1,Y,Z1,Z2 connected and second MCU (auxboard) has X2,E1,E2 connected. Both MCU have their own separate 24v PSU wired to the same 230v plug. They’re connected to a Pi 4 over USB.

I successfully tested all axis/endstop with stepper_buzz and endstop_query but when I go to home axis with G28 the head moves to safe z home (after all other axis have homed) and the probe does not deploy and klipper prints error “BLTouch failed to verify sensor state”. (Manually testing probe with probe debug the probe works just fine.)

However, when I disable the dual_carriage (second X motor) the printer homes succesfully and works well (even with the E1/E2 connected to the auxboard). I can move the printer, rehome, run Z tilt etc.

As part of troubleshooting I swapped X2 from the auxboard to the mcu and the y axis from the mcu to the auxboard (as well as their corresponding end stops).

This time, as soon as I tried homing the Y axis after about 5 seconds the printer stops and prints the error “Timeout: Lost Connection with mcu: Auxboard”. Although, after restarting and homing again it errored with “Timeout:Lost Connection with mcu: mcu” - a different mcu. Wondering if it was a USB controller bug I put both mcu on USB 2,0 plugs to be on the same USB controller. The problem remained.

Went back to X2 on the auxboard and the timeout problem went away again.

I’m completely stumped as to what is going on, the probe not deploying when the dual_carriage (X2) is enabled is odd when it works with X2 disabled. And weirder still the mcu timeout errors when running Y axis on the auxboard when I don’t get any timeouts when running X2 and E1/E2 on the auxboard.

Does anyone have any ideas what could be going on? I checked power from the dual PSU and they’re both 24.1v and have had no issue prior to now, USB cables have been running on 2 separate printers for last 5 months, as have USB ports on the Pi 4.

Could it be a USB issue, in which case would I need to connect the boards with UART to the EXP ports? Or is klipper not stable enough for dual MCU and should I look at getting an EXP stepper expander for my motherboard?

Any help on this would be great, thank you.

info;
Mcu: Creality 2.5.2 (atmega 2560)
auxboard: Creality 1.1.3 (atmega1284p)

all corresponding axes’ end stops are on the same board, eg X1 endstop is on mcu, X2 is on auxboard.

klippy log; iCloud

See https://www.antclabs.com/wiring3
Might be the issue, since you already have pin_up_touch_mode_reports_triggered set to false.

1 Like

My BLtouch is connected to Z_Max port on my 2.5.2 board (stock configuration). Its odd as the probe has worked perfectly with klipper for months until I added the [dual carriage], and indeed the problem goes away when its removed again.

I will check tomorrow if there Is a capacitor on the Z_max pin (although interestingly Z max is a 3 pin interface so must supply the 5v needed for the probe).
Thanks!