Monter l'adaptateur USB sur série CANBUS et les ubuntu can-utils?

17

J'ai cet adaptateur et j'essaie désespérément de le monter dans Ubuntu afin que je puisse utiliser can-utilspour surveiller l'appareil, mais j'échoue.

J'essaie de communiquer avec une série à l'adaptateur can-bus en 14.04 avec can-utils c'est le périphérique canopen que j'essaye d'obtenir et ceci est l'adaptateur que j'utilise

dmesg:

[ 4316.555254] usb 3-3: new full-speed USB device number 8 using xhci_hcd
[ 4316.572534] usb 3-3: New USB device found, idVendor=1a86, idProduct=7523
[ 4316.572541] usb 3-3: New USB device strings: Mfr=0, Product=2, SerialNumber=0
[ 4316.572545] usb 3-3: Product: USB2.0-Serial
[ 4316.573058] ch341 3-3:1.0: ch341-uart converter detected
[ 4316.574083] usb 3-3: ch341-uart converter now attached to ttyUSB1
[ 4836.845113] CAN device driver interface
[ 5389.346203] can: broadcast manager protocol (rev 20120528 t)
[ 5570.910652] systemd-hostnamed[23407]: Warning: nss-myhostname is not installed. Changing the local hostname might make it unresolveable. Please install nss-myhostname!

C'est la sortie dmesg pour l'appareil

Je pense que c'est l'appareil.

lsusb Donne moi:

Bus 003 Device 002: ID 1a86:7523 QinHeng Electronics HL-340 USB-Serial adapter

J'ai réussi à le monter sur slcan0 comme ceci:

sudo slcand -o -s6 -t hw -S 3000000 /dev/ttyUSB2

ip link set up slcan0

Le lien IP me donne alors:

6: slcan1: <NOARP,UP,LOWER_UP> mtu 16 qdisc pfifo_fast state UNKNOWN mode DEFAULT group default qlen 10
    link/can 

Peu importe ce que je lance ensuite via can-send, je ne peux pas obtenir de réponse ...

vimes1984
la source
> [ 4316.574083] usb 3-3: ch341-uart converter now attached to ttyUSB1et > sudo slcand -o -s6 -t hw -S 3000000 /dev/ttyUSB2ne semble pas correspondre?
Hannu
Les données circulent-elles physiquement sur le bus? Vous l'avez vu à l'oscilloscope?
Ruslan Gerasimov
non rien ne semble sortir de n'importe où ....
vimes1984
1
Avez-vous terminé correctement le bus? Le bus CAN utilise des résistances de terminaison. Sans eux, cela ne fonctionne pas.
Ruslan Gerasimov
5
@ vimes1984, l'adaptateur USB prend en charge la vitesse de transmission maximale de 1M et le transmetteur prend en charge entre 20K et 1M. La commande que vous avez mentionnée était avec 3M baud. Essayez d'utiliser un baud inférieur de 1 M ( -S 1000000) ou moins.
user.dz

Réponses:

2

Je sais que c'est un fil très ancien. Mais il est toujours sans réponse et pendant que je cherchais une solution, je suis tombé sur ce fil.

La solution à ce problème est que slcand ne prend pas en charge cette interface. Pour l'utiliser de toute façon, un mappeur entre l'interface et le socket doit être utilisé. Cet adaptateur peut être trouvé à https://github.com/alexmohr/usb-can

Après l'installation, lancez usbcan -s 500000 -d /dev/ttyUSB0

Alex
la source