Sunday, October 2, 2011

My Final Decision on the Electronics!

One of the hardest decisions you will have to make if you are building a RepRap, is what electronics should you use? As I might have mentioned before, I am an electrical engineer and have plenty of experience; not only working with other peoples designs, but also creating and building my own designs. That being said, even though I could design my own board using my preferred microcontroller (the MSP430), why reinvent the wheel?

Currently there are multiple options for electronics. There has been great success with many of them, so I decided to take one of the existing designs and modify it. What is my goal? To keep the electronics as inexpensive as possible. I think there is lots of opportunities to save when it comes to the electronics when you are willing to sacrifice ease of use and simplicity. For example, many people don't take advantage of the free sample programs provided by manufacturers and if you are building the electronics yourself, this could lead to huge savings.

I went through this decision process many months ago, but I would like to take a step back in time with this post so you can see my thought process throughout the design.

The Options

Back when I was deciding on what to do, there were really three options.
  1. Generation 3 Electronics
  2. Generation 6 Electronics
  3. RAMPS - RepRap Arduino Mega Pololu Shield
As I already said, much has changed since I decided what to do with the electronics. The most notable change was the addition of Sanguinololu electronics. To be honest, if the Sanguinololu was released as working and well documented when I decided what to do, I would have probably chosen the Sanguinololu.

Back then, the generation 3 electronics were already old months ago, now they must be ancient. This option is the most expensive and most complicated. I will not be discussing this option here since I passed by it quite quickly and it is completely irrelevant at the writing of this post.
Generation 6 Electronics
The generation 6 electronics is a single board solution that uses surface mount components to minimize the size and cost of the board. Many hobbyists reasonably shy away from surface mount components, so this option might not be the best for you. Luckily for me, I not only have a plethora of passive surface mount components, but I also have a rework station and a high quality soldering station. There are quite a few seemingly unnecessary components on this board, but I will go into that in another post.

RAMPS seems like a very good option for those of you who already have an Arduino Mega. RAMPS is shield for the Arduino Mega which has sockets for the Pololu stepper motor drivers. This seems to be one of the most popular choices for the electronics and there seem to be many places online to buy blank PCBs or the completed shield.

Stepper Drivers

Probably the most important and difficult part of the electronic is the stepper motor driver circuitry. Many of you will have some, if not lots of experience with the Arduino or other microcontrollers. The rest of the electronics are pretty standard and straight forward. Personally, I had no experience with stepper motors before this project and I am sure many of the more electrically minded people out there also have no experience with stepper motors.
Pololu Stepper Driver
The easy option is to use the Pololu stepper motor drivers; these motor drivers are used in both RAMPS and Sanguinololu to great success. I think that there are two downsides to using the Pololu stepper drivers. 

The first is the availability; I have seen countless accounts of these drivers being out of stock and hard to find. That being said, there is apparently a pin compatible StepStick available on eBay as an alternative. This is by far the simplest and most straight forward option available to you.

The second, and in my opinion the most important, is the cost. A single board costs about $13, this is quite high considering you need 4 of  these boards for a RepRap. Texas Instruments on the other hand has a stepper motor driver which not only is available from Mouser and DigiKey (the Allegro chip used in the Pololu board is not!), but is also available through TI's free sample program. I will be writing a separate post on this chip, the DRV8811 in the future.  Additionally, this chip comes in a much easier to solder package. I believe this is important since relying on a single company (Pololu) for a breakout board, for a chip which is not easily available, goes against the hacker/maker mentality.

My Decision

All things considered, I decided to go with making a custom version of the Generation 6 electronics. I can solder surface mount components, I already have almost all of the passive components needed, and I know of a place where I can get cheap PCBs made. The stepper motor drivers are really what made me choose Generation 6, I really wanted to avoid the Pololu controllers. I am going to modify the PCB by removing unnecessary parts and changing the passive components to the size I already have, hoping to make it cost even less! More on this in the future!

Looking Back

Given the fact that the Sanguinololu is an option now, I would highly recommend just buying a complete Sanguinololu kit. This is a design that is known to work and by buying a kit you will be able to save tons of time by not making custom electronics. If you really want to save money and have all the time in the world, or want to get your hands dirty with some electronics, buy a blank Sanguinololu PCB, get any free parts you can, and order the rest from Mouser or DigiKey.

Stay tuned for more!