CNCRouter/controller

This is post is applicable to the old CNC Router that we sold in 2022. It is not applicable to the new CNC Router.

 

Main Controller box has connectors for 4 unipolar 6-wire motors. This view is normally hidden by the breakout boards affixed on the top and side of the main box.
[[File:maincontrollertop.jpg|400px]]

Here’s the view just before the above image. The WZ breakout board has been unscrewed and flipped over with the ribbon connectors still attached. Yes, that is sawdust covering most of the board. It was partially cleaned to provide contrast.
[[File:controllerboxtopopen.jpg|400px]]

There are two additional breakout boards attached to the main box top by standoffs. These BoBs provide a DB25 connector to the PC and two DB9 connectors for limit switches. Each BoB supports two axes (XY & WZ). This is the view from the top of the controller as disassembly began (but after exterior cleaning). This is the WZ axes BoB attached by two 1×1 wood standoff strips.
[[File:wzbob.jpg|400px]]

Here’s the XY BoB before cleaning. The two DB9 and one DB25 for the WZ axes are just visible. The XY DB25 and limit switches are mostly obstructed by the tie-wrapped motor cables.
[[File:xybob.jpg|400px]]

This is a closeup of the WZ breakout board to show the 4 resistors and 4 caps sticking thru holes cut in the MDF board. The second picture is the circuit board on the back of the MDF. The connectors hold the board in place with both the thru-hole soldering and standoffs, unfortunately making it impossible to confirm the back of the board is empty except for the 8 components. Labeling is minimal but one can just make out the R and C silkscreen letters corresponding to the resistors and caps on the back side of the board.
[[File:xybobdetail.jpg|400px]] [[File:xybobcircuit.jpg|400px]]

”’Breakout Board Notes”’: The board is meant to support XY or WZ axes. Very few pins are used for connection to the PC. DB9s (left side of circuit) are used for one limit switch per axis. From these images and some initial testing, PC pinouts (DB25) are confirmed to be:
”’pin 1: X/Z Home/Limit”’ – need to test this. Not sure how the limit switch is wired (NO or NC)
”’pin 2: X/Z axis step”’ – Axis X/Z step signal. It connects to pin 3 of the 10 pin ribbon cable on right side of board. The ribbon cable brings this signal up to axis terminal 5 on the top of the controller box.
”’pin 3: X/Z axis direction”’ – Axis X/Z direction. It connects to pin 5 of the 10 pin ribbon cable on right side of board. The ribbon cable brings this signal up to axis terminal 4 on the top of the controller box.
”’pin 6: Y/W axis step”’ – Axis Y/W step signal. It connects to pin 3 of the 10 pin ribbon cable on left side of board. The ribbon cable brings this signal up to axis terminal 5 on the top of the controller box.
”’pin 7: Y/W axis direction”’ – Axis Y/W direction. It connects to pin 5 of the 10 pin ribbon cable on left side of board. The ribbon cable brings this signal up to axis terminal 4 on the top of the controller box.
”’pin 14: X/Z Home/Limit”’ – need to test this. Not sure how the limit switch is wired (NO or NC). Need to examine the DB9 to limit switch wiring.
”’pin 16: Y/W Home/Limit”’ – need to test this. Not sure how the limit switch is wired (NO or NC).
”’pin 17: Y/W Home/Limit”’ – need to test this. Not sure how the limit switch is wired (NO or NC). Need to examine the DB9 to limit switch wiring.
”’pin 18-25: Ground”’ – A series of pins shorted together for ground signal. This is normal for most modern boards to short all these pins to ground.

GRBL hookup

Using the above pinouts, initial testing was done on X & Y axes using GRBL. An arduino with GRBL 0.6 flashed was connected to the parallel port connector for the XY interface. Here are the pin connections to make:

Arduino -> DB25 — description
D2 -> pin 2 — X Step
D5 -> pin 3 — X Direction
D3 -> pin 6 — Y Step
D6 -> pin 7 — Y Direction
GND -> pin 25 — GND

Limit Switches

Limit switches are directly wired from the switches on the gantry to the DB25 parallel port interface. They do not seem to connect back into the controller box in any way. Additional probing is needed to document the operation and the circuit schematic.

Driver Board

There are two boards on either side of the controller box visible once the top metal frame has been removed. One board drives X and Y axes. The other is responsible for W and Z axes. These boards have screw terminals along the top for motor wiring leads and power. A 10 conductor ribbon cable extends from this board to the appropriate breakout board. Here are front and back views of both boards during disassembly. The front is protected by the metal frame of the box. The back (which faces the inside of the controller box where the fan blows) is covered by a large aluminum plate bolted to the heat sinks of the transistors. The heat plate has already been removed in this view but is just visible at the top of the image. The heat sink is bolted to the bottom of the box which holds the driver board in place.
[[File:driverboardWZ.jpg|400px]] [[File:driverboardWZbottom.jpg|400px]]

After cleaning and examining components and traces, the board looks to be in good condition. Following is a closeup of both sides after cleaning. The Image for the top of the board was roughly stitched together from two hi-res images. Click either image for higher resolution views.
[[File:driverboardstitched.jpg|800px]] [[File:driverboardbottomclean.jpg|400px]]

Finally here is a close-up for the transistors normally screwed to the heat sink (a large aluminum plate that also somewhat protects the board from dust). There are 4 banks of these parts, two for each axis supported by the board. The larger components are Darlington transistors and there are six per axis, I assume one per lead from the motor. I’ve not yet identified the smaller component but since there are two, I believe they provide some sort of control for each phase of the motor (A, A-COM, A’ and B, B-COM, B’). As I rebuild a schematic from these images, I’ll hopefully deduce what it’s used to manage.
[[File:drivertransistors.jpg|600px]]

Leave a Reply

Your email address will not be published. Required fields are marked *