Welcome! Log In Create A New Profile

Advanced

Can anyone explain how to use M666 Marlins?

Posted by disneytoy 
Can anyone explain how to use M666 Marlins?
December 20, 2013 01:24AM
I'm not really sure when or how to use M666 function?

Kossel mini. Mechanical endstops.

Thanks
Re: Can anyone explain how to use M666 Marlins?
December 20, 2013 09:28AM
The M666 command is not strictly needed. You can run the printer just fine without it. If you run without it you will need to manually set the locations of your end stops so the bed comes out level.

If tweaking things in hardware isn't your style, the M666 command lets you tweak the end stops in software instead.

Either way, you need to go through a calibration procedure to figure out the leveling issues with your bed. Either way a dial indicator is a nice thing to have to do this. In the mechanical case you twist screws as a result of your cal. In the software case you wind up with a zero error for your three motors. It's in X,Y,Z terms since Marlin doesn't really have another way of naming each motor. If you are using the M666 stuff, you put that into Slic3r (or a button in Pronterface) and load it at the start of each print.
Re: Can anyone explain how to use M666 Marlins?
December 20, 2013 01:26PM
M666 (together with M500) can store its parameters in EEPROM if you have EEPROM inabled in Configuration.h. In such a case, you do not need to add it to slicer options.

M666 is just a way to adjust edstops in software (instead of mechanicaly with endstop screws). It was writen so that you can do it precisely (it is hard to calibrate an endstop using a crew if you want 0.02 mm precision). Now, some people do not even bother with mechanicaly adjustable endstops anymore and use M666 only.
Re: Can anyone explain how to use M666 Marlins?
December 20, 2013 02:10PM
If you do decide to enable the EEPROM stuff - read up on it first. Things can get very confusing if you don't understand all that gets / can get stored when you turn it on.
Re: Can anyone explain how to use M666 Marlins?
December 21, 2013 04:09PM
Thanks. In my configuring I was told to make sure EEPROM was commented out. So I will wait until I play with that. Haven't made a first print yet.

So I understand. I'm tunning a delta with mechanical endstop switched. My carriages have no screws.

i was under the impression when the endstops were hit, it set everything to zero.

But my issue now is setting the X Y Z min. Bed level. I'm close. I have adjusted the Marlins in my case 297. Then I play with a script in Repetier Host and just change the G0 z5. Trying to get to Z0, then go back to marlins and change the manual z min.

So, when M666 comes into play. If my Z is off 2mm I could make a M666 X0 Y0 Z5 And that would say my Z is off by 5 mm. Can that go both directions? Z-5?

I'm close but no Cigare yet.

Alex
Re: Can anyone explain how to use M666 Marlins?
December 21, 2013 10:29PM
The numbers in M666 can go both ways (+ and -). If you have a typical Delta and it homes at max rather than at min, the offsets still work. They just work in conjunction with the settings for bed size (max X,Y,Z vs min X,Y,Z).
Re: Can anyone explain how to use M666 Marlins?
December 21, 2013 11:41PM
Super. got it.

Question: Say I check the bedlevel at all three column axis. I have scripts in Repetier to do that. If one corner is higher or lower than the other. The individual Z, M666 can only adjust the global Z0 correct.

I will eventually have my Z-probe hooked up for auto bed leveling but in the mean time M666 is global only?
Re: Can anyone explain how to use M666 Marlins?
December 22, 2013 04:36PM
All the M666 is doing is to offset the zero on the axis. Your scripts have to do the heavy lifting to figure out what to adjust. The net result will never be perfect. There are multiple sources of error in a Delta. Zero on the drive axis is only one issue.
Re: Can anyone explain how to use M666 Marlins?
December 29, 2013 03:28PM
M666 Question:

I just measured XYZ and center. The tip just drags on a thick sheet of paper.

(X) G1 X-70 Y-40 Z2.1 ( you will notice I could not get closer to the X tower because of my fan) i hope that does not make a difference.

(Y) G1 X87 Y-50 Z3.3

(Z) G1 X0 Y100 Z2.0

(CENTER) G1 X0 Y-0 Z0.7

So, in M666 would those be negative or positive offsets? Example

M666 X2.1 Y3.3 Z2

or

M666 X-2.1 Y-3.3 Z-2

And there isn't anything I can do for Center Z0.7? The numbers indicate I have a CONCAVE plane. That is where I will start adjusting the DELTA_RADIUS. To correct for CONCAVE the Delta_Radius gets a smaller number?
Re: Can anyone explain how to use M666 Marlins?
December 30, 2013 06:33AM
I assume the positions you reported are the resutl of Get Position G-code.

You need to use netagive numbers in M666. But since you get too high z-position values at bed level that means your z-height is too big. First you need to shorten it by at least the maximum of the reported z-position vlaues. In your case it is 3.3. Lets use number 4. Then you will need to adjust by values (4-2.1, 4-3.3, 4-2) at towers (X,Y,Z) respectively. The numbers may need to use decimal point to indicate they are floating point (I'm not sure if this is really required). And the absolute value of the numbers will be slightly different since your diagonal rods (corresponding to the tower measured) were not completely vertical. So it should be more like M666 X-1.9 Y-0.7 Z-2.0 with slightly different values (and after you shortened z-height by 4 mm).

After you adjust levels near tower bases, your head may be too low at the center. It will grind to the heatbed. M666 cannot help with this error. The most common reasons for this error are:
  • incorrect diagonal rod length (the value in your FW must be a bit bigger (probably))
  • incorrect delta radius (from the top of my head, I do not have hints about error direction here)
You can have one of them wrong or even both of them. If you do not guess right wihich is wrong then (after the bed leveling) the objects printed will not have correct size (even when your steps per mm are correct*).

* Incorrect steps/mm is another common reason for incorrect size of printed objects.

Edit: Error about M666 use corrected.

Edited 2 time(s). Last edit at 12/30/2013 06:49AM by hercek.
Re: Can anyone explain how to use M666 Marlins?
December 30, 2013 10:21AM
This is wrong and all M666 values must be negative and have a decimal value. Or put another way, you can't move any higher than the endstop you just bumped and the values are defines as floating point.

Quote
uncle_bob
The numbers in M666 can go both ways (+ and -). If you have a typical Delta and it homes at max rather than at min, the offsets still work. They just work in conjunction with the settings for bed size (max X,Y,Z vs min X,Y,Z).
Re: Can anyone explain how to use M666 Marlins?
December 30, 2013 10:24AM
This sounds very familiar and was posted by a user named pezgarden on Google groups recently

Quote
disneytoy
M666 Question:

I just measured XYZ and center. The tip just drags on a thick sheet of paper.

(X) G1 X-70 Y-40 Z2.1 ( you will notice I could not get closer to the X tower because of my fan) i hope that does not make a difference.
Re: Can anyone explain how to use M666 Marlins?
April 09, 2017 06:16AM
i need you help
i ve tried to calibrate my delta anycubic kossel and i can t arrive to set it correctly

a
so if i understand i need first:
- calibrate Z home position(no probleme here..)
-after each 3 corners like i can see on my manual(no probleme here but i have seen that we can use m666 instead screw or unscrew ...what is better?)
-but after that....my center is not leveling..i have concave bed and if i tune again my center corners will not be good..

what i need to tune?
please help me
Re: Can anyone explain how to use M666 Marlins?
April 09, 2017 06:26PM
nobody could help me?
i run latest marlin firmware rc8.
how can i set correctly my bed leveling?[www.escher3d.com]

i have seen this great tool from dc42(i think )
but i don t know what i need to do with some items like this
"Initial tower angular position corrections:" and " Initial endstop corrections"
Re: Can anyone explain how to use M666 Marlins?
April 10, 2017 02:43AM
The initial endstop corrections are the initial values you used in M666 and saved to EEPROM using M500. So all zero if you haven't calibrated your printer yet. Setting tower angle corrections is not easy in regular Marlin.



Large delta printer [miscsolutions.wordpress.com], E3D tool changer, Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].
Re: Can anyone explain how to use M666 Marlins?
April 10, 2017 03:41AM
Quote
dc42
The initial endstop corrections are the initial values you used in M666 and saved to EEPROM using M500. So all zero if you haven't calibrated your printer yet. Setting tower angle corrections is not easy in regular Marlin.


Thanks dc42

Do you know where we can find a example to show us how to do that?
Where is the tower angle parameters on merlin?and what is it exactly ?does it something i need to tune by myself ?
Sorry for all this question s
Re: Can anyone explain how to use M666 Marlins?
April 12, 2017 09:32AM
The issue with later marlin firmwares like rc8 is that they have only very few parameters to calibrate a delta with. This will sound crazy but you'll do better with Rich Cattels marlin from 3 years ago either master or testing branch. You can use dc42's calculator to set a full range of m665 and m666 parameters.

Otherwise try repetier firmware, or smoothieware or RepRapFirmware which are all better for deltas than marlin.


Simon Khoury

Co-founder of [www.precisionpiezo.co.uk] Accurate, repeatable, versatile Z-Probes
Published:Inventions
Re: Can anyone explain how to use M666 Marlins?
April 12, 2017 12:49PM
Quote
DjDemonD
The issue with later marlin firmwares like rc8 is that they have only very few parameters to calibrate a delta with. This will sound crazy but you'll do better with Rich Cattels marlin from 3 years ago either master or testing branch. You can use dc42's calculator to set a full range of m665 and m666 parameters.

Otherwise try repetier firmware, or smoothieware or RepRapFirmware which are all better for deltas than marlin.

reprapfirmware need a 32bit board which is really expansive for my first use..
i have a smoothiebard clone as second board but i don t want to use it for the moment
i would try to use the original board and arrive to fix my problem
i don t understand why there are no better support for delta printer on marlin...dc42 caluclator seem very helpful but there are no real tutto about how to use it..so for beginners it s very hard to understand everything
Re: Can anyone explain how to use M666 Marlins?
April 12, 2017 02:02PM
You can use marlin it just isn't written by any real delta enthusiasts or experts. If your machine is very well made it might work for you, but you won't get precise calibration as it doesn't allow you to enter things like tower radius error etc...

As for how to use dc's calibration calculator see my micro delta link below, where I wrote detailed instructions skip to the part on calibration and follow it. But consider using Rich Cattels marlin (Google it it's on github) or repetier.

I have run deltas on RC's marlin very successfully, my micro delta runs on it. But for really amazing performance consider duet/RRF even if not now then later as an upgrade, you won't regret it, and you can probably sell it on for more or less what you paid for it if you don't like it.

Edited 1 time(s). Last edit at 04/12/2017 02:54PM by DjDemonD.


Simon Khoury

Co-founder of [www.precisionpiezo.co.uk] Accurate, repeatable, versatile Z-Probes
Published:Inventions
Re: Can anyone explain how to use M666 Marlins?
April 12, 2017 06:06PM
i will try soon my smoothieboard clone
but i would like before to use my delta anycubic like it is.
thanks for you reply it s very nice!! i search more documentation about how to use m666
Re: Can anyone explain how to use M666 Marlins?
April 13, 2017 07:21AM
I used Marlin in past on my delta printer. I use Repetier (still with 8-bit electronics) on the same printer now.
Repetier works OK on a delta. If you don't want to invest in new 32-bit hardware then try Repetier.
Re: Can anyone explain how to use M666 Marlins?
April 13, 2017 08:54AM
i have buy simplify 3d does it good too?
Re: Can anyone explain how to use M666 Marlins?
April 23, 2017 04:21AM
Well it seems now there is a recent version of marlin with a full range of adjustment for deltas [forums.reprap.org]


Simon Khoury

Co-founder of [www.precisionpiezo.co.uk] Accurate, repeatable, versatile Z-Probes
Published:Inventions
Re: Can anyone explain how to use M666 Marlins?
July 15, 2017 01:04PM
M666 used successfuly for me !!

Full calibration is not done yet, but for tower endstops adjustements, I've done it by this way.

My printer is an AnyCubic Kossel Linear Plus (230mm plate) and I'm using the marlin firmware already installed on the control board, should be a RC8...


M666 X0.00 Y0.00 Z0.00
is the inital configuration.

I've adjusted mechanically the endstop to get less than 1/10mm difference between each one
G28 ; for homing
G1 X-99.53 Y-57.5 Z5 F20000 ; to go vertically to my 'X' tower (left for me)

then, after, slowly manually decrease Z until nozzle in contact with paper sheet
The Z for this was -11.30
Same for each axis, Y (the right one) -11.20
and for Z one (rear), 11.20

M666 X-11.15 Y-11.15 Z-11.15
M500 ; to store the new values

New test, new difference for each tower.. after some iteration, I've got the final values for me :
M666 X-11.50 Y-11.0 Z-11.25
M500

and now, for Z0.00, I've the same result above each tower winking smiley

Z0.10, paper can move freely, Z0.00, I can pull it, but no way to push it winking smiley

same result in the bed center !

I've to improve other settings because at the maximum radius, at the middle distance between towers, the Z have a small +0.1 error... maybe rod length to adjust


Membre cofondateur de l'ACoLab à Clermont-Ferrand
Sorry, only registered users may post in this forum.

Click here to login