OctoPrint + Docker: USB devices hot plugging

One of the drawbacks of using OctoPrint in the default Docker Container is that the printer must be connected and operational for the container to start. This issue can affect the operation of useful plugins like PSU Control.

Fortunately there is a way to enable serial device hot plugging in a Docker container. It is practical if you are running few printers/containers.

The following instructions were written for 3D printers but the logic could be applied to any serial device and any type of container (HomeAssistant, Zigbee2MQTT, etc...).

I can compile Marlin firmware for you

If you don't have the tools or are having difficulties to compile the firmware for your printer (any printer) I can do it for you for a small fee. Please read the description of the service below and if you are interested, follow the instructions.

Please note that I am not doing this as my main occupation, it is just a convenience service from a guy that did this hundreds of times. Anyone can download and compile Marlin by following tutorials available everywhere.

Pre-configured Marlin for SKR Mini E3 v2 on Ender 3

This is pre-configured package for the 2.x Marlin Firmware for SKR Mini v2 boards on Creality Ender 3. The configuration files were specially crafted to extract the maximum performance of the printer while maintaining the manufacturer recommended settings. The download packages include both the source code and the compiled binary files.

This firmware will not work with 8-bit boards or Creality 32-bit boards.


Extra features enabled over the standard Marlin firmware configuration.

Install linux on an external drive without modifying Windows EFI partition

Live Linux USB drives are nice for testing purposes and with the new persistence modes they can also remember a few things between sessions. Unfortunately some features like the ability to update the OS or install drivers can only be accomplished with a full Linux installation.