Problem, Power supply’s on most inexpensive 3D printers are cheaply made, potential hazard to your home, and do not provide the any additional capability to be remotely controlled, or power other pieces of hardware like a Raspberry Pi and OctoPrint. Replacing these can be a hassle, this article and the designed hardware can help simplify the entire process.
Note, this article is a work in progress and still has lots of work to be done. Suggestions are always welcome. The board however, is done and being used as we speak.
If you watch some of the group boards on Facebook and Reddit for 3D printers, like Anet and Kossel, users are continually talk about how to upgrade them, make them safer, control them remotely, etc. For the general hobbyists, these devices are a good learning experience. For the casual user that does not have the electronics and mechanical skills to make them work well, these devices can turn into a pile of junk and sit in the corner collecting dust. Most of the upgrades are in the area of safety and stability of the printer.
Working with my printer for the past 9 to 10 months, I have learned a lot about the Chinese made parts and manufacturing. Everything is generally made as cheaply and as quickly as possible. In my opinion, some upgrades to these potentially dangerous devices must be done quickly, power management and control being one of them.
Most of these topics are covered in a myriad of articles, however I could not find one that discussed all of them and provided the hardware to make it all work. The guys over at Skynet central (Pete and Steve), have several other easy upgrades that make the general experience better and takes some of the complications out of the electronics end of the process. They both were inspiration for the equipment design. There are all sorts of other implementations that use a relay, etc, I just opted for a different approach.
This article does not go into all the needed item’s; however, it does cover the three major items, ATX power supply conversion, Octoprint, and powering a Raspberry PI. The information was gleaned over all sorts of sites and reference material. Please refer to the bottom of the article for the references. Here is the general circuit design;
The general pins coming from the ATX supply are as follows and all come from the large ATX power supply connector;
- Green – PS-ON
- Gray – PG Monitor Power Supply On
- Purple – 5V Power Source
- Orange – 3 V
- Black – Ground
- Yellow is 12v
- Red – 5v
Here are the pinout locations from both the power supply and the Raspberry PI.
The board as built provides continuous power to the Raspberry PI 5v at 2 amp via a standard micro-usb cable, the needed circuitry to allow the ATX power supply to provide power on the 5V and 12v bus, and control the printer through a browser using Octoprint/PSU plugin for monitoring the of the power is and remote control of the printer.
The overall design went through four iterations, starting with prototyping, to custom wired board, to custom wired board with connectors, to a PCB being fabricated and a permanent case being designed and printed.
There are all types of ways to connect the power from the supply to the printer, it really depends on the printer and the connectors. The 500-watt ATX supply, should be more than enough to run all this hardware and not even blink. This implementation used silicon wiring that was sourced from Amazon, and some general soldering skills. In the end, you can use some crimp connectors, and tie several of the ATX power supply wires together. There are references all over the internet for this general implementation. I provide some at the bottom of this article.
Using a breadboard, 2 x 220ohm, 2 x 1kohm, 1 x 2n3904, 2 x 5mm LEDS, Raspberry Pi, 450-watt power supply. The power supply was one that was laying around, it was not the one that was used to finish this project.
When LED 1 is on, that means that there is AC power being presented to the power supply and the PI should have power provided from the purple pin 9 from the ATX power supply connector to the USB connector. At this time, no power is presented to the printer via the 3, 5 and 12 volt cables. The fan should not be running. The orange 3v wires is used by the PSU control to tell if the supply is running and provide visual feedback in the Octoprint UI. When the PSU plugin control turns on the controller, LED 2 lights to signal that power is being presented to the output portion of the power supply and the Octoprint UI will show that the power is on. The fan on the supply should be running. DC power is now available via the all of the orange, red and yellow wires. The configuration for the PSU plugin is below.
This was done with the same parts, just using a soldering prototyping board and parts from the original breadboard. Then general idea of this implementation was to figure out the soldering, needed parts and location on the board. Originally, the idea was to just solder the cables directly to the board and cut down on connectors.
This iteration was done with JST connectors to see if this would be easier to work with. It turned out to be harder to handle the JST connectors and crimping the ends.
This was the beginnings of the final configuration for the power supply. During this process, about half of the 5v red cables and all the 12v yellow cables were removed and replaced with silicon 10 and 12-gauge cables. Additionally, GND cables were replaced with the specific 10 and 12-gauge cables to compliment the retrofitted voltage cables.
Using Fritzing, the circuit design was refined and a board was designed. It was sent off to Ospark for manufacturing.
This is the final configuration with everything soldered and using the correct USB, 3.5mm Pitch 2Pin PCB Mount Screw Terminal Block Connector. There is also the addition of a terminal block that is housed under the printed black box on the left. The ATX power supply stand was downloaded from Thingiverse and modified slightly to hold the supply that. The case for the board is also shown and is available on thingiverse.
I have been using this for about the last 30 days and everything has been great. I am currently looking for two users that are willing to beta this board. Please contact me to participate. I will send the board completed and working, case, most of the wiring, and some instructions on how to wire it.
As more iterations come, I will make updates to this. One item is going to a push button to start the printer without having to log in to the UI to do it.
Please note, customizing 3d printers, custom electronics, etc are done at your own risk. This is provided as an approach to solving a problem. I am not responsible for any issues that a user runs into during the use of this equipment.
- Power Supply Stand https://www.thingiverse.com/thing:2222342
- ATX-RP-3DP board case https://www.thingiverse.com/thing:2510944