this post was submitted on 29 Aug 2023
22 points (95.8% liked)

3DPrinting

15271 readers
45 users here now

3DPrinting is a place where makers of all skill levels and walks of life can learn about and discuss 3D printing and development of 3D printed parts and devices.

The r/functionalprint community is now located at: !functionalprint@kbin.social or !functionalprint@fedia.io

There are CAD communities available at: !cad@lemmy.world or !freecad@lemmy.ml

Rules

If you need an easy way to host pictures, https://catbox.moe may be an option. Be ethical about what you post and donate if you are able or use this a lot. It is just an individual hosting content, not a company. The image embedding syntax for Lemmy is ![](URL)

Moderation policy: Light, mostly invisible

founded 1 year ago
MODERATORS
 

Having ordered my first 3D printer, I am giddy and preparing various things.

I have installed Octoprint on my home server as a Docker container, but when running it, it seems that it wants to have a serial connection to a printer. Octoprint expects to be running on a Raspberry that is connected via its serial interface.

What am I missing?

The printer I ordered (Prusa Mini) comes with a wifi dongle, so I guess there will be a way to reach it over the network. But that does not automagically mean Octoprint can work with it.

you are viewing a single comment's thread
view the rest of the comments
[–] boothin@artemis.camp 17 points 1 year ago (2 children)

Luckily the S in USB stands for serial, so I have 3 printers connected to my server via USB and each one has its own octoprint docker container

[–] PlutoniumAcid@lemmy.world 3 points 1 year ago (1 children)

I thought Octoprint can have more than 1 printer? Why do you have 3 separate containers?

Also, let's say I connect my printer to my server with USB, how do I route that USB connection from the server into the container? How did you map that?

[–] boothin@artemis.camp 8 points 1 year ago

Octoprint can only connect to 1 printer at a time, so if you want to use 2 printers at the same time you need 2 separate instances of octoprint. I use portainer so passing through a device is just a matter of finding the device path on the host machine and plugging its path into the portainer config under the runtime & resources tab. In a docker compose you'd use the devices key, for example

devices:

  • /dev/ttyUSB1:/dev/ttyUSB1

You will likely need to create a separate alias for the host USB path though because devices can be found in a different order every reboot so the path will change. The USB device alias will be based on the device vendor and product id so it will be persistent. https://michaelgreenhill.net/persistent-addressing-for-usb-devices-in-linux/ is one site that explains the issue and how to deal with it