- Entwicklungsstand: in Entwicklung (letzte Aktualisierung: 22.01.2023 – Release Version 1.1.0.14)
- Veröffentlichungen: Version 1.1.0.14 hier und auf GitHub zum Download veröffentlicht
- GitHub Repository: https://github.com/SeppHansen/SLSS-CANAnalyser*
- Informationen zur aktuellen Version: https://www.langer-sebastian.de/slss-cananalyser-entwicklung*
Vorgeschichte
Da ich in der Vergangenheit sowohl beruflich, als auch in meiner Freizeit immer wieder mit CAN-Bus Systemen und den darüber versendeten Botschaften in Kontakt gekommen bin, entstand irgendwann der Wunsch / Bedarf nach einer Software, mit dessen Hilfe ich mir das Handling und den Umgang mit den Bus-Daten erleichtern kann. Bis dato habe ich CAN-Botschaften entweder im Terminal, später mit einem Pythonprogramm auf einer Raspberry Pi*, wie ich sie zum Beispiel als zentrales Gateway bei meinem SLSS CarNet* Projekt verwende, oder mittels der seriellen Ausgabe eines Arduino* Micro-Controller Boards, angezeigt und mitgeloggt. Die Auswertung der Daten erfolgte dann immer im Nachgang anhand der gemachten Aufzeichnung, oder durch das physische Überprüfen der Reaktionen, welche durch das Senden von bestimmten Botschaften ausgelöst werden sollten. Dies ist auf Dauer natürlich nur wenig komfortabel.
Für die professionelle Bearbeitung von CAN-Bus Daten gibt es natürlich auch professionelle Tools, welche alle gewünschten Funktionen unterstützen und mit verschiedenen, teilweise sogar hardwareseitig implementierten Methoden, sicherstellen, dass jedes Datenpaket welches über den CAN-Bus übertragen wird auch erkannt und mitgeloggt wird. Diese Tools kommen meist in den Entwicklungsabteilungen für Kraftfahrzeuge, Nutzfahrzeuge, Schiffe und auch anderen Maschinen zur grundlegenden Auslegung und Entwicklung des CAN-Bus zum Einsatz und werden ständig weiterentwickelt, geupdatet und verbessert. Da dieser Vorgang für die entwickelnden Firmen recht zeit- und kostenintensiv ist, werden diese Programme leider meist als zeitlich begrenzte Lizenzversionen verkauft und benötigen nicht selten herstellerspezifische Hardware, welche ebenfalls nicht ganz billig ist. Diese tollen und sehr nützlichen Tools sind damit leider für den Hobbybereich oder den sporadischen Einsatz einfach zu teuer.
Zielsetzung: minimalistischer Hardwareeinsatz
Eine meiner grundlegenden Ideen hinter diesem Projekt ist es für die verwendete Hardware lediglich Komponenten zu verwenden, welche ich immer, fast schon wie so manches Grundnahrungsmittel, vorrätig zuhause herumliegen habe. Dabei handelt es sich zum einen um das bei „Bastlern“ beliebte Arduino Uno R3* Micro-Controller Board und zum anderen um die bei Amazon* oder Ebay* kostengünstig erhältlichen MCP2515 CAN Bus Shields*, welche einfach mittels JumperWires* über den SPI Bus mit dem Arduino* verbunden werden können. Damit belaufen sich, selbst wenn man beide Komponenten erst noch anschaffen muss, die Kosten für die Hardware auf weniger als 20€.
Schematischer Anschlussplan des CAN-Controllerboards an den Arduino
UPDATE: Tausch des 8Mhz Schwingquarz am CAN-Bus Shield
Bei meinen Recherchen zum verwendeten MCP2515 CAN Bus Shield habe ich in mehreren Forenbeiträgen gelesen, dass das Board mit dem verbauten 8Mhz Schwingquarz die angegeben 1Mbit/s nicht verarbeiten kann. Da die Boards preislich aber unschlagbar sind und der Quarz einfach zugänglich ist, werde ich diesen durch einen 16Mhz Schwingquarz ersetzen und den Code des µC daran anpassen. Wer sich das Umlöten ersparen möchte, kann auch ein fertiges (aber teuereres) CAN Shield verwenden.
Screenshots vom Wechsel des Schwingquarz auf dem CAN-Board
Tipp: Der Quarz wurde mit bleifreiem Lötzinn (mittlerweile Standard) verlötet, was das Auslöten durch die höhere Schmelztemperatur ein wenig erschwert. Falls man keine Heißluftlötstation* oder Flussmittel zur Hand haben sollte, empfiehlt es sich, auf die Lötstellen vorher ein wenig bleihaltiges Lötzinn aufzulöten, um mit diesem das bleifreie Lötzinn zu verflüssigen. Das Entfernen des Lötzinns mit einer handelsüblichen Entlötpumpe* ist dann ohne jegliche Probleme möglich. Die Nacharbeit beim Reinigen der Pads / Durchführungen wird durch diesen Trick übrigens auch vereinfacht!
Funktionsumfang der Software
Neben dem eigentlichen Mitloggen von CAN-Bus Botschaften orientiere ich mich beim Funktionsumfang der Software größtenteils an dem, was ich mir von einer solchen Software erhoffen würde. So sollen Funktionen für die Botschaftsanalyse (CAN-Bus Reverse Engineering) ebenso wie das Festlegen von Nachrichtenbezeichnungen und das Filtern einzelner CAN-IDs oder CAN-ID Gruppen ermöglicht werden. Hierbei möchte ich jedoch die Bedienbarkeit der Software so intuitiv und einfach wie möglich halten. Weitere geplante, oder auch bereits umgesetzte Funktionen habe ich in der nachstehenden Übersicht einmal zusammengefasst.
Funktionsbeschreibung | aktueller Stand | geplant für |
---|---|---|
Verbinden des / der CAN-Bus Controller aus der Software heraus. – Verbindungsaufbau über serielle Schnittstelle – Empfang der im µC-Code festgelegten Board-ID – Auswahl der Busgeschwindigkeit in der Software | umgesetzt / voll funktionsfähig | Version 1.0.0.0 |
Automatische Suche nach angeschlossenen CAN-Bus Controllern. – Auflisten der Board-ID hinter dem jeweiligen COM-Port | umgesetzt / voll funktionsfähig | Version 1.0.0.0 |
Empfangen von CAN-Bus Botschaften. – Aufteilen und Auflisten der Daten in tabellarischer Form – Sortieren der empfangenen Daten innerhalb der Tabelle – Speichern der Empfangsreihenfolge in zusätzlicher Log-Tabelle | umgesetzt / voll funktionsfähig | Version 1.0.0.0 |
Umschalten zwischen dezimaler, hexadezimaler und binäre Datenanzeige. – Getrennte Umschaltung für CAN-Identifier und Datenbytes – Auffüllen der binären Datenanzeige auf 8bit – Datenframe – Umschalten und Aktualisieren der Anzeige während der Aufzeichnung | umgesetzt / voll funktionsfähig | Version 1.0.0.0 |
Filtern nach ID, Daten und individuell einstellbaren Filteroptionen. – ID Filter = 1 Zeile pro CAN-Identifier – Daten Filter = 1 Zeile pro identischer CAN-Botschaft – individueller Filter = Filtern nach CAN-Identifier / Identifier-Bereich – auf ID Filter und Datenfilter anwendbar – Zählen und Darstellen identischer Botschaften | umgesetzt / voll funktionsfähig | Version 1.0.0.0 |
Start, Pause, Aufnahme und Stopp Buttons eingefügt – zum Unterbrechen der Datenerfassung während bestehender HW- Verbindung. | umgesetzt / voll funktionsfähig | Version 1.0.0.0 |
Export der empfangenen CAN-Daten in MS-Excel Datei – Anlage von einem Arbeitsblatt pro Datentabelle – schneller Export der Daten zur Nachverarbeitung via Excel | umgesetzt / voll funktionsfähig | Version 1.0.0.0 |
Anlegen von Botschaftsbezeichnungen zur besseren Signalzuordnung. – Neuanlage, Bearbeitung und Löschen direkt in der Software – sofortige Anzeige der Bezeichnung im Aufzeichnungsfenster – Anzeige der Bezeichnung im Log-Fenster – Live-Anzeige der Erstellten Botschaften in eigenem Fenster | umgesetzt / voll funktionsfähig | Version 1.0.0.0 |
Speichern und Laden von Botschaftsbezeichnungen. – gewünschtes Format = *.dbc | umgesetzt / voll funktionsfähig | Version 1.0.0.0 |
Live Signal Reverse Engineering. – Auswahl einer ID zum Reverse Engineering – Einzelbitauswahl und sofortige Anzeige des Ausgabewertes – zum Ermitteln byteübergreifender Signalwerte > 8bit – Übertragen der Einstellung in die Signalliste | umgesetzt / weitere Erweiterungen in Planung | Version 1.0.0.1 |
Senden von CAN-Botschaften. – Senden von vordefinierten CAN-Botschaften auf Knopfdruck – Speichern der Botschaften zur späteren Wiederverwendung – Übernahme empfangener CAN-Botschaften in den Sendebereich per Kontextmenü – Wiederholtes Senden von CAN-Botschaften mit einstellbarer Verzögerungszeit zwischen den Sendevorgängen um eine Art Rest-Bus-Simulation zu ermöglichen | umgesetzt / voll funktionsfähig | Version 1.0.0.1 |
Signalsimulation – Senden von einstellbaren, berechneten Signalen (Random) – Einstellen des Intervalls der Signalwiederholung | noch nicht umgesetzt | in Planung |
Laden und Speichern aller Programmeinstellungen – Projektfunktion = Laden und Speichern aller Daten wie – Programm- und Verbindungseinstellungen – CAN-Botschaften im Empfangsfenster (separat) – CAN-Botschaften im Logfenster (separat) – erstellter oder geladener *.dbc Beschreibung – gesetzter oder erstellter Filter | umgesetzt / voll funktionsfähig | Version 1.0.0.0 |
ASCII Text Analyser – Darstellen aller eingehenden CAN-Daten im ASCII Format – Integration als weiteren Tabellen-Reiter – Nutzen der Filtereinstellungen eingehender CAN-Daten – Speichern und Exportieren der Daten | umgesetzt / voll funktionsfähig | Version 1.0.0.1 |
SLSS CANData Viewer – Anzeigen von aufgezeichneten CAN-Daten – Durchsuchen von CAN-Datensätzen nach Zeichenketten – Bearbeiten von Datensätzen (Spalten und Zeilen) – Anzeige der aktuellen Zelle im ASCII-Format – Speichern von bearbeiteten Datensätzen | umgesetzt / voll funktionsfähig | Version 1.0.0.1 |
OBD Datenportal mit Live-Datenanzeige | in Arbeit /teilweise funktionsfähig | in Planung |
Modulübergreifende Kommunikation – Weiterleitung der CAN-Botschaften von einem Modul zu einem zweiten oder mehreren Modulen (busübergreifend) | noch nicht umgesetzt | in Planung |
Test, Optimierung, Debugging des Programmcodes | ständig | ständig |
Übersicht Entwicklungsschritte
Um die Länge des Beitrages etwas zu kürzen, habe ich alle Entwicklungsschritte auf eine eigens dafür erstellte Seite https://www.langer-sebastian.de/slss-cananalyser-entwicklung/* ausgelagert. Hier kann man den Entstehungsprozess dieser Software von Anfang an nachvollziehen.
Installation des mitgelieferten Micro-Controller Programmcodes
Um den SLSS CANAnalyser nutzen zu können, ist es zwingend erforderlich, den im Download-Archiv mitgelieferten Micro-Controller Code auf den Arduino zu flashen. Der Programm-Code befindet sich dabei im Ordner „SLSS_CanAnalyser_V1.0.0.2 µC-Code\SLSS_CanAnalyser\“ und kann durch das Laden der Datei „SLSS_CanAnalyser.ino“ in der Arduino-IDE geöffnet werden. (siehe Screenshot)
Nach dem Laden der Datei hat man die Möglichkeit die Taktfrequenz des CAN-Boards durch das Setzen der richtigen Einstellung und Auskommentieren der nicht benötigten Einstellung auszuwählen. Die Voreinstellung habe ich hier auf die CAN-Boards mit 8 MHz gesetzt, da dies dem Auslieferzustand entspricht und nicht jeder auf 16 MHz umbauen möchte. Nutzt man ein CAN-Shield mit verbautem 16 MHz Schwingquarz, so muss man die Einstellung dementsprechend anpassen – 8 MHz mittels „//“ auskommentieren und die beiden Schrägstriche „//“ vor 16 MHz entfernen.
Außerdem hat unterhalb der Auswahl der richtigen Taktfrequenz noch die Möglichkeit die 3-stellige Geräte-ID zu setzen. Diese wird später in der Verbindungsansicht der Software angezeigt und dient bei der Nutzung von mehreren CAN-Boards der besseren Unterscheidung. Die Geräte-ID hat jedoch auf den eigentlichen Datenaustausch zwischen Controller und Software keinen Einfluss. Mehrfach vergebene Geräte-IDs haben somit keine negativen Auswirkungen auf den Empfang der Daten.
//select frequency for the oszilator mounted on the can board int MCP_MHz = MCP_8MHZ; //int MCP_MHz = MCP_16MHZ; //DeviceID --> change for multiple devices (shown as ID in software) String devID = "001";
Auszug aus dem Programmcode zur Einstellung der Taktfrequenz und zum Setzen der Geräte ID
Link zur für den Micro-Controller benötigten CAN-Bibliothek
Die folgende CAN-Bibliothek dient zur Kommunikation des Arduino mit dem MCP2515 CAN-Controllerboard und muss zum erfolgreichen Kompilieren des Codes in der Arduino-IDE verfügbar sein. Dazu reicht es, wenn man die Bibliothek von der verlinkten GitHub-Seite herunterlädt, die Zip-Datei entpackt und anschließend das entpackte Verzeichnis in den „libraries“ Ordner, welcher standardmäßig unter „Dokumente/Arduino“ zu finden sein sollte, verschiebt.
https://github.com/coryjfowler/MCP_CAN_lib*
Screenshot des Arduino libraries-Ordners mit der abgelegten MCP_CAN_lib-master
Screenshots SLSS CANAnalyser Oberfläche + Versuchsaufbau
Screenshots Entwicklung – SLSS CANAnalyser
Download SLSS CANAnalyser
Für meine Freunde und alle Interessierten biete ich hier den SLSS CANAnalyser zum Download an. Da es mit den *.ZIP Dateien evtl. zu Problemen beim Download kommen kann (ZIP-Archive werden in einigen Web-Browsern als potentielle Bedrohung erkannt und der Download blockiert), stelle ich die Datei sowohl als *.ZIP, als auch als *.7z zur Verfügung. Für die letztere Datei benötigt man das kostenlose Kompressionsprogramm 7-Zip* was hier* heruntergeladen werden kann. (https://www.7-zip.de/).
Download “SLSS CANAnalyser (Zip-Archiv)”
SLSS-CANAnalyser-V_1.1.0.14.zip – 506-mal heruntergeladen – 19,66 MBDownload “SLSS CANAnalyser (7-Zip-Archiv)”
SLSS-CANAnalyser-V_1.1.0.14.7z – 118-mal heruntergeladen – 18,89 MB
Haftungsausschluss:
Die hier veröffentlichte Software wurde auf mehreren Systemen fehlerfrei getestet. Dennoch kann für evtl. Beschädigungen, Instabilitäten oder sonstige Beeinträchtigungen, welche unmittelbar durch die Installation, Nutzung, oder in sonstiger Weise in Zusammenhang stehend mit der hier zum Download angebotenen Software auftreten keinerlei Haftung übernommen werden. Der Download, die Installation und Nutzung geschehen auf eigenes Risiko! Bei Problemen wenden sie sich bitte an info@langer-sebastian.de!
Zusatz zur Nutzung im Bereich der StVO / StVZO
Die angebotene Software ist ausschließlich für den Bereich des Prototyping gedacht und die Nutzung somit ausschließlich abseits des öffentlichen Verkehrsraum gestattet! Von einer Nutzung während der Fahrt wird ausdrücklich abgeraten.
Videos vom SLSS CANAnalyser Projekt
Hallo Sebastian,
zunächst wollte ich mich bei dir für dieses klasse Projekt bedanken!
Ich finde es total klasse wenn du deine Entwicklung hier bereit stellst und uns an deinem Erfolg beteiligst.
Ich selbst bin leider auch nur ein Nachbauer da ich mangels Zeit und fehlender Erfahrung bei der Entwicklung niemals so weit kommen würde wie du es hier bist.
In diesem Sinn habe ich auch gleich mal eine Frage:
Ich habe wie hier beschrieben das Quarz auf meinem CAN Shield auf 16MHz ausgetauscht und die Verbindung zum Arduino Uno wie grafisch dargestellt, hergestellt.
Das Compilern lief ohne Probleme.
Leider zeigt mit der Serielle Monitor nun di folgende Meldung an:
14:26:31.848 -> CAN BUS Shield init fail
14:26:31.848 -> Init CAN BUS Shield again
14:26:32.171 -> Entering Configuration Mode Failure…
Leider kann unabhängig davon auch der SSLS CANAnalyser keine Verbindung zu meinem Arduino an COM 3 herstellen
Habe ich jetzt noch etwas übersehen?
Vielen Dank für deine Unterstützung
Tobias
Hallo Tobias,
vielen Dank für die netten Worte. Es freut mich immer sehr, wenn meine Tools auch anderen Leuten gefallen.
Zu deinem Problem:
Die Ausgabe, welche du oben beschrieben hast, stammt wahrscheinlich aus einem anderen Programmcode, da mein Code eigentlich keine Ausgabe auf der seriellen Konsole erzeugen dürfte. Falls du einen anderen Code als den meinen auf den Arduino geflashed haben solltest, wird dieser von meiner Software nicht erkannt, da in diesem Fall das Board nicht auf die Anfrage der Software reagiert.
In der von mir verlinkte CAN-Bibliothek kann / muss man die Frequenz innerhalb der „CAN.begin“-Methode wählen. Die beiden Parameter dafür wären „MCP_8MHZ“ für den 8MHz und „MCP_16MHZ“ für die 16MHz Variante, siehe Screenshot (http://langersebastian.no-ip.org:8000/web_images/MCP_CAN_lib_FrequencySet.png). Falls diese Methode von „deiner“ CAN-Bibliothek nicht unterstützt werden sollte, kann es sein, dass du eine alte Version der verlinkte Bibliothek benutzt. Die Aktualisierung mittels der Dateien im oben verlinkten GitHub-Bereich sollte dann Abhilfe schaffen.
In meinem Micro-Controller Programmcode muss man ebenfalls die richtige Frequenz des CAN-Boards am Anfang der Datei „SLSS_CanAnalyser.ino“ auswählen. Dazu kommentiert man am besten die nicht genutzte Frequenz mittels // aus dem Programmcode aus und entfernt das // vor der genutzten Frequenz. Standardmäßig habe ich die Einstellung auf die Boards mit 8Mhz Schwingquarz gestellt, da diese ja so geliefert werden. In der Abbildung unter (http://langersebastian.no-ip.org:8000/web_images/2021_06_01_15_16_48_Window.png) kannst du dir die Einstellung, wie sie für die 16Mhz-Variante aussehen sollte, einmal anschauen.
Unabhängig davon:
Ich hatte mit einigen der CAN-Boards auch schon ähnliche Probleme. Dabei befand sich die Initialisierung des Boards im Setup-Teil des Programmcodes und anscheinend startete der Micro-Controller schneller als der Chip auf dem CAN-Board. Das Problem konnte ich lösen, indem ich vor die Initialisierung des CAN-Boards einen Delay von 1s in den Code einfügte. Danach startete das Board ordnungsgemäß. Hier mal ein Beispiel zum Delay (auch noch mit dem alten „CAN0.begin“-Aufruf ohne Angabe der Frequenz) http://langersebastian.no-ip.org:8000/web_images/CAN-INIT-delay.png
Falls all das nicht helfen sollte, kannst du mir deinen Code gern mal per Mail zusenden oder einfach auf Pastebin.com bereitstellen. Vielleicht fällt mir ja etwas auf.
Dann drücke ich die Daumen, dass die beschriebenen Dinge vielleicht helfen. Wenn nicht, wie schon gesagt einfach melden…
Viele Grüße
Sebastian
Hallo Sebastian,
Das ist mir jetzt aber ein bisschen peinlich!
Ich schau mir noch mal alles an. Vermutlich ist beim vielen ausprobieren etwas durcheinander gekommen.
Danke schon mal vorab und mach weiter so!
Tobias
Kein Problem, wenn’s nicht funktioniert dann melde dich einfach.
Grüße
Sebastian
Hallo Sebastian,
ich bin gerade am testen Deines Programms.
Es besteht leider folgendes Problem:
Die Verbindung mit dem Board wird hergestellt und bleibt solange nichts von meinem BMS kommt.
Sobald ich die Versorgungsspannung anlege werden die 4 ID’s mit Daten empfangen und 3 Sekunden später trennt sich die Verbindung das Board hängt sich auf.
Nach Reset immer das gleiche.
Hast Du da eine Lösung?
Ist es Hardware oder Software seitig?
Vielen Dank und Grüße
Daniel
Hallo Daniel,
vielen Dank für dein Feedback. Ich vermute hier eher ein hardwareseitiges Problem, kann es aber ohne weitere Infos nicht genau sagen.
Ist der Mikrocontroller nach dem Absturz noch als COM-Gerät im Gerätemanager gelistet, oder wird er komplett abgemeldet?
Wenn du Zeit hast, dann sende mir bitte mal ein paar Screenshots vom Programmzustand nach dem Abmelden, und eine Liste deiner verwendeten Hardwarekomponenten (inkl. BMS) per Mail an info@langer-sebastian.de, dann könnte ich dir eine Debug-Version erstellen, welche dir mehr Statusinformationen hinsichtlich der Controllerverbindung zur Verfügung stellt.
Viele Grüße
Sebastian
Hallo Sebastian, erst mal besten Dank für diesen SLSS_CANAlyser_(1.0.2.0)
Ich habe gemäß readme-Datei MPC_lib-master mit Arduino IDE Sketch/Bibliothek einbinden und .Zip-Bibliothek hinzufügen installiert.
SLSS-CANAnalyser-V_1.0.2.0 konnte ich nicht via Arduino IDE installieren sondern das .Zipfile im Ordner Dokumente/Arduino/Libraries entpackt.
Dort in \Documents\Arduino\libraries\SLSS-CANAnalyser-V_1.0.2.0\SLSS CANAnalyser V1.0.2.0 µC Code\SLSS_CanAnalyser_8MHz
die Datei SLSS_CanAnalyser_8MHz.ino per Doppelklick gestartet. Danach öffnet sich IDE und der Überprüfungslauf ergibt keine Fehler. Hingegen beim Hochladen erscheint dann folgende Fehlermeldung:
„Ungültige Bibliothek \Documents\Arduino\libraries\SLSS-CANAnalyser-V_1.0.2.0 in keine Header-Dateien (.h) in \Documents\Arduino\libraries\SLSS-CANAnalyser-V_1.0.2.0 gefunden gefunden“
Das SLSS CANAnalyser V1.0.2.0 Win-Setup funktioniert offenbar, es wird der com5 gefunden, aber die Hardware nicht erkannt, die Verdrahtung nach vorgegebenem Plan mehrfach überprüft.
Die Hardware sind je 2 Arduino NanoV2 und 2 MPC_2515 durch CANH und CANL verbunden plus jeweils LED auf D7.
Was würdes Du im nächsten Schritt tun?
Vielen Dank im Voraus fürs Durchlesen
Liebe Grüße Markus
Hallo Markus,
ich denke das Problem liegt an der Arduino IDE. Ich habe dir dazu eine Mail geschrieben, wie man den µC-Code auf den Arduino flashen sollte.
Viele Grüße
Sebastian
Hallo Sebastian,
ich setze schon 2 CAN-Bus Tester ein, habe aber mit großem Interesse dein Projekt verfolgt und habe mir die entsprechende Hardware besorgt. Ich benutze dein Projekt SLSS CANAnalyser (Update 1.1.0.14 – 01/2023).
Ich konnte über den ComPort eine Verbindung herstellen.
INFO: SLSS CanAnalyser Programmstart abgeschlossen!
INFO: Suche Hardware an COM4…
– Gerät CAN-Device-001 @0125kbit/s an COM4 gefunden!
– Verbindung erfolgreich hergestellt…
Jedoch werden keine CANopen-Teilnehmer gefunden. Ich kann auch keine Telegramme lesen (empfangen).
Auf dem MCP2515 CAN Bus Shield flackert die rote Rx LED.
Kannst du mir einen Tipp geben?
Viele Grüße
Thomas
Hallo Sebastian,
ich habe meinen Fehler gefunden.
Mein ARD SHD CAN V2 Arduino Shield – CAN-BUS v2, MCP2515 / MCP2551
hat auf der Rückseite eine Verbindung CS_CAN mit pad 9. Diese Verbindung musste ich auftrennen und pad 10 mit dem mittleren pad verbinden. Jetzt empfange ich Daten.
Hallo Thomas,
Super das es funktioniert! Bei dem Pin handelt es sich um den Chip-Select Pin für die genutzte SPI Schnittstelle. Dieser wird im Code mittels des Befehls
MCP_CAN CAN0(10);
auf Pin 10 festgelegt. Wenn du die 10 gegen die 9 tauschst, dann sollte das auch ohne Hardwaremodifikation funktionieren. Vielleicht erspart dir das beim nächstem Mal die Arbeit an der Platine. Viel Spaß beim Testen…Viele Grüße
Sebastian