Hi all,
I've recently learned about hardware thanks to the Arduino platform. I have an idea (like many of us) for an awesome new gadget which I have been able to prototype with my Uno. I'm really excited, and I have some demand from friends, at least, who would buy a production version.
So, I'd like to scale up my project and produce perhaps 100 devices (hopefully more if it goes well, of course). I'm getting help designing a custom PCB for my project, likely built around the ATmega32u4 as in the Leonardo.
1a) Can anyone link me to good advice on this process? Most important to me is probably picking a good place that can do the PCB manufacturing plus assembly for me. Sure, I can try to place parts manually and reflow my awesome SMD assembly on my kitchen pancake griddle, but I'd like to automate and outsource the process instead of doing that 100 times. I also need to find a good custom case builder for my little gadget; so far that looks to be surprisingly expensive! At least please let me know if you think I'm on the right track.... laying on my own simple circuit board, designing a case with a few holes for buttons to stick out of, printing my company name/logo on the side of the case and in general making a real, marketable consumer device.
1b) One really simple question which has confused me (I know I'm a noob): what's the best way to program my ATmegas for these 100 devices? Will my production company be able to upload my code for me once I find one? I've programmed chips with a little FTDI breakout board, but what's the recommended method... especially when I want to do it 100 times, and when I plan to put it in a device for production? I don't really need to have the chip reprogrammable once it's installed on the PCB. So I'd like to know what people usually do here...
I decided recently to add WiFi to my project. Sure, I can prototype it with a WiFi shield and perhaps an XBee WiFi, but that seems like an expensive component. Is there something cheaper that people recommend for production? And... will a cheaper WiFi module be easy enough to program? I don't want to reinvent the wheel, especially when WiFi is a rather complex piece of the equation. There are great libraries already that should work for XBee, as I understand, but I think I can get $10 WiFi modules in bulk, better than the $25 XBee... I just don't know anything about programming them.
Thanks in advance -- I hope we can record some good advice here not only for my project, but for all the other people who I suspect are having similar questions scaling up their Arduino prototypes and trying to start a little side business...
Nice to hear that you have found a cool way to use the Arduino. I am interested in what you have invented
Also, to help you a bit, I will try to answer as best as I can.
1a) Sadly, I do not know of any company doing PCB stuff, I just haven't gotten into that..
But, I do know a thing or two about designing cases/product design.
Making a case for a custom product isn't cheap, just like you said. They aren't just trying to rip you off, the process is just quite expensive. The process includes molds, stamps and such, and they need to be very precisely made. To give an example, if a mold (for casting) would need to be made, the precision needs to be sub-millimeter precise. If the precision is above that, the upper part of your case could come out to be too big to fit on the lower part of the case. Making a mold that is so precise is just plain expensive. Besides that, everything that needs to be done (or automated) outside of the molding adds to the cost. Printing your logo, or drilling holes is something that could add to the cost of a casing. Keeping your case design as simple as possible is the best way to keep the cost low. When you know that you are making 1000+ cases, the cost could go lower, because the cost of the mold will get relatively low.
My advice; find an existing casing that will fit your project and modify that case. For example, a lunchbox that only needs a few holes would probably be cheapest. You could get into contact with a print shop to make you stickers for your logo, and voila!
1b) If you buy the ATmega chips seperately (and in high volumes), you can probably ask your ATmega supplier to program them for you before they even get sent to you. Some suppliers sell ATmega chips with the arduino bootloader already on them. Programming an Atmega with a bootloader or a sketch makes little difference in effort, so they might be willing to do that for you.
I have experience in using the WiFly module from Roving networks. They are easy to use/program so I can advice them. How well they suit your project really depends on how you intend to use them.
Eric,
Where are you located?
There places that will accept drop-shipments of parts, create a pick-and-place program, solder stencil, and populate the boards for you.
One such place is CBAS-USA.com in California.
Other places will do "turnkey" work, ordering all the material for you as well. These will cost more.
One such place is InternationalCircuits.com in Massachusetts. They can build the PCB also from your Gerber files.
In either case, you need to develop a complete parts list of purchasable parts from Mouser, Digikey, Newark, etc. with the suppliers part numbers to be purchased.
For cases, you can try designing your own using a place like ponoko.com,
or find a case that will suit your needs and have it customized some, from a place like polycase.com.
Programming - if you get Atmel's AVR ISP MKii (~$35), you can plug it onto an ICSP header on your board and program each one really quick.
I did 50 '1284 boards one night, went really quick after figuring out the routine on the first couple - basically check lock bits, check fuses, download program. I didn't set the lock bits after programming, you could do that as a final step. Its all just a few mouse clicks in Atmels AVR Studio.
The board does need a power source. The MKii reads the power pin on the ICSP as a reference only, and uses USB for its own pwoer source.
Re the enclosure, it's going to be way cheaper to use an existing one, I find that selecting an enclosure is one of the hardest parts of a project.
Have a look at Polycase and Han Se
Polycase will machine their cases and print logos etc for you. Han Se have such a large range you will never see them all :), they will sell small quantities and the prices are really good.