Sapphire Pro using BigTreeTech SKR 1.4 & the RPI as a secondary MCU configured with 3d touch see Bltouch offsets & mesh bed levelling sections, please note: Extruder is running in direct drive mode. configured with Klipper, Fluidd & Moonraker
Get USB Id
ls /dev/serial/by-id/*- update the printer.cfg with the output, eg:
serial:/dev/serial/by-id/usb-1a86_USB2.0-Serial-if00-port0
Set-up RPI as secondary MCU
- Install the rc script
cd ~/klipper/sudo cp ./scripts/klipper-mcu.service /etc/systemd/system/sudo systemctl enable klipper-mcu.service- Select
Linux process make menuconfigsudo service klipper stopmake flashsudo service klipper startsudo usermod -a -G tty pi** only required if If klippy.log reports a “Permission denied” error
Calibrate Z-offset
PROBE- Place a piece of paper under the nozzle
PROBE_CALIBRATETESTZ Z=-.5(moves nozzle 0.5 closer to the paper/bed)ACCEPTonce correct offsetSAVE_CONFIGwill restart the MCU
Using GPIO See vid here for wiring Connect RX , TX & GND pins from TFT header to PI UART GPIO pins 14 & 15 and any Gnd pin ensuring RX & TX are crossed, see here for the PI UART PINOUT. To power the PI from the SKR connect 5v to Pin 2 on the PI
Software Config
- Swapping ports used by GPIO and Bluetooth
sudo nano /boot/config.txt& appenddtoverlay=pi3-miniuart-bt- Disable the serial console
sudo nano /boot/cmdline.txtLook for following string (text) and deleteconsole=serial0,115200
Pi serial config
sudo raspi-config- select
*Interfacing Options* *P6 - Serial**No**Yes*- Exit and reboot.
Rebuild your Klipper MCU firmware
- unselect Use
*USB for communication*(instead of serial) - Flash updated firmware to your board
Update your printer.cfg:
serial: /dev/ttyAMA0
Related python scripts See here for additional RPI scripts