Arduino Duemilanove
Model: Aroboto Studio - Arduino Duemilanove, 2011 Sep
back to microcontrollers page.
History
History 2021-09-14: I re-created this page on my self-hosted web server.
2016-04-11: disconnected ICSP connection, connected via usb again, and tried to upload the Blink sketch via arduino ide. Nope - still doesn't work. Something fishy with USB power or FT232?
2016-04-11: try to program bootloader:
tingo@kg-core1$ avrdude -p m328p -P /dev/cuaU0 -c avrusb500 -v -e -U flash:w:/usr/local/arduino/hardware/arduino/bootloaders/atmega/ATmegaBOOT_168_atmega328.hex -U lock:w:0x0F:m avrdude: Version 6.1, compiled on Mar 25 2016 at 13:44:32 Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/ Copyright (c) 2007-2014 Joerg Wunsch System wide configuration file is "/usr/local/etc/avrdude.conf" User configuration file is "/home/tingo/.avrduderc" User configuration file does not exist or is not a regular file, skipping Using Port : /dev/cuaU0 Using Programmer : avrusb500 AVR Part : ATmega328P Chip Erase delay : 9000 us PAGEL : PD7 BS2 : PC2 RESET disposition : dedicated RETRY pulse : SCK serial program mode : yes parallel program mode : yes Timeout : 200 StabDelay : 100 CmdexeDelay : 25 SyncLoops : 32 ByteDelay : 0 PollIndex : 3 PollValue : 0x53 Memory Detail : Block Poll Page Polled Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- --------- eeprom 65 20 4 0 no 1024 4 0 3600 3600 0xff 0xff flash 65 6 128 0 yes 32768 128 256 4500 4500 0xff 0xff lfuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00 hfuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00 efuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00 lock 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00 calibration 0 0 0 0 no 1 0 0 0 0 0x00 0x00 signature 0 0 0 0 no 3 0 0 0 0 0x00 0x00 Programmer Type : STK500V2 Description : Atmel AVR ISP V2 programmer from tuxgraphics Programmer Model: AVRISP Hardware Version: 2 Firmware Version Master : 2.02 Vtarget : 5.0 V SCK period : 1.1 us avrdude: AVR device initialized and ready to accept instructions Reading | ################################################## | 100% 0.04s avrdude: Device signature = 0x1e950f avrdude: safemode: lfuse reads as FF avrdude: safemode: hfuse reads as DA avrdude: safemode: efuse reads as 5 avrdude: erasing chip avrdude: reading input file "/usr/local/arduino/hardware/arduino/bootloaders/atmega/ATmegaBOOT_168_atmega328.hex" avrdude: input file /usr/local/arduino/hardware/arduino/bootloaders/atmega/ATmegaBOOT_168_atmega328.hex auto detected as Intel Hex avrdude: writing flash (32670 bytes): Writing | ################################################## | 100% 0.00s avrdude: 32670 bytes of flash written avrdude: verifying flash memory against /usr/local/arduino/hardware/arduino/bootloaders/atmega/ATmegaBOOT_168_atmega328.hex: avrdude: load data flash data from input file /usr/local/arduino/hardware/arduino/bootloaders/atmega/ATmegaBOOT_168_atmega328.hex: avrdude: input file /usr/local/arduino/hardware/arduino/bootloaders/atmega/ATmegaBOOT_168_atmega328.hex auto detected as Intel Hex avrdude: input file /usr/local/arduino/hardware/arduino/bootloaders/atmega/ATmegaBOOT_168_atmega328.hex contains 32670 bytes avrdude: reading on-chip flash data: Reading | ################################################## | 100% 0.00s avrdude: verifying ... avrdude: 32670 bytes of flash verified avrdude: reading input file "0x0F" avrdude: writing lock (1 bytes): Writing | ################################################## | 100% 0.05s avrdude: 1 bytes of lock written avrdude: verifying lock memory against 0x0F: avrdude: load data lock data from input file 0x0F: avrdude: input file 0x0F contains 1 bytes avrdude: reading on-chip lock data: Reading | ################################################## | 100% 0.02s avrdude: verifying ... avrdude: 1 bytes of lock verified avrdude: safemode: lfuse reads as FF avrdude: safemode: hfuse reads as DA avrdude: safemode: efuse reads as 5 avrdude: safemode: Fuses OK (E:05, H:DA, L:FF) avrdude done. Thank you.
and now the pin 13 LED blinks once a second. That is good.
2016-04-11: try to program fuses:
tingo@kg-core1$ avrdude -p m328p -P /dev/cuaU0 -c avrusb500 -v -e -U efuse:w:0x05:m -U hfuse:w:0xDA:m -U lfuse:w:0xFF:m avrdude: Version 6.1, compiled on Mar 25 2016 at 13:44:32 Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/ Copyright (c) 2007-2014 Joerg Wunsch System wide configuration file is "/usr/local/etc/avrdude.conf" User configuration file is "/home/tingo/.avrduderc" User configuration file does not exist or is not a regular file, skipping Using Port : /dev/cuaU0 Using Programmer : avrusb500 AVR Part : ATmega328P Chip Erase delay : 9000 us PAGEL : PD7 BS2 : PC2 RESET disposition : dedicated RETRY pulse : SCK serial program mode : yes parallel program mode : yes Timeout : 200 StabDelay : 100 CmdexeDelay : 25 SyncLoops : 32 ByteDelay : 0 PollIndex : 3 PollValue : 0x53 Memory Detail : Block Poll Page Polled Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- --------- eeprom 65 20 4 0 no 1024 4 0 3600 3600 0xff 0xff flash 65 6 128 0 yes 32768 128 256 4500 4500 0xff 0xff lfuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00 hfuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00 efuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00 lock 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00 calibration 0 0 0 0 no 1 0 0 0 0 0x00 0x00 signature 0 0 0 0 no 3 0 0 0 0 0x00 0x00 Programmer Type : STK500V2 Description : Atmel AVR ISP V2 programmer from tuxgraphics Programmer Model: AVRISP Hardware Version: 2 Firmware Version Master : 2.02 Vtarget : 5.0 V SCK period : 1.1 us avrdude: AVR device initialized and ready to accept instructions Reading | ################################################## | 100% 0.04s avrdude: Device signature = 0x1e950f avrdude: safemode: lfuse reads as FF avrdude: safemode: hfuse reads as DA avrdude: safemode: efuse reads as 5 avrdude: erasing chip avrdude: reading input file "0x05" avrdude: writing efuse (1 bytes): Writing | ################################################## | 100% 0.02s avrdude: 1 bytes of efuse written avrdude: verifying efuse memory against 0x05: avrdude: load data efuse data from input file 0x05: avrdude: input file 0x05 contains 1 bytes avrdude: reading on-chip efuse data: Reading | ################################################## | 100% 0.02s avrdude: verifying ... avrdude: 1 bytes of efuse verified avrdude: reading input file "0xDA" avrdude: writing hfuse (1 bytes): Writing | ################################################## | 100% 0.02s avrdude: 1 bytes of hfuse written avrdude: verifying hfuse memory against 0xDA: avrdude: load data hfuse data from input file 0xDA: avrdude: input file 0xDA contains 1 bytes avrdude: reading on-chip hfuse data: Reading | ################################################## | 100% 0.02s avrdude: verifying ... avrdude: 1 bytes of hfuse verified avrdude: reading input file "0xFF" avrdude: writing lfuse (1 bytes): Writing | ################################################## | 100% 0.02s avrdude: 1 bytes of lfuse written avrdude: verifying lfuse memory against 0xFF: avrdude: load data lfuse data from input file 0xFF: avrdude: input file 0xFF contains 1 bytes avrdude: reading on-chip lfuse data: Reading | ################################################## | 100% 0.02s avrdude: verifying ... avrdude: 1 bytes of lfuse verified avrdude: safemode: lfuse reads as FF avrdude: safemode: hfuse reads as DA avrdude: safemode: efuse reads as 5 avrdude: safemode: Fuses OK (E:05, H:DA, L:FF) avrdude done. Thank you.
it worked.
2016-04-11: boards file (/usr/local/arduino/hardware/arduino/boards.txt) entry for Arduino Duemilanove:
atmega328.name=Arduino Duemilanove w/ ATmega328 atmega328.upload.protocol=arduino atmega328.upload.maximum_size=30720 atmega328.upload.speed=57600 atmega328.bootloader.low_fuses=0xFF atmega328.bootloader.high_fuses=0xDA atmega328.bootloader.extended_fuses=0x05 atmega328.bootloader.path=atmega atmega328.bootloader.file=ATmegaBOOT_168_atmega328.hex atmega328.bootloader.unlock_bits=0x3F atmega328.bootloader.lock_bits=0x0F atmega328.build.mcu=atmega328p atmega328.build.f_cpu=16000000L atmega328.build.core=arduino atmega328.build.variant=standard
ok.
2016-04-11: check with avrdude and avrusb500:
tingo@kg-core1$ avrdude -p m328p -P /dev/cuaU0 -c avrusb500 avrdude: AVR device initialized and ready to accept instructions Reading | ################################################## | 100% 0.04s avrdude: Device signature = 0x1e950f avrdude: safemode: Fuses OK (E:05, H:DA, L:FF) avrdude done. Thank you.
ok, that looks ok.
2016-04-11: I have this "Arduino Duemilanove", "2011 Sep" which comes from "Aroboto Studio" (apparently), It has an Atmega 328P chip. I don't remember where I got it, it could be DX (SKU 844118036). It doesn't work with the arduino ide, it refuses to program.