Skip to content

Simple software to control a 3D printer controlled with Klipper software.

License

Notifications You must be signed in to change notification settings

RafalVonau/KlipperController

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Klipper Controler

Simple software to control a 3D printer controlled with Klipper software.

I am using an "Ender3 PRO" 3D printer controlled from a Raspberry PI2 via Klipper software (see https://www.klipper3d.org/). PI2 is not powerful enough to handle octoprint well in the printer room and I don't have access to a computer so editing the klipper.cfg configuration file is problematic.

I decided to write my own software to control the printer. This software is divided into 2 parts:

  • A server written in C that runs on a raspberry PI2 (RPC).
  • Software written in flutter for an Android/iOS cell phone to control the 3D printer.

Features:

  • Upload files from internal/external cell phone storage to Raspberry PI (virtual SD card directory)
  • Edit the Klipper configuration file on cell phone
  • View klipper log file
  • Start 3D print from the Klipper virtual SD card
  • Control temperature and motor movement with a cell phone
  • Monitor print progress and head/bed temperatures

Building server on PI

  • install git and gcc compiler on pi (sudo apt install git gcc)
  • log in to PI (ssh)
  • git clone https://github.com/BubuHub/KlipperController.git
  • cd KlipperController/print-server-c
  • make
  • sudo make install
  • edit configuration file in /etc/default/print-server
    type:
    sudo systemctl stop print-server
    sudo mcedit /etc/default/print-server
    change paths:
    UPLOAD_DIR= - type path to virtual SD card (as configured in klipper.cfg)
    KLIPPER_CFG= - type path to klipper config file
    KLIPPER_LOG= - type path to klipper log file
    save (F2) and exit (F10)
    sudo systemctl start print-server

NOTE: I assume that Klipper is run by a user named "pi". If not, modify the user/group name in systemd service file /etc/systemd/system/print-server.service

Building application for Android/iOS

Icons made by Freepik from www.flaticon.com

Enjoy :-)