Welcome! Log In Create A New Profile

Advanced

Marlin RC8 with Delta Auto Calibrate

Posted by LVD 
LVD
Marlin RC8 with Delta Auto Calibrate
April 15, 2017 06:43AM
Here's the Marlin firmware initially developed for the Flsun printer, but it should work on any delta.

Beta testing...

Additional command:

* G33 - Delta auto calibration of height ('1 point') + end-stops, delta radius ('4 point') + tower angle corrections ('7+ point')

* G33 (Cn) (Vn)
* Cn = calibrate number of probe points (n*n) (-2 , 1-4)
* Vn = verbose level (0-2)

Changed command:

* M665: Set delta configurations

* M665 (Hx.x) (Lx.x) (Rx.x) (Bx.x) (Sn) (Xx.x) (Yx.x) (Zx.x)
*
* H = delta height
* L = diagonal rod
* R = delta radius
* B = radius for calibration points
* S = segments per second
* X = corr. for angle between towers Y and Z (*)
* Y = corr. for angle between towers Z and X (*)
* Z = corr. for angle between towers X and Y (*) (auto adjusted so sum of corrected angles = 360.0)
* (*) measured in degrees : positive -> angle larger than 120° by x.x; negative -> angle smaler than 120° by -x.x
Attachments:
open | download - Marlin-1.1.0-RC8-AC (1).zip (419.6 KB)
open | download - Marlin-1.1.0-RC8-AC (2).zip (467.2 KB)
open | download - Marlin-1.1.0-RC8-AC (3).zip (474.4 KB)
Re: Marlin RC8 with Delta Auto Calibrate
April 15, 2017 08:26AM
It's nice to see a recent variant of Marlin getting tower angle correction parameters at last, but why didn't you make them compatible with RepRapFirmware and Smoothieware? In both firmwares, they are the deviation (in degrees anticlockwise viewed from above) from the normal positions. If you used compatible meanings for tower angle corrections instead of going your own way, Marlin users would be able to rotate the X and Y axes relative to the build platform, and also be able to use my delta calibration calculator at [escher3d.com].

What auto calibration algorithm are you using?

Edited 3 time(s). Last edit at 04/15/2017 08:30AM by dc42.



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].
LVD
Re: Marlin RC8 with Delta Auto Calibrate
April 15, 2017 10:42AM
- I made a some displacement matrices: a couple of 4*4 for end-stops + delta radius and 3*3 for two angle corrections + extra condition sum of all angle corrections = 0)(*)
- inverted them all and averaged them into one big 13 points VS 6 parameters matrix; scale this matrix according the probe radius/delta radius ratio
- and then the algorithme iterates trough that convergence matrix till the standard deviation of the probe results from the zero plane (equivalent to least squares) does no longer improve
- if you choice to probe lesser points I use a subset of the above matrices
- normalize the end-stops and set the excess to delta height

(*) that explains my definition of tower angle corrections

I will change that tower definition once all things are tested... but in the meantime for use with your calculator:

myYZ = yourZ - yourY
myZX = yourX - yourZ
(myXY = yourY - yourX)

Or by fixing the Z-axis:

myZX = yourX
myYZ = -yourY

So basically the same; just taken another view on what is positive/negative

Edited 6 time(s). Last edit at 04/16/2017 09:26AM by LVD.
LVD
Re: Marlin RC8 with Delta Auto Calibrate
April 22, 2017 06:13AM
Version 1 (without the tower angle corrections) is already available at: [github.com]

Version 4 (will also be available soon at GitHub) but here's a preview based on Marlin1.1.0-RC8:

- added up to 7*7 probe grid (Cn= -2, 1-7)
- made M665 compatible with Esher-3d wizard (angles measured anti-clockwise)
- solved the delta_height bug (when 1st calibrating do a G33 C1 to get the height right and save with m500, this will prevent scraping of the bed or flying in the air with further auto-calibrations)

If you want to use your configuration.h of the previous version you need to add a 3th number (zero) to:

#define DELTA_TOWER_ANGLE_TRIM { -0.05, +0.35, 0.00 }

for it to compile without errors. And remember reset the EEPROM with M502 M500 after uploading...
Attachments:
open | download - Marlin-1.1.0-RC8-AC (1).zip (419.9 KB)
open | download - Marlin-1.1.0-RC8-AC (3).zip (474.4 KB)
open | download - Marlin-1.1.0-RC8-AC (2).zip (467 KB)
Re: Marlin RC8 with Delta Auto Calibrate
April 23, 2017 04:50AM
i don t understand this two point..
B = radius for calibration points
* S = segments per second


it will be great to have a video to show us how to tune a delta radius with this new command added winking smiley
LVD
Re: Marlin RC8 with Delta Auto Calibrate
April 24, 2017 05:18AM
[reprap.org]

Segments per second = delta moves are cut into segments, this parameter set the amount of segments your processor is capable of dealing with
Bed radius = is the radius on which the probe points for calibration are situated used in G33 as well as in the manual calibration LCD menu
LVD
Re: Marlin RC8 with Delta Auto Calibrate
May 02, 2017 07:04AM
Coming soon:

[reprap.org]
LVD
Re: Marlin RC8 with Delta Auto Calibrate
May 05, 2017 01:51AM
[github.com]

Marlin 1.1.0 with Delta Auto Calibration is out
Re: Marlin RC8 with Delta Auto Calibrate
May 06, 2017 07:35PM
thanks lvd for you hard working

it will be great to have a youtube video to show us how to tune correctly a delta with this new feature
Re: Marlin RC8 with Delta Auto Calibrate
May 09, 2017 04:12PM
Thank a lot!!!! I'll check it out on my new effector for china e3dV5 and inductive sensor lj12a3-4-z/bx.
For preRelease version everything works ok, now just have some troubles with speed adjustment and new Cura slicer
LVD
Re: Marlin RC8 with Delta Auto Calibrate
May 12, 2017 06:51AM
Here's were you can find the latest of the latest developments:

[github.com]
Re: Marlin RC8 with Delta Auto Calibrate
May 26, 2017 01:53AM
Hi.
Update - I've tried new firmware - calibration with sensor lj12a3-4-z/bx fast and accurate.(magic)
But I can't understand reason why the printing speed is fast like ~100mm/sec when I set in slicer 20-30?
The firmware setting are default. Thanks!

Edited 1 time(s). Last edit at 05/26/2017 01:54AM by molotovec.
Re: Marlin RC8 with Delta Auto Calibrate
June 06, 2017 04:27AM
I'm struggling with the calibration of my DYI kossel mini and decided to give a try on the G33, after lots of Escher calculator iterations with results that are worse than no calibration at all.

As my kit was the cheapest ever, it came with a Allen key z-probe, that might be deployed and stowed by hand. When running the G33 command, the software requires a stow and a deploy of the z probe for every reading of every point.

My point is not argue in favor of manual Allen key probes, but it should be possible to avoid the stow/deploy procedure in this case. Is there anything like that built into the firmware, and I missed ? Or is it possible to tweak the code in that way ?

I can recall the G30 S-1 command, that allows the one point probe to run without stow in the end, just printing the results ...

Edited 1 time(s). Last edit at 06/06/2017 04:29AM by GibaHC.
Re: Marlin RC8 with Delta Auto Calibrate
June 06, 2017 06:29AM
Quote
GibaHC
I'm struggling with the calibration of my DYI kossel mini and decided to give a try on the G33, after lots of Escher calculator iterations with results that are worse than no calibration at all.

If the height errors get worse on each iteration, that means you entered the height errors with the wrong sign.



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: Marlin RC8 with Delta Auto Calibrate
June 06, 2017 08:37AM
I have correctly taken care of the signal inputs in Escher calculator, but the parameters do not reduce the deviations. On third iteration the 0,0 position is far on the right side of the bed, problably caused by too high endstops" corrections". From that point on, some of the probe points are away from the bed itself.

I have started the calibration with a 0,0 position with -0.05 z height, but around 2 millimeters differences between higths of the y tower nearest and farest points. The other towers have less differences. All readings with G30.

The third iteration on Escher touches the bed at 0,0 in -19 dot something ... hugely away from físical center of the bed (right side from the center as said before). The difference between towers points are increased too. About 9mm difference on same tower readins, an not flattened between towers.

Everything is tightly screwed, belts tensioned and small prints are possible without calibrations.

Thanks for the tip, anyway. I'm glad to find people willing to help.

Edited 2 time(s). Last edit at 06/06/2017 09:55AM by GibaHC.
Re: Marlin RC8 with Delta Auto Calibrate
June 06, 2017 04:45PM
Something is going very wrong if applying the corrections is causing the probe points to shift that much. I haven't used Marlin for 3 years. Does the current version even support tower position corrections expressed as differences from the ideal 120 degree angles, which is what other firmwares do and the calculator expects?



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].
LVD
Re: Marlin RC8 with Delta Auto Calibrate
June 07, 2017 03:18AM
Quote
GibaHC
... but it should be possible to avoid the stow/deploy procedure in this case...

this was already fixed in the latest version in my rep (1.1.2-AC) and will be incorporated in Marlin 1.1.3; use G33 not to stow and G33 E to stow after each probe.

Quote
dc42
... I haven't used Marlin for 3 years. Does the current version even support tower position corrections expressed as differences from the ideal 120 degree angles, which is what other firmwares do and the calculator expects?

Initially they were expressed as the difference from the ideal 120 degree angle between 2 towers, now they are expressed as the difference from the ideal 210, 330 and 90 (fixed) angle the towers should be on as in other FW (same difference give or take a minus sign). Feel free to give new Marlin a test run some day...

Besides being prone to error by not constant effector tilt one other problem with eccentric probes is that calibration calculations requires the rods, effector and the whole delta mechanism to be in certain place, so the nozzle should be at the given coordinates not the probe. G30 Xx.xx Yy.yy shifts the effector with the probe offsets, so with eccentric probes the rods and the delta mechanism are not at the place calibration expects them to be; use G1 Xx.xx Yy.yy G30 instead to probe at a certain nozzle position. This way however the probe will not tough the bed at the given coordinates and this will introduce an offset error caused by bed tilt and effector tilt; but those can be eliminated by setting an appropriate z-offset for the probe. This was also fixed for eccentric probes in 1.1.2-AC and will also be incorporated in the next Marlin release.
Re: Marlin RC8 with Delta Auto Calibrate
June 10, 2017 01:40AM
Quote
LVD
Quote
GibaHC
... but it should be possible to avoid the stow/deploy procedure in this case...

this was already fixed in the latest version in my rep (1.1.2-AC) and will be incorporated in Marlin 1.1.3; use G33 not to stow and G33 E to stow after each probe.


I tried the 1.1.3-AC today with excellent results. First i finished some measurements, realizing my delta radium should be trimmed for the x tower. From them on the G33 could handle the calibration.

I have attached a .pdf file showing the G29 return in each step, in case someone is interested. Every reflash i did M502 and M500 to reset the EEPROM.

Too late to start printing today, but tomorrow i'll extrude a test print.

Thanks
Attachments:
open | download - Calibração_2.pdf (485 KB)
MS
Re: Marlin RC8 with Delta Auto Calibrate
August 01, 2017 04:02AM
HI Everyone
i'm using 1.1.4 AC marlin in my delta printer ; and i am using inductive proximity sensor for auto calibration . in my marlin i have set X_PROBE_OFFSET_FROM_EXTRUDER & Y_PROBE_OFFSET_FROM_EXTRUDER but the printer doesn't realize it and all of the coordinates it goes is thought that the offset is zero !
actually the printer ignores the offsets and so the result from auto calibration is really bad !
i don't know what's the problem ;
can anyone help please ?eye rolling smiley
i will attach my configuartion.h for more information.

Edited 1 time(s). Last edit at 08/01/2017 04:28AM by MS.
Attachments:
open | download - Configuration.h (65.3 KB)
LVD
Re: Marlin RC8 with Delta Auto Calibrate
August 02, 2017 04:46AM
Calibration as opposed to bed levelling is supposed to do that. For calibration one needs to probe with the effector, carriages and rods in certain positions, not with the eccentric probe touching the bed in those positions. So check that the probe still sees the bed and triggers properly at all positions; if not, diminish DELTA_CALIBRATION_RADIUS.
MS
Re: Marlin RC8 with Delta Auto Calibrate
August 11, 2017 06:37AM
hi LVD
thank you for your answer
actually i have a calibration problem , regardless of using auto calibration which didn't help me at all , i wasn't successful in calibration with M665 & M666 in marlin . as testing procedure i used mitutoyo indicator watch to check the height of probing points and they were at the same height with accuracy of 0.04 millimeters . but the printer isn't calibrated yet and has 2.5 millimeters height difference in printable radius . i think the problem is from somewhere else ; i think the sensitivity of delta robot is very high in having parallel diagonal rods ; because i have made my wagons & end effector my self using water jet method and there is a 0.9 millimeters unparalleled diagonal rods .

Edited 1 time(s). Last edit at 08/11/2017 09:11AM by MS.
Re: Marlin RC8 with Delta Auto Calibrate
August 29, 2017 03:13PM
Hi @LVD,

I updated today to the latest version 1.1.5 from 1.1.1.
With the new version the probe offset is not considered anymore.
I have to use Y = -40 and X = -15.
If I now send G33 P1 the height is not measure in the center.
I mean the nozzle in the center and not the probe.
As a result, if I send G33 P3 the probe goes out of bounds.

G29 works OK in 1.1.5.

Any hint would be very welcome.

Best regards,

Thomas
LVD
Re: Marlin RC8 with Delta Auto Calibrate
August 30, 2017 02:48AM
Calibration (opposite to bed leveling) requires the rods and carriages to be at certain positions (nozzle, not the probe in the centre); if the probe goes out of bounds reduce DELTA_CALIBRATION_RADIUS a bit
Re: Marlin RC8 with Delta Auto Calibrate
August 30, 2017 01:04PM
Thank you for your fast reply.
So if I understand you right the behavior is correct?
Because it changed from version 1.1.1, where the probe is at the center.
LVD
Re: Marlin RC8 with Delta Auto Calibrate
August 31, 2017 03:15AM
A lot of improvements have been made in 1.1.2 and 1.1.4 for eccentric probes; 1.1.5 includes calibration with manual probing (paper tests)
Re: Marlin RC8 with Delta Auto Calibrate
November 03, 2017 12:52PM
I tried the latest 1.1.6b-AC from Github yesterday on my FLSun Delta. It works well, but I was getting dimension errors of -2mm in both x and y, so I double checked the rod length (I had forgotten to do this before autocalibration). After changing the rod length (mine is 267mm), it caused my x and y to be half of what it was supposed to be. I.E, I printed the 20mm cal cube and it measured 10mm in both x and y, and 20 in z. I took it back to 1.1.0-RC8-AC and everything worked well with the rod length change.

Was this something I did wrong? Should I have left the rod length alone, or just tweaked it until I got the right dimensions?
LVD
Re: Marlin RC8 with Delta Auto Calibrate
November 04, 2017 12:41AM
did you check the steps/unit?
Re: Marlin RC8 with Delta Auto Calibrate
November 04, 2017 01:05AM
I did. It was set at 100. I changed the steps, just to try it, and it made the head crash into the bed. I changed it back. The rod length was originally set at 218. I was going to change it back to 218, but that didn't sit right with me knowing mine were so much longer.

I am new to 3d printers and Marlin, but I am familiar with playing with custom mods on android phones. It is not the same, but similar enough that I am dangerous. Because of this, I have several Marlin folders, one for each change made (backups). Most of it makes sense to me though. Let me know if you want me to try something...I am more than willing to be a guinea pig...
LVD
Re: Marlin RC8 with Delta Auto Calibrate
November 04, 2017 10:29AM
Steps, diagonal rod, height, radius,... are not just numbers to play with but correspond to the dimensions of your printer; do some reading, set them right and you will print right.
Re: Marlin RC8 with Delta Auto Calibrate
November 07, 2017 12:39AM
So, I did some reading. I went back to the 1.1.6a and put in all the numbers and it is working like a champ! For now, I consider you a Marlin God! The calibrate feature is awesome compared to what came with the printer.
Sorry, only registered users may post in this forum.

Click here to login