Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. Adapter Klipper-Moonraker

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.2k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.9k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.3k

Adapter Klipper-Moonraker

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
klippermoonrakeradapter update
124 Beiträge 24 Kommentatoren 20.4k Aufrufe 23 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • 1Topf1 1Topf

    @kammi_

    Also ich hab das alles ohne API, sondern nur über die IP des Druckers. Jetzt drucke ich gerade etwas (... meine Frau guckt schon komisch ... :grin: ), und da zeigt es die verbleibende Zeit wieder an. Ich muß nur mal in Ruhe vergleichen, wo der Unterschied liegt: jetzt habe ich die Datei per CURA zum Drucker geschickt, die vorige (ohne Anzeige im DP) aber mit ELEGOO CURA (abgewandelte Form vom Hersteller). Morgen habe ich eventuell Zeit für Vergleiche.

    ioBroker01.jpg

    K Offline
    K Offline
    Kammi_
    schrieb am zuletzt editiert von
    #83

    @1topf

    Das mit der API liegt daran das ich nich die VIS sondern ein Dashboard benutze

    1 Antwort Letzte Antwort
    0
    • K Kammi_

      so nach einigen hin und her auch wenn es umständlich ist, wenn ich jetzt meine API abrufe

      http://192.168.0.84:7125/printer/objects/query?display_status
      

      bekomm ich folgende ausgabe

      	
      result	
      eventtime	21482.066148242
      status	
      display_status	
      progress	0
      message	"00-22"
      

      gelöst durch dieses makro

      [gcode_macro M73]
      rename_existing: M990073
      #variable_R: 0
      #variable_P: 0
      #default_parameter_P: 0
      #default_parameter_R: 0
      gcode:
      #SET_GCODE_VARIABLE MACRO=M73 VARIABLE=R TYPE=int VALUE={params.R}
      #SET_GCODE_VARIABLE MACRO=M73 VARIABLE=P TYPE=int VALUE={params.P}
          M990073 P{ params.P|int} 
          M117 { "%02d-%02d" % (params.R|int // 60, (params.R|int) % 60) } 
      
      Merlin123M Offline
      Merlin123M Offline
      Merlin123
      schrieb am zuletzt editiert von Merlin123
      #84

      @kammi_ Also zum Verständnis:
      Ich muss das Marco in Klipper einbauen, dann kann ich mit

      http://192.168.0.252:7125/printer/objects/query?display_status
      

      nicht nur

      {"result": {"eventtime": 37888.166006499, "status": {"display_status": {"progress": 0.81, "message": null}}}}
      

      Sondern auch die Message in der Art "00-22" was dann ein Ende um 0:20Uhr bedeuten würde?

      NACHTRAG:
      Wenn ich das Macro ans Ende der gcode_macro.cfg kopiere und den status abrufe, hat sich nichts geändert :(
      Ich hab das auf nem Creality K1 am Laufen

      Beta-Tester

      K 1 Antwort Letzte Antwort
      0
      • Merlin123M Merlin123

        @kammi_ Also zum Verständnis:
        Ich muss das Marco in Klipper einbauen, dann kann ich mit

        http://192.168.0.252:7125/printer/objects/query?display_status
        

        nicht nur

        {"result": {"eventtime": 37888.166006499, "status": {"display_status": {"progress": 0.81, "message": null}}}}
        

        Sondern auch die Message in der Art "00-22" was dann ein Ende um 0:20Uhr bedeuten würde?

        NACHTRAG:
        Wenn ich das Macro ans Ende der gcode_macro.cfg kopiere und den status abrufe, hat sich nichts geändert :(
        Ich hab das auf nem Creality K1 am Laufen

        K Offline
        K Offline
        Kammi_
        schrieb am zuletzt editiert von Kammi_
        #85

        @merlin123

        Moin und Frohe Weihnachten euch allen. Ich habe das am anfang bei mir eingefügt

        # QIDI Plus4 V1.6.0
        #20241102 
        #1. 起始代码腔室加热将在调平后开启
        #2. 腔室加热开启必须带着热床升温
        #3. M141和M191宏定义修改,热床低于70会开启热床加热
        #4. 
        ## eigener code anfang
        
        [gcode_macro M73]
        rename_existing: M990073
        #variable_R: 0
        #variable_P: 0
        #default_parameter_P: 0
        #default_parameter_R: 0
        gcode:
        #SET_GCODE_VARIABLE MACRO=M73 VARIABLE=R TYPE=int VALUE={params.R}
        #SET_GCODE_VARIABLE MACRO=M73 VARIABLE=P TYPE=int VALUE={params.P}
            M990073 P{ params.P|int} 
            M117 { "%02d%02d" % (params.R|int // 60, (params.R|int) % 60) } 
        
        
        ## Eigener code ende
        [gcode_macro _CG28]
        gcode:
        

        mit dieser adresse kannst du dir alles anzeigen lassen

        http://192.168.0.84:7125/printer/objects/list
        

        würde dann so aussehen wenn du daten abrufen willst

        http://192.168.0.84:7125/printer/objects/query?display_status&heaters&print_stats
        

        die 00-22 sind in minuten du kannst die zeile auch so ändern

        M117 { "%02d:%02d" % (params.R|int // 60, (params.R|int) % 60) } Minuten
        

        dann wäre die Ausgabe 00:22 Minuten oder was du auch immer dahinter schreibst. Wie ich das anders Formatiere hab ich keine Ahnung gcode is ne andere Welt für mich.

        bei mir sieht das dann so aus in der übersicht was mich allerdings nicht stört

        M117-qidi.png

        Merlin123M 1 Antwort Letzte Antwort
        0
        • K Kammi_

          @merlin123

          Moin und Frohe Weihnachten euch allen. Ich habe das am anfang bei mir eingefügt

          # QIDI Plus4 V1.6.0
          #20241102 
          #1. 起始代码腔室加热将在调平后开启
          #2. 腔室加热开启必须带着热床升温
          #3. M141和M191宏定义修改,热床低于70会开启热床加热
          #4. 
          ## eigener code anfang
          
          [gcode_macro M73]
          rename_existing: M990073
          #variable_R: 0
          #variable_P: 0
          #default_parameter_P: 0
          #default_parameter_R: 0
          gcode:
          #SET_GCODE_VARIABLE MACRO=M73 VARIABLE=R TYPE=int VALUE={params.R}
          #SET_GCODE_VARIABLE MACRO=M73 VARIABLE=P TYPE=int VALUE={params.P}
              M990073 P{ params.P|int} 
              M117 { "%02d%02d" % (params.R|int // 60, (params.R|int) % 60) } 
          
          
          ## Eigener code ende
          [gcode_macro _CG28]
          gcode:
          

          mit dieser adresse kannst du dir alles anzeigen lassen

          http://192.168.0.84:7125/printer/objects/list
          

          würde dann so aussehen wenn du daten abrufen willst

          http://192.168.0.84:7125/printer/objects/query?display_status&heaters&print_stats
          

          die 00-22 sind in minuten du kannst die zeile auch so ändern

          M117 { "%02d:%02d" % (params.R|int // 60, (params.R|int) % 60) } Minuten
          

          dann wäre die Ausgabe 00:22 Minuten oder was du auch immer dahinter schreibst. Wie ich das anders Formatiere hab ich keine Ahnung gcode is ne andere Welt für mich.

          bei mir sieht das dann so aus in der übersicht was mich allerdings nicht stört

          M117-qidi.png

          Merlin123M Offline
          Merlin123M Offline
          Merlin123
          schrieb am zuletzt editiert von Merlin123
          #86

          @kammi_ ok. Danke. Muss ich mir mal anschauen, werd aber erst morgen dazu kommen. Sind das dann stunden:Minuten?

          Beta-Tester

          K 1 Antwort Letzte Antwort
          0
          • Merlin123M Merlin123

            @kammi_ ok. Danke. Muss ich mir mal anschauen, werd aber erst morgen dazu kommen. Sind das dann stunden:Minuten?

            K Offline
            K Offline
            Kammi_
            schrieb am zuletzt editiert von Kammi_
            #87

            @merlin123

            Ja ist es, muss jetzt nur noch nen weg finden, wie ich das in blockly umsetz das ich die aktuelle Zeit + die druck Zeit zusammen zähle und die mir ausgeben lasse so das ich se dann wiederum mit der api abrufen kann.

            //edit
            was ich festgestellt habe ist das es sich bei der Zeit wo ausgegeben wir um reine durck Zeit handelt. Also ohne aufheizen und was sonst noch vor dem eigentlichen druck passiert.

            1Topf1 1 Antwort Letzte Antwort
            1
            • K Kammi_

              @merlin123

              Ja ist es, muss jetzt nur noch nen weg finden, wie ich das in blockly umsetz das ich die aktuelle Zeit + die druck Zeit zusammen zähle und die mir ausgeben lasse so das ich se dann wiederum mit der api abrufen kann.

              //edit
              was ich festgestellt habe ist das es sich bei der Zeit wo ausgegeben wir um reine durck Zeit handelt. Also ohne aufheizen und was sonst noch vor dem eigentlichen druck passiert.

              1Topf1 Offline
              1Topf1 Offline
              1Topf
              schrieb am zuletzt editiert von
              #88

              @kammi_

              So. Ich bekomme die Zeit in den Objekten angezeigt, wenn ich in CURA das Script "Display Info on LCD" hinzufüge. Natürlich betrifft das nur die reine Druckzeit, hochheizen ist da nicht dabei.

              cura script 01.jpg

              Leider wird auch die Endzeit "Fertig um ..." nicht mit übermittelt.

              druck01.jpg

              Aber es gibt genug Datenpunkte, um den Drucker per smarter Steckdose auszuschalten, z.B. die Temperatur vom Druckbett.
              Was momentan wirklich stört ist, daß der Adapter den Fehlerspeicher von ioB füllt, sobald die Verbindung zum Drucker weg ist. Und auch, daß der Adapter mit jedem neuen Druck einen Neustart benötigt.

              Sonst hab ich nix zu meckern. :grinning:

              S V DiginixD 3 Antworten Letzte Antwort
              0
              • 1Topf1 1Topf

                @kammi_

                So. Ich bekomme die Zeit in den Objekten angezeigt, wenn ich in CURA das Script "Display Info on LCD" hinzufüge. Natürlich betrifft das nur die reine Druckzeit, hochheizen ist da nicht dabei.

                cura script 01.jpg

                Leider wird auch die Endzeit "Fertig um ..." nicht mit übermittelt.

                druck01.jpg

                Aber es gibt genug Datenpunkte, um den Drucker per smarter Steckdose auszuschalten, z.B. die Temperatur vom Druckbett.
                Was momentan wirklich stört ist, daß der Adapter den Fehlerspeicher von ioB füllt, sobald die Verbindung zum Drucker weg ist. Und auch, daß der Adapter mit jedem neuen Druck einen Neustart benötigt.

                Sonst hab ich nix zu meckern. :grinning:

                S Nicht stören
                S Nicht stören
                stenmic
                schrieb am zuletzt editiert von stenmic
                #89

                @1topf schau dir mal die mqtt Funktion von moonraker an. Hab vor langer Zeit darauf umgestellt. Damit hast du die Probleme nicht.

                hier kannst dir meine vis dazu anschauen https://forum.iobroker.net/topic/77997/meine-vis-mit-76-seiten?_=1735153770056

                1 Antwort Letzte Antwort
                0
                • 1Topf1 Offline
                  1Topf1 Offline
                  1Topf
                  schrieb am zuletzt editiert von Homoran
                  #90

                  @stenmic Über mqtt bin ich heute beim Lesen auch schon gestolpert. Wie hast Du das "aktiviert"? Offiziell gibt es da ja keine Einstellungen, zumindest seh ich nix.
                  Ich habe mir dann dieses MQTT-Plugin: (https://github.com/SuperKohl/Moonraker-MQTT-plugin) installiert, aber ich bekomme keine Verbindung. Hab jetzt gerade auch keine Lust mehr ... :expressionless:
                  Ich probiere es später nochmal.

                  S 1 Antwort Letzte Antwort
                  0
                  • 1Topf1 1Topf

                    @stenmic Über mqtt bin ich heute beim Lesen auch schon gestolpert. Wie hast Du das "aktiviert"? Offiziell gibt es da ja keine Einstellungen, zumindest seh ich nix.
                    Ich habe mir dann dieses MQTT-Plugin: (https://github.com/SuperKohl/Moonraker-MQTT-plugin) installiert, aber ich bekomme keine Verbindung. Hab jetzt gerade auch keine Lust mehr ... :expressionless:
                    Ich probiere es später nochmal.

                    S Nicht stören
                    S Nicht stören
                    stenmic
                    schrieb am zuletzt editiert von
                    #91

                    @1topf das ist das falsche Plugin, du brauchst dieses.
                    IMG_0962.jpeg

                    in den Einstellungen einen Benutzer und Passwort vergeben.
                    IMG_0963.jpeg

                    dann in der Moonraker.conf den Bereich mqtt aktivieren.
                    Bei den status_objects musst du testen welche du benötigst.
                    Die Werte werden dann alle 2 Sekunden an den ioBroker gesendet.
                    Aber nur wenn sie sich ändern.
                    Zu finden unter mqtt.
                    IMG_0964.png

                    1Topf1 Merlin123M 2 Antworten Letzte Antwort
                    0
                    • K Offline
                      K Offline
                      Kammi_
                      schrieb am zuletzt editiert von Kammi_
                      #92

                      dank @paul53 seiner hilfe bin ich fertig damit

                      qudi-fertig.png

                      1 Antwort Letzte Antwort
                      0
                      • S stenmic

                        @1topf das ist das falsche Plugin, du brauchst dieses.
                        IMG_0962.jpeg

                        in den Einstellungen einen Benutzer und Passwort vergeben.
                        IMG_0963.jpeg

                        dann in der Moonraker.conf den Bereich mqtt aktivieren.
                        Bei den status_objects musst du testen welche du benötigst.
                        Die Werte werden dann alle 2 Sekunden an den ioBroker gesendet.
                        Aber nur wenn sie sich ändern.
                        Zu finden unter mqtt.
                        IMG_0964.png

                        1Topf1 Offline
                        1Topf1 Offline
                        1Topf
                        schrieb am zuletzt editiert von
                        #93

                        @stenmic

                        Den MQTT-Adapter für ioB hab ich natürlich. Das Plugin von oben hab ich direkt auf dem Drucker installiert. Habe aber gestern abend unabhängig davon auch die Änderungen direkt in der moonraker.conf gemacht, dort nur die falsche IP reingeschrieben :man-facepalming: . Mittlerweile taucht der Drucker in den mqtt-Objekten auch auf.

                        @Kammi_

                        Mehr Infos gönnst Du uns wohl nicht? :man-shrugging:

                        K 1 Antwort Letzte Antwort
                        0
                        • 1Topf1 1Topf

                          @stenmic

                          Den MQTT-Adapter für ioB hab ich natürlich. Das Plugin von oben hab ich direkt auf dem Drucker installiert. Habe aber gestern abend unabhängig davon auch die Änderungen direkt in der moonraker.conf gemacht, dort nur die falsche IP reingeschrieben :man-facepalming: . Mittlerweile taucht der Drucker in den mqtt-Objekten auch auf.

                          @Kammi_

                          Mehr Infos gönnst Du uns wohl nicht? :man-shrugging:

                          K Offline
                          K Offline
                          Kammi_
                          schrieb am zuletzt editiert von Kammi_
                          #94

                          @1topf

                          was möchtest du den wissen ? Ich benutze nicht das Dashboard von iobroker is für mich zu mächtig. Ich benutze das Dashboard

                          https://gethomepage.dev/

                          is für meine zwecke einfacher ich hole mir die infos was ich brauch über iob Datenpunkte mit simpleapi in das Dashboard

                          hab jetzt meine 3 drucker drin war zwar bisschen fummelig mit der endzeit da klipper nich so is wie prusa aber geht jetzt auch

                          1Topf1 1 Antwort Letzte Antwort
                          0
                          • S stenmic

                            @1topf das ist das falsche Plugin, du brauchst dieses.
                            IMG_0962.jpeg

                            in den Einstellungen einen Benutzer und Passwort vergeben.
                            IMG_0963.jpeg

                            dann in der Moonraker.conf den Bereich mqtt aktivieren.
                            Bei den status_objects musst du testen welche du benötigst.
                            Die Werte werden dann alle 2 Sekunden an den ioBroker gesendet.
                            Aber nur wenn sie sich ändern.
                            Zu finden unter mqtt.
                            IMG_0964.png

                            Merlin123M Offline
                            Merlin123M Offline
                            Merlin123
                            schrieb am zuletzt editiert von Merlin123
                            #95

                            @stenmic Könntest Du die Status Objekte bitte mal als Text posten? Danke schonmal :)

                            Grundsätzlich klappt es aber :)
                            Weißt zu zufällig, in welchem Format die Eventtime übermittelt wird?

                            {"eventtime": 5520.038950165, "value": 18.43}
                            

                            Hier mal die Temperatur als Beispiel.

                            Gibt es ne Liste der möglichen Status Objekte? Sind das die: Printer Objects

                            Beta-Tester

                            S 1 Antwort Letzte Antwort
                            0
                            • Merlin123M Merlin123

                              @stenmic Könntest Du die Status Objekte bitte mal als Text posten? Danke schonmal :)

                              Grundsätzlich klappt es aber :)
                              Weißt zu zufällig, in welchem Format die Eventtime übermittelt wird?

                              {"eventtime": 5520.038950165, "value": 18.43}
                              

                              Hier mal die Temperatur als Beispiel.

                              Gibt es ne Liste der möglichen Status Objekte? Sind das die: Printer Objects

                              S Nicht stören
                              S Nicht stören
                              stenmic
                              schrieb am zuletzt editiert von
                              #96

                              @merlin123 hier sind meine… die werden nicht alle bei dir funktionieren

                              
                              status_objects:
                                firmware_retraction
                                save_variables
                                temperature_sensor beacon_coil
                                heater_bed
                                extruder
                                print_stats
                                toolhead
                                display_status
                                virtual_sdcard
                                heater_fan Hotend
                                fan
                                fan_generic Filter
                                temperature_host PI4
                                temperature_sensor PI4
                                temperature_sensor Unterboden
                                temperature_sensor Netzteil_Drucker
                                temperature_sensor Druckraum
                                motion_report
                                neopixel _Druckraum
                                neopixel _Druckkopf
                                pause_resume
                                temperature_sensor EBB
                                fan_generic Druckraum
                                webhooks
                                controller_fan Octopus_Pro
                                screws_tilt_adjust
                                gcode_move
                                temperature_sensor Octopus
                                temperature_sensor Netzteil_Heizung
                                bed_mesh
                                z_tilt
                              
                              
                              Merlin123M 1 Antwort Letzte Antwort
                              0
                              • S stenmic

                                @merlin123 hier sind meine… die werden nicht alle bei dir funktionieren

                                
                                status_objects:
                                  firmware_retraction
                                  save_variables
                                  temperature_sensor beacon_coil
                                  heater_bed
                                  extruder
                                  print_stats
                                  toolhead
                                  display_status
                                  virtual_sdcard
                                  heater_fan Hotend
                                  fan
                                  fan_generic Filter
                                  temperature_host PI4
                                  temperature_sensor PI4
                                  temperature_sensor Unterboden
                                  temperature_sensor Netzteil_Drucker
                                  temperature_sensor Druckraum
                                  motion_report
                                  neopixel _Druckraum
                                  neopixel _Druckkopf
                                  pause_resume
                                  temperature_sensor EBB
                                  fan_generic Druckraum
                                  webhooks
                                  controller_fan Octopus_Pro
                                  screws_tilt_adjust
                                  gcode_move
                                  temperature_sensor Octopus
                                  temperature_sensor Netzteil_Heizung
                                  bed_mesh
                                  z_tilt
                                
                                
                                Merlin123M Offline
                                Merlin123M Offline
                                Merlin123
                                schrieb am zuletzt editiert von
                                #97

                                @stenmic Danke! Ih schau einfach mal, welche was liefern :)

                                Beta-Tester

                                1 Antwort Letzte Antwort
                                0
                                • K Kammi_

                                  @1topf

                                  was möchtest du den wissen ? Ich benutze nicht das Dashboard von iobroker is für mich zu mächtig. Ich benutze das Dashboard

                                  https://gethomepage.dev/

                                  is für meine zwecke einfacher ich hole mir die infos was ich brauch über iob Datenpunkte mit simpleapi in das Dashboard

                                  hab jetzt meine 3 drucker drin war zwar bisschen fummelig mit der endzeit da klipper nich so is wie prusa aber geht jetzt auch

                                  1Topf1 Offline
                                  1Topf1 Offline
                                  1Topf
                                  schrieb am zuletzt editiert von
                                  #98

                                  @kammi_ sagte in Adapter Klipper-Moonraker:

                                  @1topf

                                  was möchtest du den wissen ?

                                  Wie bekommst Du die Endzeit (... ist der Druck fertig") angezeigt? Gibt es dafür einen Objektstatus? Wenn ja, wie sieht der aus? Oder ist das per Script selbst berechnet?

                                  K 1 Antwort Letzte Antwort
                                  0
                                  • 1Topf1 1Topf

                                    @kammi_ sagte in Adapter Klipper-Moonraker:

                                    @1topf

                                    was möchtest du den wissen ?

                                    Wie bekommst Du die Endzeit (... ist der Druck fertig") angezeigt? Gibt es dafür einen Objektstatus? Wenn ja, wie sieht der aus? Oder ist das per Script selbst berechnet?

                                    K Offline
                                    K Offline
                                    Kammi_
                                    schrieb am zuletzt editiert von
                                    #99

                                    @1topf hier bitte schön

                                    https://forum.iobroker.net/topic/78822/hilfe-blockly-2-uhrzeiten-in-objekt-ausgeben/8

                                    1 Antwort Letzte Antwort
                                    1
                                    • Merlin123M Offline
                                      Merlin123M Offline
                                      Merlin123
                                      schrieb am zuletzt editiert von
                                      #100

                                      Kennt jemand ne gute Methode, das Thumbnail des aktuellen Drucks abzurufen bzw. in der VIS anzuzeigen?

                                      Beta-Tester

                                      S 1 Antwort Letzte Antwort
                                      0
                                      • Merlin123M Merlin123

                                        Kennt jemand ne gute Methode, das Thumbnail des aktuellen Drucks abzurufen bzw. in der VIS anzuzeigen?

                                        S Nicht stören
                                        S Nicht stören
                                        stenmic
                                        schrieb am zuletzt editiert von stenmic
                                        #101

                                        @merlin123
                                        so mach ich es

                                        IMG_0967.jpeg

                                        IMG_0966.jpeg
                                        (ip vom Drucker anpassen)

                                        
                                        <block xmlns="https://developers.google.com/blockly/xml" type="on" id="/Z2O}ZB#,a]kn33Dz4F$" x="116" y="2253">
                                         <field name="OID">mqtt.0.Mainsail.klipper.state.print_stats.filename</field>
                                         <field name="CONDITION">ne</field>
                                         <field name="ACK_CONDITION"></field>
                                         <statement name="STATEMENT">
                                           <block type="variables_set" id="y[Oc#E_92,_2BKo4(5~[">
                                             <field name="VAR" id="BXYL{xhaLkN~v2Ldl!%!">text</field>
                                             <value name="VALUE">
                                               <block type="get_attr" id="XXR]WqWt.=HMLUr3gR}@">
                                                 <value name="PATH">
                                                   <shadow type="text" id="rrx*$IEHd@w{;*~Z+8`n">
                                                     <field name="TEXT">value</field>
                                                   </shadow>
                                                 </value>
                                                 <value name="OBJECT">
                                                   <shadow type="get_object" id="^cMzi*_aj{`Pl0P725m~">
                                                     <field name="OID">Object ID</field>
                                                   </shadow>
                                                   <block type="on_source" id="pgo{+7GzQz;]qj)e34}A">
                                                     <field name="ATTR">state.val</field>
                                                   </block>
                                                 </value>
                                               </block>
                                             </value>
                                             <next>
                                               <block type="update" id="bIOV@RC*Q+u,j_l+cDZ,">
                                                 <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                 <field name="OID">0_userdata.0.Klipper.API.Printjob.Name</field>
                                                 <field name="WITH_DELAY">FALSE</field>
                                                 <value name="VALUE">
                                                   <block type="text_getSubstring" id=";P~^,bl^VhcaeFBrn4B7">
                                                     <mutation at1="false" at2="true"></mutation>
                                                     <field name="WHERE1">FIRST</field>
                                                     <field name="WHERE2">FROM_START</field>
                                                     <value name="STRING">
                                                       <block type="variables_get" id=".)~:q(Mh|eeSdPJRu*2!">
                                                         <field name="VAR" id="BXYL{xhaLkN~v2Ldl!%!">text</field>
                                                       </block>
                                                     </value>
                                                     <value name="AT2">
                                                       <block type="math_arithmetic" id="~]oa3qPRWU)spG%YB1]]">
                                                         <field name="OP">MINUS</field>
                                                         <value name="A">
                                                           <shadow type="math_number" id="PqrA)w7#cW-.+R7[s$Ut">
                                                             <field name="NUM">1</field>
                                                           </shadow>
                                                           <block type="text_indexOf" id="r51`DlwiN)v*}8k4q}5p">
                                                             <field name="END">FIRST</field>
                                                             <value name="VALUE">
                                                               <block type="variables_get" id="sqPwTzw6?t1]F1dwmj|P">
                                                                 <field name="VAR" id="BXYL{xhaLkN~v2Ldl!%!">text</field>
                                                               </block>
                                                             </value>
                                                             <value name="FIND">
                                                               <shadow type="text" id="NN88q$[rF?qy3R1S,=Fk">
                                                                 <field name="TEXT">.gcode</field>
                                                               </shadow>
                                                             </value>
                                                           </block>
                                                         </value>
                                                         <value name="B">
                                                           <shadow type="math_number" id="Gp.#K1A?Y{{b4u]f,mK_">
                                                             <field name="NUM">1</field>
                                                           </shadow>
                                                         </value>
                                                       </block>
                                                     </value>
                                                   </block>
                                                 </value>
                                                 <next>
                                                   <block type="update" id="v~`h#IPc]?2X#3=M{X[a">
                                                     <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                     <field name="OID">0_userdata.0.Klipper.API.Printjob.Thumbnail</field>
                                                     <field name="WITH_DELAY">FALSE</field>
                                                     <value name="VALUE">
                                                       <block type="text_join" id="=uC)c{XD(`=yL3+qnM$/">
                                                         <mutation items="3"></mutation>
                                                         <value name="ADD0">
                                                           <block type="text" id="+hu6Z]DDV49vxZEG3^KI">
                                                             <field name="TEXT">http://192.168.178.113/server/files/gcodes/.thumbs/</field>
                                                           </block>
                                                         </value>
                                                         <value name="ADD1">
                                                           <block type="text_getSubstring" id=".jX}L{b`]tqX[lP+wIR2">
                                                             <mutation at1="false" at2="true"></mutation>
                                                             <field name="WHERE1">FIRST</field>
                                                             <field name="WHERE2">FROM_START</field>
                                                             <value name="STRING">
                                                               <block type="variables_get" id="ZUXf!~C]B[?oTqjrU3mF">
                                                                 <field name="VAR" id="BXYL{xhaLkN~v2Ldl!%!">text</field>
                                                               </block>
                                                             </value>
                                                             <value name="AT2">
                                                               <block type="math_arithmetic" id="rArUrH5JD`!U0PI6`=Lt">
                                                                 <field name="OP">MINUS</field>
                                                                 <value name="A">
                                                                   <shadow type="math_number" id="PqrA)w7#cW-.+R7[s$Ut">
                                                                     <field name="NUM">1</field>
                                                                   </shadow>
                                                                   <block type="text_indexOf" id="Gji4dA%oP(rS[%9W%X(m">
                                                                     <field name="END">FIRST</field>
                                                                     <value name="VALUE">
                                                                       <block type="variables_get" id="i=BXKzmS]z$x=!47DA!B">
                                                                         <field name="VAR" id="BXYL{xhaLkN~v2Ldl!%!">text</field>
                                                                       </block>
                                                                     </value>
                                                                     <value name="FIND">
                                                                       <shadow type="text" id="nTgAoKx?A/?1e#g9JTXQ">
                                                                         <field name="TEXT">.gcode</field>
                                                                       </shadow>
                                                                     </value>
                                                                   </block>
                                                                 </value>
                                                                 <value name="B">
                                                                   <shadow type="math_number" id="u3_-Ii7/U+4%YQw8Az@I">
                                                                     <field name="NUM">1</field>
                                                                   </shadow>
                                                                 </value>
                                                               </block>
                                                             </value>
                                                           </block>
                                                         </value>
                                                         <value name="ADD2">
                                                           <block type="text" id="sn3+k)T(}R(KvqNhQ6;v">
                                                             <field name="TEXT">.png</field>
                                                           </block>
                                                         </value>
                                                       </block>
                                                     </value>
                                                   </block>
                                                 </next>
                                               </block>
                                             </next>
                                           </block>
                                         </statement>
                                        </block>
                                        
                                        

                                        Merlin123M D 2 Antworten Letzte Antwort
                                        0
                                        • S stenmic

                                          @merlin123
                                          so mach ich es

                                          IMG_0967.jpeg

                                          IMG_0966.jpeg
                                          (ip vom Drucker anpassen)

                                          
                                          <block xmlns="https://developers.google.com/blockly/xml" type="on" id="/Z2O}ZB#,a]kn33Dz4F$" x="116" y="2253">
                                           <field name="OID">mqtt.0.Mainsail.klipper.state.print_stats.filename</field>
                                           <field name="CONDITION">ne</field>
                                           <field name="ACK_CONDITION"></field>
                                           <statement name="STATEMENT">
                                             <block type="variables_set" id="y[Oc#E_92,_2BKo4(5~[">
                                               <field name="VAR" id="BXYL{xhaLkN~v2Ldl!%!">text</field>
                                               <value name="VALUE">
                                                 <block type="get_attr" id="XXR]WqWt.=HMLUr3gR}@">
                                                   <value name="PATH">
                                                     <shadow type="text" id="rrx*$IEHd@w{;*~Z+8`n">
                                                       <field name="TEXT">value</field>
                                                     </shadow>
                                                   </value>
                                                   <value name="OBJECT">
                                                     <shadow type="get_object" id="^cMzi*_aj{`Pl0P725m~">
                                                       <field name="OID">Object ID</field>
                                                     </shadow>
                                                     <block type="on_source" id="pgo{+7GzQz;]qj)e34}A">
                                                       <field name="ATTR">state.val</field>
                                                     </block>
                                                   </value>
                                                 </block>
                                               </value>
                                               <next>
                                                 <block type="update" id="bIOV@RC*Q+u,j_l+cDZ,">
                                                   <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                   <field name="OID">0_userdata.0.Klipper.API.Printjob.Name</field>
                                                   <field name="WITH_DELAY">FALSE</field>
                                                   <value name="VALUE">
                                                     <block type="text_getSubstring" id=";P~^,bl^VhcaeFBrn4B7">
                                                       <mutation at1="false" at2="true"></mutation>
                                                       <field name="WHERE1">FIRST</field>
                                                       <field name="WHERE2">FROM_START</field>
                                                       <value name="STRING">
                                                         <block type="variables_get" id=".)~:q(Mh|eeSdPJRu*2!">
                                                           <field name="VAR" id="BXYL{xhaLkN~v2Ldl!%!">text</field>
                                                         </block>
                                                       </value>
                                                       <value name="AT2">
                                                         <block type="math_arithmetic" id="~]oa3qPRWU)spG%YB1]]">
                                                           <field name="OP">MINUS</field>
                                                           <value name="A">
                                                             <shadow type="math_number" id="PqrA)w7#cW-.+R7[s$Ut">
                                                               <field name="NUM">1</field>
                                                             </shadow>
                                                             <block type="text_indexOf" id="r51`DlwiN)v*}8k4q}5p">
                                                               <field name="END">FIRST</field>
                                                               <value name="VALUE">
                                                                 <block type="variables_get" id="sqPwTzw6?t1]F1dwmj|P">
                                                                   <field name="VAR" id="BXYL{xhaLkN~v2Ldl!%!">text</field>
                                                                 </block>
                                                               </value>
                                                               <value name="FIND">
                                                                 <shadow type="text" id="NN88q$[rF?qy3R1S,=Fk">
                                                                   <field name="TEXT">.gcode</field>
                                                                 </shadow>
                                                               </value>
                                                             </block>
                                                           </value>
                                                           <value name="B">
                                                             <shadow type="math_number" id="Gp.#K1A?Y{{b4u]f,mK_">
                                                               <field name="NUM">1</field>
                                                             </shadow>
                                                           </value>
                                                         </block>
                                                       </value>
                                                     </block>
                                                   </value>
                                                   <next>
                                                     <block type="update" id="v~`h#IPc]?2X#3=M{X[a">
                                                       <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                       <field name="OID">0_userdata.0.Klipper.API.Printjob.Thumbnail</field>
                                                       <field name="WITH_DELAY">FALSE</field>
                                                       <value name="VALUE">
                                                         <block type="text_join" id="=uC)c{XD(`=yL3+qnM$/">
                                                           <mutation items="3"></mutation>
                                                           <value name="ADD0">
                                                             <block type="text" id="+hu6Z]DDV49vxZEG3^KI">
                                                               <field name="TEXT">http://192.168.178.113/server/files/gcodes/.thumbs/</field>
                                                             </block>
                                                           </value>
                                                           <value name="ADD1">
                                                             <block type="text_getSubstring" id=".jX}L{b`]tqX[lP+wIR2">
                                                               <mutation at1="false" at2="true"></mutation>
                                                               <field name="WHERE1">FIRST</field>
                                                               <field name="WHERE2">FROM_START</field>
                                                               <value name="STRING">
                                                                 <block type="variables_get" id="ZUXf!~C]B[?oTqjrU3mF">
                                                                   <field name="VAR" id="BXYL{xhaLkN~v2Ldl!%!">text</field>
                                                                 </block>
                                                               </value>
                                                               <value name="AT2">
                                                                 <block type="math_arithmetic" id="rArUrH5JD`!U0PI6`=Lt">
                                                                   <field name="OP">MINUS</field>
                                                                   <value name="A">
                                                                     <shadow type="math_number" id="PqrA)w7#cW-.+R7[s$Ut">
                                                                       <field name="NUM">1</field>
                                                                     </shadow>
                                                                     <block type="text_indexOf" id="Gji4dA%oP(rS[%9W%X(m">
                                                                       <field name="END">FIRST</field>
                                                                       <value name="VALUE">
                                                                         <block type="variables_get" id="i=BXKzmS]z$x=!47DA!B">
                                                                           <field name="VAR" id="BXYL{xhaLkN~v2Ldl!%!">text</field>
                                                                         </block>
                                                                       </value>
                                                                       <value name="FIND">
                                                                         <shadow type="text" id="nTgAoKx?A/?1e#g9JTXQ">
                                                                           <field name="TEXT">.gcode</field>
                                                                         </shadow>
                                                                       </value>
                                                                     </block>
                                                                   </value>
                                                                   <value name="B">
                                                                     <shadow type="math_number" id="u3_-Ii7/U+4%YQw8Az@I">
                                                                       <field name="NUM">1</field>
                                                                     </shadow>
                                                                   </value>
                                                                 </block>
                                                               </value>
                                                             </block>
                                                           </value>
                                                           <value name="ADD2">
                                                             <block type="text" id="sn3+k)T(}R(KvqNhQ6;v">
                                                               <field name="TEXT">.png</field>
                                                             </block>
                                                           </value>
                                                         </block>
                                                       </value>
                                                     </block>
                                                   </next>
                                                 </block>
                                               </next>
                                             </block>
                                           </statement>
                                          </block>
                                          
                                          

                                          Merlin123M Offline
                                          Merlin123M Offline
                                          Merlin123
                                          schrieb am zuletzt editiert von
                                          #102

                                          @stenmic Erstmal danke für das Script :)
                                          Die URL baut er richtig zusammen, aber unter der Adresse liefert mein Drucker kein Bild:

                                          http://192.168.0.252/server/files/gcodes/.thumbs/Plate%201%20-%20Charcoal%20Black_0.15mm_PLA_Generic%20Klipper%20Printer_6h52m.png
                                          

                                          Bei mir liegt das Thumbnail unter

                                          /usr/data/printer_data/gcodes/.thumbs/Plate 1 - Charcoal Black_0.15mm_PLA_Generic Klipper Printer_6h52m-100x100.png
                                          

                                          Weißt Du, was ich machen muss, damit der Drucker das via HTML ausliefert?

                                          Beta-Tester

                                          K S 2 Antworten Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate
                                          FAQ Cloud / IOT
                                          HowTo: Node.js-Update
                                          HowTo: Backup/Restore
                                          Downloads
                                          BLOG

                                          636

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe