BLTouch and IR-Probe together on one board ?
-
Hi,
I switched from the BLTouch to the IR-Probe a long time ago, which also works exelent.
However, I left the BLTouch on the print head because I wanted to use it if the IR probe ever had problems with a print surface.
That's why I disconnected the BLTouch cable from the Duet2 WiFi.Now my question...
Is it possible to connect both sensors (BLTouch + IR-Probe) at the same time and only address the BLTouch via a macro with its own retractprobe.g / deployprobe.g etc ?Or is it possible with the cable so that I can leave the cables of both probes connected but not with the software, so that I have to comment out one or the other probe in the config.g ?
Google Translate
----- Original Text -----Moin,
ich bin vor langer Zeit vom BLTouch auf den IR-Probe gewechselt, der auch exelent funktioniert.
Den BLTouch habe ich aber trotzdem am Druckkopf montiert gelassen weil ich ihn nutzen wollte falls der IR-Probe mit einer Druckoberfläche einmal Probleme haben sollte.
Die Kabel des BLTouch habe ich deswegen vom Duet2-Wifi getrennt.Nun meine Frage...
Ist es möglich beide Sensoren (BLTouch + IR-Probe) gleichzeitig anzuschließen und den BLTouch nur über ein Macro anzusprechen mit seiner eigenen retractprobe.g / deployprobe.g etc ?Oder geht es zwar Kabeltechnisch so dass ich die Kabel beider Probe's angeschlossen lassen kann aber nicht Softwaretechnisch, so das ich den einen oder anderen Probe in der config.g auskommentieren (;) muss ?
-
See M558 K parameter to define multiple probes. You then have to include a K parameter in your other commands that call the probe to target the probe you want.
https://docs.duet3d.com/User_manual/Reference/Gcodes#m558-set-z-probe-type
-
@phaedrux said in BLTouch and IR-Probe together on one board ?:
See M558 K parameter to define multiple probes. You then have to include a K parameter in your other commands that call the probe to target the probe you want.
https://docs.duet3d.com/User_manual/Reference/Gcodes#m558-set-z-probe-type
Great !
Thank you Phaedrux -
@phaedrux
Can I use another pin on the Duet2 wifi for the BLTouch other than the zprobe.in ?
This pin is already occupied by the IR-Probe.
The e1stop pin would still be free for me.I can get GND from any GND pin, right ?
Since the GND pin in the probe connector is also occupied.Or can I connect both probes to the zprobe.in (+GND) ?
Google Translate
----- Original Text -----Kann ich für den BLTouch einen anderen Pin auf dem Duet2-Wifi nehmen außer den zprobe.in ?
Dieser Pin ist bereits vom IR-Probe belegt.
Der e1stop Pin wäre bei mir noch frei.GND kann ich mir von jedem x-beliebigen GND Pin holen, oder ?
Da der GND Pin im Probe Connector auch belegt ist.Oder kann ich beide Probe's an dem zprobe.in (+GND) anschließen ?
-
I suppose you might be able to use the same pin, but you'd have to bind and unbind it with M558 whenever you wanted to use one or the other.
It would be easiest to use a different pin like the e1stop.
Yes ground can come from anywhere.
-
@norder said in BLTouch and IR-Probe together on one board ?:
Can I use another pin on the Duet2 wifi for the BLTouch other than the zprobe.in ?
Yes, in RRF3 you can use any free input pin for the BLTouch, for example any free endstop input pin, or a free input pin on the expansion connector if you don't have a DueX expansion board connected.
-
So far I managed everything.
Both probes are connected and working.
Here is an excerpt from the config.g; Z-Probe (IR-Probe & BLTouch) ; IR-Probe M558 K0 C"zprobe.in" P5 H1.5 F120:60 T18000 B0 A4 S0.020 R0.4 G31 K0 P500 X0 Y22 Z3.370 ; BLTouch M950 K1 S0 C"exp.heater7" M558 K1 C"e1stop" P8 H3 F120:60 T18000 B1 A4 S0,020 R0.4 G31 K1 P500 X-29.40 Y11.50 Z1.043 M280 P0 S160 M280 P0 S90 ; Grid M557 X25:300 Y25:300 P7
My problem is, when I enter G29 K1, it does the MBL without an active K0 probe (IR-Probe), which is what is wanted so far.
But the BLTouch (K1) is not activated.
Only if I enter M401 beforehand and then G29 K1 does it work as it should.My question...
How do I enable the deployprobe.g and retractprobe.g for the K1 probe, because the K1 parameter seems to disable it !?If I only enter G29, then the MBL is started and the K0 probe is active and measures the distance.
But the BLTouch is also activated.
Since the BLTouch triggers a bit later than the IR probe, it's not a problem.Here are two macros how I measure the print bed exactly over a level screw.
Once with the IR-Probe and the other time with the BLTouch.M561 G29 S2 M291 P"1-fache Messung - IR-Probe" R"LINKS MITTE" T5 ; Display message G1 Z7 F10000 G1 X20 Y143 F10000 G30 S-1 H3.370 G1 Z7 F10000
M561 G29 S2 M291 P"1-fache Messung - BLTouch" R"LINKS MITTE" T5 ; Display message G1 Z7 F10000 G1 X40 Y150 F10000 M401 G30 S-1 K1 H1.043 G1 Z7 F10000 M402
Google Translate
----- Original Text -----Soweit habe ich alles hinbekommen.
Beide Probe's sind angeschlossen und funktionieren.
Hier ein Auszug aus der config.g (Siehe 1. Code)Mein Problem ist, wenn ich G29 K1 eingebe, dann macht er das MBL ohne aktiver K0 Sonde (IR-Probe), was soweit ja auch gewollt ist.
Aber der BLTouch (K1) wird nicht aktiviert.
Erst wenn ich vorher M401 eingebe und danach G29 K1, dann funktioniert es wie es soll.Meine Frage...
Wie aktiviere ich den deployprobe.g und retractprobe.g für die K1 Sonde, denn der Parameter K1 scheint dieses zu deaktivieren !?Gebe ich nur G29 ein, dann wird das MBL gestartet und die K0 Sonde ist aktiv und misst den Abstand.
Aber auch der BLTouch wird aktiviert.
Da der BLTouch etwas später auslöst wie der IR-Probe, ist es kein Problem.Hier mal zwei Macros wie ich das Druckbett genau über einer Levelschraube messe.
Einmal mit dem IR-Probe und das andere mal mit dem BLTouch. (Siehe 2. und 3. Code) -
I created two new files and renamed two existing files.
Newly created:
deployprobe1.g
retractprobe1.g
Renamed:
deployprobe.g > deployprobe0.g
retractprobe.g > retractprobe0.g
Adapted the content to the two probes.I'm currently testing whether everything works as it should and I don't have to specify the M401 and M402 separately.
Google Translate
----- Original Text -----Ich habe zwei neue Dateien erstellt und zwei vorhandene Dateien umbenannt.
Neu Erstellt:
deployprobe1.g
retractprobe1.g
Umbenannt:
deployprobe.g > deployprobe0.g
retractprobe.g > retractprobe0.g
Den Inhalt an die beiden Probe's angepasst.Ich teste jetzt gerade ob alles so funktioniert wie es soll und ich nicht extra das M401 und M402 angeben muss.
P.S. problem solved / Problem gelöst
-
What does your full final arrangement of M558 and related commands look like now?
-
@phaedrux
For the most part, the code has remained as shown in the previous comment.
I made some small changes, but they are not decisive.
Fine tuningHere my complete config.g
; Configuration file for Duet WiFi (firmware version 3.3) ; executed by the firmware on start-up ; ; generated by RepRapFirmware Configuration Tool v3.3.10 on Sun Mar 20 2022 22:36:03 GMT+0100 (Mitteleuropäische Normalzeit) ; General preferences G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"DDA5X" ; set printer name ; Network M552 S1 ; enable network M586 P0 S1 ; enable HTTP M586 P1 S0 ; disable FTP M586 P2 S0 ; disable Telnet ; Drives aus 2.05 M569 P0 S0 F1 ; physical drive 0 goes backwards - x-achse (TOFF F1) M569 P1 S0 F1 ; physical drive 1 goes backwards - y-achse (TOFF F1) M569 P2 S0 F7 ; physical drive 2 goes forwards - z-achse links (TOFF F7) M569 P3 S1 F7 ; physical drive 3 goes backwards - z-achse rechts (TOFF F7) M569 P4 S1 F1 ; physical drive 4 goes forwards - extruder (TOFF F1) ; Steps, Ströme und Geschwindigkeiten M584 X0 Y1 Z2:3 E4 ; dual z - kombiniert die beiden z achsen (P3) M350 X16 Y16 Z128 U128 E32 I1 ; microstepping und interpolation M92 X160.000 Y160.000 Z6400.000 U6400.000 E1348.351 ; set steps per mm M566 X300.00 Y300.00 Z420.00 U420.00 E420.00 ; set maximum instantaneous speed changes (mm/min) jerk M203 X18000.00 Y18000.00 Z1000.00 U1000.00 E1200.00 ; set maximum speeds (mm/min) M201 X300.00 Y300.00 Z100.00 U100.00 E250.00 ; set accelerations (mm/s^2) M906 X1400 Y1400 Z1400 U1400 E800 I30 ; set motor currents (mA) and motor idle factor in per cent M84 S10 ; Set idle timeout ; Axis Limits M208 X-16.5 Y-37.0 Z0 U0 S1 ; set axis minima M208 X330 Y330 Z360 U360 S0 ; set axis maxima ; Endstops M574 X1 P"!xstop" ; configure unsupported switch-type endstop for low end on X via pin xstop M574 Y1 S1 P"ystop" ; configure switch-type (e.g. microswitch) endstop for low end on Y via pin ystop M574 Z1 P"!zstop+!e0stop" ; configure unsupported switch-type endstop for low end on Z via pin null ; Z-Probe (IR-Probe & BLTouch) ; IR-Probe M558 K0 C"zprobe.in" P5 H1.5 F100 T18000 B0 A4 S0.010 R0.4 ; disable Z probe but set dive height, probe speed and travel speed G31 K0 P500 X0 Y24 Z3.250 ; set Z probe trigger value, offset and trigger height ; BLTouch M950 K1 S0 C"exp.heater7" M558 K1 C"e1stop" P8 H3 F100 T18000 B1 A4 S0.010 R0.4 ; disable Z probe but set dive height, probe speed and travel speed G31 K1 P500 X-29.40 Y11.50 Z1.040 ; set Z probe trigger value, offset and trigger height ; Grid M557 X25:300 Y25:300 P7 ; Mesh-Grid ; Heaters M308 S0 P"bedtemp" Y"thermistor" T100000 B4138 ; configure sensor 0 as thermistor on pin bedtemp M950 H0 C"bedheat" T0 ; create nozzle heater output on bedheat and map it to sensor 0 M307 H0 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit M143 H0 S120 ; set temperature limit for heater 0 to 120C M308 S1 P"!spi.cs1" Y"rtd-max31865" ; create sensor number 1 as a PT100 sensor in the first position on the Duet 2 daughterboard connector M950 H1 C"e0heat" T1 ; create bed heater output on e0heat and map it to sensor 1 (e0heat) M307 H1 B0 S1.00 ; disable bang-bang mode for the bed heater and set PWM limit M143 H1 S500 ; set temperature limit for heater 1 to 500C M140 H0 ; map heated bed to heater 1 ; PID Tuning ; -- Düse -- ; M307 H1 R2.055 K0.283:0.000 D9.92 E1.35 S1.00 B0 V23.9 ; Werte für das HotEnd 25.März 2022 (Befehl für erneute Messung: M303 H1 S220) M307 H1 R2.095 K0.265:0.000 D9.20 E1.35 S1.00 B0 V23.9 ; Werte für das HotEnd 22.März 2022 (Befehl für erneute Messung: M303 H1 S255) ; -- Druckbett -- ; M307 H0 R0.207 K0.168:0.000 D3.22 E1.35 S1.00 B0 ; Werte für das Druckbett 25.März 2022 (Befehl für erneute Messung: M303 H0 S60) M307 H0 R0.207 K0.178:0.000 D3.11 E1.35 S1.00 B0 ; Werte für das Druckbett 22.März 2022 (Befehl für erneute Messung: M303 H0 S70) ; Fans M950 F0 C"fan0" Q500 ; create fan 0 on pin fan0 and set its frequency M106 P0 C"Bauteilelüfter" S0 H-1 T45 ; set fan 0 value. Thermostatic control is turned off M950 F1 C"fan1" Q500 ; create fan 1 on pin fan1 and set its frequency M106 P1 C"Hotend Lüfter" S0 H1 T45 ; set fan 1 value. Thermostatic control is turned on ; LED Beleuchtung M950 F2 C"fan2" Q500 ; create fan 2 on pin fan2 and set its frequency M106 P2 I0 B0.0 C"Beleuchtung" X51 ; LED-Strip (12V) auf Fan 2 / (51 von 255 Stufen = 20%) ; Tools M563 P0 S"Dyzend Pro" D0 H1 F0 ; definiere werkzeug 0 - (testweise luefter 1 entfernt (F0: 1)) G10 P0 X0 Y0 Z0 ; set tool 0 axis offsets G10 P0 R0 S0 ; set initial tool 0 active and standby temperatures to 0C ; Miscellaneous M501 ; load saved parameters from non-volatile memory M106 P2 S1 ; led beleuchtung
The heightmaps of the two probes are interesting.
I adjusted them (over several hours) as precisely as possible.
I think the BLTouch has small problems with the magnetic pressure plate, it is magnetized in strips.
Here is a video to make it clear... (Click me)The IR-Probe has rather small difficulties with the surface.
If I put a wafer-thin film of oil on the areas where I determine the offset, then the repeatability of the measurements becomes more accurate.
The GFK FR4 plate is finely sanded very evenly.The ideal result would be the sum of both measurements... the middle field from the IR-Probe and the edge areas from the BLTouch.
Here are two screenshots...IR-Probe...
BLTouch...
Unfortunately I don't have a straightedge, but I'll get one so the next time I sand the FR4 plate I know where to sand more and where less.
Finally, the contents of files deployprobe0.g, deployprobe1.g, retractprobe0.g, retractprobe1.g.
*****0.g = IR-Probe
*****1.g = BLTouch; deployprobe0.g ; called to deploy a physical Z probe ; ; generated by RepRapFirmware Configuration Tool v3.3.10 on Sun Mar 20 2022 22:36:03 GMT+0100 (Mitteleuropäische Normalzeit) ; insert codes for deploying the Z probe here M106 P2 S0 ; led beleuchtung aus
; deployprobe1.g ; called to deploy a physical Z probe ; ; generated by RepRapFirmware Configuration Tool v3.3.10 on Sun Mar 20 2022 22:36:03 GMT+0100 (Mitteleuropäische Normalzeit) ; insert codes for deploying the Z probe here M280 P0 S10 M106 P2 S0 ; led beleuchtung aus
G4 P400 = Waiting time to be able to see the LED of the IR probe better.
To the right of the extruder (seen here in the Video) you can see a light guide made of clear filament, which transmits the light from the LED.; retractprobe0.g ; called to retract a physical Z probe ; ; generated by RepRapFirmware Configuration Tool v3.3.10 on Sun Mar 20 2022 22:36:03 GMT+0100 (Mitteleuropäische Normalzeit) ; insert codes for retracting the Z probe here G4 P400 ; 40tel Sekunde warten M106 P2 S1 ; led beleuchtung an
; retractprobe1.g ; called to retract a physical Z probe ; ; generated by RepRapFirmware Configuration Tool v3.3.10 on Sun Mar 20 2022 22:36:03 GMT+0100 (Mitteleuropäische Normalzeit) ; insert codes for retracting the Z probe here M280 P0 S90 M106 P2 S1 ; led beleuchtung an
Greetings from the North Sea coast
Google Translate
----- Original Text -----Zum größten Teil ist der Code so geblieben wie im vorherigen Kommentar gezeigt.
Einige kleine Änderungen habe noch gemacht, die aber nicht ausschlaggebend sind.
FeintuningHier meine komplette config.g (Siehe oben)
Interessant sind die Heightmaps der beiden Probe's.
Ich habe sie (über mehrere Stunden) so genau eingestellt wie möglich.
Ich denke der BLTouch hat kleine Probleme mit der magnetischen Druckplatte, sie ist streifenförmig magnetisiert.
Hier ein Video um es deutlich zu machen. (Link siehe oben)Der IR-Probe hat eher kleine Schwierigkeiten mit der Oberfläche.
Lege ich einen hauchdünnen Ölfilm auf die Stellen wo ich das Offset ermittle, dann wird die Wiederholgenauigkeit der Messungen genauer.
Die GFK FR4 Platte ist sehr gleichmäßig fein angeschliffen.Das ideale Ergebnis wäre die Summe beider Messungen... das Mittelfeld vom IR-Probe und die Randbereiche vom BLTouch.
Hier zwei Screenshot's... (Siehe oben)Leider habe ich kein Haarlineal, aber ich werde mir eins besorgen, damit ich beim nächsten anschleifen der FR4 Platte weiß wo ich mehr und wo weniger schleifen sollte.
Zuletzt noch die Inhalte der Dateien deployprobe0.g, deployprobe1.g, retractprobe0.g, retractprobe1.g.
*****0.g = IR-Probe
*****1.g = BLTouchInfo zum Inhalt von retractprobe0.g:
G4 P400 = Wartezeit um die LED vom IR-Probe besser erkennen zu können.
Rechts neben dem Extruder ist ein Lichtleiter aus klaren Filament zu sehen (Video), der das Licht der LED weiter leitet.Grüße von der Nordseeküste