Home / Community / Blog

Będąc szczęśliwym posiadaczem USBprog działającego jako AVR ISP mkII któregoś dnia przekonałem się, że zmiana go w inne urządzenie jest banalnie prosta.

Powodem "przekonania się" było rozprogramowanie się urządzenia (tak całkiem "samo się" nie popsuło - podałem mu za wysokie napięcie "od tyłu" - przez złącze ISP). Efektem było regularne mruganie, zaraz po włączeniu, diody sygnalizującej pracę które oznacza, że dział bootloader

Rozwiązanie jest banalne: wystarczy ponownie zainstalować oprogramowanie AVR ISP mkII. W tym celu:

  1. Ściągnąłem źródła narzędzia do programowania
    wget http://download.berlios.de/usbprog/usbprog-dev.tar.gz
    
  2. Miałem zamiar kompilować, ale okazało się po rozpakowaniu
    tar -xzf usbprog-dev.tar.gz
    
    , że wewnątrz jest kompilowany gotowiec
    usbprog-dev/usbprog_tools/usbprog-old/usbprog
  3. Ściągnąłem "wsad":
    wget http://www.ixbat.de/usbprog/avrispmk2.bin
    
    inne, np.: analizator stanów logicznych, są dostępne na stronie domowej)
  4. Zaprogramowałem układ poleceniem
    usbprog-dev/usbprog_tools/usbprog-old/usbprog avrispmk2.bin
    

W efekcie dostałem działający "znowu" programator.

W końcu się wziąłem za niesforne urządzenia USB: a to nie mam prawa zapisu do programatora AVR/ARM, a to pendrive nie wiem gdzie zamontowany bo dwa sie nazywają "disc", a to porty szeregowe na przejściówkach numerują się jak chcą w zależności który pierwszy wpięty. Zacząłem grzebać.

Najpierw utworzyłem (pusty) plik

/etc/udev/rules.d/99-permissions.rules

i tu od razu uwaga: najpierw chciałem nadać niską nazwę (40- zamiast 99-), ale wtedy reguły nie działają.

Zacząłem od programatorów: powinny mieć automatycznie ustawione dobre uprawnienia i powinny się jakoś ładniej nazywać. Dopisałem do tego pliku:

#turtelizer2
KERNEL=="ttyUSB*", ENV{ID_VENDOR_ID}=="0403", \
ENV{ID_MODEL_ID}=="bdc8", MODE="0666", \
SYMLINK+="turtelizer2rs232"


SUBSYSTEM=="usb",  ENV{ID_VENDOR_ID}=="0403", \
ENV{ID_MODEL_ID}=="bdc8", \
ENV{ID_SERIAL_SHORT}=="FTRDT8M5", MODE="0666", \
GROUP="dialout",  SYMLINK+="turtelizer2usb"


#AVR ISP mkII 03eb:2104
SUBSYSTEM=="usb",  ENV{ID_VENDOR_ID}=="03eb", \
ENV{ID_MODEL_ID}=="2104", \
ENV{ID_SERIAL_SHORT}=="0000A00128255", MODE="0666", \
GROUP="dialout",  SYMLINK+="AVR-ISP-mkII"

ustawiam grupę "dialout" bo taką samą system (Mandriva 2010) nadaje przejściówkom USB->RS232.

Jak widać skonfigurowałem na razie tylko turtelizer'a (a w zasadzie jego kopię) oraz AVR ISP mkII (oczywiście kopię na bazie USBprog'a) reszta musi poczekać, bo się już jutro zrobiło :-)

Just my blog...

Mon Tue Wed Thu Fri Sat Sun
          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31