MattaOS for Klipper
Connect your Klipper-enabled printers to MattaOS, for remote control, AI-powered error detection, fleet management, and more!
The plugin allows users to control their printers using our intuitive web-interface, MattaOS. MattaOS brings Matta's data engine to Klipper, managing printer and webcam data, enabling next-level AI error detection and print job inspection. All that is required is a simple nozzle camera, and a 3D printer running Klipper.
Matta is working towards building full AI-powered closed-loop control of 3D printing, enabling perfect quality, every time. By being an early user of our software, you help us build towards this goal!
- π Remote printer control via MattaOS, our intuitive web-interface.
- β‘οΈ Advanced error detection using Matta's cutting-edge AI.
- π Keep track of your printing operations with printer analytics.
- π G-code viewer and analysis.
- βοΈ Controllable failure behaviour (notify, pause, stop).
Before installing, please ensure you have Moonraker, the Python 3 based web server for communcation with Klipper, installed on your Pi. Moonraker comes pre-installed with both the MainsailOS and Fluidd Raspberry Pi images. If you do not have Moonraker installed, you can find the installation guide here.
We highly recommend using the MattaOS plugin with the MainsailOS Raspberry Pi image (available through the Raspberry Pi Imager).
It has also been tested on RaspberryPi OS wth KIAUH-installed prerequisites, but to a lesser extent.
Note: We, like others, have experienced Crowsnest breaking after updating packages. Recompile Crowsnest as per KwadFan's comment here to fix.
There are number of ways to install the plugin, please see below:
Download zip from URL
Copy the following URL to the latest version of Matta OS's OctoPrint plugin:
wget https://github.com/Matta-Labs/moonraker-mattaos/archive/refs/heads/main.zip
unzip ~/main.zip && mv ~/moonraker-mattaos-main ~/moonraker-mattaos
rm ~/main.zip
Install the plugin:
cd ~/moonraker-mattaos
bash install.sh
Note: if you have issues running the install.sh
file run chmod +x ./install.sh
.
Check the plugin is running with:
sudo systemctl status moonraker-mattaos
If not, start it manually with:
sudo systemctl enable moonraker-mattaos
sudo systemctl daemon-reload
sudo systemctl start moonraker-mattaos
sudo systemctl status moonraker-mattaos
β¨ Thats it! Now the MattaOS plugin should be installed.
To uninstall, use the uninstall.sh
script:
cd ~/moonraker-mattaos
./uninstall.sh
Note: if you have issues running the uninstall.sh
file run chmod +x ./uninstall.sh
.
Transfer plugin from computer
First, clone this repository onto your computer, then:
cd moonraker-mattaos
scp -r "../moonraker-mattaos" "<piusername@pihostname>:~/moonraker-mattaos"
rsync -avh "../moonraker-mattaos/." "<piusername@pihostname>:~/moonraker-mattaos/."
SSH into your Pi, then install the plugin with the install.sh
script:
cd ~/moonraker-mattaos
./install.sh
Note: if you have issues running the install.sh
file run chmod +x ./install.sh
.
Check the plugin is running with:
sudo systemctl status moonraker-mattaos
If not, start it manually with:
sudo systemctl enable moonraker-mattaos
sudo systemctl daemon-reload
sudo systemctl start moonraker-mattaos
sudo systemctl status moonraker-mattaos
β¨ Thats it! Now the MattaOS plugin should be installed.
To uninstall, use the uninstall.sh
script:
cd ~/moonraker-mattaos
./uninstall.sh
Note: if you have issues running the uninstall.sh
file run chmod +x ./uninstall.sh
.
Clone onto Pi via SSH
At first, you need to access the Raspberry Pi connected to the 3D printer which is running Klipper. This best way to do this is via ssh
, e.g.
ssh username@hostname.local
Note: the default username for Pis is pi
.
Note: the default password for Pis is raspberry
it should probably be changed if it is still the password.
git clone https://github.com/Matta-Labs/moonraker-mattaos.git
cd ~/moonraker-mattaos
bash install.sh
Note: if you have issues running the install.sh
file run chmod +x ./install.sh
.
Check the plugin is running with:
sudo systemctl status moonraker-mattaos
If not, start it manually with:
sudo systemctl enable moonraker-mattaos
sudo systemctl daemon-reload
sudo systemctl start moonraker-mattaos
sudo systemctl status moonraker-mattaos
β¨ Thats it! Now the MattaOS plugin should be installed.
To uninstall, use the uninstall.sh
script:
cd ~/moonraker-mattaos
./uninstall.sh
Note: if you have issues running the uninstall.sh
file run chmod +x ./uninstall.sh
.
If you don't already have a nozzle camera installed, check our our camera-mounts repository to aid installation.
Also please feel free to contribute your own nozzle camera designs to the repo!
Note: The plugin will only work if your Klipper-Moonraker-Frontend stack are working correctly. Please refer to the respective documentation to ensure this is the case
First sign-up for a free Matta account at https://os.matta.ai, then configure plugin settings to get started!
Create a new machine in MattaOS, copy the generated Authorisation token, then add this to the moonraker-mattaos.cfg
file in your Pi, or using the helpful Mainsail config file editor. Then reboot your Pi with sudo reboot
, or the restart the plugin using the power options in Mainsail.
Next go to http://<hostname>:5001
and follow the instructions to locate your extruder nozzle tip.
In moonraker-mattaos.cfg
there are a few variables which need to be configured for use:
Authorisation token (from MattaOS)
- Create a printer in MattaOS.
- Copy the Authorisation token from the new printer's setup page.
- Paste this into the
auth_token
variable inmoonraker-mattaos.cfg
- Restart the plugin or reboot your Pi to connect!
WebRTC Stream URL*
This is the streaming URL of your nozzle-cam streamer. The plugin only supports WebRTC streaming. The default value should be fine.
This will be http://localhost/webcam/webrtc
Camera Snapshot URL*
This is the snapshot URL of your nozzle-cam streamer. The default value should be fine.
This will be http://localhost/webcam/?action=snapshot
Nozzle tip coordinates
These are set via using the nozzle finder application at http://<hostname>:5001
.
Alternatively, if you know the coordinates of the nozzle tip in your images, you can set them manually here.
Webcam controls
These variables allow you to flip and rotate your webcam footage (for example if you have a camera mounted on its side for ease of integration).
Simply set these values to true
or false
, and see the changes reflected in the saved images in your MattaOS job history.
*required for AI-powered error detection
At Matta, we are building AI to push the boundaries of manufacturing. We train neural networks using vision to become manufacturing copilots, enabling next-generation error correction, material qualitification and part QC.
Check out the demo of our first-iteration AI, Grey-1
Team Matta - @mattalabs - hello@matta.ai
Project Link: https://github.com/Matta-Labs/moonraker-mattaos