Broken thermistor? Now the entire wire loom/cable sleeve/drag chain must be removed to service one part. There are some good solutions, including Tech2C's connector, or this PCB. I tailored my own PCB for my needs.
I developed a board that lets me hot swap individual components if they break or need to be upgraded. I use the same connectors that are found on 3D printer control boards, which makes the switch more familiar. Switching between multiple hotends or different tools such as laser engravers or routers becomes a breeze too!Bill of Materials
Parts are reused when applicable. Wires for each component can be used for the custom cable. This JST kit has been very useful.
- Quick Swap PCB [x2]
- DB15 Right Angle Female Connector [x2]
- DB15 Straight Male Connector [x2]
- JST-XH-04 Male Connector [x2]
- JST-XH-03 Male Connector [x2]
- JST-XH-02 Male Connector [x8]
- 2 Pin Screw Terminal [x2]
- Braided Sheathing 12mm
- 1206 SMT Resistor
- Existing Wires from Components
- Spare Wires
- 35mm M3 Screws
- Printed Brackets
- DB15 Housing (Or printable housing; STL included here)
- Soldering Iron
- Wire Strippers
- JST Crimp Tool
- 3D Printer
I've included a link to my online EDA, which can be modified freely.Development
The PCB is effectively a breakout board, with no ICs, logic, or microcontrollers. It was most important to (1) use a main connector with enough pins, (2) ensure each pin on every connector was capable of carrying the required current, and (3) comply with JLC PCB's manufacturing criteria for the most economic option.
I wanted it to mount onto the back of a NEMA 17 motor, and the footprint had to be less than 50mm x 50mm.
In addition to all the standard components on a typical X carriage, I've seen people add LEDs near the hotend to illuminate just under the nozzle. I want to implement this down the line, so I factored it into my considerations.
Total: 17 pins across 7 connectors
Some components share pins, allowing me to reduce the number of pins required for the main connector down to 13 pins.
The DB15 connector was selected for the following reasons:
- Maximum current per pin is 5A, which is sufficient to drive the heater cartridge. A 40W heater at 12V draws 3.33A.
- No crimp tools/jaws required, as pins are directly soldered to.
- Built in strain relief via screw posts.
Existing DB15 cables consist of wires that are too thin for the heater cartridge. My workaround is to cut and reuse the wires from my existing components. This ensures that each wire can handle the amount of current the components draw.
Two boards will be necessary: 1 on the hotend/extruder motor, 1 near the main control board.Schematic
Referencing the RAMPS schematic helped me identify the pinout for each component. It was important for me to know whether components were high side or low side driven by their transistors. Additionally, this helped me know what nodes to consolidate. These connections will work for nearly all 8 bit AVR boards because follow the RAMPS schematic. Exotic boards and possibly some 32 bit boards may drive their components differently, so do your research.
Although a reputable DB15 connector's pins are theoretically rated for 5A, Chinese replicas handle less than that. I opted to use 2 pins for 12V to split the current for an added layer of safety. The same was done to the return path.
The LED is tied to 12V and requires a low side switch to ground it for operation. A simple FET will suffice for this, but it must go off board. The 1206 SMT current limiting resistor can be of any value. It leaves the option to short the pads with a jumper or a 0R resistor in case I want something else there.PCB design
EasyEDA was used to make the PCB so I could share the design. They're also partnered with JLC PCB manufacturing, which makes it seamless to order boards.
The most economic PCB manufacturing criteria restricts us to a 1oz copper fill. This means that traces can handle less current than their 2oz counterpart. The workaround is to thicken the traces. This trace width calculator determined that I needed a 4mm trace width for my heater cartridge, which was impossible due to clearances given my desired layout.
A colleague of mine pointed out that I could utilize the entire top layer as a power plane instead of a ground plane, which alleviated the need to worry about traces as a whole. The bottom copper plane was turned into M1, which is the drain of the transistor that will ground the return path.
After that, it was a matter of placing the parts in the locations I wanted and routing the traces. Signal traces were kept thin, while power transferring traces were beefed up. The back was labeled for ease of use when testing continuity.
Less than 2 weeks later, my matte black boards arrived.Printed Parts
There are 2 printable brackets. The first bracket goes near the control board. The second bracket acts as a standoff so the underside of the PCB doesn't short from contacting the motor. The second bracket demanded longer M3 screws than those located on the back of the NEMA 17 motor.
I didn't order the housing for DB15 connectors, so I had to make my own. I included the link for a premade housing in the BoM above.
I made a pegboard so I could easily design brackets for boards and move them around at will. The second bracket is designed around this pegboard, so it's proprietary to me, but I have included it anyway.
The housing went through a few iterations due to some unexpected clearance issues. It was designed to fit some screws from VGA cables I had lying around. Support material is required when printing. It's required to print 4 parts: DB15_Housing_A (x2) & DB15_Housing_B (x2).Assembly
Once all the parts were in, it was time to bring it to life starting with the board itself.
First, I soldered the connectors, while leaving the resistor pads not populated.
The PCB was then mounted onto the motor with the bracket in between. The 4mm thick bracket required 35mm M3 screws.
Next, all the wires were cut such that they reached the board. Extra length was left in case I wanted to cut them shorter later on. The short wires were crimped and fitted into the JST connectors.
The remaining long wires were then soldered onto the male DB15 connectors. I meticulously followed the schematic for these connections. The process was repeated for the other end.
Heat shrink tubing provided extra rigidity to the wires. Braided sheathing was fitted to contain and protect the wires, while adding rigidity. The cable was heavier than I expected, but it's incredibly sturdy because the sheathing hugs all internal wires tightly.
With the cable done, it was time to install the housing. The two halves are not symmetrical and part A (trimmed one) must go over pin 1-8, as shown in the images above.
The second bracket was installed onto my pegboard and then the PCB was screwed into the posts. I made some custom wires to interface the PCB with the main board.
Nothing was in flames after the first test! I've had a chance to run the printer for 3 hours straight with no signs of overheating.Improvements & Kit Thoughts
I've received some requests to make this into a kit for sale. I've given it some thought, and I will work on a second version, using 20 pin IDC cables & connectors. The way I did it worked great as a personal project, but it's inefficient for mass manufacturing.
I'll be updating this page and the EasyEDA files when I make changes/additions. My source files can be found on EasyEDA.
I have made a version for BLtouch users. The increased pin count required me to remove the LED connector, but I figured people would rather have their Z probe over a light.
The BLtouch PCB can be found with the rest of my EasyEDA source files.