While doing any long term project you are bound to run across three things: Good things, bad things, and downright ugly things. It's part of the territory. In fact, for a hobbiest, these are the things that make a project a project!

The Good:
A short blip about the project was mentioned in a recent article on Tom's Guide. Grant it, after seeing the posting on Sparkfun, I was actively pursuing being featured in the article, but none the less we made it in! That pretty much made my week.

The Bad:
Last Saturday I drove to a "local" (2 hours away) hackerspace meeting to meet up with fellow geeks and check out what other people have been up to. A couple of bad things happened: Only 2 people showed up (not including the host and hostess). This ended up being OK as the the host and hostess did a fantastic job of making us feel welcome. Even with the limited number, we managed to bottle some beer and have a generally good time BSing with each other.

Worse: I tried showing off my mill project (yes, I brought it with me!) but for some reason, I couldn't get it to work. I thought that during the trip something on my protoboard became disconnected.

After all it was the first time I had moved the machine and with extensive use of a breadboard, it wasn't exactly in mobile form to begin with. After troubleshooting for about 15 minutes, I couldn't figure it out and just packed it up. Not a big deal. I figured I'd get it running once I got back home.

The Ugly:
After making the 2 hours trip back to my house, I unpacked the mill and took it back into the Lab, hooked everything back up, put the meter to a few key connections, and tried to give it a test run. Nothing. OK. It had been a long day, I unplugged everything and let it sit.

After a few busy days of domestic duties and work, I had some time Tuesday evening to work on it. After messing around disconnecting the easy drivers from the protoboard (not an easy task!) and simplifying my circuit to only one axis and a simple (known working) sketch. I couldn't get anything to work.

I emailed the creator of the Easy Driver and asked him on a couple of things. Being the generous person he seems to be, he replied with a few tests (procedures) to check if the drivers were fried. Long story short: They were.... All three of them were fried! Here's a couple of pictures of my metering.....
To make matters worse: I fried my Arduino too! It seems that when I tried to demo my machine at the hackerspace meeting I crossed the +24v from my Power Supply and the GND, which essentially meant that I sent 24V into the arduino and then into the Easy Drivers. Both of which were only expecting 5V....

Right now I have a new Arduino on its way from Sparkfun. I will order the easy drivers tonight. In the meantime I'm hoping to learn how one may protect against accidents like this....

But I'll stay positive because, to steal a quote from Dostoyevsky, "A just cause is not ruined by a few mistakes" :)
 
 
Just one short day after figuring out the Y-axis, the X and Z are both moving!

I decided to stop by Radio Shack and pickup some DB9 connectors (1 male, 3 females) to make switching between motors easier. Although soldering all those pins on (24 total) wasn't much fun, it was totally worth it. In addition to making it easier switching between X,Y,andZ, the connectors also cleaned up a lot of the wiring.

I also soldered headers onto the easy driver so I could actually mount it on the breadboard instead of just setting it there! Worked like a charm.

As for the power supply, i switched from the ATX PS which was pushing 12v, to an old Dell Inspiron 20V 90W power supply. I'm not certain on this, but I'm pretty sure the extra power has really added to how smooth the motors run. I'm not even sure if that's possible, but it seems like it to me.

Here are some video of the other two axis' running. The Z looks especially smooth, which i'll say is from the fact that the acme rod is short which pretty much eliminates the chance of it being bent (as I suspect is the case on the Y axis). The X axis is coming along but there seems to be some friction somewhere along the path which is causing it to hang up and stall the motor (even with the ramp up / ramp down code)

I ordered two more Easy Drivers from Sparkfun yesterday, they should be here early next week. At which time I'll try hacking together something that runs all 3 axis in an indefinite "test" pattern.

Pretty exciting stuff here!
 
 
The Sparkfun forum guys really helped me out. After getting the Y-axis stepper up and running with the Arduino, there were some issues. Mostly it was loosing steps in a bad way. Plus, the vibration threatened to tear my machine apart! OK, that last bit was an exaggeration, but the vibration was pretty bad.

The guys on the forum pointed out that you cant just start a stepper at full speed, you have to "ramp up". Which after thinking about it, makes perfect sense. At this point in time, i've learned enough to know that in most cases, "it's already been done". Meaning, there was no need for me to write new code to "ramp up" the arduino. I mean, there are tons and tons and tons of stepper based arduino projects on the web, surely someone must have written some good code.....

The short answer: Yes, it's out there . But, the really surprising part is, that link is the only one i found where the steppers were "ramped up". Now, don't get me wrong, it WORKED! Check the video for proof of that. The difference with a smooth start is night and day compared to just the standard method. BTW: the standard method is: Start a loop, Pull step pin HIGH, put step pin back to LOW, delay for a set amount of time, loop. Most people just set the delay to something that won't stall their motor. This varies greatly depending on the specs, but for the most part people are between 200 and 400ms. I guess I'm wondering why more people don't start smooth? maybe it's just easier to set the delay and forget it... who knows. Either way, I'm really happy with the progress so far. Things are starting to come along.
 
 
Have a look at the mill page for a peak at my first schematic! I posted a question yesterday to the sparkfun project forum asking how to connect an 8 wire stepper motor to their Easy Driver stepper motor controller. After a few hours and some really helpful replies, I had my answer!

I wanted to try it last night, but ran out of time. Hopefully I can test it out tonight and report back tomorrow on two things:
1.) If it works!
2.) If the motor is strong enough to move the Z axis :)

Thanks again to the guys in the forum for their help!

Also, I used a program called "Project Draw" from the Autodesk Labs website to draw the schematic. Although I'm more comfortable drawing things in Illustrator, Project Draw works really well. I'm by no means a professional electrical schematic drawer, so I can't attest to how great it is at that, but as far as an easy cloud based way to make a line drawing. It works just fine and has plenty of built in symbols to use. So check it out if you get a minute, you might find it useful as well.