Show pageOld revisionsBacklinksExport to PDFBack to top This page is read only. You can view the source, but not change it. Ask your administrator if you think this is wrong. ====== new life for the Prusa Mk3S with klipper ====== there is a very good [[https://www.youtube.com/watch?v=tamAzV9y1bc&t=355s|video on youtube]] which explains it all. basically a raspberry pi zero w can be added to a prusa mk3s printer and then the klipper firmware can be flashed to control the printer using klipper and therefore enable input shaping which more or less gives you the Mk3.5 upgrade bur for the cost of a raspberry pi zero W and a SD card, roughly 30 CHF in total. here are my notes along the way. ===== BEFORE WE BEGIN! ===== **start the printer and check the z offset values for all your build plates!** ===== Pin Header ===== here is an illustration from the prusa manual, which shows which pins need to be soldered in. **CAUTION** note that the black pin header is offset by one row of pins above the 5V pin! {{new_life_for_the_prusa_mk3s_with_klipper:pasted_20260104-185505.png}} i had a raspberry with the full header soldered to it, so i ended up clipping off all the unneeded pins. the remaining header with the now cut off pins however interferes with the 3d printed frame, so i found a [[https://www.printables.com/model/353878-raspberry-pi-zero-2-w-modified-frame-for-einsy-ram/files|modified frame which fits with the full pin header plastic socket is still on the raspberry]] ===== flashing the sd card ===== on ubuntu, the raspberry pi imager can be installed using sudo apt install rpi-imager i configured my wifi, **enabled ssh**, and added my ssh public key ===== flashing the printer firmware ===== connect the raspberry pi with an usb micro OTG cable and a usb A to B cable to the printer. make sure you use the data port for that, then use a micro-usb power supply to power on the raspberry. now ssh into the raspberry and then: cd klipper make menuconfig then: * enable extra llow-level config * change communication interface to ''UART1'' * press **q** to exit save now find the serial port where the prusa printer is attached (via usb for now) ls /dev/serial/by-id/* copy the path and then stop klipper and run the make command to build and flash the firmware: sudo service klipper stop make flash FLASH_DEVICE=/dev/serial/by-id/usb-Prusa_Research__prusa3d.com__Original_Prusa_i3_MK3_.......... once the flashing is done, turn off the printer, disconnect all usb cables and plug the raspberry straight into the back of the controller board as shown in the video. ===== upload and adjust config ===== on your pc, clone the [[https://github.com/charminULTRA/Klipper-Input-Shaping-MK3S-Upgrade/tree/main|charminULTRA Git Repo for the mk3s upgrade]], then go to the config files folder and rename the printer.template.cfg to printer.cfg now go to the web interface of klipper and go to the machine page, there clicke on the left most icon "upload config files" and select all these config files and upload them. now open the ''printer.cfg'' file via the web interface and edit the following sections: put your z offsets from before in this section: <code> [probe] z_offset = 0.800 #Regular bed sheet </code> change the communication port to serial0: <code> [mcu] #serial: /dev/ttyACM0 # If you are using RPI via USB connection to printer serial: /dev/serial0 # If you are using internal RPI serial port, not recommended. restart_method: command </code> enable pressure advance with a value of 0.05: pressure_advance: 0.05 add these basic input shaper values to start with, this can be tuned later if we feel like optimizing it, but that's what the author of the video recommends for the mk3s: <code> [input_shaper] shaper_type_x: mzv shaper_freq_x: 50 shaper_type_y: mzv shaper_freq_y: 40 </code> now save and restart. after that restart, the printer should be showing temperatures and other stuff via the web gui and also on the prusa's display ===== PID Calibration ===== on the dashbard page of klipper, there is a "Console" box. make sure that the printhead is not touching anything with the nozzle and then run this command: PID_CALIBRATE HEATER=extruder TARGET=170 it will heat the extruder to 170 degrees celsius and cool it down a bit, then heat again etc. once this is done, the console output will show the pid values. run the SAVE_CONFIG command to save these values and reboot klipper. now repeat the whole process for the heated printbed: PID_CALIBRATE HEATER=heater_bed TARGET=60 and dont forget: SAVE_CONFIG ===== Prusa Slicer Profile ===== install the Mk3.5 input shaping profile and then save a copy of it, calling it somthing like mk3s klipper or whatever. now edit the profile and go to dependencies and detach the profile, then in general switch the G-code flavor to Klipper and disable binary gcode. in the custom g-code tab remove everything in all the text boxes and disable "emit temprature commands", now add this in the start and end gcode: <code> </code> new_life_for_the_prusa_mk3s_with_klipper.txt Last modified: 07.01.2026 01:46by Pascal Suter