Login

Nutzername:
Passwort:
  
  

Diamex ALL AVR unter Linux

Der Diamex ALL AVR ist eine sehr günstige Alternative zu den gängigen Programmern. Der Programmer funktioniert unter Windows problemlos, unter Linux gibt es jedoch teilweise das Problem, dass er als MTP Gerät erkannt wird.

In avrdude äußert sich dies in der folgenden Fehlermeldung:

avrdude: usb_open(): cannot read serial number "error sending control message: Connection timed out"

Zum Glück lässt sich der Fehler leicht beheben in dem man den Programmer von der Erkennung ausschließt. Man öffnet dazu die Datei /lib/udev/rules.d/69-libmtp.rules und fügt am Anfang eine einzelne Zeile hinzu, sodass der Rest der Datei übersprungen wird. Man könnte die Datei auch einfach löschen, allerdings hätte dies den Nachteil, dass Linux keine Scanner und Digitalkameras mehr erkennt. Wir öffnen also die Datei als root:

sudo gedit /lib/udev/rules.d/69-libmtp.rules

Suchen folgenden Absatz:

# Some sensitive devices we surely don't wanna probe
# Color instruments
ATTR{idVendor}=="0670", GOTO="libmtp_rules_end"
ATTR{idVendor}=="0765", GOTO="libmtp_rules_end"
ATTR{idVendor}=="085c", GOTO="libmtp_rules_end"
ATTR{idVendor}=="0971", GOTO="libmtp_rules_end"
# Canon scanners that look like MTP devices (PID 0x22nn)
ATTR{idVendor}=="04a9", ATTR{idProduct}=="22*", GOTO="libmtp_rules_end"
# Sensitive Atheros devices that look like MTP devices
ATTR{idVendor}=="0cf3", GOTO="libmtp_rules_end"


# Creative ZEN Vision
ATTR{idVendor}=="041e", ATTR{idProduct}=="411f", SYMLINK+="libmtp-%k", MODE="660", GROUP="audio", ENV{ID_MTP_DEVICE}="1", ENV{ID_MEDIA_PLAYER}="1"

und fügen eine neue Ausnahme für unseren ISP hinzu, sodass der Absatz anschliessend so aussieht:

# Some sensitive devices we surely don't wanna probe
# Color instruments
ATTR{idVendor}=="0670", GOTO="libmtp_rules_end"
ATTR{idVendor}=="0765", GOTO="libmtp_rules_end"
ATTR{idVendor}=="085c", GOTO="libmtp_rules_end"
ATTR{idVendor}=="0971", GOTO="libmtp_rules_end"
# Canon scanners that look like MTP devices (PID 0x22nn)
ATTR{idVendor}=="04a9", ATTR{idProduct}=="22*", GOTO="libmtp_rules_end"
# Sensitive Atheros devices that look like MTP devices
ATTR{idVendor}=="0cf3", GOTO="libmtp_rules_end"
# DIAMEX ALL AVR
ATTR{idVendor}=="03eb", ATTR{idProduct}=="2104", GOTO="libmtp_rules_end"



# Creative ZEN Vision
ATTR{idVendor}=="041e", ATTR{idProduct}=="411f", SYMLINK+="libmtp-%k", MODE="660", GROUP="audio", ENV{ID_MTP_DEVICE}="1", ENV{ID_MEDIA_PLAYER}="1"

Anschließend müssen wir nur den Udev Service neustarten was durch einen PC neustart oder folgenden Befehl erfolgt.

user@user-pc:~$ sudo service udev restart
udev stop/waiting
udev start/running, process 4607

Nach einem neuverbinden des ISP sollte dieser nun problemlos mit AVRDUDE funktionieren:

user@user-pc:~$ avrdude -P usb -cavrispmkii -px32a4

avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.01s

avrdude: Device signature = 0x1e9541

avrdude done.  Thank you.