Weihnachten! Endlich ein bisschen Zeit...

Nachdem dieses Semester nun endlich zu Ende gegangen ist habe ich in den nächsten Tagen hoffentlich Zeit, mich mit meinem Projekt für die Diplomarbeit zu beschäftigen. Ein Bericht muss noch abgegeben und eine Präsentation gehalten werden aber dann sollte etwas Luft sein. Ich möchte kurz vorstellen, was ich eigentlich gerade entwickle:

Das Projekt heißt Kayak und soll ein CAN-Diagnosetool für die Linux SocketCAN-Implementierung werden. Es dient dem Senden und Empfangen von Frames auf einem CAN-Bus und zur grafischen Darstellung und Auswertung selbiger. Im Gegensatz zu den meisten aktuellen Produkten, die diesen Zweck erfüllen, findet die Kommunikation jedoch über einen TCP/IP-Socket statt. Dies hat den Charme, dass man keine direkte Verbindung zum zu beobachtenden Bus mehr benötigt. Ein Laptop kann also die Busdaten in einem Raum aufnehmen, während mehrere Benutzer live von unterschiedlichen Orten die Daten auf dem Bus verfolgen (und verändern) können.

Zu diesem Zweck müssen zwei unterschiedliche Programme entwickelt werden. Der socketcand ist eine Weiterentwicklung des Socket CAN BCM-Servers und stellt einen Socket für die auf einer Maschine vorhandenen SocketCAN-Busse zur Verfügung. Er ist in C geschrieben und sollte unter Linux auf den gängigen Architekturen compilieren. Auf der Anderen Seite steht mit Kayak eine Java-Anwendung, die über TCP/IP Verbindung mit dem socketcand aufbaut.  Der Vorteil einer Java-Implementierung liegt darin, dass auf der Anwendungsseite keine Anforderungen an das Betriebssystem gestellt werden. Als Basis wird Eclipse RCP verwendet, was eine schnelle Entwicklung einer hochwertigen GUI ermöglichen sollte.

Nachdem ich bereits einige Teile des socketcand implementiert und mich mit der Materie vertraut gemacht habe werden die nächsten Schritte sein, einige Diagramme zu zeichnen, sowie ein grundlegendes GUI-Konzept zu designen. Ein paar Bilder wird es dann auch hier zu sehen geben. Außerdem werde ich mir wohl eine RCP-Buch kaufen müssen, da sich das Thema scheinbar leider nicht mit ein paar Tutorials erschlagen lässt. Den Februar kann ich dann auf Arbeit richtig nutzen, um das Projekt voran zu treiben und hoffentlich danach einen ersten funktionierenden Prototypen in der Hand zu halten.