Skip to content
Main site

Klipper MCU extruder_board

The extruder_board is a custom Ginger Additive board — a small Arduino Nano (or similar) flashed with Klipper — mounted inside the panel box (the green PCB). It is a second Klipper MCU alongside the main Octopus board.


The extruder_board handles only the following:

  • The 3 heater relays (one per heating zone) — and it passes the 220V through to the heater cartridges
  • The bed SSR output pin (the control signal that switches the bed’s solid-state relay)
  • The fans
  • The servo that actuates the bed-leveling probe

Raspberry Pi (host, runs Klipper + Mainsail)
├── mcu (Octopus board) — motion (steppers, endstops) + NTC temperature sensing
└── extruder_board (Arduino Nano) — 3 heater relays + 220V, bed SSR output, fans, probe servo

Both MCUs connect to the Raspberry Pi over USB. The USB plugs into the port on the panel box that routes to the Raspberry Pi. Both MCUs must be running for the printer to operate.



Common error: “Lost communication with MCU ‘extruder_board’”

Section titled “Common error: “Lost communication with MCU ‘extruder_board’””

If the board is not connected, Klipper raises this error. There are two cases:

  • Hardware (most common): the USB connection has come loose or failed. Re-seat the USB at the panel box port and do a firmware restart.
  • Software: the serial ID is wrong in printer.cfg (the [mcu extruder_board] serial: path no longer matches the device). Correct the serial path.

See Klipper MCU communication lost for the full diagnosis guide.

Other contributing factors:

  • Voltage dip on the supply (e.g. vacuum pump startup on the same circuit)
  • Extruder_board firmware not matching the Klipper host version — run Klipper firmware update

The extruder_board runs its own Klipper firmware binary. After a Klipper host update, the board firmware must also be reflashed to match. This is handled by the Update Manager in G1OS (http://g1os.local → Machine → Update Manager → UPDATE ALL COMPONENTS).


In Mainsail Console:

STATUS

Output shows both mcu and extruder_board — both should show Connected. If extruder_board shows Disconnected or is absent: check the USB connection (hardware) or the serial: path in printer.cfg (software), then do a firmware restart.