K8055 : carte d’expérimentation USB sous linux
Imprimer la page || VERSION PDF:
Velleman propose une carte d’expérimentation USB qui fonctionne sous linux.
Le programme le plus complet et le plus avancé que j’ai trouvé est libk8055.
Installation :
Il faut que certaines librairies soient installées : libusb, libhid.
Et pour l’interface avec python : swig, libqwt et python-qwt.
apt-get install libusb-0.1-4 libusb-dev libhid0 libhid-dev swig python-hid libqwt4c2 libqwt-dev python-qwt4 python-qwt4
Ensuite "make et make install"
$ mkdir libk8055
$ cd libk8055
$ wget http://prdownloads.sourceforge.net/libk8055/libk8055.0.2.tar.gz
$ tar xzvf libk8055.0.2.tar.gz
$ cd src
$ make all
En root :
make install
Par défaut, le "device" usb n’est pas controlable par les utilisateurs.
Il faut identifier le device sur le bus usb :
$ lsusb
Bus 005 Device 007: ID 10cf:5500 Velleman Components, Inc. 8055 Experiment Interface Board (address=0)
...
et d’autres devices.
Et la première fois :
# groupadd k8055
# gpasswd -a VOTRE_NOM_D_UTILISATEUR k8055
Puis le rendre accessible par l’utilisateur (en adapatant les deux derniers nombres à la sortie de "lsusb" : ici, 005 & 007)
# chown root:k8055 /proc/bus/usb/005/007
# chmod 660 /proc/bus/usb/005/007
Il y a en principe moyen d’automatiser ceci via "hotplug" mais je n’y suis pas encore parvenu.
Utilisation :
Le programme "k8055" permet d’envoyer des commandes à la carte. Par exemple : les sorties digitales
$ k8055 -d:145
Une série de leds de la sortie digitale s’allument et forment le nombre 145 en binaire : 10010001
Càd. : 1*128 + 0*64 + 0*32 + 1*16 + 0*8 + 0*4 + 0*2 + 1*1
ou encore 1*2^7 + 0*2^6 + 0*2^5 + 1*2^4 + 0*2^3 + 0*2^2 + 0*2^1 + 1* 2^0
Interface python :
Il faut lancer l’installation des modules pythons en root :
# cd pyk8055
# python setup.py install
Dans le répertoire pyk8055, lancer alors :
$ python k8055test.py
Les leds s’allument les unes après les autres jusqu’au moment où l’entrée digitale 1 est mise à zéro. (càd. en courtcircuitant le "ground"/la terre avec l’entrée 1)
Pour les appels à qwt, il faut modifier le code des fichiers d’exemples :
Dans pyplotA.py et pyplotD.py, il faut remplacer
from qwt import *
par
from Qwt4.Qwt import *
Les entrées digitales et analogiques peuvent alors être visualiées.
Ainsi en appuyant au hasard sur les interrupteurs, j’obtiens ceci :
Forums Velleman
libk8055
Routeur asus et k8055
Aquarium piloté par k8055 une autre carte sous linux
@YvesDelhaye.Be





