Autor Thema: [70_OctoPrint.pm] zum Steuern von OctoPrint 3D Drucker  (Gelesen 7017 mal)

Online michael.winkler

  • Developer
  • Sr. Member
  • ****
  • Beiträge: 992
[70_OctoPrint.pm] zum Steuern von OctoPrint 3D Drucker
« am: 31 Dezember 2017, 16:56:28 »
Hallo,

ich habe zum Steuern von OctoPrint ein neues Modul erstellt.

Beschreibung Installation & Konfiguration Octoprit https://mwinkler.jimdo.com/anet-a8/software/octoprint/
Beschreibung Integration Octoprint & Webcam https://mwinkler.jimdo.com/smarthome/sonstiges/octoprint/

Beschreibung vom Modul findet Ihr hier https://mwinkler.jimdo.com/smarthome/eigene-module/octoprint/

Diese Modul befindet sich aktuell im BETA Status. Benutzung nur auf eigene Gefahr!

Definition in FHEM
Zum Anlegen eines OctoPrint Devices könnt Ihr folgende Definitionen verwenden:
define <Name> OctoPrint <IP-Adresse> [ <port> [ <poll-interval> ]]

Aktuell werden nur ein paar Readings ausgelesen. Zusätzlich können ein paar Funktionen ausgeführt werden.

############################################################################
# 2018-09-05, v0.0.10
#
# v0.0.10
# - BUGFIX:  Readings mit 0 wurden nicht geschrieben
# - CHANGE:  readingsBulkUpdateIfChanged to readingsBulkUpdate
#
# v0.0.9
# - BUGFIX:  Reading "online"
#
# v0.0.8
# - FEATURE: Reading "online"
#
# v0.0.7
# - BUGFIX:  Logeinträge PERL WARNING: Use of uninitialized value $value in string eq at fhem.pl line 4547
#
# v0.0.6
# - BUGFIX:  https://forum.fhem.de/index.php/topic,81929.msg780110.html#msg780110
#
# v0.0.5
# - BUGFIX:  https://forum.fhem.de/index.php/topic,81929.msg756900.html#msg756900
#
# v0.0.3
# - BUGFIX:  Readings anzeigen von Umlauten
# - CHANGE:  Send Data nonBlocking
# - FEATURE: Add Support psucontrol inkl. set Befehle turnPSUOn, turnPSUOff und togglePSU (Aktivierung über Attribut "plugin_psucontrol")
#            Neue Set Befehle move_axis_x, move_axis_y, move_axis_z und extrude
#
# v0.0.2 BETA
# - FEATURE: Navigieren (gohome)
#            Shutdown / Reboot / Restart (OctoPrint)
#            send_gcode z.B. M500
#
# v0.0.1 BETA
# - FEATURE: Read div. Readings
#            start/stop/connect/disconnect printer

Gruß
Michael
« Letzte Änderung: 05 September 2018, 19:04:19 von michael.winkler »
Gefällt mir Gefällt mir x 5 Liste anzeigen

Offline Icinger

  • Developer
  • Hero Member
  • ****
  • Beiträge: 1141
Antw:[70_OctoPrint.pm] zum Steuern von OctoPrint 3D Drucker
« Antwort #1 am: 31 Dezember 2017, 17:06:10 »
Ich hab heute begonnen, Octo über MQTT an FHEM zu binden :)


   IODev      myMQTT
   NAME       CrealityCR10s
   NOTIFYDEV  octoprint
   NR         1055759
   STATE      incoming publish received
   TYPE       MQTT_DEVICE
   READINGS:
     2017-12-31 17:04:22   Print           {"progress": 53, "location": "local", "path": "money_cat.gco"}
     2017-12-31 17:04:22   Print_location  local
     2017-12-31 17:04:22   Print_path      money_cat.gco
     2017-12-31 17:04:22   Print_progress  53
     2017-12-31 15:54:15   TBed            {"actual": 70.0, "target": 70.0}
     2017-12-31 15:54:15   TBed_actual     70
     2017-12-31 15:54:15   TBed_target     70
     2017-12-31 15:54:09   TTool0          {"actual": 210.0, "target": 210.0}
     2017-12-31 15:54:09   TTool0_actual   210
     2017-12-31 15:54:09   TTool0_target   210
     2017-12-31 17:04:22   transmission-state incoming publish received
Verwende deine Zeit nicht mit Erklärungen. Die Menschen hören (lesen) nur, was sie hören (lesen) wollen. (c) Paulo Coelho

Online michael.winkler

  • Developer
  • Sr. Member
  • ****
  • Beiträge: 992
Antw:[70_OctoPrint.pm] zum Steuern von OctoPrint 3D Drucker
« Antwort #2 am: 31 Dezember 2017, 17:20:40 »
Kannst du da auch Befehle an OctoPrint schicken?

Offline Icinger

  • Developer
  • Hero Member
  • ****
  • Beiträge: 1141
Antw:[70_OctoPrint.pm] zum Steuern von OctoPrint 3D Drucker
« Antwort #3 am: 31 Dezember 2017, 17:26:29 »
Theoretisch ja, wenn ich die mittels publishSet Topics rüberschicke......
Hab ich allerdings noch nicht probiert, da mein Drucker noch in Hongkong auf seinen Flug wartet :D

lg, Stefan
Verwende deine Zeit nicht mit Erklärungen. Die Menschen hören (lesen) nur, was sie hören (lesen) wollen. (c) Paulo Coelho

Online michael.winkler

  • Developer
  • Sr. Member
  • ****
  • Beiträge: 992
Antw:[70_OctoPrint.pm] zum Steuern von OctoPrint 3D Drucker
« Antwort #4 am: 01 Januar 2018, 23:17:58 »
Das erste Update ist da. Download ist im ersten Post dieses Threads

Offline Fixel2012

  • Hero Member
  • *****
  • Beiträge: 1218
Antw:[70_OctoPrint.pm] zum Steuern von OctoPrint 3D Drucker
« Antwort #5 am: 02 Januar 2018, 01:29:47 »
Wow, awesome!  :D

Danach habe ich schon länger gesucht  8)

Werde ich gleich mal testen.
Fhem 5.8 auf Raspi 3, HMLAN und 868MHz CUL mit einigen Komponenten, Z-Wave Rollladenaktoren, Tablet UI, 433 MHz CUL mit Baumarktsteckdosen und Temp Sensoren, Amazon Echo, Echo Dot, 2x SONOS  play1, 1x SONOS Connect AMP,  presence, HUE, Lightify

Offline oli82

  • Sr. Member
  • ****
  • Beiträge: 558
Antw:[70_OctoPrint.pm] zum Steuern von OctoPrint 3D Drucker
« Antwort #6 am: 10 Januar 2018, 13:05:40 »
Sehr interessantes Modul.
Was halt toll wäre, wenn man die GPIO des Raspberry über das Modul steuern könnte.
Ich schalte meinen Drucker über das PSU Plugin ein (setzt und list GPIOs) oder die Beleuchtung über custom Commands.
Evtl lässt sich das ja abbilden

Online michael.winkler

  • Developer
  • Sr. Member
  • ****
  • Beiträge: 992
Antw:[70_OctoPrint.pm] zum Steuern von OctoPrint 3D Drucker
« Antwort #7 am: 10 Januar 2018, 13:55:23 »
Sehr interessantes Modul.
Was halt toll wäre, wenn man die GPIO des Raspberry über das Modul steuern könnte.
Ich schalte meinen Drucker über das PSU Plugin ein (setzt und list GPIOs) oder die Beleuchtung über custom Commands.
Evtl lässt sich das ja abbilden
Wenn ich das PlugIn richtig gelesen habe, müsste das über einen set send_gcode schon gehen. Hier kannst du gcodes an den Drucker senden. z.B M80

Kannst Du das mal probieren?

Offline oli82

  • Sr. Member
  • ****
  • Beiträge: 558
Antw:[70_OctoPrint.pm] zum Steuern von OctoPrint 3D Drucker
« Antwort #8 am: 10 Januar 2018, 14:40:52 »
Gerne!

Geht leider nicht, da OctoPrint nur auf GCode reagiert, wenn der Drucker verbunden ist.
Das ist er hier ja leider nicht :(

Offline Esjay

  • Sr. Member
  • ****
  • Beiträge: 801
Antw:[70_OctoPrint.pm] zum Steuern von OctoPrint 3D Drucker
« Antwort #9 am: 13 Januar 2018, 11:36:19 »
Guten Morgen Michael,
du gehst ja gerade ganz schon vorwärts. Das Modul hier, Echo Dot Modul übernommen, ein haufen Blog einträge usw.
Mein 3D Drucker druckt sich gerade ein, und nebenbei werde ich OctoPrint ebenfalls einrichten, deswegen hier schonmal vielen Dank, dass du ein Modul dafür entwickelst.
Bin gespannt, was noch alles so kommt.

Grüße
Gefällt mir Gefällt mir x 2 Liste anzeigen

Offline Esjay

  • Sr. Member
  • ****
  • Beiträge: 801
Antw:[70_OctoPrint.pm] zum Steuern von OctoPrint 3D Drucker
« Antwort #10 am: 18 Januar 2018, 20:34:02 »
Guten Abend,
ich habe das Modul bei mir nun auch im Einsatz. Bisher ohne Probleme. Ich hätte allerdings noch eine Frage. Gibt es eigentlich einen state, der signalisiert, dass der Druck fertig ist? Bei mir ist state dauerhaft "Operational", auch nachdem der Druck fertig ist. Vll habe ich auch noch etwas übersehen.

Grüße

Edit: Ich vermute ich nehme alles zurück, und behaupte das Gegenteil. Habe eben noch nicht ganz den Ablauf verstanden, und hatte den Druck manuell über den Drucker gestartet. Nun da ich ihn direkt über den Server gejagd habe habe ich das reading Printing, daher gehe ich davon aus, dass das finish auch angezeigt wird.
« Letzte Änderung: 18 Januar 2018, 20:47:35 von Esjay »

Offline Fixel2012

  • Hero Member
  • *****
  • Beiträge: 1218
Antw:[70_OctoPrint.pm] zum Steuern von OctoPrint 3D Drucker
« Antwort #11 am: 24 Januar 2018, 17:47:08 »
Hi,

was ich mir noch wünschen würde, ist dass die Kosten von dem Kosten Plugin nach dem Druck gespeichert werden.

Ich würde nämlich gerne mit einer Funksteckdose den Drucker abschalten. Allerdings verschwindet, sobald der Drucker keinen Strom mehr hat in Octoprint die Kosten. Es wäre somit also schön diese vorher in einem Reading zu speichern und anschließend die Steckdose zu triggern.

Wäre super, wenn das machbar wäre!

Danke und Gruß,

Fixel
Fhem 5.8 auf Raspi 3, HMLAN und 868MHz CUL mit einigen Komponenten, Z-Wave Rollladenaktoren, Tablet UI, 433 MHz CUL mit Baumarktsteckdosen und Temp Sensoren, Amazon Echo, Echo Dot, 2x SONOS  play1, 1x SONOS Connect AMP,  presence, HUE, Lightify

Online michael.winkler

  • Developer
  • Sr. Member
  • ****
  • Beiträge: 992
Antw:[70_OctoPrint.pm] zum Steuern von OctoPrint 3D Drucker
« Antwort #12 am: 24 Januar 2018, 18:50:38 »
Hi,

was ich mir noch wünschen würde, ist dass die Kosten von dem Kosten Plugin nach dem Druck gespeichert werden.

Ich würde nämlich gerne mit einer Funksteckdose den Drucker abschalten. Allerdings verschwindet, sobald der Drucker keinen Strom mehr hat in Octoprint die Kosten. Es wäre somit also schön diese vorher in einem Reading zu speichern und anschließend die Steckdose zu triggern.

Wäre super, wenn das machbar wäre!

Danke und Gruß,

Fixel
Welche PlugIn verwendest du hier? Kannsz Du mir die Webadresse des PlugIns zukommen lassen?

Offline Fixel2012

  • Hero Member
  • *****
  • Beiträge: 1218
Antw:[70_OctoPrint.pm] zum Steuern von OctoPrint 3D Drucker
« Antwort #13 am: 24 Januar 2018, 18:53:16 »
Welche PlugIn verwendest du hier? Kannsz Du mir die Webadresse des PlugIns zukommen lassen?

Gerne doch:

https://plugins.octoprint.org/plugins/costestimation/

Ich nutze dieses, es gibt allerdings auch noch ein weiteres Plugin mit fast gleichem Namen (Vorsicht!).
Fhem 5.8 auf Raspi 3, HMLAN und 868MHz CUL mit einigen Komponenten, Z-Wave Rollladenaktoren, Tablet UI, 433 MHz CUL mit Baumarktsteckdosen und Temp Sensoren, Amazon Echo, Echo Dot, 2x SONOS  play1, 1x SONOS Connect AMP,  presence, HUE, Lightify

Online michael.winkler

  • Developer
  • Sr. Member
  • ****
  • Beiträge: 992
Antw:[70_OctoPrint.pm] zum Steuern von OctoPrint 3D Drucker
« Antwort #14 am: 24 Januar 2018, 23:23:57 »
Hallo,

auf Seite1 habe ich Euch eine neue Version des Modules.

Bitte beachtet auch die angepasste Dokumentation https://mwinkler.jimdo.com/smarthome/eigene-module/octoprint/

# 2018-01-24, v0.0.3
#
# v0.0.3
# - BUGFIX:  Readings anzeigen von Umlauten
# - CHANGE:  Send Data nonBlocking
# - FEATURE: Add Support psucontrol inkl. set Befehle turnPSUOn, turnPSUOff und togglePSU (Aktivierung über Attribut "plugin_psucontrol")
#            Neue Set Befehle move_axis_x, move_axis_y, move_axis_z und extrude

Sehr interessantes Modul.
Was halt toll wäre, wenn man die GPIO des Raspberry über das Modul steuern könnte.
Ich schalte meinen Drucker über das PSU Plugin ein (setzt und list GPIOs) oder die Beleuchtung über custom Commands.
Evtl lässt sich das ja abbilden
Ist jetzt eingebaut. Aktivierung siehe Doku.

Gerne doch:

https://plugins.octoprint.org/plugins/costestimation/

Ich nutze dieses, es gibt allerdings auch noch ein weiteres Plugin mit fast gleichem Namen (Vorsicht!).
PlugIn habe ich mir angeschaut. Leider gibt es keine Möglichkeit diese Information über die OctoPrint API abzurufen. Vielleicht kannst Du mal auf den Entwickler des PlugIns zugehen, der hat dann eventuell die Möglichkeit eine API für sein PlugIn bereitzustellen.