Mass Production -Loading Arduino IDE code onto Processor


I am developing an educational product that I would like to mass produce. I am not sure of the quantity yet, but I imagine we will make a few hundred PCBs

I spoke with an electrical engineering about how to take an Arduino prototype to mass production, and he warned me that the code written in the Arduino IDE cannot be fused onto the processor. (He used the term "fuse", although I don't see this elsewhere in the forum. is this the right term?)

He said that I would probably have to take each product, and load the Arduino code on manually, plugging in each one to a computer and upload like one would when prototyping. Also, he said the other option would be to recode my Arduino code from scratch using an AVR code.

Can someone shed some light on this for me? How can I take Arduino prototyping code and use it in mass production?



AFAIK every controller must be programmed individually. Eventually there exists a "bulk" or "gang" programmer, that allows to program a couple of boards in parallel, but that will usually require special hardware, and probably also a special boot loader instead of the pre-programmed one. Have you searched the AVRStudio?

IMO "fuse" is somewhat misleading, it usually applies to one-time programmable read-only memory (PROM). The Arduino program memory instead can be erased and programmed multiple times. What's not available are mask programmable devices (mask ROM), such memory was often used in the past for huge lots (>1000 items). The usual term is "flash", "program" or "upload an sketch" (from the IDE) for programming Arduino boards.

Ask your PCB manufacturer for details, perhaps he offers a programming service as well. The Arduino IDE file format might be a problem, but at least AVR/Atmel Studio should allow to provide commonly usable file formats.

Distributors will pre-load a program into parts before they are assembled onto boards.
See the contact info on this page for example.

Or you could work with a board manufacturer to program the assembled boards. I bootloaded 40 custom boards last night for one of my customers. I often bootload and then install Blink if the hardware is so equipped to make sure the two interfaces are working. Couple minutes per board, 200 boards would take about 3 hours.

You can also use a standalone programmer, put your file on SD card, connect the programmer to the ICSP header on the board, push the start button. When the light stops flashing it's done.