Bootloader branden met usbasp

ben er nog steeds druk mee....

Het lukt me niet..
Met twee mega aan elkaar niet
Ethernet aan mega niet...

nu heb ik de usbasp weer geprobeerd.
En dan met jumpers naar de mega...
duurt minuut of 5 en dan toch weer volgende fout, maar ook een knipperend ledje..[ snel 2 x kort ]
Dus zou het kunnen dat het nu gelukt is???

avrdude: warning: cannot set sck period. please check for usbasp firmware update.
avrdude: warning: cannot set sck period. please check for usbasp firmware update.
avrdude: warning: cannot set sck period. please check for usbasp firmware update.
avrdude: warning: cannot set sck period. please check for usbasp firmware update.
avrdude: verification error, first mismatch at byte 0x1e000
         0xff != 0x0d
avrdude: verification error; content mismatch

En is er niemand die me uit kan leggen hoe ik de bootloader kan checken???
Ik heb hem nodig voor de watchdog..
Testen is voor mij er achter komen dat na 4-5 dagen de arduino crasht....

Deze sketch werkt op een uno, weet niet wat hij doet op een mega,
Welicht kan iemand op het jeelab forum, de "data base uitbreiden voor mega"
http://jeelabs.org/2012/03/07/which-boot-loader-do-i-have/

Je hebt twee werkende mega's en een uno_eth, Ga voor het ardino_ISP voorbeeld en update de mega naar de laatste bootloader
met de arduino IDE,

teding:
Deze sketch werkt op een uno, weet niet wat hij doet op een mega,
Welicht kan iemand op het jeelab forum, de "data base uitbreiden voor mega"
» Which boot loader do I have? » JeeLabs

Je hebt twee werkende mega's en een uno_eth, Ga voor het ardino_ISP voorbeeld en update de mega naar de laatste bootloader
met de arduino IDE,

IK heb zelfs 3 mega's [ waarvan 1 nu blinky miet meer accepteert ]
1 ethernetborad [ uno met ethernetshield ineen ]

Maar hoe ik het ook doe...
Met arduino - arduino. mega of ethernet ]
Of met usbasp...
1.0.4 of 1.0.5

Ik krijg geen bootloader gebrand oid uit mijn report..
Telkens fout na fout...

Alleen als ik het ethernetboard brand, zegt ie bootloader gebrand..

Dus......
Iemand please....

Ok start met wat eenvoudiger, Volg deze link eens

mega naar mega, of uno naar mega.
Als dit werkt heb je verbind over ISP, en zou bootloader branden ook moeten werken.

Report anders ook je kabel aansluitingen even.

PS die kleine doorverbind draadjes gaan ook wels eens stuk op de soldering
Mijn voorkeur gaat uit naar zo'n bandkabels als in het voorbeeld van gammon

teding:
Ok start met wat eenvoudiger, Volg deze link eens
http://www.gammon.com.au/forum/?id=11633
mega naar mega, of uno naar mega.
Als dit werkt heb je verbind over ISP, en zou bootloader branden ook moeten werken.

Bandkabel heb ik nog niet geprobeerd...
Maar welke is de reset....
Report anders ook jeba kabel aansluitingen even.

PS die kleine doorverbind draadjes gaan ook wels eens stuk op de soldering
Mijn voorkeur gaat uit naar zo'n bandkabels als in het voorbeeld van gammon

Ik word er echt gek van..
Weken al mee bezig...
Sketch erin..
wachten....
En ik krijg er niet meer uit dan:

Dacht dan werkt de setting..
Branden, doet ie weer niet...

Is er ergens een mega te koop MET een actuele bootloader....

Wat heb je aan elkaar aangesloten, en welke pinnen heb je nu gebruikt?

teding:
Wat heb je aan elkaar aangesloten, en welke pinnen heb je nu gebruikt?

Ik heb een mega met een mega, via de bandverbinding.
Kabel 5 geknipt.

In de mega met de sketch de geknipte reset naar de 10. [ dus het draadje wat van de uit te lezen mega komt, gaat naar de 10 reset ]
Dan heb ik de band op meerdere manier op de te lezen mega gezet.
En op 1 manier kwam deze tekst eruit...

Ok, Op de mega/uno staat op de print een wit puntje voor pin 1
Op een bandkabel zit vaak een klein driehoekje op de connector als pin 1
en/of de ader met rode kleur is pin 1

En welke tekst kwam er nu uit ?

Het enige wat ik zie:

Atmega chip detector.

En ik wacht tot ik een ons weeg...

Zet de sketch in de uno, reset op 10
Andere kabel op een mega

teding:
Zet de sketch in de uno, reset op 10
Andere kabel op een mega

Je raad het nooit.....
Ik heb hem op mijn ethernetboard gezet....:

Atmega chip detector.
Entered programming mode OK.
Signature = 1E 98 01 
Processor = ATmega2560
Flash memory size = 262144
LFuse = FF 
HFuse = D8 
EFuse = FD 
Lock byte = FF 
Clock calibration = AE 
Bootloader in use: Yes
EEPROM preserved through erase: No
Watchdog timer always on: No
Bootloader is 8192 bytes starting at 3E000

Bootloader:

Waarschijnlijk nu goed aangesloten...
En nog een hele lijst eronder...
En nu??

Je hebt nu twee keuze's,
Of je set nick bootloader sketch in de uno

en volgt zijn instructie's

Of je volgt het arduinoISP voorbeeld. Hier heb je dan wellicht een extra condesator nodig tussen de reset en gnd van de uno.
Dus ga voor nick bootloader.
Succes

Dus dit zou hem moeten zijn?:

Atmega chip programmer.
Written by Nick Gammon.
Entered programming mode OK.
Signature = 0x1E 0x98 0x01 
Processor = ATmega2560
Flash memory size = 262144 bytes.
LFuse = 0xFF 
HFuse = 0xD8 
EFuse = 0xFD 
Lock byte = 0xFF 
Clock calibration = 0xAE 
Bootloader address = 0x3E000
Bootloader length = 7434 bytes.
Type 'V' to verify, or 'G' to program the chip with the bootloader ...
Erasing chip ...
Writing bootloader ...
Committing page starting at 0x3E000
Committing page starting at 0x3E100
Committing page starting at 0x3E200
Committing page starting at 0x3E300
Committing page starting at 0x3E400
Committing page starting at 0x3E500
Committing page starting at 0x3E600
Committing page starting at 0x3E700
Committing page starting at 0x3E800
Committing page starting at 0x3E900
Committing page starting at 0x3EA00
Committing page starting at 0x3EB00
Committing page starting at 0x3EC00
Committing page starting at 0x3ED00
Committing page starting at 0x3EE00
Committing page starting at 0x3EF00
Committing page starting at 0x3F000
Committing page starting at 0x3F100
Committing page starting at 0x3F200
Committing page starting at 0x3F300
Committing page starting at 0x3F400
Committing page starting at 0x3F500
Committing page starting at 0x3F600
Committing page starting at 0x3F700
Committing page starting at 0x3F800
Committing page starting at 0x3F900
Committing page starting at 0x3FA00
Committing page starting at 0x3FB00
Committing page starting at 0x3FC00
Committing page starting at 0x3FD00
Written.
Verifying ...
No errors found.
Writing fuses ...
LFuse = 0xFF 
HFuse = 0xD8 
EFuse = 0xFD 
Lock byte = 0xEF 
Clock calibration = 0xAE 
Done.
Type 'C' when ready to continue with another chip ...

Ik zie maar bar weing verschil...
In de output.. en deze:

Atmega chip detector.
Entered programming mode OK.
Signature = 1E 98 01 
Processor = ATmega2560
Flash memory size = 262144
LFuse = FF 
HFuse = D8 
EFuse = FD 
Lock byte = EF 
Clock calibration = AE 
Bootloader in use: Yes
EEPROM preserved through erase: No
Watchdog timer always on: No
Bootloader is 8192 bytes starting at 3E000

Bootloader:

3E000: 0D 94 89 F1 0D 94 B2 F1 0D 94 B2 F1 0D 94 B2 F1 
3E010: 0D 94 B2 F1 0D 94 B2 F1 0D 94 B2 F1 0D 94 B2 F1 
3E020: 0D 94 B2 F1 0D 94 B2 F1 0D 94 B2 F1 0D 94 B2 F1 
3E030: 0D 94 B2 F1 0D 94 B2 F1 0D 94 B2 F1 0D 94 B2 F1 
3E040: 0D 94 B2 F1 0D 94 B2 F1 0D 94 B2 F1 0D 94 B2 F1 
3E050: 0D 94 B2 F1 0D 94 B2 F1 0D 94 B2 F1 0D 94 B2 F1 
3E060: 0D 94 B2 F1 0D 94 B2 F1 0D 94 B2 F1 0D 94 B2 F1 
3E070: 0D 94 B2 F1 0D 94 B2 F1 0D 94 B2 F1 0D 94 B2 F1 
3E080: 0D 94 B2 F1 0D 94 B2 F1 0D 94 B2 F1 0D 94 B2 F1 
3E090: 0D 94 B2 F1 0D 94 B2 F1 0D 94 B2 F1 0D 94 B2 F1 
3E0A0: 0D 94 B2 F1 0D 94 B2 F1 0D 94 B2 F1 0D 94 B2 F1 
3E0B0: 0D 94 B2 F1 0D 94 B2 F1 0D 94 B2 F1 0D 94 B2 F1 


MD5 sum of bootloader = 8A F4 7A 29 43 A0 D8 7C DB ED 09 A3 8F 40 24 1E 

First 256 bytes of program memory:

0: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
10: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
20: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
30: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
40: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
50: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
60: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
70: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
80: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
90: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
A0: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
B0: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
C0: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
D0: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
E0: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
F0: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF

Maar waarom staat die watchdog timer dan nog op no?
Of denk je dat alles goed is nu??

teding:
Je hebt nu twee keuze's,
Of je set nick bootloader sketch in de uno
Gammon Forum : Electronics : Microprocessors : Atmega bootloader programmer
en volgt zijn instructie's

Of je volgt het arduinoISP voorbeeld. Hier heb je dan wellicht een extra condesator nodig tussen de reset en gnd van de uno.
Dus ga voor nick bootloader.
Succes

Ik heb nu :

Atmega chip programmer.
Written by Nick Gammon.
Entered programming mode OK.
Signature = 0x1E 0x98 0x01 
Processor = ATmega2560
Flash memory size = 262144 bytes.
LFuse = 0xFF 
HFuse = 0xD8 
EFuse = 0xFD 
Lock byte = 0xEF 
Clock calibration = 0x8E 
Bootloader address = 0x3E000
Bootloader length = 7434 bytes.
Type 'V' to verify, or 'G' to program the chip with the bootloader ...
Verifying ...
No errors found.
Done.
Type 'C' when ready to continue with another chip ...

Dus dat zou moeten kloppen???

Die watchdog snap ik echt niet....

De watchdog timer is een setting in je Fuses
http://www.frank-zhao.com/fusecalc/fusecalc.php?chip=atmega2560
Als je die wil veranderen zal je de fuses moeten aanpassen.
In de sketch zijn ze nu zo gezet

  { { 0x1E, 0x98, 0x01 }, "ATmega2560",  256 * kb,   1 * kb, 
        atmega2560_v2,// loader image
        0x3E000,      // start address
        sizeof atmega2560_v2,   
        256,          // page size (for committing)
        0xFF,         // fuse low byte: external clock, max start-up time
        0xD8,         // fuse high byte: SPI enable, boot into bootloader, 8192 byte bootloader
        0xFD,         // fuse extended byte: brown-out detection at 2.7V
        0x2F },       // lock bits: SPM is not allowed to write to the Boot Loader section.

teding:
De watchdog timer is een setting in je Fuses
http://www.frank-zhao.com/fusecalc/fusecalc.php?chip=atmega2560
Als je die wil veranderen zal je de fuses moeten aanpassen.
In de sketch zijn ze nu zo gezet

  { { 0x1E, 0x98, 0x01 }, "ATmega2560",  256 * kb,   1 * kb, 

atmega2560_v2,// loader image
        0x3E000,      // start address
        sizeof atmega2560_v2,   
        256,          // page size (for committing)
        0xFF,         // fuse low byte: external clock, max start-up time
        0xD8,         // fuse high byte: SPI enable, boot into bootloader, 8192 byte bootloader
        0xFD,         // fuse extended byte: brown-out detection at 2.7V
        0x2F },       // lock bits: SPM is not allowed to write to the Boot Loader section.

Nu ben ik je kwijt...
Wat doet die watchdog timer....
Het probleem waarom ik een bootloader update moet is dat de oude vast icm de watchdog.
Bootloader update gedaan [ geloof ik nu dan eindelijk ]

Maar zie ik die watchdog uit staan.
Als dit een standaard setting zal het wel kloppen.. toch? [ en werkt de watchdog ]
Of moet ik die fusses oid aanpassen ?
Om "het " watchdog probleem op te lossen.,....

Een watchdog is een systeem die kijkt of er nog wel wat gebeurt.
Als er niets meer gebeurt, dan is de processor mogelijk vastgelopen.
De watchdog zal dan de processor resetten om m weer aan de gang te krijgen.
Hoe de controle precies gedaan word weet ik niet.
Maar het ligt voor de hand dat de processor een bitje om moet zetten eens in de zoveel tijd.
Toen er nog geen ingebouwde watchdogs waren werd de adresbus vaak in de gaten gehouden door en extern component.
Als daar niet vaak genoeg een pulsje voorbij kwam op een bepaalde pin, werd er gereset.
Dat laatste heeft alleen zin bij processoren die gebruik maken van een extern parallel geheugen en dat is inmiddels "ouderwets".

MAS3:
Een watchdog is een systeem die kijkt of er nog wel wat gebeurt.
Als er niets meer gebeurt, dan is de processor mogelijk vastgelopen.
De watchdog zal dan de processor resetten om m weer aan de gang te krijgen.
Hoe de controle precies gedaan word weet ik niet.
Maar het ligt voor de hand dat de processor een bitje om moet zetten eens in de zoveel tijd.
Toen er nog geen ingebouwde watchdogs waren werd de adresbus vaak in de gaten gehouden door en extern component.
Als daar niet vaak genoeg een pulsje voorbij kwam op een bepaalde pin, werd er gereset.
Dat laatste heeft alleen zin bij processoren die gebruik maken van een extern parallel geheugen en dat is inmiddels "ouderwets".

Maar oke...
Moet ik nu die fuse aanpassen of niet??