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
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.
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.
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.
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.
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.
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.
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.
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.