A brief post of my local network for 3d printing with several 3d printers, using print3r
CLI (Command Line Interface) tool.
Physical Setup
Orange Pi Zero (single board ARM-based computer) named printhub
running Armbian (Debian-like).
- Ethernet Port connecting to Ethernet/Wifi Hub with its own subnet (192.168.4.x)
- External USB 4x Hub connecting 3d printers via USB:
- Ashtar K 1 (Prusa i3-like, 400 x 300 build plate, 330mm height), 0.5mm nozzle (/dev/ttyUSB2)
- Ashtar K 2 (300 x 300 build plate, 330mm height), 0.4mm nozzle (/dev/ttyUSB1)
- Ashtar C 1 (CoreXY, 400 x 400 build plate, 380mm height), 0.4mm nozzle (/dev/ttyUSB0)
- CTC DIY I3 Pro (Y3228), 0.4mm nozzle (/dev/ttyUSB3)
The workstation from which I print from (design and slice) is also connected via Ethernet. The printed violet PLA case I published a while ago on Thingiverse: Orange Pi Zero Case.
Preparation
On printhub
(Orange Pi Zero) starting all the network clients processes:
% print3r /dev/ttyUSB0 client & % print3r /dev/ttyUSB1 client & % print3r /dev/ttyUSB2 client & % print3r /dev/ttyUSB3 client &
Usage
On my workstation (a laptop), referencing printer profiles and devices:
% print3r --device=tcp:printhub:0 --printer=ashtar-c-1 print cube.stl % print3r --device=tcp:printhub:1 --printer=ashtar-k-2 print cube.stl % print3r --device=tcp:printhub:2 --printer=ashtar-k-1 print cube.stl % print3r --device=tcp:printhub:3 --printer=y3228 print cube.stl
See Print3r Wiki: Remote Printing for more details.
The CTC I3 Pro B Y3228 low cost printer still runs Marlin 1.0 and 250,000 baudrate which won’t work with I upgraded the ~1 year old “CTC DIY I3 Pro B” 3d printer to Marlin 1.1.8 finally, first burning a bootloader with an Arduino Uno, and then properly configured Marlin, and now runs with 115,000 baudrate as well, so it can be networked as well.ser2net
which print3r
uses internally to print in network environment, so it needs to be flashed first with newer firmware, so it can be networked as well with common baudrate like 230,400.
Otherwise I stopped using Cura GUI or Slic3r GUI completely, and solely use print3r
to first preview
the Gcode, sliced with CuraEngine or Slic3r, and then print
the parts, and because it runs on the command line, all the previous calls in the terminal are stored as history therefore I can scroll back (cursor-up/down) and repeat a job with slightly changed settings by editing the command line – something which GUI doesn’t offer, unless you save a printjob as .3mf and reload it and click around and change settings and save again as .3mf etc.
Command Inline OpenSCAD
Further, I often code OpenSCAD code directly with print3r
for simple parts, e.g. caps for M6 threaded rods, something like:
% print3r --device=tcp:printhub:0 --printer=ashtar-c-1 --random-placement --scad print "difference(){cylinder(d=8.4,h=10);translate([0,0,2])cylinder(d=6.4,h=10);}"
and if the print came out well, I add --multiply-part=3
or so.
Download & Install Print3r
That’s it for now.