Tevo Little Monster delta endstopless homing
-
Is there any other information you can tell me? Ive tried all types of sensitivities, currents and feed rates.
; homedelta.g
; called to home all towers on a delta printer
;
; generated by RepRapFirmware Configuration Tool on Mon May 22 2017 22:56:20 GMT-0400 (Eastern Daylight Time)
M400
M574 X2 Y2 Z2 S3
M913 X30 Y30 Z30
M201 X1000 Y1000 Z1000
M915 X S2 Y S2 Z S2 F1 H400 R0
; Use relative positioning
G91
; Move all towers to the high end stopping at the endstops (first pass)
G1 X505 Y505 Z505 F1800 H1
; Go down a few mm
G1 X-5 Y-5 Z-5 F1000 S2
; Move all towers up once more (second pass)
G1 X10 Y10 Z10 F360 S1; Move down a few mm so that the nozzle can be centred
G1 Z-5 F6000; Switch back to absolute positioning and go to the centre
G90
G1 X0 Y0 F6000
M400 ; wait again
M913 X100 Y100 ; motor currents back to 100%
M201 X3000 Y3000 ; accel back to original
M574 X1 Y1 Z0 S0 ; set endstops back -
Looks like you are homing too slowly. Your M915 H parameter says that stall detection is enabled at/above 400 full steps/sec. Your steps/mm is 160 with x16 microstepping, so 10 full steps/mm. Therefore 400 full steps/sec is 40mm/sec, times 60 is 2400 mm/min.
-
No good results. I noticed if I used a really small M915 H parameter the effector wouldn't jam as much into the frame but I would get this error anyway:
Error: G0/G1: insufficient axes homed
; homedelta.g
; called to home all towers on a delta printer
;
; generated by RepRapFirmware Configuration Tool on Mon May 22 2017 22:56:20 GMT-0400 (Eastern Daylight Time)
M400
M574 X2 Y2 Z2 S3
M913 X30 Y30 Z30
M201 X50 Y50 Z50
M915 X S2 Y S2 Z S2 F1 H400 R0
; Use relative positioning
G91
; Move all towers to the high end stopping at the endstops (first pass)
G1 X505 Y505 Z505 F2400 H1
; Go down a few mm
G1 X-5 Y-5 Z-5 F500 S2
; Move all towers up once more (second pass)
G1 X10 Y10 Z10 F360 S1; Move down a few mm so that the nozzle can be centred
G1 Z-5 F6000; Switch back to absolute positioning and go to the centre
G90
G1 X0 Y0 F6000
M400 ; wait again
M913 X100 Y100 ; motor currents back to 100%
M201 X3000 Y3000 ; accel back to original
M574 X1 Y1 Z0 S0 ; set endstops back -
@DomMilan and this one
Error: G0/G1: target position not reachable from current position -
Okay so I spent all day working this out. Its very close but it still grinds at the top a little
; homedelta.g
; called to home all towers on a delta printer
;
; generated by RepRapFirmware Configuration Tool v2.1.8 on Sat Apr 25 2020 15:18:05 GMT-0400 (Eastern Daylight Time)
M915 X Y Z S2 F1 H50
M400 ; make sure everything has stopped before we make changes
M201 X300 Y300 Z300
M574 X2 Y2 Z2 S3 ; set endstops to use motor stall
M913 X50 Y50 Z50 ; reduce motor current to 50% to prevent belts slipping
G91 ; relative positioning
G1 S1 H1 X532 Y532 Z532 F20000 ; move all towers to the high end stopping at the endstops (first pass)
G1 H2 X-8 Y-8 Z-8 F3600 ; go down a few mm
G1 H1 X10 Y10 Z10 F360 ; move all towers up once more (second pass)
G1 Z-5 F2400 ; move down a few mm so that the nozzle can be centred
G90 ; absolute positioning
M400 ; make sure everything has stopped before we reset the motor currents
M913 X100 Y100 Z100 ; motor currents back to normal
G1 X0 Y0 F2400 ; move X+Y to the centre
M915 X Y Z S30 R2 F1 ; set X and Y sensitivity high, pause when stall, filtered////////////////////////////////////////////////////////////////////////////////////////////////////
Also updated the config to use 256 microstepping
-
Don't use such a small H parameter, use a faster homing speed. If you set the H parameter too low then stall detection will become temperature-sensitive. I included an example for a delta printer in https://duet3d.dozuki.com/Wiki/Stall_detection_and_sensorless_homing#Section_Procedure.
-
@DomMilan said in Tevo Little Monster delta endstopless homing:
Also updated the config to use 256 microstepping
NO NO NO!
(sorry, it's late here. time I turned in.)
-
@DomMilan said in Tevo Little Monster delta endstopless homing:
Also updated the config to use 256 microstepping
What DC42 means is that this won't solve your issue at all, and will likely result in performance issues along the road. Use x16 microstepping with interpolation to x256 for best results.
-
So after the changes and DC42s recommendation I am back where I started... I really don't know what to do. I am running the same setup and an Ender 3 and it works perfectly and I cant even get this this thing to home.
-
On top of that all my thermistors are now reading 2000 even though everything is all connected.
-
What settings are you currently using and what exactly is happening?
Does the Little Monster not have endstops already? I'm not sure what the draw of stall detection homing is for a delta? I'd think you'd want the best reliability and accuracy possible for homing.
-
@Phaedrux said in Tevo Little Monster delta endstopless homing:
I live near New York City and I have put my 14 3D printers to work printing 250 shields a day. I was running my SBase on the TLM until the board died. Turned out one of my endstops died too, which is why I am trying to run sensor less homing. My temp errors went away when I moved to Firmware 2.03-2.05 from 3, so that's taken care of. Guess ill buy the endstop and wait another week until I bring this thing back to life.
-
I see. Well there is the manual way. You could move the carriage into position and then set the position with g92.
But as I said before what settings do you currently have and what happens?
-
@DomMilan said in Tevo Little Monster delta endstopless homing:
So after the changes and DC42s recommendation I am back where I started... I really don't know what to do. I am running the same setup and an Ender 3 and it works perfectly and I cant even get this this thing to home.
What speed are you now using in the G1 homing move in your homedelta.g file? Previously, you had it set too low. Revert to using H400 in your M915 commands, and try a homing speed of 4000 mm/min as in my example file.
Note, stall homing by itself isn't accurate enough to home a delta, but if you have a Z probe then one or two auto calibration cycles after homing will fix the accuracy.
-
My config
; Configuration file for Duet WiFi (firmware version 2.03)
; executed by the firmware on start-up
;
; generated by RepRapFirmware Configuration Tool v2.1.8 on Sat Apr 25 2020 21:37:52 GMT-0400 (Eastern Daylight Time); General preferences
G90 ; send absolute coordinates...
M83 ; ...but relative extruder moves
M550 P"The Fortune Teller" ; set printer name
M665 R155 L397.19 B155 H520 ; Set delta radius, diagonal rod length, printable radius and homed height
M666 X0 Y0 Z0 ; put your endstop adjustments here, or let auto calibration find them; Network
M551 P"Turnip123!" ; set password
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 S1 ; physical drive 2 goes forwards
M569 P3 S1 ; 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 Z80.00 E403.00 ; set steps per mm
M566 X1200.00 Y1200.00 Z1200.00 E1200.00 ; set maximum instantaneous speed changes (mm/min)
M203 X18000.00 Y18000.00 Z18000.00 E9000.00 ; set maximum speeds (mm/min)
M201 X5000.00 Y5000.00 Z5000.00 E1000.00 ; set accelerations (mm/s^2)
M906 X1000 Y1000 Z1000 E800 I30 ; set motor currents (mA) and motor idle factor in per cent
M84 S30 ; Set idle timeout; Axis Limits
M208 Z0 S1 ; set minimum Z; Endstops
M574 X2 Y2 Z2 S3 ; set endstops controlled by motor stall detection; Z-Probe
M307 H3 A-1 C-1 D-1 ; disable heater on PWM channel for BLTouch
M558 P9 H5 F120 T7200 ; set Z probe type to bltouch and the dive height + speeds
G31 P500 X0 Y20 Z1.3 ; set Z probe trigger value, offset and trigger height
M557 R150 S45 ; define mesh grid; Heaters
M307 H0 B0 S1.00 ; disable bang-bang mode for the bed heater and set PWM limit
M305 P0 T100000 B4138 R4700 ; set thermistor + ADC parameters for heater 0
M143 H0 S120 ; set temperature limit for heater 0 to 120C
M305 P1 T100000 B4138 R4700 ; set thermistor + ADC parameters for heater 1
M143 H1 S280 ; set temperature limit for heater 1 to 280C; Fans
M106 P0 S0 I0 F500 H1 T45 ; set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned on
M106 P1 S1 I0 F500 H1 T45 ; set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned on; Tools
M563 P0 S"Extruder" 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
M591 D0 C3 P2 E6.0My homedelta
; homedelta.g
; called to home all towers on a delta printer
;
; generated by RepRapFirmware Configuration Tool v2.1.8 on Sat Apr 25 2020 21:37:52 GMT-0400 (Eastern Daylight Time)
M400 ; make sure everything has stopped before we make changes
M915 P0:1:2 S2 F1 H400 R0
M574 X2 Y2 Z2 S3 ; set endstops to use motor stall
M913 X55 Y55 Z55 ; reduce motor current to 50% to prevent belts slipping
G91 ; relative positioning
G1 H1 X705 Y705 Z705 F4000 ; move all towers to the high end stopping at the endstops (first pass)
G1 H2 X-5 Y-5 Z-5 F7200 ; go down a few mm
G1 H1 X10 Y10 Z10 F360 ; move all towers up once more (second pass)
G1 Z-5 F7200 ; move down a few mm so that the nozzle can be centred
G90 ; absolute positioning
G1 X0 Y0 F7200 ; move X+Y to the centre
M400 ; make sure everything has stopped before we reset the motor currents
M913 X100 Y100 Z100 ; motor currents back to normal
G1 X0 Y0 F2000 ; centre the head and set a reasonable feed rateWhat currently happens with this specific homedelta.g is the effector rams itself into the endstop position and returns two errors, target position not reachable from current position and insufficient axis homed.
-
@DomMilan said in Tevo Little Monster delta endstopless homing:
M400 ; make sure everything has stopped before we make changes
M915 P0:1:2 S2 F1 H400 R0
M574 X2 Y2 Z2 S3 ; set endstops to use motor stall
M913 X55 Y55 Z55 ; reduce motor current to 50% to prevent belts slipping
G91 ; relative positioning
G1 H1 X705 Y705 Z705 F4000 ; move all towers to the high end stopping at the endstops (first pass)
G1 H2 X-5 Y-5 Z-5 F7200 ; go down a few mm
G1 H1 X10 Y10 Z10 F360 ; move all towers up once more (second pass)
G1 Z-5 F7200 ; move down a few mm so that the nozzle can be centred
G90 ; absolute positioning
G1 X0 Y0 F7200 ; move X+Y to the centre
M400 ; make sure everything has stopped before we reset the motor currents
M913 X100 Y100 Z100 ; motor currents back to normal
G1 X0 Y0 F2000 ; centre the head and set a reasonable feed rateTry this instead
M400 ; make sure everything has stopped before we make changes M915 P0:1:2 S2 F0 H200 R0 M574 X2 Y2 Z2 S3 ; set endstops to use motor stall M913 X55 Y55 Z55 ; reduce motor current to 50% to prevent belts slipping G91 ; relative positioning G1 H1 X705 Y705 Z705 F4000 ; move all towers to the high end stopping at the endstops (first pass) G1 X-50 Y-50 Z-50 F7200 ; go down a few mm G90 ; absolute positioning G1 X0 Y0 F7200 ; move X+Y to the centre M400 ; make sure everything has stopped before we reset the motor currents M913 X100 Y100 Z100 ; motor currents back to normal
-
Okay this one was odd.
Y and Z jumped down a good 50mm but then raised up about half that distance but is now lowering every time I run G28.
X just lowers to the same height that Y and Z end in one motion.
-
I may have removed too much from your original. I'm not very familiar with the delta homing.
try removing
G1 X0 Y0 F7200 ; move X+Y to the centre
That should home all towers once and then move down 50mm and stop. What you do with it after that is up to you.
The important thing is that it sounds like it homed correctly.
-
Now it homes one axis every time I G28 but a different axis every time with a net downward movement still.
-
Two things. First, I may have made an error by removing the H2 from the G1 command to lower the heads a bit. Second, we may be experiencing a limitation of RRF2 and stall detection homing.
https://duet3d.dozuki.com/Wiki/Gcode#Section_M574_RepRapFirmware_Num_3
Ok I think we've encountered the limitation of RRF2 and stall detection. As soon as one endstop is triggered, movement stops for all axis.
You would need to use RRF3 to use multiple motor stall detection (M574 S4). See the link.
Snnn 1 = switch-type (eg microswitch) endstop input, 2 = Z probe (when used to home an axis other than Z), 3 = single motor load detection, 4 = multiple motor load detection (see Notes).
However, updating to RRF3 would take some effort on it's own since the config.g would need to be recreated with the web configurator or manually updated.
If you're not up to that, I think we could get around this limitation by homing each axis with an individual move. This gets a little tricky with a delta though because of the way the axis are linked. But if they started in a semi safe spot you should be able to home each tower individually.
So first, try this.
M400 ; make sure everything has stopped before we make changes M915 P0:1:2 S2 F0 H200 R0 M574 X2 Y2 Z2 S3 ; set endstops to use motor stall M913 X55 Y55 Z55 ; reduce motor current to 50% to prevent belts slipping G91 ; relative positioning G1 H1 X705 Y705 Z705 F4000 ; move all towers to the high end stopping at the endstops (first pass) G1 H2 X-50 Y-50 Z-50 F7200 ; go down a few mm G90 ; absolute positioning G1 X0 Y0 F7200 ; move X+Y to the centre M400 ; make sure everything has stopped before we reset the motor currents M913 X100 Y100 Z100 ; motor currents back to normal
If that doesn't work, try this
M400 ; make sure everything has stopped before we make changes M915 P0:1:2 S2 F0 H200 R0 M574 X2 Y2 Z2 S3 ; set endstops to use motor stall M913 X55 Y55 Z55 ; reduce motor current to 50% to prevent belts slipping G91 ; relative positioning G1 H1 X705 F4000 ; move X tower G1 H1 Y705 F4000 ; move Y tower G1 H1 Z705 F4000 ; move Z tower G1 H2 X-50 Y-50 Z-50 F7200 ; go down a few mm G90 ; absolute positioning M400 ; make sure everything has stopped before we reset the motor currents M913 X100 Y100 Z100 ; motor currents back to normal
Also before running those try and get the carriages to be more or less even.