Skip to content
/ RPP Public
forked from vvuk/cassini

RESIN PRINT PORTAL (RPP) it's a web based on fork cassini projet for ELEGOO 3D printer network protocol client

License

Notifications You must be signed in to change notification settings

jjtronics/RPP

 
 

Repository files navigation

LOGO

RESIN PRINT PORTAL (RPP)

Français

À propos de RESIN PRINT PORTAL

RESIN PRINT PORTAL (RPP) est une interface web conçue pour faciliter la gestion et le suivi des impressions 3D à base de résine. Ce projet est inspiré par OctoPrint, la référence en matière de gestion de filaments et se base sur le projet Cassini.

Seule les imprimantes Elegoo wifi sont géré pour le moment

Pour en savoir plus, allez sur mon article de blog : JJtronics.

Fonctionnalités

  • Téléchargement de fichiers pour impression.
  • Lancement et suivi en temps réel des impressions.

Contribution

Les contributions à ce projet sont les bienvenues. Si vous souhaitez contribuer, n'hésitez pas à créer une pull request ou à ouvrir une issue.

Installation (Testé à partir d'une VM Debian 12)

Installation des dépendances :

sudo apt update
sudo apt install git
sudo apt install python3-pip
sudo apt install python3-flask
sudo pip3 install alive-progress --break-system-packages

Clonez le dépot :

cd /opt/
git clone https://github.com/jjtronics/RPP.git

Donnez lez droits pour écrire dans le fichier d'upload et l'ip de l'imprimante :

sudo chmod -R 775 /opt/RPP/uploads
sudo chown -R www-data:www-data /opt/RPP/uploads
sudo chmod -R 775 /opt/RPP/printer_ip.txt
sudo chown -R www-data:www-data /opt/RPP/printer_ip.txt

Allez dans le dossier :

cd RPP

Optionnel, vous pouvez dès a présent paramétrer l'IP de votre imprimante :

sudo echo 192.168.1.50 > printer_ip.txt

Copiez le script systemd pour gérer le lancement automatique au démarrage de la machine :

sudo mv rpp.service /etc/systemd/system/
sudo systemctl enable rpp
sudo systemctl start rpp

Pour vérifier le bon fonctionnement :

sudo systemctl status rpp

* rpp.service - Resin Print Portal
     Loaded: loaded (/etc/systemd/system/rpp.service; enabled; preset: enabled)
     Active: active (running) since Wed 2024-01-03 10:40:54 UTC; 3min 3s ago
   Main PID: 4938 (python3)
      Tasks: 3 (limit: 38302)
     Memory: 41.8M
        CPU: 5.229s
     CGroup: /system.slice/rpp.service
             |-4938 /usr/bin/python3 /opt/RPP/rpp.py
             `-4939 /usr/bin/python3 /opt/RPP/rpp.py

Jan 03 10:43:09 RPP python3[4939]: 192.168.1.11 - - [03/Jan/2024 10:43:09] "GET /print-status HTTP/1.1" 200 -
Jan 03 10:43:14 RPP python3[4939]: 192.168.1.11 - - [03/Jan/2024 10:43:14] "GET /print-status HTTP/1.1" 200 -
Jan 03 10:43:19 RPP python3[4939]: 192.168.1.11 - - [03/Jan/2024 10:43:19] "GET /print-status HTTP/1.1" 200 -
Jan 03 10:43:24 RPP python3[4939]: 192.168.1.11 - - [03/Jan/2024 10:43:24] "GET /print-status HTTP/1.1" 200 -
Jan 03 10:43:29 RPP python3[4939]: 192.168.1.11 - - [03/Jan/2024 10:43:29] "GET /print-status HTTP/1.1" 200 -
Jan 03 10:43:34 RPP python3[4939]: 192.168.1.11 - - [03/Jan/2024 10:43:34] "GET /print-status HTTP/1.1" 200 -
Jan 03 10:43:39 RPP python3[4939]: 192.168.1.11 - - [03/Jan/2024 10:43:39] "GET /print-status HTTP/1.1" 200 -
Jan 03 10:43:44 RPP python3[4939]: 192.168.1.11 - - [03/Jan/2024 10:43:44] "GET /print-status HTTP/1.1" 200 -
Jan 03 10:43:49 RPP python3[4939]: 192.168.1.11 - - [03/Jan/2024 10:43:49] "GET /print-status HTTP/1.1" 200 -
Jan 03 10:43:54 RPP python3[4939]: 192.168.1.11 - - [03/Jan/2024 10:43:54] "GET /print-status HTTP/1.1" 200 -

L'interface est accessible sur le port 5001 mais je vous conseille de passer par un serveur web du genre nginx :

Screenshot

Vous pouvez upload votre fichier tranché (extension .goo généralement) en cliquant sur le bouton bleu UPLOAD :

Upload

Une roue de progression s'affichera durant le transfert :

Upload

Une fois le transfert correctement terminé vous devriez avoir le message :

Upload

Vous pouvez ensuite sélectionner le fichier dans la liste et cliquer sur le bouton vert PRINT :

Print

Le fichier est envoyé à l'imprimante :

Print

Une fois le fichier reçu par l'imprimante, le status passe à 75% et le print débute :

Print Print Print Print

Mise à jour

Etant encore un projet je dirais en Alpha, le développement est en continue jusqu'a la sortie de la première release, donc faire régulièrement des mises à jour :

cd /opt/RPP/
sudo git reset --hard HEAD
sudo git pull

Donnez lez droits pour écrire dans le fichier d'upload et l'ip de l'imprimante :

sudo chmod -R 775 /opt/RPP/uploads
sudo chown -R www-data:www-data /opt/RPP/uploads
sudo chmod -R 775 /opt/RPP/printer_ip.txt
sudo chown -R www-data:www-data /opt/RPP/printer_ip.txt

RESIN PRINT PORTAL (RPP)

English

About RESIN PRINT PORTAL

RESIN PRINT PORTAL (RPP) is a web interface designed to facilitate the management and monitoring of resin-based 3D printing. This project is inspired by OctoPrint, a reference in filament management, and is based on the Cassini project.

Currently, only Elegoo wifi printers are supported.

For more information, visit my blog post: JJtronics.

Features

  • File downloading for printing.
  • Launching and real-time tracking of prints.

Contribution

Contributions to this project are welcome. If you wish to contribute, feel free to create a pull request or open an issue.

Installation (Tested from a Debian 12 VM)

Installing dependencies:

sudo apt update
sudo apt install git
sudo apt install python3-pip
sudo apt install python3-flask
sudo pip3 install alive-progress --break-system-packages

Clone the repository:

cd /opt/
git clone https://github.com/jjtronics/RPP.git

Give write permissions to the upload file and the printer IP:

sudo chmod -R 775 /opt/RPP/uploads
sudo chown -R www-data:www-data /opt/RPP/uploads
sudo chmod -R 775 /opt/RPP/printer_ip.txt
sudo chown -R www-data:www-data /opt/RPP/printer_ip.txt

Go to the folder:

cd RPP

Optional, you can configure your printer's IP address now:

sudo echo 192.168.1.50 > printer_ip.txt

Copy the systemd script to manage automatic launch at system startup:

sudo mv rpp.service /etc/systemd/system/
sudo systemctl enable rpp
sudo systemctl start rpp

To verify proper operation:

sudo systemctl status rpp

* rpp.service - Resin Print Portal
     Loaded: loaded (/etc/systemd/system/rpp.service; enabled; preset: enabled)
     Active: active (running) since Wed 2024-01-03 10:40:54 UTC; 3min 3s ago
   Main PID: 4938 (python3)
      Tasks: 3 (limit: 38302)
     Memory: 41.8M
        CPU: 5.229s
     CGroup: /system.slice/rpp.service
             |-4938 /usr/bin/python3 /opt/RPP/rpp.py
             `-4939 /usr/bin/python3 /opt/RPP/rpp.py
[...]

The interface is accessible on port 5001, but it is recommended to use a web server like nginx:

Screenshot

You can upload your sliced file (usually .goo extension) by clicking the blue UPLOAD button:

Upload

A progress wheel will display during the transfer:

Upload

Once the transfer is successfully completed, you should see the message:

Upload

Then you can select the file from the list and click on the green PRINT button:

Print

The file is sent to the printer:

Print

Once the file is received by the printer, the status changes to 75% and the print starts:

Print Print Print Print

Update

As this is still a project I would say in Alpha, development is ongoing until the first release, so regular updates are recommended:

cd /opt/RPP/
sudo git reset --hard HEAD
sudo git pull

Give write permissions to the upload file and the printer IP:

sudo chmod -R 775 /opt/RPP/uploads
sudo chown -R www-data:www-data /opt/RPP/uploads
sudo chmod -R 775 /opt/RPP/printer_ip.txt
sudo chown -R www-data:www-data /opt/RPP/printer_ip.txt

About

RESIN PRINT PORTAL (RPP) it's a web based on fork cassini projet for ELEGOO 3D printer network protocol client

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 63.6%
  • JavaScript 15.9%
  • CSS 15.2%
  • HTML 4.0%
  • Shell 1.3%