Inventables Electronics Batch 3
ShapeOko kits purchased through Inventables come with a full set of electronics, which includes the following:
Layout and Identify Components
|IEK-07||Stepper Cable 810mm||3|
|IEK-08||Solid Core Wire 300mm||1|
|IEK-10||USB Cable 3m||1|
|IEK-11||E Stop Button||1|
|IEK-16||Arduino Mounting Hardware||1|
|IEK-17||Spindle (not shown)||1|
Arduino and grblShield
The Arduino is the heart of the electronics. It contains an AVR Processor, a USB connector, and I/O pins. The Arduino comes with grbl already installed on board. grbl reads g-code that is sent over USB and translates it into movements for the stepper motors on the ShapeOKO. The particular version of grbl on the Arduino also comes pre-configured for the ShapeOKO, and should not require any tweaking to operate.
The grblShield plugs into the top of the Arduino, and is what takes the signals grbl generates and drives the steppers. As shipped from Inventables, the shield has had the micro-stepping changed on the Z-axis driver to 2x microstepping to enable faster travel speeds for the machine. You will notice on the grbl shield there are small white "pots" that look like philips screw heads. These are used to adjust the current going to the motors. The motor drivers are sensitive and you may need to SLOWLY adjust the pots. The total travel of the pots are 270 degrees. Don't touch them now, this was just a heads up. The Syntheos wiki has a good article on how to properly set the motor current.
The power supply provides 24 volts at 4.5 amps. Be careful with it, and don't work on power wires when the power supply is plugged in. The connector that ships with the power supply comes with a barrel connector at one end. The pigtail adapter that's included with the kit (shown below) plugs directly into the barrel connector.
The pigtail adapter comes pre-stripped but needs to be modified in order to accommodate the estop and also plug into the grblShield. To do this, strip back the protective cover about 150mm. It should look like this:
The video below shows you how to strip all of the wires in the Inventables kit using the included razor blade.
Arduino, Shield, and E-Stop
Unscrew the top of the E-Stop switch. Then unscrew the silver collar below it. Below that, there is a white collar with a rubber ring on top of it. Screw it all the way down.
Fit the switch into the large hole on the case, and then screw down the silver collar to hold it in place. Replace the top.
Place the Arduino on top of the case. The USB jack should be facing away from the E-Stop switch. Using M3x12 screws and nuts, attach the Arduino to the case. Snug down the screws, but don't make them too tight. You don't want to crack the circuit board.
The grblShield plugs into the top of the Arduino. It only goes in one way -- the power connectors should be on the same side of the Arduino as the USB jack. (Shown not attached to acrylic stand for simplicity)
Now that we have all of the parts laid out and identified, let's assemble a minimum electronics setup. By testing your electronics first, without attaching anything to your machine, it will be significantly easier to troubleshoot if something were to not work as expected.
Once we're done verifying the electronics, we'll continue on with the build process.
Here's a picture of the full assembled minimum electronics setup:
Start by connecting each of your stepper motors directly to the grblShield.
- Note the wire coloring from left to right (as shown): Black, Green, Red, Blue
- I found it easier to detach the grblshield from the arduino and acrylic stand before attaching the stepper motors.
Once your motors are connected to the grblshield, set it aside for a moment. We're going to test the arduino to make sure grbl is functioning correctly:
- Attach arduino to computer, does green light turn on?
- Test for general functionality
- open gcode sender or universal g-code sender
- select appropriate com port, 9600 speed
- Click open
- send '$' command
- does the unit return your current settings?
- If Yes, continue with instructions
- if no, click here (arduino grbl troubleshooting section)
- Test for general functionality
Alright, your arduino is working and grbl has been loaded and is operational. Unplug the USB cable from your Arduino to disconnect from your computer. Go ahead and attach your grblShield to the arduio (see the pictures in the previous steps if you're unsure of how those two items connect).
Now it' time to wire up the e-stop and connect the power supply
- attach pigtail adapter's gnd (black) directly to grblshield (note polarity on connector)
- strip wire ends on included red wire (strip back ~6mm)
- attach one end of stripped cable to estop (red side)
- attach other end of stripped cable to grblshield (note polarity on connector)
- Attach power supply VMOT (red) to estop (again, use the red side)
At this point, everything should be connected properly. Does your setup look like the picture above? Great! If not, go back through the instructions and figure out where you strayed from the path. If you get stuck, head over to the forum and ask for some help.
If everything is connected and you're ready, lets go ahead and try to stream gcode over to the arduino form your computer.
- Open gcodesender or universal g-code sender
- Select the appropriate com port
- Select 9600 for the speed and click 'open' to make a connection
- Download this File:Verifyelectronics.txt test file and open through your gcode sender
- Click Go!
Wiring up your Shapeoko
To wire power to the electronics, all you'll need is the (modified) pigtail connector and a piece of wire ~7" long. The E-Stop acts as an interrupt to the power on the grblShield, so if something goes horribly wrong, you can kill the power. It has two sides, a red side and a green side. The Red side is the side you want to wire to.
The 24 volt wire is the one you want interrupted with the eStop. The system stays grounded together and power is removed from the grblShield and the motors.
Warning If you interrupt the ground line with the eStop the motor current will find it's way back though the USB port to the computer. This is not good on multiple levels. (1) USB is not meant to carry that much current. (2) the power supply ground and the computer ground (the USB ground) may be at different potentials. This risks blowing out any of the PC's USB port, the Arduino's USB port, the TI driver chips, the power supply itself.
Please note in the diagram the "hot" wire is red. The actual wire that came with the kit in Batch #1 is black. We will be updating this to a red wire in the future.
To allow for a solderless assembly, the stepper motor wires are run into a terminal block which mounts to the Y-axis motor plate with two sets of M3x16 screws, washers, and nuts.
To figure out where to cut the motor wires, slide the X-axis all the way to the side opposite the terminal block and run the wire to the block. Mark that length, and then cut the wires two inches longer than that. Repeat for the Y-Axis and Z-axis.
The terminal block has 12 connection points. Think of them in groups of four (each group gets the four wires from a stepper). In the far left group, fasten all the wires from the X-axis motor in this order (from left to right): Red, Blue, Green, Black. In the middle group, insert the Y-axis wires in the same order, and the Z-axis wires in the far right group.
Take the grey 4-conductor cable and cut it into thirds. These are the leads that will run out of the terminal strip and into the GRBLShield. Strip both ends of all three cables, and insert them into the bottom half of the terminal block, matching the wire colors (note: there is no blue wire, so match it to white).
The X, Y, and Z cables can then plug into their labeled ports on the grblShield. Congratulations, you've built a ShapeOKO!