PCAN-USB Interface CAN pour USB on debian 9

This forum covers PCAN-Linux and Linux development issues concerning our products
4en1_4en1
Posts: 12
Joined: Wed 22. Aug 2018, 20:20

PCAN-USB Interface CAN pour USB on debian 9

Post by 4en1_4en1 » Wed 22. Aug 2018, 20:27

Hello
I am French and my English is very limited to my regret.
I bought a Vectrix 100% electric scooter and the PCAN-USB cord
CAN interface for USB
I am linux debian 9.
and I do not know how to: install drivers and software.
if .. someone could help me thank you very much.

Bonjour
je suis français et mon anglais est très limité à mon grand regret.
j'ai acheté un scooter Vectrix 100% electrique ainsi que le cordon PCAN-USB
Interface CAN pour USB
Je suis linux debian 9.
et je ne sais pas comment : installer les drivers et les logiciels.
si.. quelqu'un pouvait m'aider merci beaucoup.

F.Vergnaud
Software Development
Software Development
Posts: 305
Joined: Mon 9. Sep 2013, 12:21

Re: PCAN-USB Interface CAN pour USB on debian 9

Post by F.Vergnaud » Thu 23. Aug 2018, 11:09

Bonjour,

L'installation des drivers n'est pas trop complexe et vous trouverez les informations nécessaires dans la documentation "Documentation/PCAN-Driver-Linux_UserMan_eng.pdf" accompagnant les drivers linux: §3.1 Build binaries page 7.
Pour compiler les sources vous aurez besoin de quelques prérequis :
- Les entêtes linux correspondant à votre version de noyau (linux headers)
- g++ and libstdc++
- libpopt-dev package

La compilation peut se résumer comme suit:

Code: Select all

tar –xzf peak-linux-driver-X.Y.Z.tar.gz
cd peak-linux-driver-X.Y.Z
make clean
make
sudo make install
sudo modprobe pcan
N'hésitez pas à revenir vers moi si vous avez des difficultés.
Best regards,
Fabrice

4en1_4en1
Posts: 12
Joined: Wed 22. Aug 2018, 20:20

Re: PCAN-USB Interface CAN pour USB on debian 9

Post by 4en1_4en1 » Fri 24. Aug 2018, 19:57

Merci F.Vergnaud

Oui il y a un fichier d'aide, mais

Visiblement : je n'avais pas :
- g++ and libstdc++
- libpopt-dev package

Je vais ré-essayer.

4en1_4en1
Posts: 12
Joined: Wed 22. Aug 2018, 20:20

Re: PCAN-USB Interface CAN pour USB on debian 9

Post by 4en1_4en1 » Mon 27. Aug 2018, 19:06

Bonsoir,
je avoir bien installé les paquets manquants
- g++ and libstdc++
- libpopt-dev package

C'est toute la suite que je ne comprends pas, (je ne sais pas faire) entre les cibles les chemins.... je suis perdu.

j'ai téléchargé ce fichier.
PCAN-Basic API (Linux)

PCAN_Basic_Linux-4.2.2.tar.gz

à cette page https://www.peak-system.com/PCAN-USB.199.0.html?&L=2#



Mais il y a aussi cette page.
https://www.peak-system.com/fileadmin/m ... /index.htm

en plus de ne pas savoir, je ne sais même pas lequel prendre.

je me suis aussi inspirer de ce fils.
https://www.peak-system.com/forum/viewt ... =59&t=2708
Mais sans succès.

J'ai connecté le cordon au port usb et ras, seul le voyant rouge s'allume au boitier Peak, pas de défaut, pas de fumée.

Merci.

F.Vergnaud
Software Development
Software Development
Posts: 305
Joined: Mon 9. Sep 2013, 12:21

Re: PCAN-USB Interface CAN pour USB on debian 9

Post by F.Vergnaud » Tue 28. Aug 2018, 10:29

Bonjour,

Pas d'inquiétude, nous allons procéder par étape. Je déduis de vos posts que vous souhaitez utiliser l'API PCAN-Basic pour communiquer sur un bus CAN avec une interface PCAN-USB, vous utilisez une distribution Linux Debian 9.

Installation des drivers "PCAN linux driver 8.6.0":

Code: Select all

wget https://www.peak-system.com/fileadmin/media/linux/files/peak-linux-driver-8.6.0.tar.gz
tar –xzf peak-linux-driver-8.6.0.tar.gz
cd peak-linux-driver-8.6.0.tar.gz
make clean
make
sudo make install
sudo modprobe pcan
cd ..
Vérifions la détection du matériel PEAK:

Code: Select all

cat /proc/pcan

*------------- PEAK-System CAN interfaces (www.peak-system.com) -------------
*------------- Release_20180720_n (8.6.0) Aug 28 2018 08:03:04 --------------
*------------- [mod] [isa] [pci] [pec] [dng] [par] [usb] [pcc] --------------
*--------------------- 2 interfaces @ major 243 found -----------------------
*n -type- -ndev- --base-- irq --btr- --read-- --write- --irqs-- -errors- status
32  usbfd   -NA- ffffffff 209 0x001c 00000000 00000000 00000000 00000000 0x0000
33  usbfd   -NA- ffffffff 255 0x001c 00000000 00000000 00000000 00000000 0x0000
La commande affiche les périphériques détectés, dans l'exemple ci-dessus il y a 2 "usbfd" (une ligne pour chaque canal CAN d'un produit PEAK, dans mon cas c'est un PCAN-USB Pro FD).

Installation de l'API PCAN-Basic linux:

Code: Select all

wget http://www.peak-system.com/quick/BasicLinux -O PCAN_Basic_Linux-4.2.2.tar.gz
tar xvzf PCAN_Basic_Linux-4.2.2.tar.gz
cd PCAN_Basic_Linux-4.2.2/pcanbasic
make clean
make
sudo make install
cd ../..
L'API contient des exemples C++, Python dans le dossier "pcanbasic/examples". La version C++ contient 2 exemples pour écrire et lire sur un bus CAN.

Installation de l'outil 'pcaninfo' accompagnant l'API PCANBasic:

Code: Select all

cd PCAN_Basic_Linux-4.2.2/extras/pcaninfo
make
sudo make install
cd ../../..
Exemple d'utilisation de 'pcaninfo':

Code: Select all

pcaninfo

PCAN driver version: 8.6.0

  * pcanusbfd32: (/sys/class/pcan/pcanusbfd32)
        - file: /dev/pcanusbfd32
        - dev: "243:32"
        - minor: 32
        - base: 0
        - irq: 0
        -----------------
        - adapter_name: "PCAN-USB Pro FD"
        - adapter_number: 0
        - adapter_version: "3.2.0"
        - type: "usbfd"
        - hwtype: 17
        - devid: 0xd1
        - ctrlr_number: 0
        -----------------
        - clock: 80 MHz
        - nom_bitrate: 500 kBit/s
        - btr0btr1: 0x1c
        - data_bitrate: 2 MBit/s
        -----------------
        - nom_brp: 1
        - nom_sjw: 1
        - nom_tseg1: 139
        - nom_tseg2: 20
        - data_brp: 1
        - data_sjw: 1
        - data_tseg1: 29
        - data_tseg2: 10
        -----------------
        - bus_state: Closed / Unknown (0)
        - bus_load: 0%
        - rx_error_counter: 0
        - tx_error_counter: 0
        - rx_fifo_ratio: 0%
        - tx_fifo_ratio: 0%
        -----------------
        - irqs: 0
        - status: 0
        - errors: 0
        - read: 0
        - write: 0
        -----------------
        - TPCANHandle: "PCAN_USBBUS1" (0x051)
        -----------------
L'outil est pratique pour déterminer la valeur TPCANHandle à utiliser pour se connecter à un canal CAN avec l'API PCANBasic (voir la fonction CAN_Initialize). Dans votre cas ce sera probablement PCAN_USBBUS1.
Best regards,
Fabrice

4en1_4en1
Posts: 12
Joined: Wed 22. Aug 2018, 20:20

Re: PCAN-USB Interface CAN pour USB on debian 9

Post by 4en1_4en1 » Tue 28. Aug 2018, 12:53

Merci.
je voudrais lier mon scooter à mon pc :
pour lire ce qu'il a à me dire,
pour lui modifier au cas où des paramètres.
pour vérifier la version du firmware et le mettre à jour.

pour le moment c'est du bonheur ce scoot, mais il me fait un défaut.
On me demande de lui faire un reset mais je voudrais savoir ( avant ) ce qu'il a le dire
je ne suis pas certains qu'il garde en mémoire les défauts, les messages.

Il existe un logiciel prévu pour cela mais je pense qu'il faille des drivers ou des paquets pour qu'ils puissent communiquer entre eux en moi.
Cela parait simple
Allez on y va :)

4en1_4en1
Posts: 12
Joined: Wed 22. Aug 2018, 20:20

Re: PCAN-USB Interface CAN pour USB on debian 9

Post by 4en1_4en1 » Tue 28. Aug 2018, 13:29

Installation des drivers "PCAN linux driver 8.6.0":

dans le terminal

Code: Select all

wget https://www.peak-system.com/fileadmin/media/linux/files/peak-linux-driver-8.6.0.tar.gz

--2018-08-28 13:13:27--  https://www.peak-system.com/fileadmin/media/linux/files/peak-linux-driver-8.6.0.tar.gz
Résolution de http://www.peak-system.com (http://www.peak-system.com)… 46.30.57.174
Connexion à http://www.peak-system.com (http://www.peak-system.com)|46.30.57.174|:443… connecté.
requête HTTP transmise, en attente de la réponse… 200 OK
Taille : 1140167 (1,1M) [application/x-tar]
Sauvegarde en : « peak-linux-driver-8.6.0.tar.gz »

peak-linux-driver-8 100%[===================>]   1,09M   452KB/s    in 2,5s    

2018-08-28 13:13:30 (452 KB/s) — « peak-linux-driver-8.6.0.tar.gz » sauvegardé [1140167/1140167]

J'ai bien un fichier qui se télécharge et qui apparait dans mon répertoire. je le vois.
A l'invite je CC
tar -xzf peak-linux-driver-8.6.0.tar.gz

j'ai bien le fichier qui semble se décomprimer.. je le vois.

cd peak-linux-driver-8.6.0

je vais dans le nouveau répertoire créé. impeccable
j'envoie : make clean

résultat :

Code: Select all

make[1] : on entre dans le répertoire « /home/suncy/peak-linux-driver-8.6.0/driver »
Makefile:127: *** "Can't find /include/linux/version.h". Arrêt.
make[1] : on quitte le répertoire « /home/suncy/peak-linux-driver-8.6.0/driver »
make[1] : on entre dans le répertoire « /home/suncy/peak-linux-driver-8.6.0/lib »
rm -f src/*~
rm -rf obj lib obj32 lib32
make[1] : on quitte le répertoire « /home/suncy/peak-linux-driver-8.6.0/lib »
make[1] : on entre dans le répertoire « /home/suncy/peak-linux-driver-8.6.0/test »
rm -f src/*~ src/*.o *~ receivetest transmitest bitratetest filtertest pcanfdtst pcan-settings
make[1] : on quitte le répertoire « /home/suncy/peak-linux-driver-8.6.0/test »
j'envoie : make

résultat :

Code: Select all

make[1] : on entre dans le répertoire « /home/suncy/peak-linux-driver-8.6.0/driver »
Makefile:127: *** "Can't find /include/linux/version.h". Arrêt.
make[1] : on quitte le répertoire « /home/suncy/peak-linux-driver-8.6.0/driver »
make[1] : on entre dans le répertoire « /home/suncy/peak-linux-driver-8.6.0/driver »
Makefile:127: *** "Can't find /include/linux/version.h". Arrêt.
make[1] : on quitte le répertoire « /home/suncy/peak-linux-driver-8.6.0/driver »
make[1] : on entre dans le répertoire « /home/suncy/peak-linux-driver-8.6.0/lib »
cc -DNO_RT -I. -I../driver -fPIC -Wall -Wcast-align -Wredundant-decls  -DPCANFD_OLD_STYLE_API -c src/libpcan.c -o obj/libpcan.o
cc -shared -Wl,-soname,libpcan.so.0 -o lib/libpcan.so.0.6 obj/libpcan.o 
cd lib/; ln -sf libpcan.so.0.6 libpcan.so
cc -DNO_RT -I. -I../driver -fPIC -Wall -Wcast-align -Wredundant-decls  -DPCANFD_OLD_STYLE_API -c src/libpcanfd.c -o obj/libpcanfd.o
cc -shared -Wl,-soname,libpcanfd.so.0 -o lib/libpcanfd.so.0.1 obj/libpcanfd.o 
cd lib/; ln -sf libpcanfd.so.0.1 libpcanfd.so
ar rcs lib/libpcanfd.a obj/libpcanfd.o

Info: only 64-bit version of libpcan can be built. 32-bit version of libpcan can't because the 32-bit version of libc seems not being installed...

make[1] : on quitte le répertoire « /home/suncy/peak-linux-driver-8.6.0/lib »
make[1] : on entre dans le répertoire « /home/suncy/peak-linux-driver-8.6.0/test »
cc -DNO_RT -g -I. -I../lib -I../driver    src/receivetest.c src/common.c -lpcanfd  -L../lib/lib   -o receivetest
cc -DNO_RT -g -I. -I../lib -I../driver    src/transmitest.cpp src/common.c src/parser.cpp -lpcanfd -lstdc++  -L../lib/lib   -o transmitest
cc -DNO_RT -g -I. -I../lib -I../driver    src/bitratetest.c src/common.c -lpcanfd  -L../lib/lib   -o bitratetest
cc -DNO_RT -g -I. -I../lib -I../driver    src/filtertest.cpp src/common.c -lpcanfd -lstdc++  -L../lib/lib   -o filtertest
cc -DNO_RT -g -I. -I../lib -I../driver    src/pcanfdtst.c -lpcanfd  -L../lib/lib   -o pcanfdtst
cc -DNO_RT -g -I. -I../lib -I../driver    src/pcan-settings.c -lpopt  -L../lib/lib   -g -o pcan-settings
make[1] : on quitte le répertoire « /home/suncy/peak-linux-driver-8.6.0/test »
J'envoie sudo make install

résultat :

Code: Select all

make[1] : on entre dans le répertoire « /home/suncy/peak-linux-driver-8.6.0/driver »
Makefile:127: *** "Can't find /include/linux/version.h". Arrêt.
make[1] : on quitte le répertoire « /home/suncy/peak-linux-driver-8.6.0/driver »
make[1] : on entre dans le répertoire « /home/suncy/peak-linux-driver-8.6.0/lib »
mkdir -p /usr/lib
cp -d lib/* /usr/lib
if [ -d lib32 ]; then \
	mkdir -p /usr/lib32; \
	cp -d lib32/* /usr/lib32; \
fi
mkdir -p /usr/include
chmod 644 libpcan.h libpcanfd.h
cp libpcan.h libpcanfd.h /usr/include
/sbin/ldconfig
make[1] : on quitte le répertoire « /home/suncy/peak-linux-driver-8.6.0/lib »
make[1] : on entre dans le répertoire « /home/suncy/peak-linux-driver-8.6.0/test »
cp receivetest transmitest bitratetest filtertest pcanfdtst pcan-settings /usr/local/bin
make[1] : on quitte le répertoire « /home/suncy/peak-linux-driver-8.6.0/test »
j'envoie : sudo modprobe pcan

résultat :

Code: Select all

modprobe: FATAL: Module pcan not found in directory /lib/modules/4.9.0-8-amd64
?? là c'est encore plus bizarre pour moi ??

j'envoie cd ..
je redescends dans l'arborescence .

il y a juste à la fin le message : modprobe: FATAL: Module pcan not found in directory /lib/modules/4.9.0-8-amd64
qui me fait douter ...


Voilà pour l'épate 1 Installation des drivers "PCAN linux driver 8.6.0":

est-ce que tout c'est bien passé ? :?:
Last edited by M.Gerber on Tue 28. Aug 2018, 16:56, edited 1 time in total.
Reason: Inserted [code] tags for improved readability.

F.Vergnaud
Software Development
Software Development
Posts: 305
Joined: Mon 9. Sep 2013, 12:21

Re: PCAN-USB Interface CAN pour USB on debian 9

Post by F.Vergnaud » Tue 28. Aug 2018, 15:48

Il y a une erreur dès la première ligne de compilation lors de la commande make:

Code: Select all

Makefile:127: *** "Can't find /include/linux/version.h". Arrêt.
Vous n'avez probablement pas installé les linux-headers correspondant à votre noyau.
Voici la commande pour installer :
- les outils nécessaire à la compilation,
- la librairie libpopt nécessaire pour compiler un outil inclus dans les drivers PCAN
- et enfin les linux-headers correspondant à votre noyau (identifié par la commande uname -r).

Code: Select all

sudo apt-get install build-essential libpopt-dev linux-headers-`uname -r`
Autrement, si vous essayez de faire du diagnostic OBD2, nous disposons d'APIs (notamment PCAN-OBD2 API) qui facilitent ce genre de choses (dans votre cas, par exemple, le service de diagnostic "OBDII_ClearTroubleCodes"). Par contre ces librairies ne sont disponibles que pour Windows.
Best regards,
Fabrice

F.Vergnaud
Software Development
Software Development
Posts: 305
Joined: Mon 9. Sep 2013, 12:21

Re: PCAN-USB Interface CAN pour USB on debian 9

Post by F.Vergnaud » Tue 28. Aug 2018, 16:03

Je vous propose aussi d'essayer notre outil graphique PCAN-OBD-II-Viewer (Windows uniquement) qui permet de lire des données OBD (code d'erreur, etc.) et de remettre à zéro les codes d'erreurs.

Vous le trouverez sur notre DVD en ligne https://www.peak-system.com/produktcd dans le dossier "Tools/PCAN-OBDII-Viewer".
Attachments
pcan-obd-viewer.jpg
pcan-obd-viewer.jpg (56.38 KiB) Viewed 8145 times
Best regards,
Fabrice

4en1_4en1
Posts: 12
Joined: Wed 22. Aug 2018, 20:20

Re: PCAN-USB Interface CAN pour USB on debian 9

Post by 4en1_4en1 » Tue 28. Aug 2018, 16:53

Merci
Je n'ai plu de windows depuis des années et racheté du microsoft pour faire ce que je vais faire.
pour le moment non, sauf si je change de pc, et encore je souhaitais prendre un free dos.
nous verrons bien....

Visiblement à la commande :

Code: Select all

sudo apt-get install build-essential libpopt-dev linux-headers-`uname -r`
résultat :

Code: Select all

Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances       
Lecture des informations d'état... Fait
build-essential is already the newest version (12.3).
build-essential passé en « installé manuellement ».
libpopt-dev is already the newest version (1.16-10+b2).
Les paquets suivants ont été installés automatiquement et ne sont plus nécessaires :
  golang-golang-x-net-dev golang-golang-x-oauth2-dev golang-golang-x-text-dev
  golang-golang-x-tools-dev golang-x-text-dev libclass-accessor-lite-perl
  libcrypt-openssl-bignum-perl libcrypt-openssl-rsa-perl libdata-random-perl
  libfurl-perl libgd-perl libhttp-cookiejar-perl libhttp-parser-xs-perl
  libjsoncpp1 libmouse-perl libnet-dns-lite-perl libnet-oauth-perl
  linux-image-4.9.0-4-amd64
Veuillez utiliser « sudo apt autoremove » pour les supprimer.
The following additional packages will be installed:
  linux-compiler-gcc-6-x86 linux-headers-4.9.0-8-common linux-kbuild-4.9
Les NOUVEAUX paquets suivants seront installés :
  linux-compiler-gcc-6-x86 linux-headers-4.9.0-8-amd64
  linux-headers-4.9.0-8-common linux-kbuild-4.9
0 mis à jour, 4 nouvellement installés, 0 à enlever et 34 non mis à jour.
Il est nécessaire de prendre 9 366 ko dans les archives.
Après cette opération, 51,9 Mo d'espace disque supplémentaires seront utilisés.
Souhaitez-vous continuer ? [O/n] o
Réception de:1 http://security.debian.org/debian-security stretch/updates/main amd64 linux-compiler-gcc-6-x86 amd64 4.9.110-3+deb9u4 [558 kB]
Réception de:2 http://security.debian.org/debian-security stretch/updates/main amd64 linux-headers-4.9.0-8-common all 4.9.110-3+deb9u4 [7 594 kB]
Réception de:3 http://security.debian.org/debian-security stretch/updates/main amd64 linux-kbuild-4.9 amd64 4.9.110-3+deb9u4 [765 kB]
Réception de:4 http://security.debian.org/debian-security stretch/updates/main amd64 linux-headers-4.9.0-8-amd64 amd64 4.9.110-3+deb9u4 [450 kB]
9 366 ko réceptionnés en 5s (1 754 ko/s)           
Sélection du paquet linux-compiler-gcc-6-x86 précédemment désélectionné.
(Lecture de la base de données... 276092 fichiers et répertoires déjà installés.)
Préparation du dépaquetage de .../linux-compiler-gcc-6-x86_4.9.110-3+deb9u4_amd64.deb ...
Dépaquetage de linux-compiler-gcc-6-x86 (4.9.110-3+deb9u4) ...
Sélection du paquet linux-headers-4.9.0-8-common précédemment désélectionné.
Préparation du dépaquetage de .../linux-headers-4.9.0-8-common_4.9.110-3+deb9u4_all.deb ...
Dépaquetage de linux-headers-4.9.0-8-common (4.9.110-3+deb9u4) ...
Sélection du paquet linux-kbuild-4.9 précédemment désélectionné.
Préparation du dépaquetage de .../linux-kbuild-4.9_4.9.110-3+deb9u4_amd64.deb ...
Dépaquetage de linux-kbuild-4.9 (4.9.110-3+deb9u4) ...
Sélection du paquet linux-headers-4.9.0-8-amd64 précédemment désélectionné.
Préparation du dépaquetage de .../linux-headers-4.9.0-8-amd64_4.9.110-3+deb9u4_amd64.deb ...
Dépaquetage de linux-headers-4.9.0-8-amd64 (4.9.110-3+deb9u4) ...
Paramétrage de linux-headers-4.9.0-8-common (4.9.110-3+deb9u4) ...
Paramétrage de linux-compiler-gcc-6-x86 (4.9.110-3+deb9u4) ...
Paramétrage de linux-kbuild-4.9 (4.9.110-3+deb9u4) ...
Paramétrage de linux-headers-4.9.0-8-amd64 (4.9.110-3+deb9u4) ...

il me manquait presque 52 mo

dans le gestionnaire de paquets Synaptique, il avait de nombreuse version et paquets, j'avais installé le mini.

je relance un test. là ou cela a planté
Last edited by M.Gerber on Tue 28. Aug 2018, 17:02, edited 1 time in total.
Reason: Inserted [code] tags for improved readability.

Post Reply