Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Adapter Klipper-Moonraker

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Adapter Klipper-Moonraker

    This topic has been deleted. Only users with topic management privileges can see it.
    • 1Topf
      1Topf @foxriver76 last edited by

      Mahlzeit zusammen.

      Ich habe mir vor 2 Wochen auch endlich einen 3D-Drucker gekauft, sozusagen als vorgezogenes Weihnachtsgeschenk für mich selbst. Es ist ein ELEGOO Neptune 4 Plus geworden. Und als ich dann feststellte, daß es einen Adapter für ioB gibt, war die Freude noch größer. 😁

      @foxriver76, sehe ich das richtig, daß Du da jetzt auch Entwicklungsarbeit reinsteckst? Eventuell kannst Du mir ja behilflich sein. In den Objekten wird mir der Druckfortschritt angezeigt, allerdings nicht als z.B. 80%, sondern als 0,8%. Kannst Du da was machen?

      Außerdem besteht das Problem immer noch, daß der Adapter nach Neustart des Druckers (also wenn er komplett AUS war) keine neuen Werte liefert. @Dutchman, hattest Du die Möglichkeit, Dir das mal anzuschauen?
      .
      .
      .
      Aber erstmal ist jetzt Weihnachten. Ich wünsche Euch viele Geschenke und lecker Essen. 🎅

             *             ,
                         _/^\_
                        <     >
       *                 /.-.\         *
                *        `/&\`                   *
                        ,@.*;@,
                       /_o.I %_\    *
          *           (`'--:o(_@;
                     /`;--.,__ `')             *
                    ;@`o % O,*`'`&\
              *    (`'--)_@ ;o %'()\      *
                   /`;--._`''--._O'@;
                  /&*,()~o`;-.,_ `""`)
       *          /`,@ ;+& () o*`;-';\
                 (`""--.,_0 +% @' &()\
                 /-.,_    ``''--....-'`)  *
            *    /@%;o`:;'--,.__   __.'\
                ;*,&(); @ % &^;~`"`o;@();         *
                /(); o^~; & ().o@*&`;&%O\
          jgs   `"="==""==,,,.,="=="==="`
             __.----.(\-''#####---...___...-----._
           '`         \)_`"""""`
                   .--' ')
                 o(  )_-\
                   `"""` `
      Merlin123 1 Reply Last reply Reply Quote 0
      • Merlin123
        Merlin123 @1Topf last edited by Merlin123

        @1topf Den Fortschritt einfach mit 100 multiplizieren, wenn du das als Prozent haben willst. 🙂 So ist es halt ein Wert zwischen 0 und 1

        Bezüglich den Daten: Ich lasse den Adapter einfach alle 10 Minuten neu starten. 🤷‍♂️

        Ich lass mir in der Vis die Sachen anzeigen:

        Creality K1 verbunden: true
        Druckerstatus: printing
        
        Datei: Plate 2 - Muted White_0.15mm_PLA_Generic Klipper Printer_7h26m.gcode
        Fortschritt: 56.0%
        
        
        Druckzeit bisher: 04:20:42h
        
        Layer: 348 / 772
        Druckbett: 55°C / 55°C
        Düse: 209°C / 210°C
        
        1 Reply Last reply Reply Quote 0
        • K
          Kammi_ last edited by

          Ich bin hier am verzweifeln mir die restzeit raus zu fummeln in HA gehts ja auch hat jemand schon ne lösung dafür ?

          in HA schaut das ganze so aus

          swx1_time_remaining:
                  unique_id: sensor.swx1_time_remaining
                  friendly_name: "T-remaining"
                  icon_template: mdi:clock-end
                  value_template: >-
                    {{ (((states.sensor.swx1_sensor.attributes['print_stats']['print_duration'] / states.sensor.swx1_sensor.attributes['display_status']['progress'] - states.sensor.swx1_sensor.attributes['print_stats']['print_duration']) if states.sensor.swx1_sensor.attributes['display_status']['progress'] > 0 else 0) | timestamp_custom('%H:%M:%S', 0)) if is_state('sensor.swx1_sensor', 'OK') else None }}
          
          1Topf Merlin123 2 Replies Last reply Reply Quote 0
          • 1Topf
            1Topf @Kammi_ last edited by

            @kammi_

            Die Restzeit hat es mir gestern unter "display-status" - "message" angezeigt. Heute steht dort nur "printing". 🙄

            foxriver76 1 Reply Last reply Reply Quote 0
            • Merlin123
              Merlin123 @Kammi_ last edited by

              @kammi_ Hab leider keine Möglichkeit gefunden. Der Adapter liefert da keinen brauchbaren Wert

              1 Reply Last reply Reply Quote 0
              • foxriver76
                foxriver76 Developer @1Topf last edited by

                @1topf Bei mir gibt es display_status.progress als DP. Habe da auch einen Alias drauf für *100 wenn das immer eine Konvertierung benötigt, kann man das auch im Adapter einbauen ja.

                Merlin123 1 Reply Last reply Reply Quote 1
                • Merlin123
                  Merlin123 @foxriver76 last edited by

                  @foxriver76 Schöner wäre die geplante Endzeit 😉

                  foxriver76 K 2 Replies Last reply Reply Quote 0
                  • foxriver76
                    foxriver76 Developer @Merlin123 last edited by

                    @merlin123 gibt es nicht über die API

                    Merlin123 1 Reply Last reply Reply Quote 0
                    • Merlin123
                      Merlin123 @foxriver76 last edited by

                      @foxriver76 Ah ok. Schade 😞 Ich finde aber irgendwie auch sonst keine Möglichkeit, die Restlaufzeit oder so herauszufinden.
                      Hab mal versucht über den Fortschritt und die verstrichene Zeit was zu machen, aber der Fortschritt scheint sich nicht auf die Zeit zu beziehen..

                      1 Reply Last reply Reply Quote 0
                      • K
                        Kammi_ last edited by 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) } 
                        
                        Merlin123 1 Reply Last reply Reply Quote 0
                        • K
                          Kammi_ @Merlin123 last edited by

                          @merlin123

                          lässt sich doch jetzt mit blockly etc und der simpleapi einfach umsetzen

                          1Topf 1 Reply Last reply Reply Quote 0
                          • 1Topf
                            1Topf @Kammi_ last edited by 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 ... 😁 ), 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 1 Reply Last reply Reply Quote 0
                            • K
                              Kammi_ @1Topf last edited by

                              @1topf

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

                              1 Reply Last reply Reply Quote 0
                              • Merlin123
                                Merlin123 @Kammi_ last edited by 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 1 Reply Last reply Reply Quote 0
                                • K
                                  Kammi_ @Merlin123 last edited by 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

                                  Merlin123 1 Reply Last reply Reply Quote 0
                                  • Merlin123
                                    Merlin123 @Kammi_ last edited by Merlin123

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

                                    K 1 Reply Last reply Reply Quote 0
                                    • K
                                      Kammi_ @Merlin123 last edited by 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.

                                      1Topf 1 Reply Last reply Reply Quote 1
                                      • 1Topf
                                        1Topf @Kammi_ last edited by

                                        @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. 😀

                                        S V Diginix 3 Replies Last reply Reply Quote 0
                                        • S
                                          stenmic @1Topf last edited by stenmic

                                          @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 Reply Last reply Reply Quote 0
                                          • 1Topf
                                            1Topf last edited by Homoran

                                            @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 ... 😑
                                            Ich probiere es später nochmal.

                                            S 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

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

                                            733
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            adapter update klipper moonraker
                                            22
                                            120
                                            12184
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo