NEWS
[UMFRAGE] Besteht Interesse an einem Octoprint Adapter
-
gibt es den Adapter nicht mehr?
ich habe mein System wegen eines Flashplattencrashes neu aufbauen müssen.
Die backups sind anscheinend auch kaputt.
Nun fange ich wieder von vorne an und finde octoprint nicht mehr.
Gruß,
Mathias `
Hier findest du ih: https://github.com/klein0r/ioBroker.octoprint
-
dankeschön! Ist wieder installiert.
Jetzt muß ich nur noch auf meine Sonoff S20 warten, damit der Drucker sich auch ausschaltet, wenn er fertig ist.
Gruß,
Mathias
-
Müssen in Octoprint irgend welche bestimmten PlugIn`s installiert sein damit in der Octoprint Instanz alle Datenpunkte ausgefüllt werden? Konkret geht es um die Filament Daten. Diese werden bei mir während eines Drucks nicht mit angezeigt.
siehe -> https://www.dropbox.com/s/9jvw5c4ij4ncr … r.png?dl=0
Ich habe als PlugIn den Filament Manager installiert, für den Fall das dass wichtig ist.
-
da ich gerade mal wieder einen Druckjob angeschmissen haben und hinterher immer noch manuell herunterfahre frage ich mal hier nach.
Ich möchte dem octopi nach dem job nicht einfach den Strom wegziehen sondern vorher sauber herunterfahren.
Wie habt ihr das gelöst?
-
Ich nutze zwar noch kein Octoprint aber ist in Planung.
Jetzt würden mich mal eure Views zum Thema Octoprint / 3D Drucker interessieren.
-
Ich lasse meinen OctoPI immer laufen! Ist ja auch eine Webcam dran.
! <xml 1999/xmlns="<URL url=" http:/www.w3.org/xhtml"="">http://www.w3.org/1999/xhtml">
! <block type="on_ext" id="jPa+e-oTwuMvqkll9^O" x="-813" y="12"><mutation items="1"></mutation> ! <field name="CONDITION">any</field> ! <value name="OID0"><shadow type="field_oid" id="#~L@//vxg^Qj1yk^s0Dr"><field name="oid">octoprint.0.printer_status</field></shadow></value> ! <statement name="STATEMENT"><block type="controls_if" id="._o/ONn*+[M/6a)71hk
"><value name="IF0"><block type="logic_operation" id="(#Jr7fU}F-YgawY4AXN"><field name="OP">OR</field> ! <value name="A"><block type="time_compare_ex" id="5b9i5YT~c7W4HPj^0MT("><mutation end_time="false" actual_time="true"></mutation> ! <field name="USE_ACTUAL_TIME">TRUE</field> ! <field name="OPTION">>=</field> ! <value name="START_TIME"><shadow type="text" id="S@6jX5*)9FB+d^z;;{w6"><field name="TEXT">23:59</field></shadow></value></block></value> ! <value name="B"><block type="time_compare_ex" id="vHSusy2bh[7!@fUazZVi"><mutation end_time="false" actual_time="true"></mutation> ! <field name="USE_ACTUAL_TIME">TRUE</field> ! <field name="OPTION"><</field> ! <value name="START_TIME"><shadow type="text" id="^;CH.q|?SzlD%RK8ucn="><field name="TEXT">06:00</field></shadow></value></block></value></block></value> ! <statement name="DO0"><block type="controls_if" id="I#P*fomL?a.ZDnXEkY8?"><value name="IF0"><block type="logic_operation" id="Z^s-E?4m3c~=SU][PGra"><field name="OP">AND</field> ! <value name="A"><block type="logic_compare" id=".m8Nml1u){wi32;T1N^a"><field name="OP">EQ</field> ! <value name="A"><block type="get_value" id="YoEpwvs|pr)4^ObMZQC6"><field name="ATTR">val</field> ! <field name="OID">octoprint.0.printer_status</field></block></value> ! <value name="B"><block type="text" id="T.UAy5NUX,h2C1BfV_Ao"><field name="TEXT">Operational</field></block></value></block></value> ! <value name="B"><block type="logic_compare" id="~,SCVn~FVTWIKWFWoHI]"><field name="OP">EQ</field> ! <value name="A"><block type="get_value" id="iI~q^ah
H;(DsU/UICg*"><field name="ATTR">val</field>
! <field name="OID">octoprint.0.printjob.progress.completion</field></block></value>
! <value name="B"><block type="math_number" id="1Ed%TcuUcQj_4e;.U+1"><field name="NUM">100</field></block></value></block></value></block></value> ! <statement name="DO0"><block type="control" id="YS0
5]`T?AS5K{){~dU)"><mutation delay_input="true"></mutation>
! <field name="OID">hs100.0.192_168_0_37.state</field>
! <field name="WITH_DELAY">TRUE</field>
! <field name="DELAY_MS">15</field>
! <field name="UNIT">min</field>
! <field name="CLEAR_RUNNING">FALSE</field>
! <value name="VALUE"><block type="logic_boolean" id="J|tC)Ni#xF.E,FI^T?Ca"><field name="BOOL">FALSE</field></block></value></block></statement></block></statement></block></statement></block></xml>so habs ich gelöst mit einer Funksteckdose.
Mein Ansatz war allerdings nach Fertigstellung den Strom vom Drucker abzudrehen.
Für eine Heatbed Kühlung hab ich folgendes Script:
! <xml 1999/xmlns="<URL url=" http:/www.w3.org/xhtml"="">http://www.w3.org/1999/xhtml">
! <block type="on_ext" id="jPa+e-oTwuMvqkll9^O" x="-838" y="-212"><mutation items="1"></mutation> ! <field name="CONDITION">ge</field> ! <value name="OID0"><shadow type="field_oid" id="#~L@//vxg^Qj1yk^s0Dr"><field name="oid">octoprint.0.printjob.progress.completion</field></shadow></value> ! <statement name="STATEMENT"><block type="controls_if" id="I#P*fomL?a.ZDnXEkY8?"><mutation elseif="1"></mutation> ! <value name="IF0"><block type="logic_operation" id="~ftt,d@stkd2i5zAjs{_"><field name="OP">AND</field> ! <value name="A"><block type="logic_compare" id="T0}MDoyC~T8l6*E|{o%p"><field name="OP">EQ</field> ! <value name="A"><block type="get_value" id="+[8/RUdI!YGO}(qoiJ]h"><field name="ATTR">val</field> ! <field name="OID">octoprint.0.printer_status</field></block></value> ! <value name="B"><block type="text" id="j.|T%K,;mL%icwh.{n#v"><field name="TEXT">Operational</field></block></value></block></value> ! <value name="B"><block type="logic_operation" id=".a-Usz}7USy}KC(Kk2u9"><field name="OP">AND</field> ! <value name="A"><block type="logic_compare" id="D^tb-I9eN{]I3
mRwD^k"><field name="OP">EQ</field>
! <value name="A"><block type="get_value" id="HlkW!uTky~eLeGKRX3t7"><field name="ATTR">val</field>
! <field name="OID">octoprint.0.printjob.progress.completion</field></block></value>
! <value name="B"><block type="math_number" id="7WW^GA7H+@t+sph%zr4G"><field name="NUM">100</field></block></value></block></value>
! <value name="B"><block type="logic_compare" id="-3:?gg2eElcMjCxc}{3Q"><field name="OP">GTE</field>
! <value name="A"><block type="get_value" id="_hUW0+_g2OBskGG[.542"><field name="ATTR">val</field>
! <field name="OID">octoprint.0.temperature.bed.actual</field></block></value>
! <value name="B"><block type="math_number" id="z;EA^t5-R/@~7)O7Lu-"><field name="NUM">30</field></block></value></block></value></block></value></block></value> ! <statement name="DO0"><block type="control" id="YS0
5]T?AS5K{){~dU)"><mutation delay_input="false"></mutation> ! <field name="OID">hs100.0.192_168_0_38.state</field> ! <field name="WITH_DELAY">FALSE</field> ! <value name="VALUE"><block type="logic_boolean" id="J|tC)Ni#xF.E,FI^T?Ca"><field name="BOOL">TRUE</field></block></value></block></statement> ! <value name="IF1"><block type="logic_operation" id="Z^s-E?4m3c~=SU][PGra"><field name="OP">AND</field> ! <value name="A"><block type="logic_compare" id=".m8Nml1u){wi32;T1N^a"><field name="OP">EQ</field> ! <value name="A"><block type="get_value" id="YoEpwvs|pr)4^ObMZQC6"><field name="ATTR">val</field> ! <field name="OID">hs100.0.192_168_0_38.state</field></block></value> ! <value name="B"><block type="logic_boolean" id="#Ev3)B2II(x6[Ai!H-9|"><field name="BOOL">TRUE</field></block></value></block></value> ! <value name="B"><block type="logic_compare" id="{X~?!War1q8dHJ,.v4!C"><field name="OP">LT</field> ! <value name="A"><block type="get_value" id="c{mvK@X3,QocT-XF4e(D"><field name="ATTR">val</field> ! <field name="OID">octoprint.0.temperature.bed.actual</field></block></value> ! <value name="B"><block type="math_number" id="Uh2,[IS#g_
AR=6#;[*S"><field name="NUM">30</field></block></value></block></value></block></value>
! <statement name="DO1"><block type="control" id="rjF]fs/UKg/4YLqu(0D("><mutation delay_input="false"></mutation>
! <field name="OID">hs100.0.192_168_0_38.state</field>
! <field name="WITH_DELAY">FALSE</field>
! <value name="VALUE"><block type="logic_boolean" id="b8+71vK6N~LuDm|1BB0#"><field name="BOOL">FALSE</field></block></value>
! <next><block type="controls_if" id="}]h)9l5:Gpj^):JV2GQq"><value name="IF0"><block type="time_compare" id="GC3SlU0i7t.}V+m9RG08"><mutation end_time="true"></mutation>
! <field name="OPTION">not between</field>
! <field name="START_TIME">12:00</field>
! <field name="END_TIME">16:00</field></block></value>
! <statement name="DO0"><block type="timeouts_settimeout" id="]}CW5/+ulF8RBd4/hiIh"><field name="NAME">timeout</field>
! <field name="DELAY">1</field>
! <field name="UNIT">min</field>
! <statement name="STATEMENT"><block type="sayit" id="9g)j7uw_cOp,FUauB;;b"><field name="INSTANCE">.1</field>
! <field name="LANGUAGE">de-DE_CLOUD_Female</field>
! <value name="VOLUME"><block type="math_number" id="2O@ecO97hTtuzKrAw6e`"><field name="NUM">20</field></block></value>
! <value name="MESSAGE"><shadow type="text" id=";gH[}uvuo:NmexNlEYmX"><field name="TEXT">Der Drucker ist fertig</field></shadow></value></block></statement></block></statement></block></next></block></statement></block></statement></block></xml> -
Du kühlst das Bett runter damit du nach dem Druck schneller das Druckobjekt runter nehmen kannst? War mir zuviel Energie/Zeitverschwendung. z.Z verwende ich 2 3mm-Glasplatten im wechsel. Wobei beide jetzt so starke Abplatzungen haben - nicht mehr zu gebrauchen. Werde jetzt erst mal auf https://www.ebay.de/i/263744832921?chn=ps&var=562948292029 umsteigen. zu CFK kann ich immer noch wechseln wenn sich das nicht bewährt.
wegen der picam bin auch noch am überlegen ob ich den octopi vielleicht doch an lasse.
Etwas abgewandelt soll diese https://paolonegrini.wordpress.com/ mit in den Druckerschrank, Durch die Glastür könnte sie dann auch noch Überwachungsaufgaben machen in Abwesenheit.
Mit VIS habe ich noch nicht all zuviel gemacht, für den Anfang reicht mir die Einbindung als iFrame.
Ansicht vom Enclosure-Plugin (DHT22 und 2-fach-Relaymodul)
Statistikwerte: Strom/Materialkosten möchte ich dann auch noch in die View einbauen. Button [Statistik] neben dem "Hauptschalter" für popUp mit den Werten. -
Das Ausschalten habe ich über einen Sonoff Pow mit folgendem Script gelöst:
<xml xmlns="http://www.w3.org/1999/xhtml"><block type="on_ext" id="+A7wlutQO8gBfqosc.y3" x="-412" y="-12"><mutation items="1"></mutation> <field name="CONDITION">any</field> <value name="OID0"><shadow type="field_oid" id="L[i=p{|ii-ai*/YAZ@8s"><field name="oid">sonoff.0.Sonoff-Pow-3D.ENERGY_Power</field></shadow></value> <statement name="STATEMENT"><block type="controls_if" id="V6]e:v6u:?I_dnQ6L_VO"><mutation elseif="1"></mutation> <value name="IF0"><block type="logic_compare" id="YL]^MiM0C_d90EjXd7qr"><field name="OP">GT</field> <value name="A"><block type="get_value" id="yM=9zWrslsViHeXAVGm6"><field name="ATTR">val</field> <field name="OID">sonoff.0.Sonoff-Pow-3D.ENERGY_Power</field></block></value> <value name="B"><block type="text" id="H=g~S*6(?G/uCr~jDdCp"><field name="TEXT">10</field></block></value></block></value> <statement name="DO0"><block type="control" id="vs.J|^}}{M%%SJ1bpk;V"><mutation delay_input="false"></mutation> <field name="OID">sonoff.0.Sonoff-Pow-3D.3D-Drucker-fertig</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="logic_boolean" id="gvfoVV5t!!Us3^C~!w.H"><field name="BOOL">FALSE</field></block></value> <next><block type="timeouts_cleartimeout" id="apiURFCkyZ5BN6NO=/fL"><field name="NAME">timeout</field></block></next></block></statement> <value name="IF1"><block type="logic_compare" id="M~uV)}gj0R1:#*W8;u|_"><field name="OP">LT</field> <value name="A"><block type="get_value" id=";C4ZX5Zy!7cKvi8im7j~"><field name="ATTR">val</field> <field name="OID">sonoff.0.Sonoff-Pow-3D.ENERGY_Power</field></block></value> <value name="B"><block type="text" id="qZr5=RgO[|.`JAG]=%:e"><field name="TEXT">10</field></block></value></block></value> <statement name="DO1"><block type="control" id="W@d-F3O_9HHWW#dCNkL="><mutation delay_input="false"></mutation> <field name="OID">sonoff.0.Sonoff-Pow-3D.3D-Drucker-fertig</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="logic_boolean" id="A4H}`x`xaT~u.qw:OMjO"><field name="BOOL">TRUE</field></block></value></block></statement></block></statement> <next><block type="on_ext" id="u:R0u7j.Y,8EdsUCK6kQ"><mutation items="1"></mutation> <field name="CONDITION">ne</field> <value name="OID0"><shadow type="field_oid" id="jgpdw:j!HF59WUplmK}~"><field name="oid">sonoff.0.Sonoff-Pow-3D.3D-Drucker-fertig</field></shadow></value> <statement name="STATEMENT"><block type="controls_if" id="0KU30/v2h#W(!`#[gp76"><mutation elseif="1"></mutation> <value name="IF0"><block type="logic_compare" id="]-Zb+?Hn_!lMC-aT9alk"><field name="OP">EQ</field> <value name="A"><block type="get_value" id="ln#_*!,/omF%2!L4WRp-"><field name="ATTR">val</field> <field name="OID">sonoff.0.Sonoff-Pow-3D.3D-Drucker-fertig</field></block></value> <value name="B"><block type="logic_boolean" id="pSN^b91_Se1kc2o;W4J^"><field name="BOOL">FALSE</field></block></value></block></value> <value name="IF1"><block type="logic_compare" id="21(9~CU|XRCn:EOXk2/@"><field name="OP">EQ</field> <value name="A"><block type="get_value" id="TSvo:2H{H+}IE{#M1`FO"><field name="ATTR">val</field> <field name="OID">sonoff.0.Sonoff-Pow-3D.3D-Drucker-fertig</field></block></value> <value name="B"><block type="logic_boolean" id="h=.8?l5o{aiN|)W)LXh@"><field name="BOOL">TRUE</field></block></value></block></value> <statement name="DO1"><block type="timeouts_settimeout" id="m8BV9!UXyNHrGQ_tsyG0"><field name="NAME">timeout</field> <field name="DELAY">5</field> <field name="UNIT">min</field> <statement name="STATEMENT"><block type="telegram" id="ed05d|bQf^sw*MK?SR-6"><field name="INSTANCE">.0</field> <field name="SILENT">FALSE</field> <field name="PARSEMODE">default</field> <value name="MESSAGE"><shadow type="text" id="sKyyX,f?IkAZP`RFQReF"><field name="TEXT">Die Waschmaschine ist fertig :)</field></shadow> <block type="text_join" id=":?(LV%}eMmeGg5)=s63{"><mutation items="4"></mutation> <value name="ADD0"><block type="text" id="Me[sfL:79y?isrCAn~-e"><field name="TEXT">Der 3D-Drucker ist fertig :)</field></block></value> <value name="ADD1"><block type="text" id="0bN](j4?-62PDxGTFs`K"><field name="TEXT">Und du hast heute</field></block></value> <value name="ADD2"><block type="get_value" id="5nYhH(Z-[f`G*,+qIZ;H"><field name="ATTR">val</field> <field name="OID">sonoff.0.Sonoff-Pow-3D.ENERGY_Today</field></block></value> <value name="ADD3"><block type="text" id=",nn}rYrBfCaxgJPdJkp7"><field name="TEXT"> kWh beim Drucken verbraucht.</field></block></value></block></value> <next><block type="control" id="avhQpydDr.5IS5{OBum-"><mutation delay_input="true"></mutation> <field name="OID">sonoff.0.Sonoff-Pow-3D.POWER</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">30</field> <field name="UNIT">sec</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="VALUE"><block type="logic_boolean" id="QK@ta){*BlJ.2HOiu`N0"><field name="BOOL">FALSE</field></block></value></block></next></block></statement></block></statement></block></statement></block></next></block></xml>
Schön wäre natürlich wenn er den Raspi noch sauber runter fahren würde.
Wie kann man das noch einbinden?
-
Hallo Kollegen,
habe mich gerade ganz eifrig durch den Fred gelesen.
Da ich nun ebenfalls mit dem "Hobby 3D Druck" anfange, möchte ich gerne in einem der nächsten Schritte Octoprint in den Broker bringen.
Gibt es mittlerweile schon eine weitere Version des Adapters?
Gruß Sascha
-
Hallo Sascha,
an dem Adapter wird scheinbar schon länger nicht mehr gearbeitet. letzter Fork scheint dieser zu sein
https://github.com/resper/ioBroker.octoprint
cu xbow42
-
Hallo Xbow,
herzlichen Dank für Deine Antwort.
Leider macht der Adapter hinter dem Link auch nichts.
Installation läuft durch, er ist dann unter Adaptern ersichtlich, legt jedoch weder irgeneine Instanz oder Objekt an.
Werde dann mal zwischenzeitlich versuchen über MQTT einen Weg zu finden.
Danke!
Gruß Sascha
-
….
Leider macht der Adapter hinter dem Link auch nichts.
Installation läuft durch, er ist dann unter Adaptern ersichtlich, legt jedoch weder irgeneine Instanz oder Objekt an. `
Ich hab das gleiche Problem. Hab jetzt alle Forks durch, keiner erstellt ne Instanz. iobroker upload octoprint klappt auch nicht, zig mal neu und drüber installiert = ohne Erfolg
ich hab mal nen issue auf git auf gemacht.
-
Hallo zusammen,
habe es gerade installiert, funktioniert.
Die Instanz hatte auch gefehlt, unter den Adaptern in der Zeile von OctoPrint kann man mit dem Plus Icon eine Instanz hinzufügen.
Unter den Einstellungen musste ich noch den API Key eintragen und den Port auf 80 ändern.
Eventuell hilft euch dies weiter.
Grüße
Uwe
-
Hallo zusammen,
dieser Thread ist zwar schon etwas älter, aber ich habe erst vor ca. 3 Monaten einen 3D-Drucker (Anicubic Mega S) in Betrieb genommen und den octoprint-Adapter installiert. Läuft soweit alles prima.
Eine Frage/Bitte hätte ich an die Adapter-Entwickler:
Läßt sich das Abfrage-Intervall des Adapters irgendwo ändern?
Die voreingestellten 60000 Sek. = 1 Min. sind mir zu lang.Ich hatte mir auf GitHub die datei main.js angesehen, in der folgender Code enthalten ist:
function main() { adapter.subscribeStates('*'); adapter.setState('printer_status', {val: printerStatus, ack: true}); // Refresh State every Minute refreshState(); setInterval(refreshState, 60000); }
Damitwird wohl das Refresh-Intervall festgelegt.
Dann habe ich versucht, diese Datei, bzw. den String "setInterval(refreshState, 60000);" auf dem ioBroker-Raspi zu finden, leider erfolglos.Kann mir jemand sagen, wo ich diese Datei finde, bzw., wie ich anderweitig das Abfrage-Intervall des octoprint-Adapters ändern kann?
Gruß und Danke
Jörg -
Die Datei findest du in /iobroker/nodem_modules/iobroker.octoprint
-
@Jey-Cee
Danke!
Habe die Datei gefunden.
Werde sie morgen mal editieren und testen.Gruß
Jörg -
@Jey-Cee
ich habe mal in der Datei /iobroker/nodem_modules/iobroker.octoprint/main.js das setInterval von 60000 ms auf 5000 ms herabgesetzt:function main() { adapter.subscribeStates('*'); adapter.setState('printer_status', {val: printerStatus, ack: true}); // Refresh State every 5 seconds refreshState(); setInterval(refreshState, 5000); .......
Danach die octoprint.0-Instanz neu gestartet !!! (wichtig)
Funktioniert !
Ergo werden die Stati (Temperaturen, Druckfortschritt, etc.) im vis-View jetzt alle 5 Sekunden aktualisiert.Danke nochmals
Jörg -
bekomme im octoprint keine length vom filament angezeigt!
ich slice mit Simplify3D vielleicht liegt es daran?hat jemand eine idee?
-
@bishop
Filament-length wird bei mir auch nicht angezeigt ( mit Cura gesliced).Ich hatte auch mal in Octoprint ein Plugin zur Verwaltung der vorhandenen Filament-Rollen eingebunden,
wo man z.B. eintragen kann, von Filament-Rolle xy, rot, sind noch soundsoviel vorhanden.
Aber auch mit diesem Plugin wurden keine Längen angezeigt.
Mir war es auch zu aufwändig immer den Rollenbestand manuell zu pflegen, ergo habe ich das Plugin wieder deinstalliert.Anscheinend wird der Adapter auch nicht mehr gepflegt.
Gruß
Jörg -
hm..
schade, die Stromkosten werden mir schon ausgerechnet.
Mit dem DP length könnte man die kompletten kosten des gedruckten Modelles ausrechnen lassen!komisch ist ja das es den DP gibt aber nicht gefüllt wird.