Hallo zusammen,
ich habe mir in den letzten Tagen eine Lösung gebaut, um den Filamentverbrauch meiner Creality K2 Pro automatisch an Spoolman zu übermitteln – und zwar direkt aus IP-Symcon heraus, ganz ohne Home Assistant.
Hintergrund: Die bekannte Lösung SpoolmanSync setzt zwingend Home Assistant + die Integration ha_creality_ws als Middleware voraus. Ich wollte HA aber loswerden und alles in IPS haben. Also habe ich analysiert, woher die Daten eigentlich kommen – und es stellt sich heraus: Die K2 pusht alles Nötige über einen lokalen WebSocket (ws://<drucker-ip>:9999). Den kann man direkt anzapfen.
Was die Lösung macht:
-
Liest zyklisch (Timer) den K2-WebSocket – ohne Cloud, ohne HA, reiner PHP-Code in IPS
-
Ermittelt pro Druck den Verbrauchszuwachs (
usedMaterialLengthin mm) und den aktiven CFS-Slot (selected) -
Bucht den Verbrauch inkrementell an Spoolman (
PUT /spool/{id}/usemituse_length, Spoolman rechnet über die hinterlegte Dichte selbst in Gramm um) -
Erkennt Druckstart/-ende und Slot-Wechsel (mehrfarbig) über
printId+ persistente Zähler; crash-/stromausfallsicher -
Zuordnung CFS-Slot ↔ Spoolman-Spule über Spoolmans
extra.active_tray(eine Quelle der Wahrheit) -
Web-UI (als IPS-WebHook), in der man Spulen den Slots zuordnet und die Spulenverteilung (Hersteller, Name, Farbe, ID, Restmenge) + ein Buchungs-Log sieht – lässt sich auch als HTMLBox-Kachel in die Kachelvisu einbetten
Stand: Läuft bei mir produktiv. Gegenprobe mit HA ergab eine Abweichung von nur ~1,7 % (reines Poll-Timing gegenüber HAs Push).
Das Ganze besteht aktuell aus ein paar PHP-Skripten + einer Handvoll Variablen. Bevor ich Arbeit reinstecke, würde mich interessieren:
-
Besteht überhaupt Interesse an so einer HA-freien Anbindung?
-
Wer nutzt Spoolman zusammen mit Creality-Druckern (K1/K2/…) oder anderen und würde das einsetzen?
-
Was wäre euch lieber: eine dokumentierte Skriptsammlung auf GitHub zum Selbereinrichten – oder gleich ein richtiges IPS-Modul (Konfigurator, saubere Instanz, Slot-Mapping per Formular)?
Wenn genug Interesse da ist, lade ich es auf GitHub hoch bzw. baue ein Modul draus. Über Rückmeldungen, Feature-Wünsche und auch Infos zu anderen Druckermodellen (welche Felder liefert deren WebSocket?) würde ich mich freuen.
LG
Manuel

