L’adaptateur PCAN-USB de la société PEAK SYSTEM permet une connectivité aux réseaux CAN. Il est vendu 195 euros HT.
Site : www.peak-system.com/PCAN-USB.199.0.html
Caractéristiques :
Broche | Brochage |
---|---|
2 | CAN-L |
3 | GND |
6 | GND |
7 | CAN-H |
Lire Bus CAN/NMEA 2000 avant de poursuivre.
Il est conseillé de lire ou de s’aider de ce document avant de poursuive.
Récupérer le pilote PCAN-Linux sur le site www.peak-system.com
Télécharger l’archive :
$ wget http://www.peak-system.com/fileadmin/media/linux/files/peak-linux-driver-7.12.tar.gz
$ wget http://www.peak-system.com/fileadmin/media/linux/files/peak-linux-driver-8.7.0.tar.gz
Décompresser l’archive :
$ tar zxvf peak-linux-driver-7.12.tar.gz
$ tar zxvf peak-linux-driver-8.7.0.tar.gz
Avant de poursuivre, vérifier que votre interface ne soit pas raccordée à votre machine !
$ cd peak-linux-driver-7.12
$ cd peak-linux-driver-8.7.0
Cette version vous fournit dans les dossiers suivants :
Documentation
: la documentationdriver
: les sources du pilotelib
: les sources de la bibliothèquetest
: quelques programmes de test (receivetest
, transmitest
, …)Remarque : la société Peak System précise qu’il y a un conflit d’utilisation entre le support NET (réseau, l’interface CAN est “vue” comme une interface réseau) et l’accès au fichier de prériphérique (DEV pour device).
Désactiver le support NET et activer le support USB :
$ vim driver/Makefile
USB = USB_SUPPORT
NET = NO_NETDEV_SUPPORT
Installer la bibliothèque de développement popt
:
$ sudo apt-get install libpopt-dev
Démarrer la fabrication :
$ make
Procéder à l’installation :
$ sudo make install
Les actions suivantes vont être réalisées :
udev
(qui réalise la prise en charge automatique du matériel)libpcan
dans /usr/lib/
libpcan.h
dans /usr/include/
/usr/local/bin
Vous pouvez maintenant raccorder votre interface à votre machine.
Détection du matériel :
$ dmesg
[23194.489553] usb 2-1.5: new full-speed USB device number 9 using ehci-pci
[23194.586297] usb 2-1.5: New USB device found, idVendor=0c72, idProduct=000c
[23194.586302] usb 2-1.5: New USB device strings: Mfr=0, Product=3, SerialNumber=0
[23194.586305] usb 2-1.5: Product: VER1:PEAK
[23194.586305] VER2:02.8.01
[23194.586305] DAT :06.05.2004
[23194.586305] TIME:09:35:37
[23194.586305] ...
[23194.610081] pcan: Release_20140723_n (le)
[23194.610086] pcan: driver config [mod] [usb]
[23194.610630] pcan: new usb adapter with 1 CAN controller(s) detected
[23194.610646] pcan: usb hardware revision = 28
[23194.661997] pcan: usb device minor 1 found
[23194.662034] usbcore: registered new interface driver pcan
[23194.662040] pcan: major 250.
$ lsusb
...
Bus 002 Device 004: ID 0c72:000c PEAK System PCAN-USB
Présence du chargement du pilote (driver) :
$ sudo lsmod | grep can
pcan 56509 0
Présence du fichier de périphérique :
$ ls -l /dev/pcan*
lrwxrwxrwx 1 root root 8 oct. 8 16:53 /dev/pcan1 -> pcanusb1
crw-rw-rw- 1 root root 180, 1 oct. 8 16:53 /dev/pcanusb1
Remarque : il est fort possible que vous obtenez un fichier périphérique /dev/pcanusb0
.
Prise en charge par le système :
$ cat /proc/pcan
*------------- PEAK-System CAN interfaces (www.peak-system.com) -------------
*------------- Release_20140723_n (7.12.0) Oct 8 2014 16:52:23 --------------
*------------------------------- [mod] [usb] --------------------------------
*--------------------- 1 interfaces @ major 250 found -----------------------
*n -type- ndev --base-- irq --btr- --read-- --write- --irqs-- -errors- status
33 usb -NA- ffffffff 255 0x011c 0000001d 00000000 000003be 00000000 0x0000
Raccorder la station météo Maretron WSO1000.
Test de réception de messages NMEA2000 à 250 kbits/s (BTR0BTR1=0x011c
) :
$ receivetest -f=/dev/pcan1 -b=0x011c
receivetest Version "Release_20090203_n" (www.peak-system.com)
------- Copyright (C) 2004-2009 PEAK System-Technik GmbH ------
receivetest comes with ABSOLUTELY NO WARRANTY. This is free
software and you are welcome to redistribute it under certain
conditions. For details see attached COPYING file.
receivetest: device node="/dev/pcan1"
Extended frames are accepted, init with BTR0BTR1=0x011c
receivetest: driver version = Release_20140723_n
874878.3 receivetest: m e 0x09fd0280 8 21 00 00 ff ff fa ff ff
875078.39 receivetest: m e 0x09fd0280 8 29 00 00 ff ff fa ff ff
875178.50 receivetest: m e 0x09fd0280 8 2d 00 00 ff ff fa ff ff
875277.890 receivetest: m e 0x09fd0280 8 31 00 00 ff ff fa ff ff
875278.487 receivetest: m e 0x15fd0680 8 31 ff ff 29 75 f1 03 ff
875279.42 receivetest: m e 0x15fd0780 8 31 41 29 75 ae 20 f1 03
875377.900 receivetest: m e 0x09fd0280 8 35 00 00 ff ff fa ff ff
875477.996 receivetest: m e 0x09fd0280 8 39 00 00 ff ff fa ff ff
875577.922 receivetest: m e 0x09fd0280 8 3d 00 00 ff ff fa ff ff
^Creceivetest: type = usb
Serial Number = 0xffffffff
Device Number = 255
count of reads = 9
count of writes = 0
count of errors = 0
count of irqs = 970
last CAN status = 0x0020
last error = 0
open paths = 1
driver version = Release_20140723_n
receivetest: finished (0).
Remarque : Pour les registres BTR0 et BTR1, cf. pages 50 et 51 du datasheet SJA1000.
Votre interface PCAN-USB est opérationnelle.