USB beállítása ICD2 programozóhoz Linux alatti használathoz
Valamikor régen már csináltam ilyet, de mikor felkerült a merevlemezre az új LinuxMint akadt némi probléma az ICD2-vel. Konkrétan, nem ismerte fel a Piklab és a csatlakozás beállításainál is csatlakozási hiba felirat volt látható. Hosszas keresgélés után ismét összeszdtem a szükséges információkat az USB beállításához és most leírom ide. Nekem nagyon jól működik ez a megoldás mind a két Linuxban, hozzáteszem, hogy a Potyo féle ICD2-t használom, tehát még csak nem is gyári a programozóm. Az oldalamon itt megtalálható a saját építésű ICD2 programozóm.
A probléma lényege a következő: Biztosítani kell a megfelelő olvasás/írás jogokat a kívánt portra. Ez jelen esetben USB port, de a párhuzamos és soros portok esetében is hasonlóan kell eljárni. Néhány disztribúció nem enged hozzáférést bizonyos eszközökhöz, bizonyos felhasználóknak. Ezért lehet az, hogy rootként bejelentkezve működhet a programozó, de egyébként kapcsolódási hiba jelentkezik. Ezen oknál fogva meg kell adni néhány instrukciót az USB port kezelésénél.
Az “udev”-et használó disztríbúciók esetében (Debian Sid, Ubuntu 6,7,8…)
A következő folyamat szükséges ahhoz, hogy az ICD2 programozónkat felismerje a Piklab. A kódot David Williams írta.
Hozzunk létre rootként egy üres fájlt “026_microchip.rules” néven ide: /etc/udev/rules.d/
Nyissuk meg az üres fájlt, majd másoljuk be az alábbi sorokat:
#PICKit SYSFS{idVendor}=="04d8", SYSFS{idProduct}=="0032", MODE="0660", GROUP="microchip" #PICKit2 SYSFS{idVendor}=="04d8", SYSFS{idProduct}=="0033", MODE="0660", GROUP="microchip" #ICD2 SYSFS{idVendor}=="04d8", SYSFS{idProduct}=="8000", MODE="0660", GROUP="microchip" #ICD21 SYSFS{idVendor}=="04d8", SYSFS{idProduct}=="8001", MODE="0660", GROUP="microchip"
Ezt követően hozzunk létre egy microchip nevű csoportot, majd adjuk hozzá magunkat ehhez a csoporthoz.
sudo addgroup microchip
sudo gpasswd -a saját_név microchip
Suse, ill. OpenSuse esetében a kód így néz ki:
#PICKit 1 ATTR{idVendor}=="04d8", ATTR{idProduct}=="0032", OWNER:="root", GROUP:="microchip",MODE:="0660" #PICKit 2 ATTR{idVendor}=="04d8", ATTR{idProduct}=="0033", OWNER:="root", GROUP:="microchip",MODE:="0660" #ICD2 ATTR{idVendor}=="04d8", ATTR{idProduct}=="8000", OWNER:="root", GROUP:="microchip",MODE:="0660" #ICD21 ATTR{idVendor}=="04d8", ATTR{idProduct}=="8001", OWNER:="root", GROUP:="microchip",MODE:="0660" #PICDEM FS USB Bootloader ATTR{idVendor}=="04d8", ATTR{idProduct}=="000b", OWNER:="root", GROUP:="microchip",MODE:="0660"
Én ezek után csináltam egy újraindítást, de nem biztos, hogy kell. Elindítva a Piklab-ot máris az volt írva a csatlakozáshoz, hogy “Ok”. Tehát a hiba elhárult, a Piklab már készen is állt a programozáshoz.
Kiegészítés
A programozóhoz szükséges firmware sajnos nincs benne a Piklab-ban, azt saját kézzel kell megadni a program számára. A Windows féle MPLAB-ból elsőnek ki kell másolni a következő mappa tartalmát: C:\Program Files\Microchip\MPLAB IDE\ICD2. Ezt másoljuk át a Linux rendszerünkbe valamilyen mappába, majd adjuk meg az elérési utat és kész.
Forrás és egyéb kódok: http://sourceforge.net/apps/mediawiki/piklab/index.php?title=USB_Port_Problems