FHEM Forum

FHEM => Sonstiges => Thema gestartet von: the ratman am 13 April 2024, 17:33:20

Titel: druckabfragen für den flashforge adventurer 5m (pro) 3d drucker
Beitrag von: the ratman am 13 April 2024, 17:33:20
hiho,
nachdem ich hier ja sehr kompetente hilfe bei den abfragen bekommen hab, will ich das gesamtkonstrukt aus httpmod, doif und (für win) rainmeter zur verfügung stellen.

was ist das ganze?
einfach ein paar daten des aktuellen drucks im 3d-drucker.

es gibt allerdings immer noch das ungelöste problem, dass der drucker abfragen scheinbar nur alle 35 sekunden zulässt. das ganze reicht also grade mal für eine übersicht, aber nicht für eine layer/%-genau info.

und ja, es ist mir klar, dass das sehr viel hier wesentlich besser hinbekommen würden. aber mir reichts mal. ausserdem freu' ich mich über jeden hier, der denselben drucker hat und mit mir infos austauschen will.

bitte nicht vergessen, die ip-adresse des druckers, den namen der steckdose im doif, usw. anzupassen.
wer mein doif nicht verwendet, muß auch mal die disable=1 in den httmods rauswerfen.

die 3 httpmod abfragen:
1) infos zu "% fertig" und die maximale anzahl der layer, sowie die aktuelle layerhöhe
defmod adv5mpro1 HTTPMOD http://192.168.178.9:8899/command 35
attr adv5mpro1 alias die fabrik - fortschritt
attr adv5mpro1 enableControlSet 1
attr adv5mpro1 group 3d druck
attr adv5mpro1 httpVersion 1.1
attr adv5mpro1 icon 3d_printer
attr adv5mpro1 reading01Name prozentIst
attr adv5mpro1 reading01Regex byte (\d+)
attr adv5mpro1 reading02Name layerIst
attr adv5mpro1 reading02Regex Layer: (\d+)
attr adv5mpro1 reading03Name layerSoll
attr adv5mpro1 reading03Regex Layer: \d+\/(\d+)
attr adv5mpro1 requestData ~M27
attr adv5mpro1 room computer
attr adv5mpro1 showBody 1
attr adv5mpro1 stateFormat <table>\
<tr>\
<td align="left">fertig: </td><td align="left">prozentIst&nbsp;;%</td><td></td><td></td>\
</tr><tr>\
<td align="left">layer: </td><td align="left">layerIst</td><td>&nbsp;;von&nbsp;;</td><td align="left">layerSoll</td>\
</tr>\
</table>
attr adv5mpro1 timeout 35

setstate adv5mpro1 <table>\
<tr>\
<td align="left">fertig: </td><td align="left">0&nbsp;;%</td><td></td><td></td>\
</tr><tr>\
<td align="left">layer: </td><td align="left">0</td><td>&nbsp;;von&nbsp;;</td><td align="left">0</td>\
</tr>\
</table>

2) model-namen (vollständig und auch nur der name) und der zustand und modus in dem sich der drucker gerade befindet
defmod adv5mpro2 HTTPMOD http://192.168.178.9:8899/command 35
attr adv5mpro2 alias die fabrik - infos
attr adv5mpro2 disable 1
attr adv5mpro2 enableControlSet 1
attr adv5mpro2 group 3d druck
attr adv5mpro2 httpVersion 1.1
attr adv5mpro2 icon 3d_printer
attr adv5mpro2 reading01Name modell
attr adv5mpro2 reading01Regex CurrentFile: (.*)
attr adv5mpro2 reading02Name mode
attr adv5mpro2 reading02Regex MoveMode: (.*)
attr adv5mpro2 reading04Name status
attr adv5mpro2 reading04Regex MachineStatus: (.*)
attr adv5mpro2 requestData ~M119
attr adv5mpro2 room computer
attr adv5mpro2 showBody 1
attr adv5mpro2 stateFormat <table>\
<tr>\
<td align="left">name: </td><td align="left">modell</td>\
</tr><tr>\
<td align="left">modus: </td><td align="left">mode</td></td>\
</tr><tr>\
<td align="left">zustand: </td><td align="left">status</td></td>\
</tr>\
</table>
attr adv5mpro2 timeout 35
attr adv5mpro2 userReadings modell_simpel { my $js = ReadingsVal($NAME,"modell",0);;if ($js =~/zGapTest/){return "teste düsen kalibrierung";;} $js=~s/.gcode//;; $js=~s/_/ /g;;$js;;}

setstate adv5mpro2 <table>\
<tr>\
<td align="left">name: </td><td align="left">auftragslos</td>\
</tr><tr>\
<td align="left">modus: </td><td align="left">aus</td></td>\
</tr><tr>\
<td align="left">zustand: </td><td align="left">aus</td></td>\
</tr>\
</table>

3) die aktuellen düsen- und bett-temperaturen, plus deren soll
defmod adv5mpro HTTPMOD http://192.168.178.9:8899/command 35
attr adv5mpro alias die fabrik - temperaturen
attr adv5mpro enableControlSet 1
attr adv5mpro group 3d druck
attr adv5mpro httpVersion 1.1
attr adv5mpro icon 3d_printer
attr adv5mpro reading01Name nozzleIst
attr adv5mpro reading01Regex T0:(\d+\.\d+)
attr adv5mpro reading02Name nozzleSoll
attr adv5mpro reading02Regex T0:\d+\.\d+/(\d+)
attr adv5mpro reading03Name bedIst
attr adv5mpro reading03Regex B:(\d+\.\d+)
attr adv5mpro reading04Name bedSoll
attr adv5mpro reading04Regex B:\d+\.\d+/(\d+)
attr adv5mpro requestData ~M105
attr adv5mpro room computer
attr adv5mpro showBody 1
attr adv5mpro stateFormat <table>\
<tr>\
<td align="left">düse: </td><td align="left">nozzleIst°C</td><td>&nbsp;;von&nbsp;;</td><td align="left">nozzleSoll°C</td>\
</tr><tr>\
<td align="left">bett: </td><td align="left">bedIst°C</td><td>&nbsp;;von&nbsp;;</td><td align="left">bedSoll°C</td>\
</tr>\
</table>
attr adv5mpro timeout 35

setstate adv5mpro <table>\
<tr>\
<td align="left">düse: </td><td align="left">X°C</td><td>&nbsp;;von&nbsp;;</td><td align="left">X°C</td>\
</tr><tr>\
<td align="left">bett: </td><td align="left">X°C</td><td>&nbsp;;von&nbsp;;</td><td align="left">X°C</td>\
</tr>\
</table>

da ich noch eine steuerbare steckdose hab, um den drucker abzustellen, verwend' ich auch gleich folgendes doif, um den readings passende namen zu verpassen, wenn der drucker aus ist. außerdem stell' ich die httpmods ab damit
defmod doif_adv5mpro_abfrageio DOIF ( [HUEDevice13:state] eq "off" )\
\
(set adv5mpro stop)\
(set adv5mpro1 stop)\
(set adv5mpro2 stop)\
(setreading adv5mpro bedIst X )\
(setreading adv5mpro bedSoll X )\
(setreading adv5mpro nozzleIst X )\
(setreading adv5mpro nozzleSoll X )\
(setreading adv5mpro1 layerIst 0 )\
(setreading adv5mpro1 layerSoll 0 )\
(setreading adv5mpro1 prozentIst 0 )\
(setreading adv5mpro2 mode aus )\
(setreading adv5mpro2 modell auftragslos )\
(setreading adv5mpro2 status aus )\
\
DOELSEIF\
\
( [HUEDevice13:state] eq "on" )\
\
(set adv5mpro start)\
(set adv5mpro1 start)\
(set adv5mpro2 start)
attr doif_adv5mpro_abfrageio alias die fabrik - abfragen start stop
attr doif_adv5mpro_abfrageio do always
attr doif_adv5mpro_abfrageio group 3d druck
attr doif_adv5mpro_abfrageio icon helper_doif
attr doif_adv5mpro_abfrageio room computer

das mach' ich vor allem, dass der rainmeter in meinem win ruhe gibt - wer den auch verwendet:
[Rainmeter]
Update=1000
BackgroundMode=0
DynamicWindowSize=1

################################################################################################################
#####   BEZEICHNUNG
################################################################################################################

[linie]
Meter=Image
X=0
Y=530
W=140
H=1
SolidColor=0,0,0,255
[kreis_aussen]
Meter=Roundline
x=140
y=500
W=60
H=60
StartAngle=(Rad(270))
RotationAngle=(Rad(360))
LineWidth=1
LineStart=28
LineLength=30
LineColor=0,0,0,255
Solid=1
AntiAlias=1
[kreis_füllung]
Meter=Roundline
x=141
y=501
W=58
H=58
LineWidth=1
LineStart=0
LineLength=29
LineColor=200,200,200,255
Solid=1
AntiAlias=1
[Text1]
Meter=String
X=5
Y=503
FontFace=Bahnschrift
FontColor=0,0,0,255
FontSize=10
AntiAlias=1
Text=in der fabrik


################################################################################################################
#####   INFO % fertig
################################################################################################################


[MeasureFertig]
Measure=WebParser
URL=http://192.168.178.8:8083/fhem?cmd={ReadingsVal(%22adv5mpro1%22,%22prozentIst%22,0)}&XHR=1
RegExp=(.*)
UpdateRate=10
StringIndex=1
[MeasureProzent]
Measure=Calc
Formula=(MeasureFertig % 100) + 1
MinValue=1
MaxValue=100
[MeterFertigRand]
Meter=Image
SolidColor=0,0,0,255
X=5
Y=520
W=107
H=20
[MeterFertigBar]
Meter=BAR
MeasureName=MeasureProzent
X=6
Y=521
W=105
H=18
BarColor=128,0,0,255
SolidColor=232,232,232,255
BarOrientation=Horizontal
[MeterFertigText]
Meter=String
MeasureName=MeasureFertig
X=7
Y=522
FontFace=Bahnschrift
FontColor=0,0,0,255
FontSize=11
AntiAlias=1
AutoScale=1
Text=%1%


################################################################################################################
#####   INFO ModellName
################################################################################################################


[MeasureModell]
Measure=WebParser
URL=http://192.168.178.8:8083/fhem?cmd={ReadingsVal(%22adv5mpro2%22,%22modell_simpel%22,0)}&XHR=1
RegExp=(.*)
UpdateRate=10
StringIndex=1
[textModell]
Meter=String
MeasureName=MeasureModell
X=5
Y=490
StringAlign=left
FontFace=Bahnschrift
FontColor=0,0,0,255
FontSize=10
AntiAlias=1
Text=%1


################################################################################################################
#####   INFO Layeranzahl
################################################################################################################


[MeasureLayerIst]
Measure=WebParser
URL=http://192.168.178.8:8083/fhem?cmd={ReadingsVal(%22adv5mpro1%22,%22layerIst%22,0)}&XHR=1
RegExp=(.*)
UpdateRate=10
StringIndex=1
[MeasurelayerSoll]
Measure=WebParser
URL=http://192.168.178.8:8083/fhem?cmd={ReadingsVal(%22adv5mpro1%22,%22layerSoll%22,0)}&XHR=1
RegExp=(.*)
UpdateRate=10
StringIndex=1
[LayerEineZeile]
Meter=String
FontFace=Bahnschrift
FontColor=100,100,100,255
FontSize=12
AntiAlias=1
X=5
Y=544
Text=layer [&MeasureLayerIst] von [&MeasurelayerSoll]
DynamicVariables=1

################################################################################################################
#####   INFO IO
################################################################################################################

[kreis3_aussen]
Meter=Roundline
X=110
Y=510
W=40
H=40
StartAngle=(45*(PI/180))
RotationAngle=(270*(PI/180))
LineWidth=1
LineStart=19
LineLength=20
LineColor=0,0,0,255
Solid=1
AntiAlias=1
[kreis3_füllung]
Meter=Roundline
x=111
y=511
W=38
H=38
LineWidth=1
LineStart=0
LineLength=19
LineColor=200,200,200,255
Solid=1
AntiAlias=1

[MeasureIO]
Measure=WebParser
URL=http://192.168.178.8:8083/fhem?cmd={ReadingsVal(%22HUEDevice13%22,%22onoff%22,0)}&XHR=1
RegExp=(.*)
UpdateRate=1
StringIndex=1

[schalterIO]
Meter=Image
MeasureName=MeasureIO
ImageName=%1.png
X=113
Y=513
W=32
H=32
LeftMouseUpAction=[!ToggleMeterGroup "IO"]|[!UpdateGroup "IO"]


################################################################################################################
#####   INFO KAMERA + POPUP BROWSER
################################################################################################################

[MeterCam]
Meter=Image
ImageName=cam.png
X=145
Y=505
W=50
H=50
LeftMouseUpAction=["C:\Program Files (x86)\Microsoft\Edge\Application\msedge_proxy.exe"  --profile-directory=Default --app-id=nibhlpbnnhfiklkjbbokjbjmdhingghe --app-url=http://192.168.178.9:8080/stream_simple.html --app-launch-source=4]

################################################################################################################
#####   POPUP IO-SCHALTER
################################################################################################################

[io_kreis_aussen]
Group=IO
Hidden=1
Meter=Roundline
X=170
Y=530
LineWidth=2
LineStart=0
LineLength=40
LineColor=20,20,20,150
Solid=1
AntiAlias=1
[io_kreis_füllung]
Group=IO
Hidden=1
Meter=Roundline
X=171
Y=531
LineWidth=1
LineStart=0
LineLength=40
LineColor=200,200,200,150
Solid=1
AntiAlias=1

[io_schalter]
Group=IO
Hidden=1
Meter=Image
MeasureName=MeasureIO
ImageName=%1.png
X=122
Y=483
W=90
H=90
LeftMouseUpAction=["#CURRENTPATH#WebPost.exe" "http://192.168.178.8:8083/fhem?cmd.HUEDevice13=set HUEDevice13 toggle"]|[!ToggleMeterGroup "IO"]
das sieht dann so aus v09.jpg
mittlerweile hat der auch einen schönen %-balken unter der %-zahl *g*
das videofenster kommt aus dem microsft-edge - mit dem ich den aufruf einfach als app gespeichert hab.

hier WebPost.exe (https://forum.fhem.de/index.php?action=dlattach;attach=177776;type=preview;file) noch die webPost.exe. die gehört zum script ins selbe verzeichnis und schaltet die steckdose.

des weiteren ein paar grafiken für den anfang. die gehören auch einfach ins verzeichnis des scripts
Titel: Aw: druckabfragen für den flashforge adventurer 5m (pro) 3d drucker
Beitrag von: the ratman am 13 April 2024, 17:36:17
und hier noch die readingsgroup mit allen daten + cam. angepasst für meinen handy-floorplan.
defmod rg_ffadv5mpro readingsGroup HUEDevice13:state,modell_simpel@adv5mpro2\
adv5mpro:<düse:&nbsp;;>,nozzleIst,<von>,nozzleSoll\
adv5mpro:<bett:&nbsp;;>,bedIst,<von>,bedSoll\
<hr>\
adv5mpro1:<fertig:&nbsp;;>,prozentIst\
adv5mpro1:<layer:&nbsp;;>,layerIst,<von>,layerSoll\
adv5mpro2:<zustand:&nbsp;;>,status\
adv5mpro2:<aktuell:&nbsp;;>,mode\
<hr>\
adv5mpro:?!cam
attr rg_ffadv5mpro cellStyle {\
'r:1,c:1' => 'style="text-align:center;;"',\
'r:1,c:2' => 'style="border:1px solid;; -moz-border-radius:4px;; border-radius:4px;; padding:5px;; margin:5px;; float:center;; color:333333;; width:100%;; height:20px;; vertical-align:middle;; text-align:center;; align:center;;"'\
}
attr rg_ffadv5mpro commands { \
'state.off' => 'set %DEVICE on',\
'state.on' => 'set %DEVICE off'\
}
attr rg_ffadv5mpro icon 00-03
attr rg_ffadv5mpro noheading 1
attr rg_ffadv5mpro nolinks 1
attr rg_ffadv5mpro nonames 1
attr rg_ffadv5mpro nostate 1
attr rg_ffadv5mpro notime 1
attr rg_ffadv5mpro room hidden
attr rg_ffadv5mpro valueColumns {\
'name' => 'colspan="3";;',\
'cam' => 'colspan="4";; rowspan="4";;',\
'mode' => 'colspan="3";;',\
'status' => 'colspan="3";;'\
}
attr rg_ffadv5mpro valueFormat {\
'cam' => '<img src=http://192.168.178.9:8080/?action=stream" width=100&#37;;>'\
}
attr rg_ffadv5mpro valueIcon {\
'state.on' => 'control_standby@green',\
'state.off' => 'control_standby@red'\
}
attr rg_ffadv5mpro valueSuffix {\
'nozzleIst' => '&nbsp;;°c',\
'nozzleSoll' => '&nbsp;;°c',\
'bedIst' => '&nbsp;;°c',\
'bedSoll' => '&nbsp;;°c',\
'prozentIst' => '&nbsp;;%'\
}
Titel: Aw: druckabfragen für den flashforge adventurer 5m (pro) 3d drucker
Beitrag von: the ratman am 22 April 2024, 19:49:44
neuigkeiten:
hab die disable 0/1 herausgenommen, braucht ja nicht wirklich wer. was mich da wieder geritten hat?

hinweis: seit dem letzten firmware-update kann man den stream unter http://192.168.178.9:8080/?action=stream nur noch einmal gleichzeitig sehen, wer den stream mehrmals gelichzeitig sehen möchte, hat pech. der stream unter 192.168.178.9:8080/stream_simple.html scheint ganz verstorben zu sein. ob das ein fehler ist oder so gewollt, weiß ich nicht.
es gibt auch wohl keine einstellungsseite mehr für den stream - zumindest ist die alte tod und eine eventuell neue kenne ich nicht.

außerdem gibts nun von ff selber für ios und android eigene apps, da kann ich ned mithalten: https://www.flashforge.com/product-detail/flash-maker

einzig ein tipp bleibt mir noch: wer orca zum slicen verwendet, sollte beim original 2.0 bleiben, und nicht beim orca von ff (1.7x). blieben nur leute, die unbedingt die 0.25 und 0.8 nozzle-deffinitionen braucht. die kommen beim orginal-orca wohl erst in der 2.1 version.
Titel: Aw: druckabfragen für den flashforge adventurer 5m (pro) 3d drucker
Beitrag von: peterboeckmann am 26 April 2024, 15:21:13
Hallo ratman!

Sehr schöne Einbindung ins fhem. Komischerweise bekomme ich beim adv5mpro2 keine Antwort vom Drucker.
Gibt es irgendwo eine Doku, was gepostet werden muss, um was zu bekommen?


Dank und Gruß,
Peter
Titel: Aw: druckabfragen für den flashforge adventurer 5m (pro) 3d drucker
Beitrag von: the ratman am 26 April 2024, 20:04:07
nö, leider keine doku, nur ausprobieren ... besser gesagt: die übliche hilfe von hier und ein bissi nachgucken in einem python-script auf github *g* --> https://forum.fhem.de/index.php?topic=137365.0
bei mir funzen derzeit noch die 3 abrufe, die ich verwende. wie gesagt: immer noch nur mit 35 sek. wartezeit.
aja, und ich hoffe, du hast mein disable 1 nicht noch drinnen - asche über mein haupt. hatte damit wieder mal meine fhem unkenntnis bewiesen *g*.

was derzeit eben nicht geht sind die alten cam-abfragen, da geht nur mehr die "neue" version. könnt aber ein bug sein, weil die zumindest den flashprint usern grade versprechen, dass deren abfrage bald wieder gehen wird. auch irgendwie komisch, weil eigentlich gehts ja *g*.
--> https://forum.drucktipps3d.de/forum/thread/35285-adventurer-5m-pro-seit-fw-update-auf-2-6-5-keine-kamera-mehr-verf%C3%BCgbar/
Titel: Aw: druckabfragen für den flashforge adventurer 5m (pro) 3d drucker
Beitrag von: peterboeckmann am 26 April 2024, 22:56:37
Danke. Manchmal muss ich echt zweimal mit der Nase drauf gestoßen werden. Das disable war noch drin...  :-[
Titel: Aw: druckabfragen für den flashforge adventurer 5m (pro) 3d drucker
Beitrag von: Prof. Dr. Peter Henning am 27 April 2024, 19:35:50
Mein Tipp: Den Flashforge-Drucker über Octoprint ansteuern. Sehr komfortable Verwaltung und Ansteuerung.
Und zur Verbindung mit FHEM gibt es ein schönes Modul.

LG

pah
Titel: Aw: druckabfragen für den flashforge adventurer 5m (pro) 3d drucker
Beitrag von: the ratman am 28 April 2024, 13:29:46
is auch 'ne option - ich pers. würd halt nicht noch eine sw wollen. in dem fall wahrscheinlich auch noch mit 'nem zusätzlichen raspi, weil ich mir meinen fhem-server nicht "kontaminieren" will. bei meinem halbwissen geht dann eh wieder was schief.

bei meinem "projekt" gehts mir mittlerweile auch ums prinzip. ich hab meinen dremel 3d45 (ist ja eig. auch flashforge) so derartig problemlos in fhem reingebracht (hast da nicht auch du damals ein bissi geholfen?), dass ichs nicht einsehe, warum ein neuer drucker, der ja nicht wirklich neues auf der sw-seite zu bieten hat (sogar der streamingserver war ja bis jetzt der gleiche wie vor 5 jahren), das nicht auch kann.
und ich bin ein gewohnheitstier. ich hab mich in meine lösung über fhem den rainmeter auf win zu befüllen sehr verliebt und gewöhnt ...
Titel: Aw: druckabfragen für den flashforge adventurer 5m (pro) 3d drucker
Beitrag von: the ratman am 28 April 2024, 16:45:52
Zitat von: Prof. Dr. Peter Henning am 27 April 2024, 19:35:50Mein Tipp: Den Flashforge-Drucker über Octoprint ansteuern. Sehr komfortable Verwaltung und Ansteuerung.
Und zur Verbindung mit FHEM gibt es ein schönes Modul.

LG

pah
jetzt fällts mir erst auf *g*

sag, kannst du mich zum plugin des octotprint für den ff adv 5m führen? ging octo nicht nur bis zum adv4, bzw. mit gar ekinem adv?
würd gerne sehen, was octo an daten liefert. weil das müsste ich ja dann auch abgreifen können.
Titel: Aw: druckabfragen für den flashforge adventurer 5m (pro) 3d drucker
Beitrag von: Prof. Dr. Peter Henning am 28 April 2024, 20:20:23
Klar. Geht leider nicht direkt, sondern über die "Polar Cloud", https://www.youtube.com/watch?v=tWh_bOLfyQI und https://www.youtube.com/watch?v=ssdy-QtFj1Q

LG

pah
Titel: Aw: druckabfragen für den flashforge adventurer 5m (pro) 3d drucker
Beitrag von: the ratman am 28 April 2024, 23:46:52
ahso ... cloud. da pass ich lieber.
danke für die info.
Titel: Aw: druckabfragen für den flashforge adventurer 5m (pro) 3d drucker
Beitrag von: Prof. Dr. Peter Henning am 29 April 2024, 09:09:52
Habe ich auch erst festgestellt, nachdem ich den Tipp abgegeben habe. Blöder Hersteller, der nichts herausrückt.

LG

pah
Titel: Aw: druckabfragen für den flashforge adventurer 5m (pro) 3d drucker
Beitrag von: the ratman am 29 April 2024, 09:39:15
warten wirs ab - zumindest ist die community eh schon relativ aktiv.

da hast was zum spielen *g* --> https://github.com/g992/flashforge-ad5m-5mpro-research
die empfehlung für klipper am drucker ist aber nicht gerade groß derzeit. scheint noch einiges an fehlern zu geben. mit dem rest könntest aber grade du schön in deren saftware rumwühlen, denk' ich mal *g* ich sags nur zur sicherheit: ich hab nix gerootet - keine lust, bei problemen mit ff zu streiten.

und zumindest die api für die m-codes ist ja auch noch da. wenn ich bis auf die 4 befehle noch nix gesehen hätte. nur dieses 35 sek. timeout bei der abfrage ist halt komisch.

aja, nicht zu vergessen, dass der ORIGINAL orca-slicer auch schon brav mit dem drucker werkelt - auch über lan und ohne cloud.
da fehlen jetzt nur mehr die düsen deffinitionen für 0.25 und 0.8. aber ich denke,die kommen mit v 2.1.
weil eines weiß ich gewiss ... der ff-orca bleibt sicher ewig auf v 1.7x stehen. war beim dremel mit deren cura auch so ... braucht keine sau.
Titel: Aw: druckabfragen für den flashforge adventurer 5m (pro) 3d drucker
Beitrag von: Prof. Dr. Peter Henning am 29 April 2024, 09:40:46
Zitat von: the ratman am 29 April 2024, 09:39:15da hast was zum spielen
Ich hab ja auch sonst nix zu tun...

LG

pah
Titel: Aw: druckabfragen für den flashforge adventurer 5m (pro) 3d drucker
Beitrag von: the ratman am 29 April 2024, 09:47:26
hab grade im obigen noch was ergänzt. ihr dürfts meine beiträge ned immer so schnell lesen *lach*

hast ein paar studenten übrig? die brauchen eh am wochenende beschäftigung *fg*
Titel: Aw: druckabfragen für den flashforge adventurer 5m (pro) 3d drucker
Beitrag von: Prof. Dr. Peter Henning am 29 April 2024, 12:50:37
Das nicht. Allerdings einen Vorschlag: Einen anderen Drucker kann ich, weil er in der Hochschule steht, auch nicht über Octoprint ansteuern. Dafür benutze ich ebenfalls HTTPMOD. Schau doch mal auf die Seite hier:

https://wiki.fhem.de/wiki/Ultimaker

Erstens könntest Du auf der Basis eine ganz ähnliche Wiki-Seite erstellen. Zweitens schlage ich vor, dass wir Reading-Namen etc. einigermaßen angleichen.

Bei meinem privaten SnapMaker nutze ich das OctoPrint-Interface für 3D-Druck. Das Teil kann aber auch Laser und CNC - und da komme ich auch nicht ohne HTTPMOD aus. Allerdings bin ich damit noch ziemlich am experimentieren, eine Anfangsversion findet man hier

https://wiki.fhem.de/wiki/Snapmaker

LG

pah
Titel: Aw: druckabfragen für den flashforge adventurer 5m (pro) 3d drucker
Beitrag von: the ratman am 29 April 2024, 13:27:22
im gegensatz zu octoprint ist die "direkte" fhem-lösung in meinen augen um ecken besser, weil ich damit eine fehlerquelle weniger habe und wahrscheinlich bei den meisten druckern auch noch dieselbe api wie octoprint nutze.
die "fhem-lösung" könnte man in meinen augen viel besser bei den httmod-templates verwursten, ganz ohne octoprint, denk' ich mal.

und ich schreib' ein wiki über ein tool, dass ich nur hab, weil ich euch lang genug auf 'n nerv gegangen bin, dass ihr euch meines gestammels erbarmt habt's? du weißt schon, dass du hier mit jemanden redest, der mehr als abschreiben in sachen fhem nicht wirklich drauf hat?
ich helf' sehr gerne mit, teste auch nach vorgaben und bring' alle infos rein, die ich glaube, frisch gefunden zu haben. den "gefährlichen" teil sollte aber dann lieber wer machen, der's richtig kann.
Titel: Aw: druckabfragen für den flashforge adventurer 5m (pro) 3d drucker
Beitrag von: Prof. Dr. Peter Henning am 30 April 2024, 03:13:48
Na ja, beim "Abschreiben" könnte man zunächst mal die Readingnamen nehmen, so wie sie für Ultimaker und Snapmaker vorhanden sind. Das würde schon helfen.

LG

pah
Titel: Aw: druckabfragen für den flashforge adventurer 5m (pro) 3d drucker
Beitrag von: the ratman am 30 April 2024, 09:37:29
ich glaub', das krieg' ich hin *g*

so in etwa?
defmod adv5m_info HTTPMOD http://192.168.xxx.xxx:8899/command 35
attr adv5m_info enableControlSet 1
attr adv5m_info httpVersion 1.1
attr adv5m_info reading01Name name_original
attr adv5m_info reading01Regex CurrentFile: (.*)
attr adv5m_info reading02Name mode
attr adv5m_info reading02Regex MoveMode: (.*)
attr adv5m_info reading04Name status
attr adv5m_info reading04Regex MachineStatus: (.*)
attr adv5m_info requestData ~M119
attr adv5m_info timeout 35
attr adv5m_info userReadings name { my $js = ReadingsVal($NAME,"name_original",0);; $js=~s/.gcode//;; $js=~s/_/ /g;;$js;;}

defmod adv5m_progress HTTPMOD http://192.168.xxx.xxx:8899/command 35
attr adv5m_progress enableControlSet 1
attr adv5m_progress httpVersion 1.1
attr adv5m_progress reading01Name percent_completion
attr adv5m_progress reading01Regex byte (\d+)
attr adv5m_progress reading02Name layer_progress
attr adv5m_progress reading02Regex Layer: (\d+)
attr adv5m_progress reading03Name layer_target
attr adv5m_progress reading03Regex Layer: \d+\/(\d+)
attr adv5m_progress requestData ~M27
attr adv5m_progress timeout 35

defmod adv5m_temperature HTTPMOD http://192.168.xxx.xxx:8899/command 35
attr adv5m_temperature enableControlSet 1
attr adv5m_temperature httpVersion 1.1
attr adv5m_temperature reading01Name temperature_tool0_actual
attr adv5m_temperature reading01Regex T0:(\d+\.\d+)
attr adv5m_temperature reading02Name temperature_tool0_target
attr adv5m_temperature reading02Regex T0:\d+\.\d+/(\d+)
attr adv5m_temperature reading03Name temperature_bed_actual
attr adv5m_temperature reading03Regex B:(\d+\.\d+)
attr adv5m_temperature reading04Name temperature_bed_target
attr adv5m_temperature reading04Regex B:\d+\.\d+/(\d+)
attr adv5m_temperature requestData ~M105
attr adv5m_temperature timeout 35

hinweise:
1) ob der name des drucks auch bei anderen tools als orca nach dem prinzip "mein_name_ist_FILAMENT_00h00m00s.gcode" aufgebaut ist, weiß ich nicht.
2) der drucker rechnet falsche layer, sobald z.b. 2 einzelne teile auf der plattform gleichzeitig gedruckt werden. die layer werden einfach addiert, sodass bei werkstücken mit z.b. 2x100 layer 200 layer rauskommen. somit ist er auch nach rund 50% fertig mit dem druck. kommt vom drucker, nicht von mir. dies lässt sich umgehen, indem man alle objekte als einen auftrag lädt. allerdings kann man dann im orca keine individuellen einstellungen für jedes bauteil vornehmen.
3) nach wie vor schaffe ich keine abrufe mit httpmod unter 35 sek. bei drucken mit wenigen layern erreicht die druckanzeige, obwohl korreckt beendet, am ende meist nicht 100% bzw. alle soll-layer.

was man noch aus den infos ziehen könnte, wozu ich aber zu blöd bin:
1) das verwendete filament. allerdings nur "grundarten" wie pla. hat man ein filament auf basis von z.b. pla erstellt, so heißt auch das neue filament im namen "PLA".
2) die gesamtzeit des drucks in 00h00m00s. allerdings fehlen z.b. die stundenangaben, bleibt der druck unter 60 min. das aufzudröseln und in readings zu legen schaff' ich leider nicht.

hier noch die angepasste readingsgroup mit cam und vorbereitung für einen schalter zum ausschalten:
defmod rg_ffadv5m readingsGroup adv5m_info :<auftrag:&nbsp;;>,name\
adv5m_temperature :<düse:&nbsp;;>,temperature_tool0_actual,<von>,temperature_tool0_target\
adv5m_temperature :<bett:&nbsp;;>,temperature_bed_actual,<von>,temperature_bed_target\
<hr>\
adv5m_progress :<fertig:&nbsp;;>,percent_completion\
adv5m_progress :<layer:&nbsp;;>,layer_progress,<von>,layer_target\
adv5m_progress :<zustand:&nbsp;;>,status\
adv5m_progress :<aktuell:&nbsp;;>,mode\
<hr>\
adv5m_info :?!cam
attr rg_ffadv5m cellStyle {\
'r:1,c:1' => 'style="text-align:center;;"',\
'r:1,c:2' => 'style="border:1px solid;; -moz-border-radius:4px;; border-radius:4px;; padding:5px;; margin:5px;; float:center;; color:333333;; width:100%;; height:20px;; vertical-align:middle;; text-align:center;; align:center;;"'\
}
attr rg_ffadv5m commands { \
'state.off' => 'set %DEVICE on',\
'state.on' => 'set %DEVICE off'\
}
attr rg_ffadv5m noheading 1
attr rg_ffadv5m nolinks 1
attr rg_ffadv5m nonames 1
attr rg_ffadv5m nostate 1
attr rg_ffadv5m notime 1
attr rg_ffadv5m valueColumns {\
'name' => 'colspan="3";;',\
'cam' => 'colspan="4";; rowspan="4";;',\
'mode' => 'colspan="3";;',\
'status' => 'colspan="3";;'\
}
attr rg_ffadv5m valueFormat {\
'cam' => '<img src=http://192.168.xxx.xxx:8080/?action=stream" width=100&#37;;>'\
}
attr rg_ffadv5m valueIcon {\
'state.on' => 'control_standby@green',\
'state.off' => 'control_standby@red'\
}
attr rg_ffadv5m valueSuffix {\
'temperature_tool0_actual' => '&nbsp;;°c',\
'temperature_tool0_target' => '&nbsp;;°c',\
'temperature_bed_actual' => '&nbsp;;°c',\
'temperature_bed_target' => '&nbsp;;°c',\
'percent_completion' => '&nbsp;;%'\
}
ich hoffe, ich hab nix übersehen ...

anmerkung:
1) ein schalter zum strom schalten ist sicher als "notschalter" sinnvoll, bringt aber fürs einschalten wenig, weil man immer den drucker an seinem eigenen i/o an der front zusätzlich schalten muss.
2) das kamerabild darf derzeit nur 1 mal abgerufen werden. wird also an anderer stelle (z.b. browser) ebenfalls der stream abgerufen, so wird in der readingsgroup kein stream angezeigt. dies könnte ein von flashforge anerkannter bug sein.
Titel: Aw: druckabfragen für den flashforge adventurer 5m (pro) 3d drucker
Beitrag von: Prof. Dr. Peter Henning am 30 April 2024, 11:34:06
OK, schau ich mir mal an - wird aber ne Weile dauern, muss morgen zum Arbeiten nach Wien.

LG

pah
Titel: Aw: druckabfragen für den flashforge adventurer 5m (pro) 3d drucker
Beitrag von: the ratman am 30 April 2024, 13:27:15
Zitat von: Prof. Dr. Peter Henning am 30 April 2024, 11:34:06muss morgen zum Arbeiten
och, du armer ... mein beileid *g*

btw - die nacht gabs wieder mal ein fw-update. schaut auf den 1. blick alles noch lauffähig aus. wetten darauf schließ' ich aber derzeit lieber nicht ab ...


und damit du auch mal was von hast ... sofern du's brauchen kannst:
ich hab eine kleine schutzbox für die nozzles der 5m serie gebastelt. die dinger sollten - weil ja scheinbar grade in - gridfinity-kompatibel sein.
vorteil meiner schutzbox zu anderen: man kann die düsen unfallfrei aus der box nehmen und ja, die meisten anderen haben keinen deckel.

schaut in etwa so aus (interaktive 3d-ansicht): https://the-ratman.12hp.at/fettfinger-nozzlebox.html

nachtrag: (gerade eben erstellt) ... ein raster, um 4 der boxen zu halten. warscheinlich weniger gridfinity-kompatibel, dafür sehr streng haltend. (möchte den raster an die wand kleben und die boxen sollen dran halten, ohne 'nen abflug zu machen - funzt mal für 3 stunden gut ... mal schauen ...)