EventCore

Eine datenschutzbewusste Event-Tracking-Plattform für Standorte, Gerätezustände und Feldbetrieb.

Rolle: Alleiniger Entwickler (laufendes Experiment) Jahr: 2025 Bereich: IoT · LoRaWAN · Rust · Offline-fähig · Privatsphäre · Landwirtschaft Zum laufenden System ↗

Problem

Viele Tracking- und Monitoring-Systeme setzen voraus, dass Cloud-Konnektivität immer verfügbar und immer akzeptabel ist. Diese Annahme passt nicht zu jeder Umgebung.

Auf Höfen, Weinbergen, Forststücken, abgelegenen Lagerplätzen und privaten Industrieanlagen kann der Mobilfunk schwach oder unbeständig sein. In anderen Fällen ist nicht die Konnektivität das Problem, sondern die Datenhoheit: Der Betreiber möchte unter Umständen, dass Bewegungsdaten, Sensorwerte oder Betriebsaufzeichnungen vor Ort bleiben.

Ich wollte ein System erkunden, das in beiden Welten funktioniert: an ein gehostetes Backend angebunden, wenn das sinnvoll ist, oder vollständig auf lokaler Infrastruktur, wenn Datenschutz, Zuverlässigkeit oder Unabhängigkeit wichtiger sind.

Ergebnis

  • Ein funktionierender, event-basierter Tracking-Prototyp, der GPS-Positionen von LoRaWAN-Nodes aufnimmt und den aktuellen Zustand jedes Geräts darstellt.
  • Eine Backend-Architektur, die wahlweise in der Cloud oder vollständig vor Ort laufen kann, je nach Anforderungen an Datenschutz, Konnektivität und Betrieb.
  • Ein flexibles Event-Modell, das Standort-Updates, Sensordaten, Gerätezustände, Scan-Ereignisse, Alarme und kleine Fernbefehle abbilden kann.
  • Eine validierte Richtung für datenschutzbewusste IoT-Installationen in Landwirtschaft, Forstwirtschaft, Asset-Tracking und privaten Industrieanlagen.
  • Praxis-Validierung, wo LoRaWAN eine starke Wahl ist, wo andere Übertragungswege wie 4G oder WLAN besser passen, und wie EventCore gemischte Kommunikationsschichten unter einem gemeinsamen Backend unterstützen kann.

Technologie

Rust (event-sourced Backend, läuft eigenständig auf einem kleinen Server) · LoRaWAN über ChirpStack (MQTT) · LoRa P2P (direkt seriell) · PostgreSQL (append-only Eventlog) · Heltec-LoRa-Nodes (GPS-Tracker, Stick, E-Paper-Display)

Was EventCore ist

EventCore ist ein event-basiertes Backend, um Dinge, Zustände und Standorte zu verfolgen.

Der Name ist bewusst gewählt. Das System ist nicht nur GPS. Ein Gerät kann viele Arten von Ereignissen senden: eine Position hat sich verändert, ein Tag wurde gescannt, eine Temperaturschwelle wurde überschritten, ein Tor wurde geöffnet, eine Maschine hat ihren Zustand gewechselt oder ein Akku ist schwach geworden. EventCore nimmt diese Ereignisse auf, speichert sie zuverlässig und projiziert sie in die Live-Ansicht, die der Betreiber braucht.

Diese Live-Ansicht wird pro Installation zugeschnitten. Für einen Kunden kann das Asset-Standorte auf einer Hofkarte bedeuten. Für einen anderen Maschinenstatus, NFC-Scan-Verlauf, Lieferpunkte oder Sensoralarme. Die Plattform definiert das Event-Rückgrat, der Geschäftsfall definiert, was diese Ereignisse bedeuten.

Die Kommunikationsschicht ist genauso flexibel. Der aktuelle Prototyp nutzt LoRa und LoRaWAN, weil diese gut zu energiearmen, weiträumigen Umgebungen passen. Aber dasselbe Backend kann Ereignisse von 4G-Geräten, WLAN-Sensoren, kabelgebundenen Systemen oder einer gemischten Installation entgegennehmen. EventCore ist die Betriebsschicht über dem Übertragungsweg.

Das System kann in der Cloud laufen, auf einem normalen gehosteten Server oder vollständig vor Ort mit dem eigenen Gateway und Backend des Betreibers. Das ist besonders relevant für datenschutzbewusste Installationen in Deutschland und Europa, wo die lokale Speicherung von Betriebsdaten eher ein Vorteil als eine Einschränkung ist.

Warum Rust hier passt

Rust leistet hier echte Arbeit, ist nicht nur Stilfrage. Ein Event-basiertes Backend muss zuverlässig aufnehmen, niemals ein Ereignis verlieren und auch unter Last den Zustand korrekt projizieren, manchmal auf einer kleinen Maschine vor Ort neben dem Gateway, ohne dass jemand danebensteht.

Rust liefert Speichersicherheit ohne Garbage Collector, vorhersehbare Performance unter dauerhafter Aufnahmelast und ein einziges statisches Binary, das man auf einen kleinen Server abwirft, ohne im Hintergrund noch eine Runtime pflegen zu müssen. Das Typsystem passt auch zu der Art, wie das System denkt: Events sind unveränderlich, Zustand wird aus ihnen abgeleitet, und genau die Invarianten, auf die es ankommt (jedes Event wird vor der Projektion protokolliert, kein Event wird stillschweigend verworfen, keine Projektion wird aus Teildaten gebaut), sind die Sorte, die Rust schwer zu brechen macht. Sprache und Architektur erzählen dieselbe Geschichte in zwei Vokabularien.

Es ist auch der Grund, warum ich mich wohlfühle, dieses Backend bei einem echten Kunden in Betrieb zu nehmen. Ein langlaufendes, event-sourced System auf jemandes Hof oder Betrieb muss monatelang zuverlässig aufnehmen, ohne dass jemand zuschaut. Rust hebt meinen Boden dafür, wie das aussieht.

Prototyp-Validierung

Der aktuelle Prototyp nimmt GPS-Positionen von Heltec-LoRa-Nodes über ChirpStack auf und projiziert sie in eine Live-Betriebsansicht. Jede eingehende Nachricht wird als Event behandelt, in einem reinen Anhang-Log gespeichert und anschließend in den aktuellen Zustand des jeweiligen Geräts überführt.

Damit ist die zentrale Idee hinter EventCore validiert: Das System ist nicht auf Standortverfolgung beschränkt. Ein Positions-Update, ein NFC-Scan, ein Sensorwert, ein Tastendruck, eine Akkuwarnung, ein Türzustand oder die Bestätigung eines Befehls können alle durch dieselbe Event-Pipeline laufen.

Der Prototyp unterstützt auch die Gegenrichtung: Kleine Befehle können an einen Node zurückgeschickt werden, etwa um ein E-Paper-Display zu aktualisieren, einen Gerätezustand zu ändern oder eine lokale Aktion im Feld auszulösen. Das System ist damit mehr als ein passiver Tracker. Es wird zu einer leichtgewichtigen Befehls- und Zustandsebene für verteilte Geräte.

Erste Reichweitentests mit Prototyp-Hardware haben gezeigt, dass LoRa-Kommunikation deutlich über kurze Innen-Distanzen hinaus nutzbar bleibt, besonders dann, wenn die Einsatzumgebung offen ist und die Position des Gateways sorgfältig gewählt wird. Das liefert eine belastbare Grundlage für Anwendungsfälle auf offenem Land, Höfen, Weinbergen, Forststücken, Privatgelände und anderen Standorten, an denen Mobilfunk schwach, teuer oder schlicht unerwünscht ist.

Die wichtige Lektion ist, dass EventCore nicht als “Echtzeit-GPS-Tracking im Handy-Stil” verkauft werden sollte. Das ist nicht das Ziel. Es ist für langlaufende, energiesparende, event-basierte Überwachung gebaut, bei der der geschäftliche Wert daraus entsteht zu wissen, dass etwas passiert ist, wo es passiert ist und welcher aktuelle Zustand vorliegt.

Für reale Installationen hängt die richtige Kommunikationsschicht vom Standort ab. LoRaWAN kann für weiträumige, energiearme Abdeckung passen. 4G oder WLAN können für höhere Aktualisierungsraten oder reichhaltigere Daten besser sein. Kabelgebundene oder lokale Sensoren können im Inneren eines Gebäudes oder bei einer festen Installation sinnvoll sein. EventCore ist so entworfen, dass diese Wahl die Kernarchitektur des Systems nicht verändert.

Das ist das wesentliche Ergebnis des Prototyps: Der Wert liegt nicht in einer einzelnen Funktechnologie, sondern in dem event-basierten Backend, das verschiedene Geräte, Netze und Geschäftsregeln in einer gemeinsamen Betriebsansicht zusammenführen kann.

Wohin das wachsen kann

Es gibt noch keinen einzelnen Abnehmer für EventCore, und ich gehe bewusst mit der Richtung um. Die Anwendungsfälle, zu denen ich immer wieder zurückkomme, sind die, in denen die Geografie offen ist, das Netz dünn und Privatsphäre strukturell statt optional ist:

  • Landwirtschaft. Wissen, wo Tiere, Maschinen oder Sensorstationen auf einem aktiven Hof sind.
  • Weinbau und Forstwirtschaft. Lange schmale Parzellen, dichtes Blätterdach, und die Möglichkeit, die Daten standardmäßig vor Ort zu behalten.
  • Asset-Tracking auf Privatgelände. Bauhöfe, Mietfuhrparks, überall dort, wo eine ruhige, lokale Quelle der Wahrheit gewünscht ist.

Wenn Sie ein Problem haben, das in eine dieser Formen passt, ist das die Art von System, zu der EventCore werden soll. Ich entwickle es lieber gemeinsam mit einem konkreten Anwendungsfall weiter, als es im Labor zu erraten. Melden Sie sich.