Strange set of Atmel '328 ICs...

Dave Hrynkiw
August 26, 2010

Unlike Sparkfun, who actually manage to find fake Atmel ICs, we just get strange batches.

The Atmel ATMega328 is the power behind the Arduino/Freeduino/*duino, and we have to set up a programming system to burn the venerable Arduino Bootloader into these chips.

We normally use an AVR STK500 in HVSP (high voltage serial programming) mode, as that lets us be absolutely sure the fuses are set correctly and the burn is correct. Interestingly enough, this last batch of chips refused to work with our batch files. Asking the chip's ID often returned 0x01 0x03 0X05 instead of the expected signature.

After spending a day checking to see if the programmer was broken (nope) or if the chips were fake (nope, we think), we did find that they did respond to regular old ICSP (in-circuit serial programming), but only partially.

Digging around, we found some older ATMega328 chips that worked fine, and compared them to this new batch. This troublesome batch has a date code of 1015 (15th week of 2010), and a batch code on the bottom as 9J4302 / 35473d / 1-P1015 e3.

So we re-wrote our batch file burning code to use AVRDude instead of the STK500 command-programmer, and to run it in ICSP mode on the STK500. The key addition is the "-B" part, which slows down the communication a bit. You want it as low as possible for fastest burn times. I tried a "-B 2" on both fuse & programming lines, but that really slowed the process. What's below is what we settled on.

: Set fuse bits, lock bits, voltages
.avrdude -c stk500v2 -i 20 -p m328p -P COM1 -b 115200 -B 1.8 -e -u -U lock:w:0x3f:m -U efuse:w:0x05:m -U hfuse:w:0xDA:m -U lfuse:w:0xFF:m
: Burn & Lock Arduino hex bootloader file
.avrdude -c stk500v2 -p m328p -P COM1 -b 115200 -B 1.1 -U flash:w:%HEXFILE% -U lock:w:0x0f:m

Hope that'll save anybody else from blowing better part of a day figuring out why their Atmel isn't programming normally!

MORE POSTS

July 12, 2007
BEP Application: Turbot

The Turbot is a member of the Scophthalmidae family of flatfish and is almost completely circular. Turbot is often found partially buried in the seabed in sand, gravel, rocks and sediment. Its fat content varies, but it usually contains roughly 1 gram of omega-3 fatty acids per 100g fillet. Barring advances in genetic engineering, we will not be building that kind of Turbot. However, this kind of Turbot can be built with a soldering iron.

April 1, 2004
New Kits: The Spazovore and the SunSwing...

Yup, we've got a few new kits ready, the Spazovore beginner's kit, and the SunSwinger Pendulum kit. We're pretty happy with both of these kits, so scroll down a bit, and read about them below!

April 21, 2023
Spring Creality 3D Printer Sale - Let's ...

It's time to put away shovels, and clean up! We're making space in the warehouse, so we're moving out these big boxes of 3D printers! While supplies last, in-store only, final sale! Small, tidy, and lots of really good features - the Sermoon v1 Pro - 32% off! Super high detail printing with a Creality […]

April 25, 2016
Solarbotics Raspberry Pi 3 SAFE Assembly...

The instructions for assembling the Pi v3 and the previous acrylic Pi SAFE are quite similar. The only difference between the models is the location of the LED light pipes, so these Pi3 instructions apply generally to all Pi SAFE versions. 1. Your Parts! 8 x 4-40 nuts 8 x 4-40 x 3/8" bolts 2 […]

Solarbotics Ltd Logo
Solarbotics has been operating for more than 25 years, bringing electronics know-how and supplies to both the electronics professional and hobbyist. We'll be happy to help you too!

Solarbotics, Ltd. is not responsible for misprints or errors on product prices or information. For more information, please see our Terms and Conditions.

Warning: This product contains chemicals known to the State of California to cause cancer and birth defects or other reproductive harm.
Please visit www.P65Warnings.ca.gov for more information. This item was manufactured prior to August 31, 2018.