-
        

Ergebnis 1 bis 10 von 10

Thema: Diamex ALL-AVR unter Ubuntu

  1. #1

    Diamex ALL-AVR unter Ubuntu

    Anzeige

    Hallo an alle,
    ich habe mir vor kurzem aus dem Shop diesen vermeintlich unter avrdude funktionierenden ISP Programmer gekauft. Leider funktioniert der Programmer nicht. Der Haken an der ganzen Sache scheint bei mir allerdings zu sein, dass ich Ubuntu mit avrdude Version 5.11.1 nutze. So viel zum Thema
    Zitat Zitat von robotikhardware.de
    [...] kann aber auch mit dem Kommandozeilentool AVRDUDE (getestet ab Version 5.10) benutzt werden. [...]

    Avrdude gibt mir folgende Fehlermeldung aus:
    Code:
    avrdude: usb_open(): cannot read serial number "error sending control message: Connection timed out"
    avrdude: usb_open(): cannot read product name "error sending control message: Connection timed out"
    avrdude: usbdev_open(): Found [unnamed product], serno: [unknown]
    avrdude: usbdev_open(): error setting configuration 1: could not set config 1: Connection timed out
    avrdude: usbdev_open(): did not find any USB device "usb"
    Viel merkwürdiger ist allerdings, dass der originale Atmel AVR ISP MKII bei mir problemlos nach Erstellen der udev-Regeln funktioniert. Aha, deshalb also
    Zitat Zitat von robotikhardware.de
    [...] Der Programme rist beim Protokoll quasi kompatibel zum Atmel MK2 USB Programmer. [...]
    Anders als hier erläutert, wird der Diamex Programmer bei mir aber nicht ausgeworfen, lsusb liefert kontinuierlich beim Diamex Programmer
    Code:
    Bus 003 Device 007: ID 03eb:2104 Atmel Corp. AVR ISP mkII
    und beim Atmel Originalprogrammer
    Code:
    Bus 003 Device 008: ID 03eb:2104 Atmel Corp. AVR ISP mkII
    Was genau kann ich nun tun, damit ich den Programmer auch unter Ubuntu nutzen kann? Oder ist das schlicht nicht möglich?
    Grüße
    Jan

  2. #2
    Erfahrener Benutzer Roboter-Spezialist Avatar von -schumi-
    Registriert seit
    30.12.2009
    Ort
    Wasserburg am Inn / Bayern
    Alter
    23
    Beiträge
    449
    Versuche mal, deinen avrdude-Befehl als Root auszuführen, also warscheinlich "sudo make program".

    Falls es dann geht, ist es nur noch ein Rechte-Problem

  3. #3
    Hi,
    danke für Deine Antwort.
    Hab’s ausprobiert; auch dann kommen diese Fehlermeldungen.
    Grüße

  4. #4
    Erfahrener Benutzer Roboter-Spezialist Avatar von -schumi-
    Registriert seit
    30.12.2009
    Ort
    Wasserburg am Inn / Bayern
    Alter
    23
    Beiträge
    449
    Hmm, schade..

    Könntest du mal die Parameter zeigen, mit denen du avrdude aufrufst? (bzw. das Makefile, falls du eines benutzt)

  5. #5
    Hi,
    ich nutze das Makefile der u8glib.

    Code:
    #
    #  Generic and Simple Atmel AVR GNU Makefile
    #
    #  Desinged for the gnu-avr tool chain
    #
    #  Copyright  (c) 2012 Oliver Kraus (olikraus@gmail.com)
    #
    # Redistribution and use in source and binary forms, with or without modification, are 
    # permitted provided that the following conditions are met:
    #
    # * Redistributions of source code must retain the above copyright notice, this list of 
    # conditions and the following disclaimer.
    # * Redistributions in binary form must reproduce the above copyright notice, this list 
    # of conditions and the following disclaimer in the documentation and/or other materials 
    # provided with the distribution.
    #
    # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS 
    # IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, 
    # THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 
    # PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR 
    # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 
    # EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 
    # PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 
    # PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF 
    # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 
    # NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 
    # SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
    #  
    # 	Features
    #		- upload
    #		- create exe from library
    #		- create assembler listing (.dis)
    #
    #	Limitations
    #		- only C-files supported
    #		- no automatic dependency checking (call 'make clean' if any .h files are changed)
    #
    #	Targets:
    #		make
    #			create hex file, no upload
    #		make upload
    #			create and upload hex file
    #		make clean
    #			delete all generated files
    #
    #  Note:
    #  	Display list make database: make -p -f/dev/null | less
    
    # User defined values
    TARGETNAME = robocup
    MCU:=atmega2560
    F_CPU:=16000000
    WORKDIR:=.
    U8GM2DIR:=u8g
    SYSDIR:=sys
    
    # Type: "avrdude -c ?" to get a full listing.
    AVRDUDE_PROGRAMMER := avrispmkii
    # com1 = serial port. Use lpt1 to connect to parallel port.
    AVRDUDE_PORT := USB
    
    # Replace standard build tools by AVR tools
    CC = avr-gcc
    AR  = @avr-ar
    
    # Compile all .c files in all directories
    SRC = $(shell ls $(WORKDIR)/*.c 2>/dev/null)
    SRC += $(shell ls $(U8GM2DIR)/*.c 2>/dev/null)
    SRC += $(shell ls $(SYSDIR)/*.c 2>/dev/null)
    
    # Flags for the linker and the compiler
    COMMON_FLAGS = -DF_CPU=$(F_CPU) -mmcu=$(MCU) $(DOGDEFS)
    COMMON_FLAGS += -I$(WORKDIR) -I$(U8GM2DIR) -I$(SYSDIR)
    COMMON_FLAGS += -g -Os -Wall -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums
    COMMON_FLAGS += -ffunction-sections -fdata-sections -Wl,--gc-sections
    COMMON_FLAGS += -Wl,--relax -mcall-prologues
    CFLAGS = $(COMMON_FLAGS) -std=gnu99 -Wstrict-prototypes  
    
    OBJ = $(SRC:.c=.o)
    
    .SUFFIXES: .elf .hex .dis
    
    # Targets
    .PHONY: all
    all: $(TARGETNAME).dis $(TARGETNAME).hex
    	avr-size $(TARGETNAME).elf
    
    .PHONY: flash
    flash: $(TARGETNAME).dis $(TARGETNAME).hex
    	avrdude -F -p $(MCU) -P $(AVRDUDE_PORT) -c $(AVRDUDE_PROGRAMMER) -B 1 -v -v -U flash:w:$(TARGETNAME).hex
    	avr-size $(TARGETNAME).elf
    
    .PHONY: clean
    clean:
    	$(RM) $(TARGETNAME).hex $(TARGETNAME).elf $(TARGETNAME).a $(TARGETNAME).dis $(OBJ)
    
    # implicit rules
    .elf.hex:
    	avr-objcopy -O ihex -R .eeprom $< $@
    
    # explicit rules
    $(TARGETNAME).elf: $(TARGETNAME).a($(OBJ)) 
    	$(LINK.o) $(COMMON_FLAGS) $(TARGETNAME).a $(LOADLIBES) $(LDLIBS) -o $@
    
    $(TARGETNAME).dis: $(TARGETNAME).elf
    	avr-objdump -S $< > $@

  6. #6
    Erfahrener Benutzer Roboter-Spezialist Avatar von -schumi-
    Registriert seit
    30.12.2009
    Ort
    Wasserburg am Inn / Bayern
    Alter
    23
    Beiträge
    449
    Sollte eigentlich passen, vor allem auch weil du schreibst, dass der originale Atmel AVR ISP MKII bei dir funktioniert.

    Folgender Thread könnte sehr interessant sein: http://www.mikrocontroller.net/topic/226307

    Anscheinend haben alte Firmwareversionen des Programmers Probleme mit USB 2.0

  7. #7
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    07.11.2004
    Beiträge
    332
    Hi,

    ich habe auch diesen AVR Programmer im Einsatz. Zeitweise hatte ich dann auch das AVR-Studio Original im Einsatz, welcher mir aber defekt ging.

    Nach einem Update des ALL-AVR Programmers (schau mal bei Reichelt nach, die habe die aktuelle Firmware hinterlegt), ging mein
    ALL-AVR auch unter Ubuntu und sogar in einer VMWare, wo ich AVR Studio verwende.

    Gruss R.
    Kaum macht man es richtig, schon funktioniert's ...

  8. #8
    Hi,
    bin nun endlich dazu gekommen, das mal auszuprobieren.
    Die BIOS-Version des Programmers war in der Tat noch Version 1.5.0 (aktuell war 1.8.0, hier herunterzuladen (bei Reichelt habe ich die aktuelle Version nicht gefunden)), das habe ich auch unter Windows geupdated, geholfen hat es allerdings nicht. Erst, als ich diesen Thread bei mikrocontroller.net noch einmal durchgelesen habe, auf diesen Beitrag gestoßen bin und den Anweisungen mehr oder weniger gefolgt bin, hat das ganze funktioniert. Die Datei 39-libmtp.rules heißt lediglich bei mir 69-libmtp.rules und die auszukommentierende Zeile befindet sich nicht wie dort beschrieben in Zeile 735, sondern in Zeile 884 (alternativ einfach in der Datei nach "00|02|" suchen, das gibt es nur in der Zeile). Danach muss der Computer neugestartet werden! Ob das ganze ohne Update des Programmers funktioniert hätte, kann ich nicht sagen.
    Danke auf jeden Fall und
    Grüße
    Jan

  9. #9

    Diamex AVR-ALL unter Ubuntu 12.04 (precise) (64-Bit)

    Zitat Zitat von teamohnename Beitrag anzeigen
    Hi,
    bin nun endlich dazu gekommen, das mal auszuprobieren.
    Die BIOS-Version des Programmers war in der Tat noch Version 1.5.0 (aktuell war 1.8.0, hier herunterzuladen (bei Reichelt habe ich die aktuelle Version nicht gefunden)), das habe ich auch unter Windows geupdated, geholfen hat es allerdings nicht. Erst, als ich diesen Thread bei mikrocontroller.net noch einmal durchgelesen habe, auf diesen Beitrag gestoßen bin und den Anweisungen mehr oder weniger gefolgt bin, hat das ganze funktioniert. Die Datei 39-libmtp.rules heißt lediglich bei mir 69-libmtp.rules und die auszukommentierende Zeile befindet sich nicht wie dort beschrieben in Zeile 735, sondern in Zeile 884 (alternativ einfach in der Datei nach "00|02|" suchen, das gibt es nur in der Zeile). Danach muss der Computer neugestartet werden! Ob das ganze ohne Update des Programmers funktioniert hätte, kann ich nicht sagen.
    Danke auf jeden Fall und
    Grüße
    Jan

    Uff das hat mich vielleicht Nerven gekostet, aber das mit dem Auskommentieren der Zeile die mit "ENV{ID_MTP_DEVICE}!="1",....." beginnt in "/lib/udev/rules.d/39-libmtp.rules" hat zum Erfolg geführt.

    Schade finde ich wenn man schon 30Euro bezahlt das http://www.diamex.de/ nicht mal das Teil für Linux sauber programmieren kann. Klaar das Teil wird explizit nur für Windows angeboten, aber so ein Fehler.....

    Na ja jetzt klappt es ja.

  10. #10
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    08.08.2008
    Ort
    DE
    Beiträge
    523
    Sorry, aber wie erwähnt ist er nur für Windows angeboten und selbst das Atmel Studio erkennt ihn einwandfrei (und das macht OFT Probleme mit Programmern). Und 30 bits für einen Programmer der 10 und 6-pol. Anschluss hat und fast jeden AVR programmieren kann ist wirklich ein Schnäppchen.

    mfg

Ähnliche Themen

  1. Probleme mit dem ISP Programmer "Atmel Corp. AVR ISP mkII" unter ubuntu
    Von Ritchie im Forum C - Programmierung (GCC u.a.)
    Antworten: 23
    Letzter Beitrag: 11.05.2012, 12:41
  2. Asuro unter Ubuntu 11.10 flashen
    Von derwisch im Forum Asuro
    Antworten: 12
    Letzter Beitrag: 20.04.2012, 07:18
  3. AVR Lab unter Ubuntu
    Von Moebius im Forum AVR Hardwarethemen
    Antworten: 3
    Letzter Beitrag: 15.02.2011, 07:53
  4. Bascom unter Ubuntu 8.10 (Wine)
    Von stromflo im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 10
    Letzter Beitrag: 07.12.2009, 23:23
  5. AVR Programmierung unter Ubuntu
    Von Barthimaeus im Forum Allgemeines zum Thema Roboter / Modellbau
    Antworten: 10
    Letzter Beitrag: 20.09.2008, 00:53

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •