Forum: Mikrocontroller und Digitale Elektronik Reverse Engineering -> CAN-to-USB Interface


von Spatorna (Gast)


Lesenswert?

Guten Tag,


ich habe ein CAN-to-USB Interface, das ich softwareseitig rekonstruieren 
möchte.
Wie wird Gerät X angesprochen, wann und wie wird mit der PC-seitigen 
Software kommuniziert etc.

Kennt sich jemand damit aus und lässt sich das ohne große 
Programmierkenntnisse bewerkstelligen?


Vielen Dank

von Stefan F. (Gast)


Lesenswert?

Spatorna schrieb:
> Wie wird Gerät X angesprochen, wann und wie wird mit der PC-seitigen
> Software kommuniziert etc.

Das kommt auf den Programmcode an, mit dem dein Adapter arbeitet.

> lässt sich das ohne große Programmierkenntnisse bewerkstelligen?

Kommt drauf an, wie detailliert du es analysieren willst. Vielleicht 
genügt Dir die die Dokumentation zu dem Gerät, vielleicht willst du Dir 
seinen Quelltext anschauen. Den musst du aber erstmal haben.

von Keinplanonymous (Gast)


Lesenswert?

Spatorna schrieb:
> ich habe ein CAN-to-USB Interface, das ich softwareseitig rekonstruieren
> möchte.

Da schaut man als allererstes mal, ob das Gerät auch mit offener oder 
sogar freier Software funktioniert. Sinnigerweise sucht man nicht nur 
via Google, sondern auch auf GitHub, GitLab, etc.

Die USB-Vendor- und -Product-ID können weitere Hinweise geben.

Spatorna schrieb:
> Wie wird Gerät X angesprochen, wann und wie wird mit der PC-seitigen
> Software kommuniziert etc.

Wie das Gerät X angesprochen wird, kannst du auch auf dem CAN-Bus 
mitlesen.

USB wäre nochmal eine Protokollschicht drumherum, die du auch erst noch 
verstehen müsstest.
Ich bin da Windows-Doofie, also würde ich die fragliche Software in 
einer VM betreiben und dann auf dem Host-System über meine vertrauten 
Tools sniffen.

Was aber willst du denn nun? Das Gerät oder das CAN-Interface verstehen?

> Kennt sich jemand damit aus und lässt sich das ohne große
> Programmierkenntnisse bewerkstelligen?

Nö, die Antworten würfeln wir hier aus und Beleidigungen werden von der 
Foren-AI auomatisch eingefügt.

Programmierkenntnisse sind erforderlich, ob die "groß" sind, hängt vom 
Betrachter ab. Für dich wahrscheinlich eher groß, sonst hättest du 
andere Fragen gestellt.

von Spatorna (Gast)


Lesenswert?

Danke für die Antworten

Die Intention war, den software-seitigen Teil des Gerätes 
sicherzustellen, um ihn gegebenenfalls in einem neuen Gerät zu 
implementieren.

Offensichtlich reicht es nicht, sich 3-4 Stunden in die Materie 
einzulesen, geschweige denn ist es mit zwei Copy&Paste Klicks getan.
Gibt es denn Linux oder Windows Software, die in der Lage ist 
CAN-Interfaces zu analysieren?

Ansonsten muss ich es mal an der hiesigen Uni oder Fh probieren. Im 
entsprechenden Fachbereich lässt sich sicher jemand finden.

von Stefan F. (Gast)


Lesenswert?

Das hängt alles vom konkreten Produkt ab. Es gibt keine allgemeingültige 
Antwort.

Die von dir gewünschte Sicherheit erreicht man in der Regel, indem man 
die Anforderungen, Testfälle, Baupläne und Quelltexte schon während 
ihrer Entwicklyng sorgfältig Dokumentiert und archiviert.

Reverse Engineering ist immer um ein vielfachrs Aufwändiger, als eine 
Neuentwicklung.

Schau dir mal die zahlreichen Diskussionen hier und woanders vom 
'Bastler' an. Der versucht seit Monaten, die Firmware eines Lime Rollers 
zu reverse engineeren um ein Tempolimit zu ändern. Da wurde in 
unendlicher breite dargelegt, was daran so schwer ist.

von Scyte (Gast)


Lesenswert?

Wenn das Linux compatibel ist: Linux hat ein Kernel Ca Interface. Wenn 
der Stick/Wandler einen Treiber dafür hat kannst du gegen das 
Standarditerface entwickeln.

von NichtWichtig (Gast)


Lesenswert?

Spatorna schrieb:
> Danke für die Antworten
>
> Die Intention war, den software-seitigen Teil des Gerätes
> sicherzustellen, um ihn gegebenenfalls in einem neuen Gerät zu
> implementieren.
>
> Offensichtlich reicht es nicht, sich 3-4 Stunden in die Materie
> einzulesen, geschweige denn ist es mit zwei Copy&Paste Klicks getan.
> Gibt es denn Linux oder Windows Software, die in der Lage ist
> CAN-Interfaces zu analysieren?
>
> Ansonsten muss ich es mal an der hiesigen Uni oder Fh probieren. Im
> entsprechenden Fachbereich lässt sich sicher jemand finden.

Warum sollte es solwas geben?

Der normale Benutzer erwartet von dem Gerät das es auf beiden Seiten 
seine Dienste entsprechend der Anforderungen erfüllt.
Ob das nun mit einem Infinion- oder Atmel- oder sonstigen µC intern 
realisiert wurde ist dem Anwender völlig schnuppe.

Und die Hersteller werden es zu verhindern wissen das jeder 
WaldUndWiesenStudent deren Firmware auslesen und clonen kann.

Ohne fundierte Hardwarekenntnis läßt sich keine zuverlässige Software 
dafür entwicken.

USB-CAN Interface ist ein Werkzeug was man ersetzt wenn es stumpf 
geworden ist, kaufen mit Garantie das es tut was auf der Packung steht.
Nix ist schlimmer als unzuverlässige Gerätschaften.

von User2 (Gast)


Lesenswert?

Wie wird dir das Gerät den im Gerätemanager angezeigt?
Was werden für Treiber für das Gerät installiert?
Gibt es ggf. schon Treiber von Hersteller, welche du "nur" in deine 
Software einbinden kannst?

Wenn man sich z.B. den Ixxat CAN-to-USB Umwandler ansieht, dann wird man 
da nur sehr schwer an deren Treibern vorbeikommen. Finde ich aber nicht 
schlimm, da sie ja recht gut dokumentierte Treiber anbieten.

Ich kenne aber auch andere Geräte, wo der Wandler einfach als RS232 
Schnittstelle unter Windows auftaucht. Wenn man dann etwas in den 
Untiefen des Handbuchs wühlt, findet man auch die Befehle für diese 
Schnittstelle.
Dein Programm muss dann also einfach nur auf diese Schnittstelle 
schreiben und von ihr lesen können.

Die Antwort auf deine unpräzise Frage lautet also: Muss nicht, kann aber 
gehen. Mehr Information wären sehr sinnvoll.

von MaWin (Gast)


Lesenswert?

Scyte schrieb:
> Wenn das Linux compatibel ist: Linux hat ein Kernel Ca Interface.
> Wenn der Stick/Wandler einen Treiber dafür hat kannst du gegen das
> Standarditerface entwickeln.

Spatoma kann nicht entwickeln

Spatorna schrieb:
> ohne große Programmierkenntnisse

sondern möchte nur haben

Spatorna schrieb:
> um ihn gegebenenfalls in einem neuen Gerät zu implementieren.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.