Datenschutzerklärung
SpoolState für Android und die Web-Fassung · Stand: 6. September 2026
SpoolState ist eine App zur Verwaltung von 3D-Druck-Filament. Sie wird als privates Projekt entwickelt und derzeit als Beta-Version verteilt. Diese Erklärung beschreibt, welche Daten dabei anfallen und was mit ihnen geschieht.
Das Wichtigste vorab: SpoolState enthält keine Werbung, keine Analyse-Werkzeuge, keine Absturzberichterstattung und kein Tracking. Es werden keine Cookies gesetzt. Ohne Konto liegt der Bestand auf dem Gerät. Nur wenn du eine ausdrücklich gekennzeichnete Online-Funktion nutzt, etwa den optionalen Prusament-Nachschlag, wird die dort beschriebene einzelne Angabe übertragen. Ohne dein Zutun fragt die App beim Start allein nach Betriebshinweisen zu Wartung und Störungen (Abschnitt 3.8); dabei wird keine Angabe über dich übertragen.
1. Verantwortlicher
Verantwortlich im Sinne der Datenschutz-Grundverordnung (DSGVO):
Hendrik Sachs
Johann-Sebastian-Bach-Straße 22
88097 Eriskirch
Deutschland
E-Mail: fowermig.labs@gmail.com
Für alle Fragen zum Datenschutz und zur Ausübung deiner Rechte genügt eine E-Mail an diese Adresse.
2. Grundsatz: Die App funktioniert auch ohne Konto
SpoolState speichert deinen Bestand ohne Konto lokal auf dem Gerät. Ein Konto ist optional und dient dazu, denselben Bestand über Supabase zu sichern und auf mehreren Geräten zu nutzen. Im lokalen Modus findet kein Bestandsabgleich mit SpoolState-Servern statt. Gesonderte, von dir ausgelöste Online-Funktionen sind in den Abschnitten 3.6 und 3.7 beschrieben; den Abruf von Betriebshinweisen, der ohne dein Zutun beim Start der App läuft, beschreibt Abschnitt 3.8.
Android-App und Web-Fassung
Diese Erklärung gilt für die Android-App und für die Web-Fassung unter
spoolstate.pages.dev. Beide sind dieselbe Anwendung und nutzen dieselben
Online-Dienste. Es gibt zwei Unterschiede:
- Prusament-Nachschlag (Abschnitt 3.7): Er findet nur in der Android-App
statt. Im Browser unterbleibt der Abruf aus technischen Gründen; es wird dort also
nichts an
prusament.comübertragen. - Android-Backup (Abschnitt 5): Die Ausschlussregeln für Cloud-Backup und Geräteübertragung betreffen naturgemäß nur die Android-App. Im Browser liegen die lokalen Daten im Speicher des Browsers und unterliegen dessen Einstellungen sowie einer etwaigen Browser-Synchronisation.
Der Aufruf der Web-Fassung erzeugt darüber hinaus die üblichen Server-Zugriffsdaten bei Cloudflare (Abschnitt 6).
3. Daten, die bei der Nutzung verarbeitet werden
3.1 Konto und Anmeldung
Legst du ein Konto an, werden verarbeitet:
- E-Mail-Adresse — zur Anmeldung, zur Bestätigung der Registrierung und zum Zurücksetzen des Passworts.
- Passwort — es wird ausschließlich als kryptografischer Hash beim Anbieter gespeichert, nie im Klartext. Es muss mindestens acht Zeichen haben; diese Vorgabe gilt nicht nur im Eingabeformular, sondern wird auch serverseitig durchgesetzt.
Rechtsgrundlage: Art. 6 Abs. 1 lit. b DSGVO (Erfüllung des Nutzungsverhältnisses).
E-Mail-Adresse und Passwort sind nur erforderlich, wenn du ein Konto nutzen möchtest. Ohne diese Angaben kannst du kein Konto anlegen und erhältst keinen Cloud-Abgleich; die lokale Nutzung ohne Konto bleibt möglich.
3.2 Bestandsdaten
Mit aktivem Konto werden die von dir erfassten Daten mit dem Server abgeglichen. Dazu gehören Hersteller, Material- und Produktdaten, Farben, EANs, Spulenart, Tara- und Bestandsgewichte, Status, Kaufdatum, Preis, Händler, Charge, Kennung eines aufgeklebten NFC-Tags, Trocknungszeitpunkt, Lagerorte, Schwellwerte und Einstellungen. Der Verlauf kann Zeitstempel, Wiege-, Verbrauchs-, Bewegungs-, Status- und Trocknungsereignisse sowie frei eingegebene Notizen, Gerätebezeichnungen und Druck- oder Projektnamen enthalten.
Diese Angaben sind Sachdaten und über deine Konto-Kennung dir zugeordnet. Was du in Freitextfelder schreibst, bestimmst du selbst — die App fordert dort keine personenbezogenen Angaben an.
Die NFC-Kennung ist die werkseitige Nummer des Aufklebers auf der Spule — keine Kennung deines Telefons. Sie wird nur gespeichert, wenn du selbst einen Tag einer Spule zuordnest, und beim Löschen der Spule mitgelöscht.
Rechtsgrundlage: Art. 6 Abs. 1 lit. b DSGVO.
3.3 Ausgewählte Dateien und Importe
SpoolState hat keinen allgemeinen Zugriff auf deine Dateien und fordert keine Speicherberechtigung an. Du kannst jedoch selbst eine SpoolState-, CSV- oder Spoolman-Datei zum Import auswählen. Der Inhalt wird auf dem Gerät gelesen. Der Dateiname kann als Herkunftsnotiz an importierten Ereignissen gespeichert und bei aktivem Konto mit synchronisiert werden.
Bei einer von dir ausgewählten G-Code- oder 3MF-Datei liest die App lokal nur die für die Verbrauchsbuchung benötigten Metadaten. Gespeichert und gegebenenfalls synchronisiert werden die daraus übernommene Verbrauchsmenge und ein Druckname; fehlt dieser, kann er aus dem Dateinamen abgeleitet werden. Die Rohdatei selbst wird nicht hochgeladen.
Rechtsgrundlage: Art. 6 Abs. 1 lit. b DSGVO.
3.4 Rückmeldungen aus der App
In den Einstellungen kannst du eine Rückmeldung senden. Das geschieht ausschließlich auf ausdrückliche Aktion; nichts wird ohne dein Zutun übertragen. Mitgesendet werden neben deinem Text technische Angaben, die zur Einordnung eines Fehlers nötig sind:
| Angabe | Beispiel |
|---|---|
| App-Version und Sendezeitpunkt | 0.5.11, ISO-Zeitstempel |
| Plattform | android |
| Browserkennung (User-Agent) | Gerätemodell und Android-Version |
| Fenstergröße samt Pixeldichte und Bildschirmgröße | 412 × 915 @2.6, 392 × 872 |
| Ränder für die Systemleisten, eingestellte Schriftgröße, Ausrichtung | 24/0/48/0, Faktor 1, hochkant |
| Ob beim Absenden die Bildschirmtastatur offen stand | ja/nein |
| Sprache und Farbschema | de-DE, dunkel |
| Speichermodus, Verbindungsstatus, Synchronisationsstand | Cloud, online, letzter Abgleich |
| Anzahl und Arten offener oder fehlgeschlagener Übertragungen, letzte Fehlermeldung | Fehlertext gekürzt auf 200 Zeichen |
| Anzahl deiner Spulen, Ereignisse, Lagerorte und Produkte | reine Zahlen |
Nicht mitgesendet werden Bestandsdaten selbst — keine Notizen, keine Lagerortnamen, keine Produktbezeichnungen. Die Browserkennung enthält allerdings Gerätemodell und Systemversion; sie ist damit ein technisches Merkmal deines Geräts.
Vor dem Senden zeigt die App an, welche Angaben mitgehen. Du kannst denselben Text stattdessen in die Zwischenablage kopieren oder als Datei speichern — dann wird nichts übertragen.
Rechtsgrundlage: Art. 6 Abs. 1 lit. a DSGVO (Einwilligung durch das Absenden).
3.5 Übergabe eines Scans an ein zweites Gerät
Scannst du mit dem Telefon einen Code, kann dieser an einen angemeldeten Rechner übergeben werden. Übertragen wird dabei ausschließlich die gelesene Zeichenkette des Codes. Die Übertragung läuft über einen Echtzeit-Kanal, der nur deinem Konto zugeordnet ist; die Nachricht wird nicht gespeichert, sondern nur durchgereicht und verbleibt anschließend allein im Arbeitsspeicher der beteiligten Geräte.
Rechtsgrundlage: Art. 6 Abs. 1 lit. b DSGVO.
3.6 Passwortprüfung beim Festlegen eines Passworts
Diese Prüfung findet bei der Registrierung und beim Ändern des Passworts statt — also überall dort, wo du ein neues Passwort festlegst. Beim Anmelden mit einem bereits gesetzten Passwort findet sie nicht statt.
Damit du kein Passwort wählst, das bereits in einem bekannten Datenleck aufgetaucht ist, fragt die App den Dienst Have I Been Pwned ab. Dein Passwort verlässt das Gerät dabei nicht: Es wird lokal gehasht, und nur die ersten fünf Zeichen dieses Hashwerts werden übertragen (Verfahren der k-Anonymität). Der Abgleich der Antwort geschieht wieder auf dem Gerät. Aus dem übertragenen Bruchstück lässt sich kein Passwort rekonstruieren und keine Person bestimmen.
Rechtsgrundlage: Art. 6 Abs. 1 lit. f DSGVO (berechtigtes Interesse an sicheren Zugängen).
3.7 Nachschlagen einer gescannten Prusament-Spule
Scannst du den QR-Code einer Prusament-Spule, ruft die App die zugehörige Produktseite
bei prusament.com ab, um Material, Farbe und Gewicht zu übernehmen.
Übertragen wird dabei ausschließlich die Spulennummer, die auf der Spule aufgedruckt ist.
Es werden keine Cookies gesetzt und keine Kennung deines Kontos übermittelt. Dieser Abruf
findet nur in der Android-App statt; in der Web-Fassung unterbleibt er.
Diese Abfrage lässt sich abschalten: Einstellungen → Scannen → „Prusament online nachschlagen“. Die App bleibt danach voll funktionsfähig; Material und Farbe wählst du dann aus dem mitgelieferten Katalog.
Rechtsgrundlage: Art. 6 Abs. 1 lit. f DSGVO (berechtigtes Interesse an der automatischen Übernahme von Produktdaten).
3.8 Abruf von Betriebshinweisen
Beim Start fragt die App bei Supabase nach, ob ein Betriebshinweis vorliegt — etwa eine angekündigte Wartung oder eine bekannte Störung. Liegt einer vor, erscheint er als Banner über dem Inhalt; bei einer Wartung oder Störung zusätzlich als Hinweisfenster beim Start. Liegt keiner vor oder ist der Abruf nicht möglich, geschieht nichts; die App verhält sich dann unverändert.
Anders als die Abrufe in den Abschnitten 3.6 und 3.7 löst du diesen nicht selbst aus. Er läuft bei jedem Start, unabhängig davon, ob du ein Konto nutzt oder deinen Bestand nur auf dem Gerät hältst. Übertragen wird dabei keine Angabe über dich, dein Konto oder deinen Bestand — die App fragt ausschließlich, welche Hinweise es gibt. Es wird nichts gezählt und keine Kennung mitgeschickt. Auch die Version deiner App wird nicht übertragen; welcher Hinweis für sie gilt, entscheidet das Gerät selbst. Wie bei jedem Abruf über das Internet fallen bei Supabase technisch bedingt deine IP-Adresse und der Zeitpunkt an (Abschnitt 6).
Welche Hinweise du bereits weggeklickt hast, merkt sich die App allein auf dem Gerät (Abschnitt 5); diese Angabe wird nicht übertragen.
Damit dich eine bereits gemeldete Störung auch dann noch erreicht, wenn dein Gerät anschließend keine Verbindung mehr hat, legt die App den zuletzt bestätigten Störungshinweis auf dem Gerät ab (Abschnitt 5). Er wird dann mit dem Zusatz gezeigt, dass sein Fortbestehen gerade nicht geprüft werden konnte. Gezeigt wird er nur noch bis zu dem Ende, das für ihn hinterlegt ist — und ist keines hinterlegt, höchstens 24 Stunden nach der letzten Bestätigung. Gespeichert bleibt der Eintrag dagegen, bis der nächste erfolgreiche Abruf ihn ersetzt oder entfernt; er wird also nicht von selbst nach einer festen Frist gelöscht. Du kannst ihn jederzeit mit den übrigen App-Daten entfernen (Abschnitt 5). Auch das bleibt auf dem Gerät und wird nicht übertragen.
Rechtsgrundlage: Art. 6 Abs. 1 lit. f DSGVO (berechtigtes Interesse daran, über Wartungsarbeiten und Störungen informieren zu können).
4. Kamera
Für den Scanner benötigt die App Zugriff auf die Kamera. Das Bild wird ausschließlich im Arbeitsspeicher ausgewertet, um einen Barcode oder QR-Code zu erkennen. Es werden keine Fotos aufgenommen, keine Bilder gespeichert und keine Bilddaten übertragen. Erkannt und weiterverarbeitet wird allein die im Code enthaltene Zeichenkette. Der Kamerazugriff endet, sobald du den Scanner verlässt. Ton wird nie aufgezeichnet.
Verweigerst du die Berechtigung, bleibt die App nutzbar; Codes lassen sich dann von Hand eingeben.
5. Speicherung auf deinem Gerät
SpoolState legt Daten im lokalen Speicher des Geräts ab: deinen Bestand, noch nicht übertragene Änderungen, die Anmeldesitzung sowie Einstellungen wie Sprache, Farbschema und zuletzt genutzte Einheit. Zusätzlich werden bereits abgerufene Prusament-Spulendaten zwischengespeichert (höchstens 100 Einträge), damit dieselbe Spule nicht zweimal abgefragt werden muss. Ebenfalls auf dem Gerät bleibt, welche Betriebshinweise du weggeklickt hast (höchstens 50 Kennungen, Abschnitt 3.8), damit derselbe Hinweis nicht bei jedem Start wieder erscheint, sowie der zuletzt bestätigte Störungshinweis (ein einziger Eintrag), damit eine gemeldete Störung dich auch ohne Verbindung noch erreicht. Dieser Eintrag bleibt liegen, bis ein erfolgreicher Abruf ihn ersetzt oder entfernt; angezeigt wird er nur innerhalb der in Abschnitt 3.8 genannten Grenzen.
Es werden keine Cookies gesetzt, und SpoolState betreibt keine geräteübergreifende Wiedererkennung. Deinstallierst du die App oder löschst ihre Daten, wird der App-Speicher auf diesem Gerät entfernt.
Ab Version 0.5.4 schließt die Android-App ihre Daten technisch von Android-Cloud-Backups und der durch die App steuerbaren Geräteübertragung aus. Dadurch sollen insbesondere lokaler Bestand und Anmeldesitzung nicht automatisch in ein Google-Backup gelangen. Ältere Fassungen der App hatten diesen Ausschluss noch nicht. Einzelheiten der Android-Systemfunktionen können je nach Betriebssystem und Gerätehersteller abweichen.
6. Empfänger und Auftragsverarbeiter
| Empfänger | Wozu | Was erhält er |
|---|---|---|
| Supabase Inc., San Francisco, USA | Konto, Datenbank, Echtzeit-Übergabe und Abgleich; Auslösen der Konto-E-Mails; Bereitstellen der Betriebshinweise (Abschnitt 3.8) | E-Mail-Adresse, Konto-Kennung, Passwort-Hash, Bestandsdaten, Rückmeldungen und technische Zugriffsdaten. Beim reinen Abruf von Betriebshinweisen technisch bedingt nur IP-Adresse und Zeitpunkt |
| Brevo GmbH, Köpenicker Str. 126, 10179 Berlin (Tochter der Sendinblue SAS, Paris) | Versand der Konto-E-Mails: Bestätigung der Registrierung und Zurücksetzen des Passworts | E-Mail-Adresse, Inhalt dieser Nachrichten sowie Zustell- und Zugriffsprotokolle |
| Cloudflare, Inc., San Francisco, USA | Hosting der Web-Fassung der App und dieser Rechtstexte (Cloudflare Pages) | IP-Adresse und technische Zugriffsdaten (Server-Log) |
| Have I Been Pwned, Troy Hunt / Cloudflare-Infrastruktur | Prüfung auf durchgesickerte Passwörter | fünf Zeichen eines Hashwerts sowie technisch bedingt die IP-Adresse — kein Passwort und keine Konto-Kennung |
| Prusa Research a.s., Prag, Tschechien | Produktdaten zu einer gescannten Spule | die aufgedruckte Spulennummer sowie technisch bedingt die IP-Adresse |
| Google Ireland Ltd. / Google LLC | Auslieferung der App über Google Play | Daten der Verteilung nach Googles eigenen Bestimmungen |
Die Datenbank dieses Projekts läuft in der Supabase-Region eu-central-1
(Frankfurt am Main). Supabase und Cloudflare sind gleichwohl US-amerikanische Anbieter; ein
Zugriff oder eine Verarbeitung in einem Drittland kann deshalb nicht vollständig
ausgeschlossen werden. Soweit kein Angemessenheitsbeschluss greift, stützen sich solche
Übermittlungen auf die Standardvertragsklauseln der EU-Kommission und die vertraglichen
Datenschutzregelungen des jeweiligen Anbieters. Eine Kopie oder nähere Auskunft zu den
eingesetzten Garantien erhältst du über die in Abschnitt 1 genannte E-Mail-Adresse.
Bei jeder direkten Verbindung zu einem Online-Dienst wird technisch bedingt deine IP-Adresse übertragen und kann in Sicherheits- und Zugriffsprotokollen des Anbieters erscheinen. Die Anbieter bewahren solche Protokolle nach ihren vertraglichen Fristen und nur so lange auf, wie sie für Betrieb, Sicherheit und Missbrauchsabwehr erforderlich sind.
7. Speicherdauer
- Konto- und Bestandsdaten bleiben gespeichert, solange das Konto besteht.
- Gelöschte Spulen und Lagerorte wandern zunächst in einen Papierkorb und bleiben dort erhalten, bis du sie endgültig entfernst.
- Rückmeldungen werden aufbewahrt, bis der gemeldete Punkt bearbeitet ist, längstens 24 Monate. Eine tägliche Datenbankaufgabe löscht ältere Einträge automatisch.
- Anmeldesitzungen verbleiben lokal bis zur Abmeldung, Kontolöschung oder zum Ablauf beziehungsweise Widerruf der Sitzung.
- Lokale Daten verbleiben auf dem Gerät, bis du sie zurücksetzt oder die App deinstallierst.
8. Deine Rechte
Du hast das Recht auf Auskunft (Art. 15), Berichtigung (Art. 16), Löschung (Art. 17), Einschränkung der Verarbeitung (Art. 18), Datenübertragbarkeit (Art. 20) und Widerspruch gegen Verarbeitungen auf Grundlage berechtigter Interessen (Art. 21 DSGVO). Eine erteilte Einwilligung kannst du jederzeit mit Wirkung für die Zukunft widerrufen.
Außerdem steht dir ein Beschwerderecht bei einer Datenschutz-Aufsichtsbehörde zu (Art. 77 DSGVO). Zuständig ist insbesondere der Landesbeauftragte für den Datenschutz und die Informationsfreiheit Baden-Württemberg.
Was du direkt in der App tun kannst
- Daten mitnehmen: Einstellungen → Daten → Export. Der JSON-Export enthält den gesamten sichtbaren Bestand — Spulen, Ereignisverlauf, Lagerorte, Hersteller, Produkte, Schwellwerte und App-Einstellungen. Spulen im Papierkorb sind nicht enthalten. Wird eine Exportdatei wieder eingelesen, vergibt die App neue Kennungen; Mengen und Spulenfelder bleiben erhalten, einzelne Angaben des Verlaufs (Zeitpunkt der Anlage, gewogenes Bruttogewicht, Herkunftsort eines Umzugs) werden nicht wiederhergestellt. CSV enthält sämtliche Spulenfelder, aber keinen vollständigen Verlauf (Art. 20 DSGVO).
- Bestand löschen: Einstellungen → Daten → Alle Daten löschen. Entfernt Hersteller, Produkte, Spulen, Verlauf, Lagerorte und Schwellwerte — bei aktivem Konto auf dem Server und auf diesem Gerät. Materialkatalog, App-Einstellungen, Konto und Anmeldung bleiben bestehen.
- Demodaten laden: Einstellungen → Daten → Demodaten laden ersetzt den aktuellen Bestand nach einer Bestätigung durch Beispieldaten. Dies ist ein eigener Vorgang und nicht Teil des Löschens.
- Konto und alle Daten löschen: Einstellungen → Konto löschen (Art. 17 DSGVO) — siehe unten.
- Prusament-Abfrage abschalten: Einstellungen → Scannen.
Konto löschen. In der App unter Einstellungen → Konto → Konto löschen. Nach einer Sicherheitsabfrage werden das Konto und die ihm zugeordneten aktiven Serverdaten endgültig entfernt — einschließlich Spulen, Verlauf, Lagerorten, Herstellern, Einstellungen und abgeschickten Rückmeldungen. Auf diesem Gerät werden Anmeldesitzung, Bestand, Synchronisationswarteschlange und Zwischenspeicher gelöscht. Rein lokale Bedienvorlieben wie Sprache, Farbschema, Verbrauchseinheit und der Prusament-Schalter bleiben erhalten; sie lassen sich durch Löschen der App-Daten oder Deinstallation entfernen.
Der Vorgang lässt sich nicht rückgängig machen. Die App bietet dir deshalb unmittelbar davor an, deinen Bestand als Datei zu sichern.
Falls dir der Weg über die App nicht möglich ist, genügt eine E-Mail an fowermig.labs@gmail.com; die Löschung erfolgt dann innerhalb von 30 Tagen.
9. Sicherheit
Netzwerkverbindungen erfolgen verschlüsselt über HTTPS beziehungsweise WSS. Der Serverzugriff wird über nutzerbezogene Datenbankregeln (Row Level Security) begrenzt; administrative Schlüssel werden nicht mit der App ausgeliefert. Passwörter werden vom Authentifizierungsanbieter nur gehasht gespeichert. Trotz dieser Maßnahmen kann keine Übertragung oder Speicherung absolute Sicherheit garantieren.
10. Was SpoolState nicht tut
- keine Werbung und kein Weiterverkauf von Daten
- keine Analyse-, Statistik- oder Tracking-Werkzeuge
- keine automatische Absturzberichterstattung
- keine Cookies und keine geräteübergreifende Wiedererkennung
- kein Zugriff auf Standort, Kontakte oder Telefonstatus und keine allgemeine Dateiberechtigung; nur von dir ausgewählte Dateien werden wie in Abschnitt 3.3 gelesen
- keine Schriftarten oder Skripte von fremden Servern — alles ist in der App enthalten
- keine automatisierte Entscheidungsfindung und kein Profiling
Die App fordert genau zwei Berechtigungen an: Internet und Kamera. Die Kamera ist dabei als optional gekennzeichnet.
11. Kinder
SpoolState richtet sich an Erwachsene und wird nicht gezielt für Kinder angeboten.
12. Änderungen dieser Erklärung
Entwickelt sich die App weiter, wird diese Erklärung angepasst. Maßgeblich ist die hier veröffentlichte Fassung mit dem oben genannten Stand.