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