inductive Z-probe problem after firmware upgrade
-
Hi all,
Im finally upgrading the firmware of my printer (from 1.19)
Firmware is there and working, web interface is better than ever but i cant get the Z-probe working again and im thinking im missing something basic here (it always is).
What happens is that if i ask the machine to "home Z" itll go up 5 mm and thats it.
In home Z It states that itll go up for 5 mm then down.I feel like its thinking it allready has a positive Z signal.
Heres my old config:
;*** Wifi Networking M552 S1 ; Enable WiFi M555 P2 ; Set output to look like Marlin M575 P1 B57600 S1 ; Comms parameters for PanelDue ; Machine configuration M569 P0 S1 ; Drive 0 goes forwards (change to S0 to reverse it) M569 P1 S1 ; Drive 1 goes forwards M569 P2 S0 ; Drive 2 goes forwards M569 P3 S0 ; Drive 3 goes forwards M569 P4 S1 ; Drive 4 goes forwards ; If you use an endstop switch for Z homing, change Z0 to Z1 in the following line, and see also M558 command later in this file M574 X1 Y1 Z0 S0 ; set endstop configuration (X and Y and endstops only, at low end, active high) M667 S1 ; set CoreXY mode M350 X16 Y16 E16 I1 ; Set 16x microstepping with interpolation M92 X80 Y80 Z400 ; Set axis steps/mm M92 E418.5:418.5 ; Set extruder steps/mm M906 X800 Y800 Z800 E800 ; Set motor currents (mA) M201 X1200 Y1200 Z30 E1000 ; Accelerations (mm/s^2) M203 X15000 Y15000 Z600 E3600 ; Maximum speeds (mm/min) M566 X600 Y600 Z30 E20 ; Maximum jerk speeds mm/minute M208 X300 Y198 Z160 ; set axis maxima (adjust to suit your machine) M208 X0 Y0 Z0 S1 ; set axis minima (adjust to make X=0 and Y=0 the edges of the bed) G21 ; Work in millimetres G90 ; Send absolute coordinates... M83 ; ...but relative extruder moves ; Z probe M558 P5 X0 Y0 Z1 ; Analog Z probe, also used for homing the Z axis G31 X 28 Y12 Z0.4 P500 ; Set the probe height and threshold (put your own values here) ; The following M557 commands are not needed if you are using a bed.g file to perform bed compensation ;*** Adjust the XY coordinates in the following M557 commands to suit your build and the position of the Z probe M557 P0 X60 Y30 ; Four... M557 P1 X60 Y165 ; ...probe points... M557 P2 X222 Y165 ; ...for bed... M557 P3 X222 Y30 ; ...levelling ;M557 P4 X141 Y82.5 ; 5th probe point for levelling ; Thermistors and heaters ;*** You can use S and B parameters to define the parameters of the thermistors you are using M305 P0 R4700 T100000 H0 L0 ; Put your own H and/or L values here to set the bed thermistor ADC correction ;M305 P1 R4700 H0 L0 ; Put your own H and/or L values here to set the first nozzle thermistor ADC correction M305 P1 R4700 T100000 B4725 C7.06e-8 M307 H1 A314.3 C197.3 D3.5 B0 M143 H1 S288 M305 P2 R4700 H0 L0 ; Put your own H and/or L values here to set the second nozzle thermistor ADC correction M301 H1 P30 I0.14 D90 T0.50 S1.0 ; PID settings for extruder 0 M301 H2 P10 I0.10 D100 T0.50 S1.0 ; PID settings for extruder 1 M570 S120 ; Increase to allow extra heating time if needed ; Tool definition M563 P0 D0 H1 ; Define tool 0 G10 P0 S0 R0 ; Set tool 0 operating and standby temperatures ;*** If you have a dual-nozzle build, un-comment the following 3 lines ;M563 P1 D1 H2 ; Define tool 1 ;G10 P1 S0 R0 ; Set tool 1 operating and standby temperatures ;*** If you are using axis compensation, put the figures in the following command M556 S78 X0 Y0 Z0 ; Axis compensation here T0 ; select first hot end
And this is the new config:
M575 P1 S1 B57600 ; enable support for PanelDue G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"Hypercube Master" ; set printer name M669 K1 ; select CoreXY mode ; Network M552 S1 ; enable network M586 P0 S1 ; enable HTTP M586 P1 S0 ; disable FTP M586 P2 S0 ; disable Telnet ; Drives M569 P0 S1 ; physical drive 0 goes forwards M569 P1 S1 ; physical drive 1 goes forwards M569 P2 S0 ; physical drive 2 goes forwards M569 P3 S0 ; physical drive 3 goes forwards M584 X0 Y1 Z2 E3 ; set drive mapping M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation M92 X80.00 Y80.00 Z400.00 E418.50 ; set steps per mm M566 X900.00 Y900.00 Z60.00 E120.00 ; set maximum instantaneous speed changes (mm/min) M203 X900000.00 Y900000.00 Z36000.00 E216000.00 ; set maximum speeds (mm/min) M201 X1000.00 Y1000.00 Z30.00 E1000.00 ; set accelerations (mm/s^2) M906 X800 Y800 Z800 E800 I30 ; set motor currents (mA) and motor idle factor in per cent M84 S30 ; Set idle timeout ; Axis Limits M208 X0 Y0 Z0 S1 ; set axis minima M208 X300 Y198 Z160 S0 ; set axis maxima ; Endstops M574 X1 S1 P"!xstop" ; configure switch-type (e.g. microswitch) 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 ; Z-Probe M558 P5 C"zprobe.in" H5 F120 T6000 ; set Z probe type to unmodulated and the dive height + speeds G31 P500 X28 Y12 Z0.4 ; set Z probe trigger value, offset and trigger height M557 X15:215 Y15:195 S20 ; define mesh grid ; Heaters ;M308 P1 B4725 C7.060000e-8 M308 S0 P"bedtemp" Y"thermistor" T100000 B4138 ; configure sensor 0 as thermistor on pin bedtemp M950 H0 C"bedheat" T0 ; create bed heater output on bedheat and map it to sensor 0 M307 H0 B0 S1.00 ; disable bang-bang mode for the bed heater and set PWM limit M140 H0 ; map heated bed to heater 0 M143 H0 S120 ; set temperature limit for heater 0 to 120C M308 S1 P"e0temp" Y"thermistor" T100000 B4725 ; configure sensor 1 as thermistor on pin e0temp M950 H1 C"e0heat" T1 ; create nozzle heater output on e0heat and map it to sensor 1 M307 H1 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit M143 H1 S280 ; set temperature limit for heater 1 to 280C ; Fans M950 F0 C"fan0" Q500 ; create fan 0 on pin fan0 and set its frequency M106 P0 S0 H-1 ; 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 S1 H1 T45 ; set fan 1 value. Thermostatic control is turned on ; Tools M563 P0 D0 H1 F0 ; define tool 0 G10 P0 X0 Y0 Z0 ; set tool 0 axis offsets G10 P0 R0 S0 ; set initial tool 0 active and standby temperatures to 0C ; Custom settings are not defined ; Miscellaneous M501 ; load saved parameters from non-volatile memory
The probe is a inductive PNP normally open sensor.
Chances are there are more things not fixed at this point.Thanks in advance!!
Rubin, The Netherlands
-
Does the z-probe show triggered in DWC? Also, what board are you running?
If you are in fact inverted on the signal you can change this line:
M558 P5 C"zprobe.in" H5 F120 T6000
Add an "!" before the pin name so it reads like this:
M558 P5 C"!zprobe.in" H5 F120 T6000
-
It shows triggered when it should (gives a value of 1000 when approached with something metal).
Also i kinda solved it, tho im not sure if this is a solution "as intended"
Apparantly i forgot to tell the system to use the probe as a Z-stop.So heres the updated config:
; Axis Limits
M208 X0 Y0 Z0 S1 ; set axis minima
M208 X300 Y198 Z160 S0 ; set axis maxima; Endstops
M574 X1 S1 P"!xstop" ; configure switch-type (e.g. microswitch) 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 S2; Z-Probe
M558 P5 C"^zprobe.in" H5 F120 T6000
;M558 P5 C"zprobe.in" H5 F120 T6000 ; set Z probe type to unmodulated and the dive height + speeds
G31 P500 X28 Y12 Z0.4 ; set Z probe trigger value, offset and trigger height
M557 X15:215 Y15:195 S20 ; define mesh grid; Heaters
I added the M574 Z1 S2 line, then needed to slow the home script because of fast aproach
Tell me if im doing this wrongNext are the heaters, configuring my slicer again, start working with my materials apart from generated G-code.
Enough to do -
@rubinkingma
You shouldn't need the M574 Z1.... Let me look at my config, one moment. -
@rubinkingma
This should be all you need, this is mine:M558 P5 C"^io3.in" H5 F600 T6000 A10 G31 P500 X0 Y25 Z3.6 M557 X15:205 Y25:205 P4
-
What do you have in your homing files?
@rubinkingma said in inductive Z-probe problem after firmware upgrade:
; Z probe
M558 P5 X0 Y0 Z1 ; Analog Z probe, also used for homing the Z axis
G31 X 28 Y12 Z0.4 P500 ; Set the probe height and threshold (put your own values here)You should remove the old RRF2 commands.
-
Weird, when i dont it complains about "cant enable endstop".
-
Can you paste in your homeall.g and homez.g?
Sorry, what board are you using? Just to confirm the pins.
-
Thank you for your reply, what part is RRF2 ?
I got to 3xx firmware today after running 1.19 since 2017Used the configurator and while i could have dropped some old stuff in there looking for solutions i'm not at the point where i can see the difference between old and new config.
-
homeall ( I have been dicking around with this for mesh compensation)
; homeall.g
; called to home all axes
;
; generated by RepRapFirmware Configuration Tool v3.3.13 on Mon Sep 19 2022 15:01:08 GMT+0200 (Midden-Europese zomertijd)
;G91 ; relative positioning
;G1 H2 Z5 F6000 ; lift Z relative to current position
;G1 H1 X-305 Y-203 F1800 ; move quickly to X or Y endstop and stop there (first pass)
;G1 H1 X-305 ; home X axis
;G1 H1 Y-203 ; home Y axis
;G1 X5 Y5 F6000 ; go back a few mm
;G1 H1 X-305 F360 ; move slowly to X axis endstop once more (second pass)
;G1 H1 Y-203 ; then move slowly to Y axis endstop
;G1 H1 Z-165 F360 ; move Z down stopping at the endstop
;G90 ; absolute positioning
;G92 Z0 ; set Z position to axis minimum (you may want to adjust this); Uncomment the following lines to lift Z after probing
;G91 ; relative positioning
;G1 Z5 F100 ; lift Z relative to current position
;G90 ; absolute positioning; homeall.g
; called to home all axes
;
; generated by RepRapFirmware Configuration Tool v3.3.13 on Mon Sep 19 2022 15:01:08 GMT+0200 (Midden-Europese zomertijd)
G91 ; relative positioning
G1 H2 Z5 F6000 ; lift Z relative to current position
G1 H1 X-305 Y-203 F1800 ; move quickly to X or Y endstop and stop there (first pass)
G1 H2 X5 Y5 F6000 ; go back a few mm
G1 H1 X-305 F360 ; move slowly to X axis endstop once more (second pass)
G1 H1 Y-203 ; then move slowly to Y axis endstop
G1 H1 Z-165 F360 ; move Z down stopping at the endstop
G1 H2 Z5 F6000
G90 ; absolute positioning
G1 X150 Y100 F6000
G30 ;probe bed; Uncomment the following lines to lift Z after probing
;G91 ; relative positioning
;G1 Z5 F100 ; lift Z relative to current position
;G90 ; absolute positioningHome Z
; homez.g
; called to home the Z axis
;
; generated by RepRapFirmware Configuration Tool v3.3.13 on Mon Sep 19 2022 15:01:08 GMT+0200 (Midden-Europese zomertijd)
G91 ; relative positioning
G1 H2 Z5 F600 ; lift Z relative to current position
G1 H1 Z-165 F1000 ; move Z down until the endstop is triggered (first pass)
G1 Z5 F1000 ; go back a few mm
G1 H1 Z-100 F360 ; move slowly to Z axis endstop once more (second pass)
G92 Z0 ; set Z position to axis minimum (you may want to adjust this); Uncomment the following lines to lift Z after probing
;G91 ; relative positioning
;G1 Z5 F100 ; lift Z relative to current position
;G90 ; absolute positioning -
Ah, nevermind about the old config parts. I see now that it's two separate configs. I've edited your post to make it a bit clearer.
Can you send M122 and M98 P"config.g" in the console and copy and paste the results here?
-
M122:
M122
=== Diagnostics ===
RepRapFirmware for Duet 2 WiFi/Ethernet version 3.4.2 (2022-09-13 15:11:16) running on Duet WiFi 1.02 or later
Board ID: 08DAM-9K9K2-NGNSN-6J9D6-3S46T-TPSRK
Used output buffers: 1 of 26 (24 max)
=== RTOS ===
Static ram: 23860
Dynamic ram: 74924 of which 40 recycled
Never used RAM 13184, free system stack 106 words
Tasks: NETWORK(ready,15.2%,237) HEAT(notifyWait,0.0%,333) Move(notifyWait,0.0%,292) MAIN(running,84.8%,442) IDLE(ready,0.0%,30), total 100.0%
Owned mutexes: WiFi(NETWORK)
=== Platform ===
Last reset 01:25:43 ago, cause: power up
Last software reset at 2022-09-19 20:21, reason: User, GCodes spinning, available RAM 13256, slot 0
Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0041f000 BFAR 0xe000ed38 SP 0x00000000 Task MAIN Freestk 0 n/a
Error status: 0x08
Aux0 errors 0,0,0
Step timer max interval 0
MCU temperature: min 40.0, current 40.5, max 43.3
Supply voltage: min 24.3, current 24.5, max 24.7, under voltage events: 0, over voltage events: 0, power good: yes
Heap OK, handles allocated/used 0/0, heap memory allocated/used/recyclable 0/0/0, gc cycles 0
Events: 0 queued, 0 completed
Driver 0: standstill, SG min 31
Driver 1: standstill, SG min 38
Driver 2: standstill, SG min 13
Driver 3: standstill, SG min n/a
Driver 4: standstill, SG min n/a
Driver 5:
Driver 6:
Driver 7:
Driver 8:
Driver 9:
Driver 10:
Driver 11:
Date/time: 2022-09-19 21:49:25
Cache data hit count 4294967295
Slowest loop: 8.64ms; fastest: 0.17ms
I2C nak errors 0, send timeouts 0, receive timeouts 0, finishTimeouts 0, resets 0
=== Storage ===
Free file entries: 10
SD card 0 detected, interface speed: 20.0MBytes/sec
SD card longest read time 0.7ms, write time 24.2ms, max retries 0
=== Move ===
DMs created 83, segments created 3, maxWait 1254428ms, bed compensation in use: mesh, comp offset 0.000
=== MainDDARing ===
Scheduled moves 883, completed 883, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
=== AuxDDARing ===
Scheduled moves 0, completed 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
=== Heat ===
Bed heaters 0 -1 -1 -1, chamber heaters -1 -1 -1 -1, ordering errs 0
=== GCodes ===
Segments left: 0
Movement lock held by null
HTTP is idle in state(s) 0
Telnet is idle in state(s) 0
File is idle in state(s) 0
USB is idle in state(s) 0
Aux is idle in state(s) 0
Trigger is idle in state(s) 0
Queue is idle in state(s) 0
LCD is idle in state(s) 0
Daemon is idle in state(s) 0
Autopause is idle in state(s) 0
Code queue is empty
=== Network ===
Slowest loop: 243.62ms; fastest: 0.07ms
Responder states: HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0), 0 sessions
HTTP sessions: 1 of 8
= WiFi =
Network state is active
WiFi module is connected to access point
Failed messages: pending 0, notready 0, noresp 0
WiFi firmware version 1.27
WiFi MAC address 5c:cf:7f:f7:de:92
WiFi Vcc 3.37, reset reason Turned on by main processor
WiFi flash size 4194304, free heap 25864
WiFi IP address 192.168.1.201
WiFi signal strength -77dBm, mode 802.11n, reconnections 0, sleep mode modem
Clock register 00002002
Socket states: 0 0 0 0 0 0 0 0 -
I see the issue.
In the homez.g file change this:
G91 ; relative positioning G1 H2 Z5 F600 ; lift Z relative to current position G1 H1 Z-165 F1000 ; move Z down until the endstop is triggered (first pass) G1 Z5 F1000 ; go back a few mm G1 H1 Z-100 F360 ; move slowly to Z axis endstop once more (second pass) G92 Z0 ; set Z position to axis minimum (you may want to adjust this)
to this
G1 X150 Y150 F6000 G91 ; relative positioning G1 H2 Z5 F600 ; lift Z relative to current position G90 G30
-
Your homez.g file is still looking for an endstop. It needs to be changed to use G30 instead of a G1 H1 Z move in order to use the probe.
Your homeall.g is using both an endstop move AND a G30 to probe.
Here are the corrected files
; homeall.g ; called to home all axes ; ; generated by RepRapFirmware Configuration Tool v3.3.13 on Mon Sep 19 2022 15:01:08 GMT+0200 (Midden-Europese zomertijd) G91 ; relative positioning G1 H2 Z5 F6000 ; lift Z relative to current position G1 H1 X-305 Y-203 F1800 ; move quickly to X or Y endstop and stop there (first pass) G1 H2 X5 Y5 F6000 ; go back a few mm G1 H1 X-305 F360 ; move slowly to X axis endstop once more (second pass) G1 H1 Y-203 ; then move slowly to Y axis endstop G90 ; absolute positioning G1 X150 Y100 F6000 G30 ;probe bed
; homez.g ; called to home the Z axis ; ; generated by RepRapFirmware Configuration Tool v3.3.13 on Mon Sep 19 2022 15:01:08 GMT+0200 (Midden-Europese zomertijd) G90 ; absolute positioning G1 X150 Y100 F6000 G30 ;probe bed
-
@phaedrux
Stop replying so fastBut you're right, I missed the homeall.g error.
-
Thanks to you both!
So it works now, this or next week ill start printing again and see what else i can find to complain about.
This used to be my "quick and dirty" machine, and after a few years almost the only machine i use.
I never took the time to really make it print nicely because i had a E3D volcano on it with a 0.8 Nozzle.
Now with all these cool changes i want to dial it in with a 0.6 nozzle and make it a really nice machine.
Its a core XY "hypercube" remix with hiwin rails for the bed.
It should be able to make very nice prints if i just spend some time with it -
Excellent! Happy Printing!