D?p?t

MMX

Un chemin complet de zéro à une configuration Klipper multicolore fonctionnelle : fichiers, nomenclature, assemblage du matériel, câblage, configuration Happy Hare, calibrage, première impression et support.

v1.0ActifPackage de release finalKlipper
4 gatesConfiguration de gates document?e
Type-AArchitecture de s?lecteur par servo
EBB42Carte de c?blage de r?f?rence
Happy HareLogiciel Klipper MMU

Happy Hare installation — step by step

This page is written for someone who has never installed Happy Hare before. Do one step, verify it, then continue. Do not paste every command on the page at once.

MMX is a Type-A servo-selector MMU. It uses pre-gate sensors, one gear stepper and one servo-driven camshaft. MMX has no physical camshaft zero mark, so servo calibration must be verified visually.
MMX Type-A MMU architecture diagram showing servo selector, single gear stepper and pre-gate sensors
Default ERCF Type-A architecture diagram for comparison
Tradrack Type-A architecture diagram for comparison
Type-A MMU architecture — MMX (left), default ERCF (centre) and Tradrack (right). All three share the servo-selector design with a single gear stepper.

1. SSH into your Klipper host

Open a terminal on your computer and connect to the Raspberry Pi / CB1 / Linux host that runs Klipper.

ssh pi@your-printer-ip

Replace your-printer-ip with the real IP address of your printer. If your username is not pi, use your actual username.

2. Clone Happy Hare on the printer

Run these commands one at a time. This downloads Happy Hare to your Klipper host.

cd ~
git clone https://github.com/moggieuk/Happy-Hare.git
cd Happy-Hare

When the last command finishes, your terminal should be inside the Happy-Hare folder.

3. Start the interactive installer

Run the installer in interactive mode. The installer will ask questions one by one.

./install.sh -i

4. Answer the installer questions for MMX

Installer questionAnswer for MMXWhy
MMU TypeMMXHappy Hare has a dedicated MMX option.
Number of gates4The current MMX OG build uses gates 0, 1, 2 and 3.
MCU boardEBB42 or your actual boardThe guide pinout uses BTT EBB42 as reference.
NeoPixelsYesMMX has per-gate RGB/RGBW LED indication.
ServoMG996 or your installed servoThe BOM/manual reference MG996.
Endless spoolOptionalEnable only if you want automatic switching to another spool.
Include MMU config filesYesYou need the generated MMU config structure.
Mini screen menuUsually noOnly choose yes if you have a dedicated supported screen.
Default pause/resume macrosYesRecommended starting point.
ERCF filament cutterNoStandard MMX does not include an integrated cutter unless you added one.
BlobifierNo, unless installedOnly enable hardware you physically installed.

5. Enable the MMU panel in Mainsail or Fluidd

Open Mainsail/Fluidd in your browser. Update the interface if needed, then go to settings and enable the MMU panel. Restart the interface after enabling it.

Do not continue to calibration until you can see the MMU panel or sensor states. You need live feedback for pre-gate sensors, toolhead sensor, servo and gates.
Happy Hare MMU panel in Mainsail showing spool status and gate states
Happy Hare MMU panel in Mainsail — spool and gate status view after successful installation.

6. Open the generated MMU config files

Happy Hare creates several files under ~/printer_data/config/mmu/base/ or a similar config path. You will edit these four files:

FileWhat you edit there
mmu.cfgBoard pin aliases for the EBB42 / MMU board.
mmu_hardware.cfgStepper, servo, pre-gate sensors and toolhead sensor.
mmu_parameters.cfgSelector type, sync feedback setting, servo behavior and MMU behavior.
mmu_macro_vars.cfgToolhead distances, tip forming, purge and saved variables path.

7. Set MMX pin aliases in mmu.cfg

In mmu.cfg, set the aliases to match your actual wiring. For the reference EBB42 wiring from the MMX guide, use this mapping:

[board_pins mmu]
mcu: mmu
aliases:
    MMU_GEAR_UART=PA15,
    MMU_GEAR_STEP=PD0,
    MMU_GEAR_DIR=PD1,
    MMU_GEAR_ENABLE=PD2,

    MMU_SEL_SERVO=PB9,
    MMU_NEOPIXEL=PD3,

    MMU_PRE_GATE_0=PB7,
    MMU_PRE_GATE_1=PB5,
    MMU_PRE_GATE_2=PB6,
    MMU_PRE_GATE_3=PB8,
If you do not have a separate gate sensor where Happy Hare expects one, keep MMU_GATE_SENSOR commented out. A false gate sensor can cause the error: Operation not possible. MMU has filament loaded.

8. Configure sensors in mmu_hardware.cfg

Add the four pre-gate sensors and the toolhead sensor. MMX does not have a sync feedback tension/compression sensor, so leave sync feedback undefined/disabled.

[mmu_sensors]
pre_gate_switch_pin_0: ^mmu:MMU_PRE_GATE_0
pre_gate_switch_pin_1: ^mmu:MMU_PRE_GATE_1
pre_gate_switch_pin_2: ^mmu:MMU_PRE_GATE_2
pre_gate_switch_pin_3: ^mmu:MMU_PRE_GATE_3

# No separate gate sensor unless you physically added one
gate_switch_pin: #^mmu:MMU_GATE_SENSOR

# Toolhead sensor from the MMX wiring diagram
toolhead_switch_pin: ^mmu:PB4

9. Disable sync feedback in mmu_parameters.cfg

If the installer enabled sync feedback, disable it for standard MMX.

sync_feedback_enabled: 0

10. Set the selector type

Still in mmu_parameters.cfg, make sure MMX uses the servo selector type.

selector_type: ServoSelector
For MMX, use MMU_GRIP and MMU_RELEASE. Do not copy ERCF/linear-selector commands such as MMU_SERVO POS=down/up.

11. Restart Klipper and check for errors

Save the config files, then restart Klipper. If Klipper reports a config error, fix that first. Do not start calibration until Klipper starts cleanly.

12. Test every sensor before calibration

Use the MMU panel. Insert filament manually into Gate 0, Gate 1, Gate 2 and Gate 3. Each pre-gate sensor must change state. Then test the toolhead sensor.

If a sensor is inverted, check the ^ pull-up prefix and your switch wiring. Calibration will be confusing if sensors are wrong.