Hallo zusammen,
es existiert ein 'Haupt-Thread' (RE: Meldegleis zur Identifikation, ohne Verdrahtung und Schienentrennung), sowie einer für die Entwicklung (RE: Bau- und Entwicklungs-Thread: Drahtlose Identifikation) bereits.
Jetzt möchte ich den Thread für die Software starten, die zum Projekt gehört. Die Grundlage ist RE: Meldegleis zur Identifikation, ohne Verdrahtung und Schienentrennung und wer hier liest, sollte den 1. Artikel dort gelesen haben. Fragen zu den Grundlagen gehören ebenfalls dorthin.
Die Elektronik ist entwickelt und beinhaltet den RFID Reader, sowie 4 konventionelle Melder, die auf kurze Distanz verlegt werden können, oder ignoriert.
Die Elektronik versendet ihre Daten per Bluetooth BLE und bezieht ihre Energie aus dem Gleis oder separater Spannungsversorgung.
Das Gegenstück ist ein Raspberry PI 4 und nur der. Um dessen Software dreht es sich hier, sowie um Software-Fragen um die Empfänger der Daten, welche vom Raspberry erzeugt werden.
Diese Daten sind primär Besetztmeldungen.
Weiterhin kann er Identifikationen abgeben, auch wenn hierfür heute nur bei RocRail gewisse Grundlagen existieren.
Stand heute ist, dass die Software des Raspberry auf der Grundlage von C++ eine Bibliothek einsetzt, die ich vor sehr kurzem gefunden habe und die einen Ansatz hat, der besser ist, als mein letzter Kandidat und viel besser als NOBLE/BLENO.
Zu der Bibliothek (direct-bt) gibt es vor allem auch eine darauf aufsetzende Java Bibliothek.
Das ist der attraktivste Punkt.
Das Projekt konkurriert sozusagen mit dem TinyB von Intel.
TinyB wurde aber seit geraumer Zeit nicht weiterentwickelt, während direct-bt immerhin 2020 in die Öffentlichkeit gelangte und seit kurzem als komplett bezeichnet wird.
Der Autor lebt in Bremerhaven, was zusätzlich attraktiver ist, als Intel.
Nun, wie weit bin ich:
Der Raspberry startet Eclipse und ein Testprogramm und dieses nimmt den Bluetooth Adapter über direct-bt in Betrieb. Klingt nach nichts, aber das bedeutet, dass ich mit meiner Java Entwicklungsumgebung Eclipse arbeite, also volles Quellcode-Debugging auf dem Raspberry machen kann. Ein absolutes Muss.
Die umfangreiche direct-bt ist bereits komplett von mir kompiliert und eingebunden und kommt an die Hardware heran. Also die Zwischenschicht Java Native Interface JNI ist enthalten. Wer das kennt, ahnt was das bereits für ein Aufwand war.
JavaFx ist auch bereits installiert und die Persistenz per Bibliothek 'MicroStream' ebenfalls.
Die entstehende Software werde ich an potente Projektteilnehmer weiter zur Verfügung stellen, werde aber keinerlei Portierungen unterstützen können. An geeigneten Stellen des Systems werde ich Schnittstellen einziehen, die universell sind, ich denke an Pipes, interne Ports und Protokolle darüber.
Also, wer bis jetzt folgen konnte, ist hier richtig. Es wird hier durchaus theoretisch, aus Sicht von Software-Entwicklern praktisch!
Viele Grüße,
Joachim