Bootloader erros

I just built an Arudino serial V2 board myself and am having problems with the bootloader. Here is what I am getting on the screen. there is a lot more errors then will fit on this screen. 23 pages worth if you put it in word. Any help would be great i'm using the ATMEGA8-16PI-ND.

Atmel AVR ATmega8 is found.
Writing lock bits ...
Reinitializing device
Atmel AVR ATmega8 is found.

Lock Bits set to 0xff
Atmel AVR ATmega8 is found.

Fuse Low Byte set to 0xdf

Fuse High Byte set to 0xca
Atmel AVR ATmega8 is found.
Erasing device ...
Reinitializing device
Atmel AVR ATmega8 is found.
Uploading: flash
Verifying: flash
flash error at address 0x1c00: file=0x12, mem=0xff
flash error at address 0x1c01: file=0xc0, mem=0xff
flash error at address 0x1c02: file=0x2b, mem=0xff
flash error at address 0x1c03: file=0xc0, mem=0xff
flash error at address 0x1c04: file=0x2a, mem=0xff
flash error at address 0x1c05: file=0xc0, mem=0xff
(lots more flash errors)
flash error at address 0x1fed: file=0x94, mem=0xff
flash error at address 0x1fee: file=0xe2, mem=0xff
flash error at address 0x1fef: file=0x9a, mem=0xff
flash error at address 0x1ff0: file=0xe1, mem=0xff
flash error at address 0x1ff1: file=0x9a, mem=0xff
flash error at address 0x1ff2: file=0x0f, mem=0xff
flash error at address 0x1ff3: file=0xbe, mem=0xff
flash error at address 0x1ff4: file=0x08, mem=0xff
flash error at address 0x1ff5: file=0x95, mem=0xff
flash error at address 0x1ff6: file=0x80, mem=0xff
flash error at address 0x1ff7: file=0x00, mem=0xff
Atmel AVR ATmega8 is found.
Writing lock bits ...
Reinitializing device
Atmel AVR ATmega8 is found.
Warning: lock bits write=0xCF read=0xFF

Lock Bits set to 0xcf

what this is saying is that while verifying the bootloader every single byte was wrong…
this can be due to:

  • the programmer is faulty
  • the board you have built has some short circuit or other errors
  • the chip is defective

maybe option2 is the one unless you’ve built the programmer yourself, then the problem is there:)

massimo

well it could be the programmre or a short circuit. It is not a devective chip becuase i have tried 3 chips. I did build the programmer myself but still I have checked that more times over then I can even think of.

parrallal pin 1 goes through 470 Ohm resistor to pin 19 of the ATMEGA8 parrallal pin 2 goes through 470 Ohm resistor to pin 17 of the ATMEGA8 parallal pin 11 goes through 220 Ohm resistor to pin 18 of the ATMEGA8 parallal pin 16 goes through no resistor to pin 1 of ATMEGA8 parallal pin 18 goes though no resistor to ground of circuit

if an LED is hooked up though 31k resistor on pin 19 of ATMEGA8 LED lights when plugged into Parrallel port and flashes when running boot loader (parrallal).

I'm thinking it is my 16MHZ crystal that is causing the problem or the capacitors there by.

I also noticed that my USB Arduino board has a ATMEGA-16PU chip and the one on your serial parts list from DigiKey is a ATMEGA-16PI could that be a problem?

I had the exact same problem. But I fought with it, and figured it out. It was the parallel port settings. In the Device Manager, open the parallel port properties, check the option "Use any interrupt assignment".

This should reduce the number of errors dramatically, if you've got the same problem as me. Keep in mind that I still got between 0 and 8 verify errors... I just kept uploading the bootloader until it verified correctly.

As a side note, I had no idea what the correct parallel port settings were. (are they hidden in some doc?) In the BIOS: Use ECP (bidirectional) ~ default address = 0378-037F ~ DMA 3 (DMA 1 is OK) EPP and SPP will not work, because they're unidirectional (write only) In Windows XP: "Use any interrupt assignment" (unchecked) Enable legacy Plug and Play detection

What the Resources tab says: I/O Range 0378-037F I/O Range 0778-077B IRQ 7 DMA 3

I also tried adding RC filters (termination), but I didn't use the "correct" capacitor and resistor values. Probably because of that, it didn't seem to reduce the number of verify errors. I think the right RC values are 470pF and 100ohms. I'm going to rebuild it with the right parts tonight (from college; where they've got parts galore) ~ to see if it works better.

i just read your post of 13.10.2006 and i wonder if you finally solved your problem. i just made a parallel port programmer and tried using it with arduino 0006 to burn the bootloader. i get an error message "Failed to get direct I/O port access." and that's it! i tried to unable the windows xp polling of the port as advised on arduino's site and even to check the option "Use any interrupt assignment". to no avail! any advice?

Are you on Windows? Did you try download and installing giveio (linked from the bottom of http://www.arduino.cc/en/Hacking/ParallelProgrammer)?

yes, i ran the ginstall.bat of giveio and the loaddrv.exe. i use a sub-d25 parallel port male connector on which i've soldered the wires going to the icsp - with the required 3 resistors. i am on windows xp. any help?

Just out of curiosity Frogeraie, if you don't connect anything to the parallel port, does it say the same thing? The parallel port connector might not be making proper contact. Are you plugging in the parallel port icsp adapter and also powering the Arduino thru USB or external wall wart? (the icsp adapter doesn't provide power)

Also, I don't trust windows ability to detect certain hardware changes. If you changed BIOS settings for your parallel port, I'd say remove/uninstall the parallel port (in the Device Manager), restart and let windows reinstall it.

I've seen ginstall.bat fail before on computers with tight security. You might have to be logged into windows with administrator privileges. You can also try running it from the command prompt (manually launched) so it doesn't automatically close.

ginstall.bat should tell you one of these three things: 1. Success! (doesn't pause) 2. GIVEIO driver seems to be already installed; skipping installation (doesn't pause) 3. Error installing GIVEIO driver ...

BTW, loaddrv.exe doesn't need to be run, it's just used by ginstall.bat

I just thought to search google for your error. They said to uninstall uisp, restart and reinstall uisp. To my knowledge, the uisp source was built into the Arduino environment. So it might be the same with uninstalling the Arduino IDE. Mellis would probably know if that's a fools errand.

This may or may not be related: I built the programmer on the Arduino web site that was mentioned in a previous post, and it would not work. Period. Nothing I tried would make it work. Built a new one, just to make sure I didn't screw up - still no joy.

I built a different parallel port programmer (based on a 74HC244 chip) and it worked great, first time every time - I burned the bootloader on three or four ATmega8s. I switched to avrdude to get support for that programmer (uisp may have worked, but I didn't try).

-j

I try to answer your questions, Amp: if i do not connect anything to the parallel port and run the arduino's burn bootloader i get the same message "ioperm: No error Failed to get direct I/O port access." i use the icsp connector to connect the parallel port exactly as described in arduino's hacking and power the board with the usb. i will try to change the bios. when i run ginstall.bat nothing happens, i mean that i see the dos black sceen flash briefly and no "success!" no error, nothing. even if i use the command prompt and enter the complete path to ginstall.bat. in your second message you speak about uninstalling usip, how can i do that? and uninstalling arduino? is that possible? i mean beside getting rid of the whole folder? there is no uninstall file. right?

kg4wsv: you mention another type of programmer - which is working! - do you have a schematic? thanks for your help!

it is basically this one:

http://www.lancos.com/e2p/betterSTK200.gif

Most of the resistors and capacitors are missing on mine; it only includes D1, R11, and C1. I also adapted the 10-pin header on this schematic to Arduino's 6 pin header.

I was unable to get it to work on the Arduino NG, but it worked fine when I breadboarded a bare ATmega8 with just a 16MHz crystal and a pullup resistor on the RESET line.

-j

finally, out of despair, i've reinstalled windows, formated the disk, reinstalled arduino and then....everything went like a charm: giveio was easily installed, the "done burning bootloader" showed in less than 5 seconds and when i checked with the reset button the led blinked! and then of course i could program the µC!!!!!