Mcu unable to connect after SD card swap

Basic Information:

Printer Model: Ender 3 NG
MCU / Printerboard: SKR Mini E3 V3
Host / SBC: Pi Zero 2 W
klippy.log

klippy.log (48.3 KB)

Describe your issue:

I recently swapped out the SD card in my Pi because I was having issues getting my pi to boot. The Pi boots now, but Klipper won’t connect to my MCU. This is a fresh mainsail install onto the new SD. My setup had been working fine previously.

Here are the parts of klippy.log that seem relevant, for ease of access:

mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/usb-Klipper_stm32g0b1xx_490009000450415339373620-if00: [Errno 2] No such file or directory: '/dev/serial/by-id/usb-Klipper_stm32g0b1xx_490009000450415339373620-if00'

the above repeats a bunch of times…

MCU error during connect
Traceback (most recent call last):
  File "/home/frostbyte/klipper/klippy/mcu.py", line 866, in _attach
    self._serial.connect_uart(self._serialport, self._baud, rts)
  File "/home/frostbyte/klipper/klippy/serialhdl.py", line 191, in connect_uart
    self._error("Unable to connect")
  File "/home/frostbyte/klipper/klippy/serialhdl.py", line 68, in _error
    raise error(self.warn_prefix + (msg % params))
serialhdl.error: mcu 'mcu': Unable to connect

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/frostbyte/klipper/klippy/klippy.py", line 131, in _connect
    self.send_event("klippy:mcu_identify")
  File "/home/frostbyte/klipper/klippy/klippy.py", line 227, in send_event
    return [cb(*params) for cb in self.event_handlers.get(event, [])]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/frostbyte/klipper/klippy/klippy.py", line 227, in <listcomp>
    return [cb(*params) for cb in self.event_handlers.get(event, [])]
            ^^^^^^^^^^^
  File "/home/frostbyte/klipper/klippy/mcu.py", line 876, in _mcu_identify
    self._attach()
  File "/home/frostbyte/klipper/klippy/mcu.py", line 871, in _attach
    raise error(str(e))
mcu.error: mcu 'mcu': Unable to connect
mcu 'mcu': Unable to connect
Once the underlying issue is corrected, use the
"FIRMWARE_RESTART" command to reset the firmware, reload the
config, and restart the host software.
Error configuring printer

running ls /dev/serial/by-id/* returns the following:

/dev/serial/by-id/usb-Klipper_stm32g0b1xx_490009000450415339373620-if00

which is also reflected in my printer.cfg:

[mcu]
serial: /dev/serial/by-id/usb-Klipper_stm32g0b1xx_490009000450415339373620-if00
baud: 250000

Later on in the klippy.log, the error repeats with ‘rpi’ instead of ‘mcu’:

mcu 'rpi': Unable to open port: [Errno 2] No such file or directory: '/tmp/klipper_host_mcu'
MCU error during connect
Traceback (most recent call last):
  File "/home/frostbyte/klipper/klippy/mcu.py", line 868, in _attach
    self._serial.connect_pipe(self._serialport)
  File "/home/frostbyte/klipper/klippy/serialhdl.py", line 173, in connect_pipe
    self._error("Unable to connect")
  File "/home/frostbyte/klipper/klippy/serialhdl.py", line 68, in _error
    raise error(self.warn_prefix + (msg % params))
serialhdl.error: mcu 'rpi': Unable to connect

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/frostbyte/klipper/klippy/klippy.py", line 131, in _connect
    self.send_event("klippy:mcu_identify")
  File "/home/frostbyte/klipper/klippy/klippy.py", line 227, in send_event
    return [cb(*params) for cb in self.event_handlers.get(event, [])]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/frostbyte/klipper/klippy/klippy.py", line 227, in <listcomp>
    return [cb(*params) for cb in self.event_handlers.get(event, [])]
            ^^^^^^^^^^^
  File "/home/frostbyte/klipper/klippy/mcu.py", line 876, in _mcu_identify
    self._attach()
  File "/home/frostbyte/klipper/klippy/mcu.py", line 871, in _attach
    raise error(str(e))
mcu.error: mcu 'rpi': Unable to connect
mcu 'rpi': Unable to connect
Once the underlying issue is corrected, use the
"FIRMWARE_RESTART" command to reset the firmware, reload the
config, and restart the host software.
Error configuring printer

In mainsail’s devices tab, the mcu does show up. So communications seems to be fine.

Since the mainsail install on my pi is fresh, I have also tried updating the firmware on my mcu. I did not notice any change after that.

Thank you!

Hello @Tesseract and welcome to the forum!

The issue is not the printer board, it’s the Pi:

serialhdl.error: mcu 'rpi': Unable to connect 

Have you installed Klipper to the Pi as described here? RPi microcontroller - Klipper documentation

That worked, thank you! I forgot I had set up the pi for my accelerometer.