AVRdude doet moeilijk

Alleen berichten met de trefwoorden “pcb ontwerp” worden getoond. Alle berichten tonen

Lucky Luke

Golden Member

hier wordt gesuggereerd dat mijn AVR dragon in z'n eigen firmware update mode vastzit.

Geen idee hoe 'ie daar in terecht gekomen zou moeten zijn, maar goed.

Als ik de dragon inplug, branden zowel de bicolor led's (Rood én groen, dus oranje), én de groene LED ernaast.

Als ik een avr aansluit, geen verandering

als ik een avr wil programmeren, gaan beiden uit, dan komt groen terug, beiden uit, oranje terug, oranje heel kort uit en weer aan, en groen terug (zodat alle 3 weer branden).

Onder Windows in een VM lukte programmeren ook niet, maar ook geen melding over fw update... (Wel TCF - "Tool connect failed".)

Onder windows brand oranje en blijft de groene LED knipperen.
Een poging "device programming" te gebruiken leidt ertoe dat de AVR dragon wordt afgekoppeld.

"atfw" wordt niet als commando herkend (in de AVR studio command window. Overigens ook niet in cmd of PS)

EDIT: atfw kan gevonden worden in C:\Program Files (x86)\Atmel\Studio\7.0\atbackend

maar:

C:\Program Files (x86)\Atmel\Studio\7.0\atbackend>atfw -r -t avrdragon
Found avrdragon:00A200002099
GenericError thrown during firmware upgrade
Failed to read from tool. Bad signon response: premature packet end (size=0).

Er lijkt dus nog steeds iets mis te gaan met USB communicatie tussen mijn PC en de dragon. (Er zitten ook wel veel lagen tusen... Vanuit een windows VM naar een Linux host, met elk hun eigen drivers...)

(Overigens, de firmware voor de dragon is te vinden in C:\Program Files (x86)\Atmel\Studio\7.0\tools\AVRDragon. Niet dat ik daar nu wat aan heb, maar misschien iemand die dit later leest)

EDIT:
ondanks dat uitlezen van de firmwareversie met atfw -r niet werkt, werkt firmware upgrade wél, en daarna werkt firmware versie uitlezen ook weer:

C:\Program Files (x86)\Atmel\Studio\7.0\atbackend>atfw -t avrdragon -a "C:\Progr
am Files (x86)\Atmel\Studio\7.0\tools\AVRDragon"
The specified file does not exist

C:\Program Files (x86)\Atmel\Studio\7.0\atbackend>atfw -t avrdragon -a "C:\Progr
am Files (x86)\Atmel\Studio\7.0\tools\AVRDragon\dragon_fw.zip"
Found avrdragon:00A200002099
Upgrading avrdragon:00A200002099
Upgrading Main MCU: [==========]
Upgrading Slave MCU: [==========]
Successful upgrade

C:\Program Files (x86)\Atmel\Studio\7.0\atbackend>atfw -t avrdragon -r
Found avrdragon:00A200002099
Master MCU Version: 7.27
Slave MCU Version: 7.27

TBD of het nu ook allemaal weer werkt zoals het zou moeten... Toch vreemd als die firmware dan zomaar corrupt kan raken...

EDIT2: Jup, lijkt allemaal weer te werken.

En nu brand, na inpluggen, alleen nog maar de rode led in de dual color led, en de groene LED die ernaast op de pcb zit. Dus rood+groen ipv oranje + groen.

En hij meld zich weer als dragon ipv AVRBLDR (BootLoaDeR, ofwel: firmware update mode van de dragon):

avrdude: usbdev_open(): Found AVRDRAGON,

Eluke.nl | De mens onderscheid zich van (andere) dieren door o.a. complexe gereedschappen en bouwwerken te maken. Mens zijn is nerd zijn. Blijf Maken. (Of wordt, bijvoorbeeld, cultuurhistoricus)

Ik probeer mijn hardware zo te ontwerpen dat er een "hardware" return-to-bootloader is. Dit werkt voor atmel-USB chips (atmega16u2) en voor STM32 (stm32f072xxx)
Ik heb eens gekeken naar de cypress 4xxx serie (omdat ze me een development board/stick aanboden voor 2.50 of zoiets). Serial boot option. Dus dan denk je dat ie dat ingebouwd heeft. Nee: met een dure programmer kan je er een bootloader in zetten die "serial boot" ondersteunt. Als daar iets foutgaat met de bootloader ben je de sjaak. Die bootloader-in-ROM is veel fijner (AVR, STM). (van beiden vermoed ik dat ze in flash staan, maar alleen de fabriek weet hoe die te programmeren. )

four NANDS do make a NOR . Kijk ook eens in onze shop: http://www.bitwizard.nl/shop/
Lucky Luke

Golden Member

MakerSpace, maar inderdaad.

Al is het ontwerp uiteraard ge"jat" van het rode doosje van de dragon, ingescand, omgezet naar z/w (binarized), opgeschoont (vlekjes weggepoetst waar ze niet horen), en gegraveerd.

De rest van het doosje is niet lasergesneden, maar ouderwetsch gezaagd en met 2 spoorbielzen aan elkaar gezet. (Nouja, vurenhouten latjes, maar ze zijn relatief dik), en staat ergens in SYP.

Aan de binnenkant van de deksel heb ik de pinout van de ISP en JTAG connector staan, is erg handig.

Eluke.nl | De mens onderscheid zich van (andere) dieren door o.a. complexe gereedschappen en bouwwerken te maken. Mens zijn is nerd zijn. Blijf Maken. (Of wordt, bijvoorbeeld, cultuurhistoricus)