BesitzerInnen eines Roborock Staubsaugerroboters ist der Name FloleVac möglicherweise ein Begriff. Die App, vorgesehen für die Nutzung auf Smartphones wie Tablets mit Android-Betriebssystem, repräsentiert eine mehr als ebenbürtige Alternative zur herstellerpräferierten Xiaomi-Home Anwendung. Mit ihrer Hilfe können Rockrobos Roboter der S- und Mi-Serie benutzerfreundlich gesteuert werden. Hinter dem Projekt steht der Weyhener Software-Entwickler Florian Lentz. Im Interview gibt der enthusiastische Hobbyist Auskunft über Entstehung, Reifungsprozess und Zielorientierung seines Projektes.
Inhaltsverzeichnis
Ein Mann, eine App
Hinter der Idee, dem Konzept und der fertigen Anwendung steht der kreative Software-Entwickler Flole, der im folgenden Interview seine Beweggründe erläutert, welche ihn zum Programmieren einer eigenen Anwendung führten sowie ferner den eigentlichen Prozess vom Start bis zur heutigen FloleVac in Version 1.2233-gpe näher beleuchtet.
Wann beschäftigtest du dich erstmalig mit dem Thema Staubsaugerroboter?
Generell hatte ich die Idee, mir einen Staubsaugerroboter zu kaufen, schon länger. Insbesondere war mir eine WLAN-Verbindung sehr wichtig. Zunächst hatte ich über einen Hombot von LG nachgedacht. Dann kündigte sich aber der Xiaomi Mi Vacuum Robot, auch Xiaomi Gen 1 genannt, an und die Wahl war eigentlich klar.
In welchem Jahr kauftest du dir dein erstes Gerät?
Das war im Jahr 2016. Die Entwicklung von FloleVac begann tatsächlich bereits vor Eintreffen meines Geräts. Zunächst waren es ein paar simple Tests mit der Verbindung, um die Kommunikation ans Laufen zu bringen. Dabei half mir jemand aus dem Roboter-Forum sehr, indem er schlicht immer wieder meine Test-Apps ausprobierte und mögliche Fehler rückmeldete. Relativ schnell war eine erste Anwendung fertig, die funktionierte.
Wie kam es dazu, dass du eine eigene App entwickeltest?
Das mit der eigenen App hat sich eigentlich so ergeben. Eigentlich war es ursprünglich als Proof-Of-Concept gedacht, also einfach nur, um zu zeigen, wie bzw. das es grundsätzlich möglich ist. Damals gab es noch keine anderen Optionen, um mit dem Roboter zu kommunizieren und ich war, soweit ich weiß, der erste, der das ganze geschafft hat. Nach dem erfolgreichen Startschuss erweiterte ich die App Schritt für Schritt um neue Funktionen, die sich die Nutzergemeinde wünschte. So wurde der Entwicklungsprozess maßgeblich auch durch die Community mitgesteuert und ich in der Rolle des Programmierers reagierte häufig nur auf das Feedback der NutzerInnen meiner App und versuchte, die Wünsche in der FloleVac zu integrieren. Am Anfang war mir Feedback noch nicht so wichtig. Da sollte natürlich erstmal der Funktionsumfang der offiziellen App erreicht werden und es gab auch noch nicht so viele NutzerInnen, die Feedback geben konnten. Das Timing stimmte.
Hast du dich beruflich bereits mit dem Thema Software-Entwicklung auseinandergesetzt?
Ja, das habe ich, hauptsächlich im Bereich Gebäudesteuerung bzw. Automatisierung (Smart Home, IoT). Aber auch einige kleine Tools für Firmen habe ich bereits erfolgreich umgesetzt.
Prozess der App-Entwicklung
Welche anfänglichen Schwierigkeiten bereitete dir dein Projekt?
Im Prinzip gestaltete sich der Entwicklungsprozess zu Beginn des Projektes noch relativ einfach. Natürlich gab es anfänglich noch viele Probleme, die erst einmal gelöst werden mussten. Aber meistens waren dies Kleinigkeiten, die sich schnell und unkompliziert lösen ließen. Eine Herausforderung stellte tatsächlich die Schaffung der Benutzeroberfläche dar. Genau hier zeigte sich meine Schwäche im Bereich der Programmierung. Rückblickend unter heutigen Gesichtspunkten habe ich jedoch das Gefühl, dass mir das jetzige Layout gelungen ist.
Wie setztest du die Prioritäten bei der App-Entwicklung?
Insbesondere am Anfang war dies etwas schwierig, da war ja nichts und es gab eine riesige To-Do-Liste. Relativ schnell merkte ich im Vorantreiben des Entwicklungsprozesses, dass es bestimmte Abhängigkeiten gibt. Zum Beispiel macht es keinen Sinn, die Kartenhistorie mit Reinigungskarten vergangener Einsätze abzurufen, wenn weder Timer noch Start-Schaltfläche in der App realisiert wurden. Also setzte ich die Implementierung der Kartenhistorie hinter die Umsetzung des Timers, diesen nach Realisierung der entsprechenden Start-Schaltfläche. Letztere ist wiederum abhängig von dem aktuellen Status, also muss zuerst mal der Status ausgelesen werden usw. Irgendwann erreicht man dann den Punkt, an dem es nach Zeitaufwand für die Umsetzung geht. Kann eine Funktion schnell in die App integriert werden, sodass diese zeitnah zur Verfügung steht oder bedarf es eines großen Zeitaufwands, da viele kleine Faktoren eher aufhalten. Sehr vernachlässigt habe ich zugegebenermaßen die Webseite, die ist eigentlich nur vorhanden, um den Downloadlink zu präsentieren. Die Screenshots sind unlängst veraltet und die Funktionsliste ist alles andere als vollständig. Auch den Beitrag im Roboter-Forum, mit dem alles anfing, wollte ich vor Ewigkeiten längst überarbeiten. Diese Tätigkeiten sind aber eher im Bereich Nutzergewinnung einzuordnen und daher meiner Meinung nach eher zweitrangig, denn die bestehenden Nutzer sollen ja zuerst zufrieden gestellt sein. Ansonsten macht es meiner Meinung nach wenig Sinn, neue Nutzer zu gewinnen.
Wie viele Stunden Arbeit stecken ungefähr in FloleVac?
Diese Frage ist äußerst schwer zu beantworten, da die tatsächliche Anzahl an Arbeitsstunden nur schwer abzuschätzen ist. Ich würde davon ausgehen, dass zwischen 1500 und 2000 Stunden, also etwa 70 Arbeitstage à 8 Arbeitstunden bzw. ca. 2,5 Monate meiner Lebenszeit in diesem Projekt stecken. Das ist aber nur ein reiner Schätzwert, der sowohl nach oben als auch nach unten erheblich von den genannten Zahlen abweichen kann. Bei zukünftigen Projekten werde ich definitiv versuchen, die Zeit zu erfassen, um das etwas im Blick zu haben und einen Eindruck davon zu gewinnen, wie viel Zeit das Vorhaben tatsächlich beansprucht.
Welche Ziele setztest du dir über die ca. 2,5 bis 3 Jahre hinweg in Bezug auf FloleVac?
Über die Entwicklungszeit hinweg war es immer mein Ziel, jedem Nutzer die bestmögliche Nutzererfahrung zu bieten und auf jeden einzugehen, sodass jeder, der FloleVac nutzen möchte, dies auch tatsächlich tun kann und immer einen Ansprechpartner hat, falls es Probleme gibt. Glücklicherweise konnte ich diesem Ziel bislang immer gerecht werden. Hierzu beigetragen hat sicher, dass die Support-Funktion zu keinem Zeitpunkt übertrieben häufig genutzt wurde und viele der geschilderten Schwierigkeiten auf Verbindungsprobleme zurück zu führen waren, für die mittlerweile eine Standardantwort vorbereitet habe. Dass der Prozess der Entwicklung einer eigenen App zu solch einem Ergebnis führen würde, hätte ich am Anfang niemals erwartet. Selbstredend freut es mich, dass FloleVac mittlerweile auf über 30000 Geräten installiert ist. So jedenfalls lassen sich die seitens Google zur Verfügung gestellten Zahlen interpretieren, die nur Installationen über den Playstore beinhalten. Direkte Installationen der APK sind hier noch gar nicht inbegriffen.
Namensgebung und künftige Ziele
Wie kam es zur Namensänderung der App?
Die Namensänderung hatte mehrere Gründe. Zu Beginn hieß die App “Flole Xiaomi Remote Control”. Der App-Titel wirkt aufgrund seiner Länge sehr sperrig. Da ich das Wort Xiaomi verwendete, musste ich eventuell auch mit einer Verletzung der Namensrechte des Konzerns rechnen. Definitiv wäre dies jedenfalls ein Verstoß gegen die Google-Play-Richtlinien für Entwickler gewesen. Als ich also “Flole Xiaomi Remote Control” über den Play -Store verfügbar machen wollte, musste ein neuer Name her. Eine Möglichkeit war “Flole’s Remote Control for Xiaomi”. Da der bisherige Name bereits vielen zu lang war und die App oftmals als “Flole App” bezeichnet wurde, ich dies jedoch als etwas lieblos empfand, dachte ich mir, eine neue Bezeichnung müsse her. Ich wählte einen Namen, der in etwa gleich lang ist und konnte so gleichzeitig auch das Problem mit dem Play-Store erfolgreich lösen. Kurze Zeit später war die FloleVac im Play-Store verfügbar und bislang jedenfalls gab es wie zu erwarten keine Probleme in Sachen Namensgebung.
Welche Beweggründe ließen dich an deinem Projekt weiter festhalten?
Es gab eigentlich nie den Plan, aufzuhören. Mittlerweile ist die App sehr weit entwickelt, es treten nur noch ganz selten Fehler im Betrieb auf. Dies schließe ich einerseits aus eigenen Tests, andererseits aus den wenigen Bugreports, die ich heute noch erhalte. Ehrlich gesagt wüsste ich nicht, was der App noch an Funktionen fehlt.
Wie sieht dein Kontakt zu Xiaomi bzw. Roborock heute aus?
Der Kontakt ist leider so gut wie nicht mehr vorhanden.
Gibt es aktuell neue Zielsetzungen hinsichtlich des Ausbaus deiner App?
Im Moment liegt der Fokus darauf, FloleVacWeb weiter auszubauen und zu integrieren sowie die aktuellste Firmware sichtbar für die NutzerInnen meiner App hervor zu heben, um das ganze etwas übersichtlicher zu gestalten.
Support und Finanzierung
Wie viele Supportanfragen erhältst du täglich?
Das kann sehr unterschiedlich ausfallen. Teilweise gibt es Tage, an denen gar nichts passiert und dann wiederum treffen ca. 10 Anfragen innerhalb von 24 Stunden ein. Am häufigsten werde ich wegen Verbindungsproblemen kontaktiert. Vielen scheint gar nicht klar zu sein, warum FloleVac nicht immer funktioniert. Das Smartphone oder Tablet muss sich im selben WLAN-Netzwerk befinden, damit ein Zugriff auf den Roboter gelingt.
Auf welche Weise finanzierst du deine Arbeit?
Die Arbeit an FloleVac ist mittlerweile zu einem Hobby geworden. So wie einige eine Modelleisenbahn im Keller betreiben und sich für viele tausend Euro mit Fahrzeugen, Gebäuden und einer fast maßstabsgetreuen Landschaft austatten, um diese dann viele Stunden lang in Eigenarbeit zu erstellen, zu nutzen und zu pflegen, habe ich eben meinen Laptop mit dem FloleVac-Code darauf im Keller stehen und investiere viel Zeit in das eigentliche Programmieren der App.
Dachtest du je darüber nach, die App grundsätzlich kostenpflichtig zu gestalten und wenn ja, was hielt dich davon ab?
Grundsätzlich ist sowas natürlich möglich. Ich halte dieses Vorgehen jedoch nicht für wirklich zielführend, wenn man darin bestrebt ist, möglichst viele NutzerInnen zu erreichen bzw. zufrieden zu stellen. Um darüber nachzudenken, ist es aber ohnehin zu spät. Dies hätte ich vor dem Verfügbarmachen der App tun müssen. Google-Play gibt keinerlei Möglichkeit vor, die beim Einstellen der App getroffene Wahl, ob kostenpflichtig oder nicht, im Nachhinein rückgängig zu machen. Sobald FloleVac als kostenlos im Store geführt wurde, wurde die Entscheidung unumgänglich. Im Nachhinein besteht keine Möglichkeit, den Status zu ändern. Ich müsste die ganze App entfernen, umbenennen und erneut einstellen. Einen Plan für den Fall, dass Funktionen übermäßig genutzt werden und dass dies nicht mehr tragbar ist, gab es immer. Beispielweise bei exzessiver Nutzung der Support-Funktion oder Überlastung der Server durch vielfaches Herunterladen der Firmwares hätte ich regulierend einschreiten wollen und müssen, indem ich für die jeweilige Funktion eine kleine Gebühr erhoben hätte. Ein solches Vorgehen war aber bislang nicht nötig und auch für die nahe Zukunft erwarte ich nicht, dergleichen handeln zu müssen. Bei den Sprachpaketen ist eine finanzielle Aufwendung erforderlich, weil die Erzeugung der Dateien Kosten verursacht, sogenannte Lizenzgebühren. Zudem möchte ich sicher gehen, dass ich nicht mit geltendem Recht kollidiere und die Sprachpakete überhaupt auf diesem Weg anbieten darf.
Gab es bereits Angebote zum Erwerb deiner App?
Nein, die gab es bislang noch nicht und ich bin mir sicher, dass wird auch so bleiben. Ich kann mir nicht vorstellen, dass jemand eine App kaufen möchte, in die man nur Arbeit steckt, die aber nie etwas “abwirft”. Außerdem würde ich, falls es doch dazu kommen sollte, definitiv im “Kaufvertrag” festhalten, dass niemals Werbung in FloleVac integriert werden darf. Damit habe ich persönlich einfach ein Problem und möchte dies natürlich nicht in meinen Projekten realisiert sehen. Auch wenn ich nach dem Verkauf nicht mehr verantwortlich wäre, würde ich mich trotzdem gewissermaßen für die Nutzer verantwortlich fühlen.
Warum ist FloleVac so erfolgreich?
Ich denke, das hat mehrere Gründe. Zum einen ist FloleVac mit so ziemlich allen anderen Software-Lösungen zur Steuerung eines Roborock-Roboters (ausgenommen Valetudo) kompatibel. Egal ob Dustcloud, offizielle Cloud, FloleVacWeb oder vielleicht doch etwas ganz eigenes, FloleVac kommt damit klar. Schauen wir uns das jedoch im Detail an. Wenn man beispielsweise die Xiaomi-Home App mit Dustcloud oder Valetudo verwenden möchte, geht dies nicht. Mit meiner App ist die Nutzung von Dustcloud hingegen jederzeit umsetzbar. Ich biete den Nutzern also alle Möglichkeiten, auch wenn mir bislang kein Fall bekannt ist, der FloleVac tatsächlich im Zusammenspiel mit Dustcloud nutzte. Zum anderen ist FloleVac für den technischen Laien konzipiert. Weder ist es erforderlich, den Roboter zu rooten, noch benötigt der Endanwender irgendwelche speziellen Kenntnisse. Die Verwendung ist im Grunde sehr simpel: Nutzername und Passwort eingeben, Server auswählen und los gehts. Zu guter Letzt ist die Datensparsamkeit hinsichtlich der Erhebung personenbezogener Informationen, zu der wir alle ja spätestens seit Inkrafttreten der DSGVO aufgerufen sind, ein sehr wichtiger Punkt. Während Xiaomi es für erforderlich hält, unverhältnismäßig viele Berechtigungen für Apps wie Kalender, Anrufverlauf, Position des Gerätes etc. anzufragen, ist dies in FloleVac sehr viel sparsamer gehalten. Es wird einerseits eine Berechtigung für den Speicher benötigt, um den Import bzw. Export der Nutzerdaten zu gewährleisten. Diese Berechtigung muss im Grunde bei Inbetriebnahme aber gar nicht erteilt werden, denn selbst ohne funktioniert FloleVac so wie gewünscht. Als zweites wurde bis vor einiger Zeit die Berechtigung für die Bestimmung der Position des Gerätes benötigt, da diese es ermöglicht, nach WLAN-Netzwerken zu scannen. Heute ist dies aber nicht mehr nötig, auch im Interesse der NutzerInnen.
Überraschende Momente und Freundschaft
Gibt es “überraschende oder besondere Momente” im Zusammenhang mit der App, an die du dich aus heutiger Sicht gerne erinnerst?
Ja, da gibt es tatsächlich etwas. Ich habe in irgendeiner Gruppe auf Telegram (Messenger für Android, iOS usw.) etwas geschrieben. Ich sollte erwähnen, dass in dieser Gruppe die Schwerpunkte Xiaomi oder Staubsaugerroboter nie ein Gesprächsthema darstellten. Völlig unerwartet wurde ich durch eine Person dennoch darauf angesprochen, ob ich Flole von FloleVac sei. Das fand ich sowohl lustig als auch schön. Mich hatte jemand wiedererkannt und damit indirekt auch meine Leistungen anerkannt. Auf der Straße wurde ich aber bislang noch nicht angesprochen und ein Autogramm wollte bislang auch noch niemand haben. Keine Sorge, ich scherze nur! Gerne erinnere ich mich an den Moment, als ich vor einiger Zeit mehr aus Spaß an der Freude einer Gruppe auf Facebook zum Thema „Xiaomi Staubsaugerroboter“ als stiller Mitleser beitrat und dort gefühlt unter fast jedem Beitrag als Lösung meine App FloleVac empfohlen sah. Spätestens zu diesem Zeitpunkt wurde mir klar, wie hoch der Mehrwert für meine NutzerInnen tatsächlich zu sein scheint.
Haben sich durch die App-Entwicklung Freundschaften ergeben?
Durch die App-Entwicklung selbst nicht. Wenn ich im stillen Kämmerlein am Code der Anwendung arbeite, bin ich für mich. Dadurch, dass ich mich in den vergangenen Jahren mit dem Themenschwerpunkt Staubsaugerroboter so intensiv auseinander setzte, ergaben sich zwangsläufig sehr viele Inhalte, über die ich mit Dennis Giese, einem der beiden Hacker der Roborock-Roboter, vor allem nach seinem Vortrag auf dem 34. Chaos Commuication Congress in Leipzig ins Gespräch kam. Seitdem sind wir noch immer fast täglich in Kontakt und tauschen uns über die verschiedensten Dinge aus.
FloleVac-Projekt erzeugt hohe Resonanz
Viele Tausend Smartphone- und Tablet-NutzerInnen haben sich bereits für die Verwendung der App entschieden. Dank der umtriebigen Entwicklungstätigkeit des Programmierers kommen viele weitere zufriedene UserInnen in naher Zukunft sicher noch hinzu. Luft nach oben ist in jedem Fall. Googles Betriebssystem Android stellt bis dato den Quasi-Standard mobiler Kommunikation mit einem Marktanteil von ca. 75 Prozent dar. Einzig die Bestrebungen der chinesischen Entwickler, welche bereits damit begonnen haben, die auf den Servern gelagerten Firmware-Versionen vor Zugriffen Dritter zu schützen, könnten an dem tollen und überzeugenden Konzept des Erschaffers der FloleVac App etwas auszusetzen haben. Es ist wirklich schade, dass der Konzern nicht bestrebt zu sein scheint, mit freien Software-Entwicklern intensiver und nachhaltiger zusammen zu arbeiten. Hierdurch hätte Rockrobo ein Alleinstellungsmerkmal erwirken können, welches in der hart umkämpften Branche der Servicerobotik seinesgleichen suchte. Das Bestreben nach proprietärer Software (closed source) bildet nach wie vor den Standard bei allen bekannten Branchengrößen ab.
Bezugsquelle: FloleVac für Android, Website des Entwicklers