PCAN Probleme mit Ubuntu 14.04 LTS

This forum covers PCAN-Linux and Linux development issues concerning our products
Post Reply
CAN-Bus
Posts: 4
Joined: Sat 14. Feb 2015, 09:16

PCAN Probleme mit Ubuntu 14.04 LTS

Post by CAN-Bus » Sat 14. Feb 2015, 13:46

Hallo zusammen,

ich habe ein Problem mit meinem PCAN-miniPCIe Zweikanal Modul (IPEH-003049) und Ubuntu 14.04 LTS. Eventuell könnt Ihr mir weiterhelfen. Wie erwähnt hatte ich bei mir auf dem Rechner Ubuntu 14.04 LTS installiert und möchte CAN über das NETDEV Interface benutzen. Ich habe folgende Befehle ausgeführt:
- $ modprobe can
- $ modprobe can_raw
- $ modprobe can-dev

- Install libpopt-dev: sudo apt-get install libpopt-dev
- Install g++: sudo apt-get install g++

Anschließend habe ich die SocketCAN Tools installiert über:
- Install git:
sudo apt-get install git
- Get the SocketCAN Tools:
git clone https://github.com/linux-can/can-utils
- build and install the tools:
cd can-utils
make
sudo make install

und danach die Bitrate eingestellt und das Netzwerk gestartet:
sudo ip link set can0 type can bitrate 125000
sudo ifconfig can0 up

Wenn ich nun über cansend eine CAN-Nachricht verschicke, wird diese auch auf den Bus gelegt. Wenn ich danach noch eine schicken möchte passiert nichts. Sobald ich eine Nachricht oft genug verschicke, wird mir gemeldet das der Write Buffer voll ist. Erst wenn ich die Befehle:
sudo ifconfig can0 down
sudo ifconfig can0 up
wieder ausführe, kann ich eine Nachricht auf den Bus legen. Nachrichten über den Bus empfange ich keine. Ausprobiert habe ich das ganze über candump can0. Ich kann mir nicht vorstellen, das ich immer das Netzwerk an und ausschalten muss um Nachrichten verschicken zu können. Vielleicht könnt Ihr mir helfen und sagen wo der Fehler liegt?

Mit freundlichen Grüßen
Matthias

M.Maidhof
Support
Support
Posts: 1753
Joined: Wed 22. Sep 2010, 14:00

Re: PCAN Probleme mit Ubuntu 14.04 LTS

Post by M.Maidhof » Mon 16. Feb 2015, 11:45

Hallo,

haben Sie ein terminiertes CAN Kabel, und einen weiteren Knoten mit 125k angeschlossen? Sie koennen zu Testzwecken auch den peak-linux-driver als chardev installieren anstatt dem SocketCAN Treiber aus dem Kernel. Damit laesst sich ueber cat /proc/pcan dann der Status der Hardware ablesen, und damit auch die Fehler die vorhanden sind.

Mit freundlichen Gruessen

Michael

CAN-Bus
Posts: 4
Joined: Sat 14. Feb 2015, 09:16

Re: PCAN Probleme mit Ubuntu 14.04 LTS

Post by CAN-Bus » Mon 16. Feb 2015, 13:35

Hallo Michael,

ja ich habe ein terminiertes CAN Kabel verwendet und den weiteren Knoten auf 125k eingestellt.
Nachdem ich, wie Sie vorgeschlagen haben den peak-linux-driver als chardev installierte, habe ich über cat /proc/pcan den Status auslesen lassen. Folgendes wurde mir angezeigt:

*------------- PEAK-System CAN interfaces (http://www.peak-system.com) -------------
*------------- Release_20141219_n (7.14.0) Feb 16 2015 14:26:25 --------------
*---------------- [mod] [isa] [pci] [dng] [par] [usb] [pcc] -----------------
*--------------------- 2 interfaces @ major 248 found -----------------------
*n -type- -ndev- --base-- irq --btr- --read-- --write- --irqs-- -errors- status
0 pci -NA- f7e00000 016 0x001c 00000000 00000000 00000000 00000000 0x0000
1 pci -NA- f7e00400 016 0x001c 00000000 00000000 00000000 00000000 0x0000

Passen die Werten so? Ich wollte nun noch die Baudrate einstellen, diese lässt sich aber weder über ip link set can0 up type can bitrate 125000 ändern noch über echo "i 0x031C e">/dev/pcan.

Mit freundlichen Grüßen
Matthias

M.Maidhof
Support
Support
Posts: 1753
Joined: Wed 22. Sep 2010, 14:00

Re: PCAN Probleme mit Ubuntu 14.04 LTS

Post by M.Maidhof » Mon 16. Feb 2015, 16:02

Hallo,

ja passt, die Baudrate aendert man mit:

echo "i 0x031C e">/dev/pcan0 oder echo "i 0x031C e">/dev/pcan1 je nach Kanal

bitte mal mit transmittest testen, ob die Kommunikation funktioniert.

Mit freundlichen Gruessen

Michael Maidhof

CAN-Bus
Posts: 4
Joined: Sat 14. Feb 2015, 09:16

Re: PCAN Probleme mit Ubuntu 14.04 LTS

Post by CAN-Bus » Mon 16. Feb 2015, 17:08

Hallo,

nachdem ich nun über echo "i 0x031C e">/dev/pcan0 die Baudrate eingestellt hatte, habe ich den transmitest ausgeführt. Als Datei habe ich transmit.txt gewählt. Jedoch bestand das Problem immer noch. Nachdem das Interface die erste Nachricht "" mit dem Identifier 0x7FF auf den Bus gelegt hat, passierte nichts mehr. Es wurde keine weitere Nachricht gesendet und es kam auch keine Fehlermeldung im Terminal. Erst als ich mit Strg. + C das Ganze abgebrochen habe, kam eine Auflistung von Statusmeldungen. Mit zum Beispiel last CAN status = 0x00a0; last error = 0; open paths = 1;

Mit freundlichen Grüßen
Matthias Hisung

CAN-Bus
Posts: 4
Joined: Sat 14. Feb 2015, 09:16

Re: PCAN Probleme mit Ubuntu 14.04 LTS

Post by CAN-Bus » Wed 18. Feb 2015, 22:17

Hallo,

das Problem mit dem nicht richtig Senden der Nachricht und das Empfangen der Nachricht konnte ich nun beheben. Nachdem ich das Modul in einen anderen freien PCIe Platz gesteckt habe und es somit eine andere IRQ Nummer (18 anstatt 16) bekommen hat, funktioniert nun der Transmitest und Receivetest ohne Problem. Somit gab es da wohl Probleme mit meinem USB-Controller der ebenfalls die IRQ Nummer 16 zugewiesen bekam.
Nun möchte ich gerne wieder auf den Native Treiber aus dem Kernel zurück gehen. Wie geh ich da am besten vor? Einfach über rmmod pcan und dann make uninstall?

Mit freundlichen Grüßen
Matthias

M.Maidhof
Support
Support
Posts: 1753
Joined: Wed 22. Sep 2010, 14:00

Re: PCAN Probleme mit Ubuntu 14.04 LTS

Post by M.Maidhof » Thu 19. Feb 2015, 09:28

Hallo,

ein PCI hardware Problem ist aber sehr ungewoehnlich, da sollten Sie mal nach einer neueren BIOS Version Ausschau halten.

Um wieder den kernel Treiber zu nutzen, gehen Sie wie folgt vor:
- sudo rmmod pcan
- sudo make uninstall (im peak-linux-driver-7xx Verzeichnis)
danach am besten einaml neu booten, damit der peak_usb Treiber wieder automatisch geladen wird, oder eben manuell mit sudo modprobe peak_usb den kernel Treiber wieder starten.

Mit freundlichen Gruessen

Michael Maidhof

Post Reply