I have some 100 Atmega328 IC boards. I want to upload firmware in all of them at one go and I have the final firmware code. Is there any method by which this can be done?

I was reading somewhere that it is called firmware loading, but not the process.

  • 1
    \$\begingroup\$ How does the firmware uploading work on this board? \$\endgroup\$
    – user253751
    Jul 14 '20 at 13:40
  • \$\begingroup\$ Couldn't understand what you want to ask @user253751 \$\endgroup\$ Jul 14 '20 at 13:42
  • \$\begingroup\$ I don't think that flashing firmware into multiple boards (100 boards or even only 2 boards) can be done without special hardware and/or software. Developing that board and software will cost you more time than simple programming each board one after the other. If you need to program many thousands of boards then maybe things are different. \$\endgroup\$ Jul 14 '20 at 13:47
  • 1
    \$\begingroup\$ There is an existing question on this here somewhere. It's vaguely possible you could run multiple ISP targets from one controller by keeping the reply pins distinct. It may be simpler though to just get a large number of the cheapest Arduino derivatives and modify the ISP code so that they can be fed a serial "broadcast" of the data to progam into their individual ISP targets, or something like that. The nice part is it scales, you can try it with a few and go from there. \$\endgroup\$ Jul 14 '20 at 14:11
  • 1
    \$\begingroup\$ If you are confident the firmware will not change you could also order the chips programmed by a distributor before installation... but chances are the firmware will change. For a hundred the mechanical programming interface matters, too - design so you can use pogo pins, or a tag connect. If you have to use a header, use a single row one so you can hold some unsoldered pins in tilted at an angle. \$\endgroup\$ Jul 14 '20 at 14:13

What you are asking about is called a gang programmer. Commercial ones tend to be “professionally” built with commensurate pricing. You need a circuit for each MCU since errors are possible on each.

There is this guy who used a bunch of USB programmers and some batch files to accomplish the task, but for only 100, I would just do them one at a time. You could also purchase the chips pre-programmed or have your assembly house do the testing and programming as one step.

If you are making many thousands, you could design a test/programming fixture and test rig, but probably 5-10 at a time would make more sense than 100. Considering the handling time you get diminishing returns.

  • \$\begingroup\$ In fact the Atmega328 is now produced by Microchip Corporation, and they do offer a service where you can buy the chips pre-programmed. So for large production runs this is probably the easiest route. \$\endgroup\$
    – user4574
    Jul 14 '20 at 14:37

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.