Sunday, November 29, 2009

Mill: electronics, end-stops, bed, and vacuum...

I've been adding to my mill related to-do list for several weeks and am happy to say that I finally made some progress. First, I finished installing my electronics. I was planning on borrowing my stepper driver boards from my 3d printer in order to mill another set but finally got too annoyed by switching machines so I went ahead and bought them from MakerBot.



Next, I installed the x, y, and z end-stops respectively.





I then started working on my bed. I wanted some kind of setup that would allow me to screw on the material I was milling in any orientation or size. I settled on this approach. Thankfully I was able to mill all the grooves and drill all the holes right no my mill. To accomplish this I screwed down a 1 X 3 inch board and milled down the surface so that it was level. I then pinched these 1 X 1 inch pieces of wood between two screws and milled a groove. I Flipped and repeated. I then turned and drilled the holes in the pieces of wood. I then drilled corresponding holes in my base MDF bed.





A washer will now fit in the grooves and so I have a lot of flexibility in how I screw down my milling material. I also zip-tied a Husky Wet/Dry Vac to the mill. I should have done this a long time ago. I am now in the process of milling down and leveling my new bed.

Sunday, November 22, 2009

RepStrap: cleaning day...

When I originally built my RepStrap I did it so quickly that I didn't bother making it pretty. My driver boards have been laying next to my printer with a rat's nest of wires on top for the last six months. It was time for me to get out the zip ties and make it pretty.





I also install a household power switch under my table to turning it on and off. While I was at it I installed one for my mill as well.


Saturday, November 14, 2009

Spiderwheels: How to bootload a breadboard sanguino...

Now that I have a leg constructed it is time for me to focus my attention on the circuit. I have decided to base my circuit design off of the sanguino by Zack Hoeken. I made this decision for three reasons.


  • I want to stay close to the arduino community in order to leverage all the open source work that has been done.

  • There are no surface mount parts in the design, which is good because I want to keep this at the beginner level. It's also good because I want to prototype on a breadboard and SMT doesn't play nice with breadboards.

  • It has enough pins. I need at least 18. I want 27. The sanguino has 32.

I put in orders for all the parts I need for two sanguinos, as well as a USB to TTL cable and a USBtinyISP bootloader last week. I was really lucky that all the orders came in last night.

First, I soldered together my USBtinyISP kit.



Then I followed this tutorial to construct a breadboard sanguino for prototyping.

I was a novice to AVRs and the inner workings of the arduino family of boards as of last night so I was naive enough to think that it may be possible for the bootloader to magically go onto the AVR chip when you load the firmware for the first time. Nope. I got the "avrdude: stk500_getsync(): not in sync: resp=0x00" error.

Though I was naive enough to try it I was smart enough to have already made a USBtiny bootloader. However, how do you plug the USBtiny into the breadboard sanguino?



As you can imagine this was an intimidating problem! Remember, I was a novice. It's not that the information isn't provided. Technically, all you need is the schematic of the USBtinyISP and the schematic of the sanguino to figure it out. Still... I am kind of surprised that the sanguino website doesn't say much about bootloading. I mean... this is an open source project. Furthermore, arduino bootloading tutorials are hard to come by in general. This got me thinking. Why are there no / very few tutorials on bootloading? Is it to encourage people to buy their kits which have already been bootloaded? Is it because bootloading is too technical for the average arduino hobbyist to understand? Is it because no one really cares because they have no desire to design an arduino variant on their own? Maybe it's just that no one took the time. Definitively something to think about. I welcome thoughts on this.

It took me two whole hours to check and double-check my work before I felt comfortable plugging in the USBtinyISP. Here is what you need to do if you want to bootload an ATmega644P on a breadboard with a USBtinyISP.

USBtinyISP ICSP (1) goes to (b16)

USBtinyISP ICSP (2) goes to (b19)

USBtinyISP ICSP (3) goes to (b17)

USBtinyISP ICSP (4) goes to (b15)

USBtinyISP ICSP (5) goes to (b18)

USBtinyISP ICSP (6) goes to (b20)


Now, assuming you have followed the tutorials on how to get your computer to recognize the USBtinyISP and you have successfully installed the arduino app + sanguine files, the next step is to plug in your USBtinyISP. Then open up your Arduino application, select board > sanguino, select burn bootloader > USBtinyISP and wait 5 to 10 minutes. I didn't think it would take that long but I resisted the urge to unplug it and try again. It worked the very first time with patience.

I just burnt a bootloader on a fresh chip! Now I can plug in the USB to TTL cable like this:



and burn some firmware. I successfully uploaded the blink program to the ATmega644P chip before writing this.

I hope this is of use to someone.

Saturday, November 7, 2009

Spiderwheels: snap...

Now that I have decided to use the smaller servos I have been redesigning my spider leg parts to accommodate the smaller servos. I recently had a burst of creativity. I realized that I can design these parts to snap together, instead of requiring fasteners. Here is an image and a video of the the snap together design.




CNC parts printed on a RepStrap from gavilan on Vimeo.

Sunday, November 1, 2009

Mill: bigger steppers and carbide bits...

When testing my mill out for the first time went ahead and borrowed my steppers from my 3d printer. They sell for $26 and have 156 oz-in torque. Here is a picture of one on my printer (Kelling, KL23H251-24-8B).



They worked fine for the tests but I quickly realized I needed something bigger. I went ahead and ordered some of these (Kelling, KL23H2100-30-4BM):



They are $59 a piece with 495 oz-in torque. I will be using one for each of me x and y axes and the smaller stepper for my Z axis. What these bigger steppers provide me is more speed and power. I am able to run the mill twice as fast with these steppers without skipping a single step.

I also got some new pure carbide bits in the mail for milling PCBs from Think & Tinker. I have yet to try them out, though I have complete confidence that they are up for the task.



I also ordered some carbide drill bits.



I'm looking forward to giving these a go soon.