Der Kern der Lösung ist die Software. Die Software selbst ist in C geschrieben und verwendet einige UNIX spezifische Funktionen wie z.B. select(), ... Die Software kann deshalb leicht auf jedes UNIX System wir z.B. Linux portiert werden. Damit kann die Software auch auf anderen Systemen wie z.B. einem RPi eingesetzt werden. Für die eigentliche Funktionalität muß lediglich ein CAN und ein Ethernet Interface vorhanden sein.
Für den BBB und den BPi wurden Images mit einer kompletten Linux
Distribution erstellt. Das Linux erhält seine IP Adresse per DHCP. Um auf
das System zugreifen, zu können, sind als Server telnet
,
ssh
, ftp
, http (Apache)
, Samba
(Windows Dateifreigabe)
und X11 mit xdm
eingerichtet. Das
System antwortet auch auf einen Broadcast eines X11 choosers
. Als
Clients sind PuTTY (telnet, ssh)
und ftp
eingerichtet. Als zusätzlicher User ohne root-Rechte wurde
developer eingerichtet.
User | Beaglebone Black | Banana Pi |
---|---|---|
root | beaglebone | bananapi |
developer | beaglebone | bananapi |
Das System wurde erfolgreich mit einigen Programmen getestet, die eine Master CS2 steuern. Da die Software versucht, sich möglichst ähnlich zu einer realen CS2 zu verhalten, sollten die meisten Programme, die eine CS2 steuern, mit dieser Lösung funktionieren. Da in der Märklin Doku nicht immer sämtliche Details korrekt beschrieben sind bzw. sich die Märklin Geräte nicht immer zu 100% an die eigene Doku halten, kann es dennoch sein, daß nicht jede Software funktioniert. Folgende Software wurde erfolgreich auf Kompatibilität der Schnittstelle getestet: