Welcome! Log In Create A New Profile

Advanced

Bed Auto Leveling.. check this out

Posted by AlexBorro 
Re: Bed Auto Leveling.. check this out
February 15, 2015 02:22PM
Hello!
When the probe touches down, and I make M114, it shows the same value on the lcd and Arduino's terminal.
Re: Bed Auto Leveling.. check this out
February 15, 2015 02:25PM
here it is
Attachments:
open | download - Configuration.h (30.9 KB)
Re: Bed Auto Leveling.. check this out
February 15, 2015 02:39PM
Do you have some info to buy a capacitance probe ?
Re: Bed Auto Leveling.. check this out
February 15, 2015 02:44PM
when I do G29 I get these informations :
Re: Bed Auto Leveling.. check this out
February 15, 2015 03:04PM
I've tried a capacitive probe, and there are a few problems with them. I use interchangeable glass beds. The capacitive probe measures the distance to the aluminium plate underneath the glass, so unless the plates are all exactly the same thickness, it needs recalibrating for each plate. Any coating on the glass plate such as PVA glue or solvent cement may affect the reading, especially if it is even slightly conductive. It's also hard to eliminate temperature sensitivity.

So I can't recommend capacitive sensing, except perhaps if you print on to a coated metallic bed instead of on glass.



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: Bed Auto Leveling.. check this out
February 15, 2015 03:06PM
so I'll remain on my traditional probe if it works winking smiley
Re: Bed Auto Leveling.. check this out
February 15, 2015 03:21PM
That would be an inductive probe not a capacitance probe. I use different plates and coatings without a problem.
Re: Bed Auto Leveling.. check this out
February 15, 2015 03:22PM
ok, could you give a link please ?
Re: Bed Auto Leveling.. check this out
February 15, 2015 03:28PM
What were the values? I'll have a look at the config and get back to you. The capacitance probe I use is an NPN LJC18A3-H-Z/BX, I got it from e bay for about £10. You have to use a voltage divider made from a couple of resistors to get the signal to be below 5v. There are YouTube videos that show how to do that.
Re: Bed Auto Leveling.. check this out
February 15, 2015 03:33PM
Values were the same as the posted picture.
Re: Bed Auto Leveling.. check this out
February 15, 2015 04:16PM
Sorry I'm not seeing where the M114 after homing and then M114 after manually moving the nozzle down to the bed are in that screen shot? Also I've just had a quick look and can't see much that would cause this problem but there are some other things you may want to change. You have z raise before probe at 4mm but your probe offset is around 16mm, with these values you'll break the probe if homing when the nozzle is close to the bed. Also if you use the servo deactivation it should help with the servo jitter.
Re: Bed Auto Leveling.. check this out
February 15, 2015 04:18PM
Ok, I'm checking it. Where do I to do deactivation servo please?
Re: Bed Auto Leveling.. check this out
February 15, 2015 06:29PM
Quote
touchthebitum
Ok, I'm checking it. Where do I to do deactivation servo please?

It's right after the z raise between probing in configuration.h

Any luck with the M114 values?
Re: Bed Auto Leveling.. check this out
February 16, 2015 01:17AM
Thanks.I uncommented in adv.config.h endstop only for homing and it is better.Now it remains 2 mm to print right on the bed.
Cam you tell me the process with M114 you want please because I'm not sure.
Thanks
Re: Bed Auto Leveling.. check this out
February 18, 2015 03:43AM
SOLVED
Got the wrong firmware version, with the current from GitHub everything works perfect

Hi everyone,

the bed leveling works great on my machine, only problem I have is that my "Home Position" is offset-ed by the probe offset.
After sending G28 the head moves into its home position, if I look at the "Current Position" with M114 it shows x-47, y0, z1.1 - which makes sense for y and z but I would expect x to be 0 as well.

This happens with Z_SAFE_HOMING activated and set to x0 y0 as my safe home point (assuming its the safe home for the nozzle NOT the probe)

If i deactivate Z_SAFE_HOMING strange things happen.
on G28 the x and y endstops are reached. Uppon "Raise before probe" the y carriage also moves, which it does not during with Z_SAFE_HOMING activated - I would expect only a raise in Z.

Here is a video of the "normal" ABL and the obvious loss of print space in x

Video ABL Procedure

I hope someone can help me with my problem. One solution I came up with is doing a G92 x0, y,0 after G28. But I am not sure if that confuses the rest of the bed leveling procedure.

Edited 2 time(s). Last edit at 02/18/2015 12:00PM by LeChuck71.


Cheers
Axel

Prusa i3 Advanced Laser Cut / Marlin 1.1.0-RC8 / BLTouch / Pertinax Print Bed /
E3D V6 3mm - 0.4mm Nozzle / Titan Extruder with NEMA 17 Pancake Stepper
Attachments:
open | download - Configuration.h (30.4 KB)
Re: Bed Auto Leveling.. check this out
February 20, 2015 04:34AM
Hi everyone,

I am trying to get the auto-leveling feature working, but I am having problems. When I send an M280 command in Repetier Host, it extends and works perfectly. So I know it works, and it is powered correctly. However, when I issue a G28 or G29 command, the axis move like they are supposed to, however the servo does not move. It just vibrates, but never actually moves. Any ideas?


блиндирани врати врати входни врати
Re: Bed Auto Leveling.. check this out
February 20, 2015 04:56AM
Hello.
If you use M401, does the servo go down? Do it with a secure Z height....
Re: Bed Auto Leveling.. check this out
March 15, 2015 06:56PM
Hello Everybody! New guy on the block here. I've been lurking for about a month and a half now, and am up and pseudo-running thanks to you guys! I've read every page of this thread probably twice already, and am incredibly thankful to have all of you guys around. I've had my Folger i3 for about a week and a half now, and am incredibly happy with it! I have been able to make some really incredible prints, (pictures this evening of all things) and am now in the upgrade for reliability process. I'm struggling with the auto bed leveling function, and I'm hoping you guys may be able to help me. I've got everything installed finally and working. Printed and attached the servo mount, wired up endstops, and have physically tested this out. The problem arises when I try to upload my probe offsets into my config.h file. It is giving my compiling errors. I have attached both the error report and my config.h file for you to check out. I would be greatly, greatly appreciative if you guys could lend a hand. I've got no experience with Gcode, but am comfortable enough with it to do most of what I've needed so far. I am really looking forward to interacting with you guys more often, continuing to pick everyone's brains, and offering help if/when I can!



Arduino: 1.6.0 (Windows 8), Board: "Arduino Mega or Mega 2560, ATmega2560 (Mega 2560)"

In file included from Marlin.h:30:0,
from Marlin_main.cpp:30:
Configuration.h:430:42: error: floating constant in preprocessor expression
#define X_PROBE_OFFSET_FROM_EXTRUDER - 17.90 // Probe on: -left +right
^
C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:85:24: note: in definition of macro 'max'
#define max(a,b) ((a)>(b)?(a)sad smileyb))
^
Marlin_main.cpp:1788:51: note: in expansion of macro 'X_PROBE_OFFSET_FROM_EXTRUDER'
#define MIN_PROBE_X (max(X_MIN_POS, X_MIN_POS + X_PROBE_OFFSET_FROM_EXTRUDER))
^
Marlin_main.cpp:1797:35: note: in expansion of macro 'MIN_PROBE_X'
#if LEFT_PROBE_BED_POSITION < MIN_PROBE_X
^
Configuration.h:430:42: error: floating constant in preprocessor expression
#define X_PROBE_OFFSET_FROM_EXTRUDER - 17.90 // Probe on: -left +right
^
C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:85:32: note: in definition of macro 'max'
#define max(a,b) ((a)>(b)?(a)sad smileyb))
^
Marlin_main.cpp:1788:51: note: in expansion of macro 'X_PROBE_OFFSET_FROM_EXTRUDER'
#define MIN_PROBE_X (max(X_MIN_POS, X_MIN_POS + X_PROBE_OFFSET_FROM_EXTRUDER))
^
Marlin_main.cpp:1797:35: note: in expansion of macro 'MIN_PROBE_X'
#if LEFT_PROBE_BED_POSITION < MIN_PROBE_X
^
Configuration.h:430:42: error: floating constant in preprocessor expression
#define X_PROBE_OFFSET_FROM_EXTRUDER - 17.90 // Probe on: -left +right
^
C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:84:24: note: in definition of macro 'min'
#define min(a,b) ((a)<(b)?(a)sad smileyb))
^
Marlin_main.cpp:1789:51: note: in expansion of macro 'X_PROBE_OFFSET_FROM_EXTRUDER'
#define MAX_PROBE_X (min(X_MAX_POS, X_MAX_POS + X_PROBE_OFFSET_FROM_EXTRUDER))
^
Marlin_main.cpp:1799:38: note: in expansion of macro 'MAX_PROBE_X'
#elif RIGHT_PROBE_BED_POSITION > MAX_PROBE_X
^
Configuration.h:430:42: error: floating constant in preprocessor expression
#define X_PROBE_OFFSET_FROM_EXTRUDER - 17.90 // Probe on: -left +right
^
C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:84:32: note: in definition of macro 'min'
#define min(a,b) ((a)<(b)?(a)sad smileyb))
^
Marlin_main.cpp:1789:51: note: in expansion of macro 'X_PROBE_OFFSET_FROM_EXTRUDER'
#define MAX_PROBE_X (min(X_MAX_POS, X_MAX_POS + X_PROBE_OFFSET_FROM_EXTRUDER))
^
Marlin_main.cpp:1799:38: note: in expansion of macro 'MAX_PROBE_X'
#elif RIGHT_PROBE_BED_POSITION > MAX_PROBE_X
^
Configuration.h:431:42: error: floating constant in preprocessor expression
#define Y_PROBE_OFFSET_FROM_EXTRUDER + 7.4 // Probe on: -front +behind
^
C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:85:24: note: in definition of macro 'max'
#define max(a,b) ((a)>(b)?(a)sad smileyb))
^
Marlin_main.cpp:1790:51: note: in expansion of macro 'Y_PROBE_OFFSET_FROM_EXTRUDER'
#define MIN_PROBE_Y (max(Y_MIN_POS, Y_MIN_POS + Y_PROBE_OFFSET_FROM_EXTRUDER))
^
Marlin_main.cpp:1801:38: note: in expansion of macro 'MIN_PROBE_Y'
#elif FRONT_PROBE_BED_POSITION < MIN_PROBE_Y
^
Configuration.h:431:42: error: floating constant in preprocessor expression
#define Y_PROBE_OFFSET_FROM_EXTRUDER + 7.4 // Probe on: -front +behind
^
C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:85:32: note: in definition of macro 'max'
#define max(a,b) ((a)>(b)?(a)sad smileyb))
^
Marlin_main.cpp:1790:51: note: in expansion of macro 'Y_PROBE_OFFSET_FROM_EXTRUDER'
#define MIN_PROBE_Y (max(Y_MIN_POS, Y_MIN_POS + Y_PROBE_OFFSET_FROM_EXTRUDER))
^
Marlin_main.cpp:1801:38: note: in expansion of macro 'MIN_PROBE_Y'
#elif FRONT_PROBE_BED_POSITION < MIN_PROBE_Y
^
Configuration.h:431:42: error: floating constant in preprocessor expression
#define Y_PROBE_OFFSET_FROM_EXTRUDER + 7.4 // Probe on: -front +behind
^
C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:84:24: note: in definition of macro 'min'
#define min(a,b) ((a)<(b)?(a)sad smileyb))
^
Marlin_main.cpp:1791:51: note: in expansion of macro 'Y_PROBE_OFFSET_FROM_EXTRUDER'
#define MAX_PROBE_Y (min(Y_MAX_POS, Y_MAX_POS + Y_PROBE_OFFSET_FROM_EXTRUDER))
^
Marlin_main.cpp:1803:37: note: in expansion of macro 'MAX_PROBE_Y'
#elif BACK_PROBE_BED_POSITION > MAX_PROBE_Y
^
Configuration.h:431:42: error: floating constant in preprocessor expression
#define Y_PROBE_OFFSET_FROM_EXTRUDER + 7.4 // Probe on: -front +behind
^
C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:84:32: note: in definition of macro 'min'
#define min(a,b) ((a)<(b)?(a)sad smileyb))
^
Marlin_main.cpp:1791:51: note: in expansion of macro 'Y_PROBE_OFFSET_FROM_EXTRUDER'
#define MAX_PROBE_Y (min(Y_MAX_POS, Y_MAX_POS + Y_PROBE_OFFSET_FROM_EXTRUDER))
^
Marlin_main.cpp:1803:37: note: in expansion of macro 'MAX_PROBE_Y'
#elif BACK_PROBE_BED_POSITION > MAX_PROBE_Y
^
Error compiling.

This report would have more information with
"Show verbose output during compilation"
enabled in File > Preferences.
Attachments:
open | download - Configuration.h (38.7 KB)
Re: Bed Auto Leveling.. check this out
March 15, 2015 09:15PM
Remove the space you have between the - and the number on line 430 in Configuration.h and try again.
Re: Bed Auto Leveling.. check this out
March 15, 2015 10:03PM
Quote
stephenrc
Remove the space you have between the - and the number on line 430 in Configuration.h and try again.

No dice. :/

Still the same compile error. I downloaded Marlin (newest stable version) yesterday, and only changed my what I needed to make my Folger-Tech Prusa work (ie. inverting endstops, change some travel speeds, etc). I then went in and enabled auto bed leveling with the OEM Marlin numbers. I was able to move my probe, retract the servo, locate my proper offset, etc. It would even complete the bed leveling sequence with the OEM numbers. As soon as I enter mine in, it won't compile. I don't get it.

As an FYI, looking at my Prusa, the x endstop and motor are on the right, my y endstop is closest to you on the right, and z is on the probe. I believe this may be the opposite origin as some Prusas; I've noticed a lot of them with the x axis motor on the left, and a lot have their y endstop in the back right corner. If there is any other information anyone needs, please let me know. Again, I really appreciate anyone's help.
Re: Bed Auto Leveling.. check this out
March 16, 2015 08:59AM
Quote
enzo1027
Quote
stephenrc
Remove the space you have between the - and the number on line 430 in Configuration.h and try again.

No dice. :/

Still the same compile error. I downloaded Marlin (newest stable version) yesterday, and only changed my what I needed to make my Folger-Tech Prusa work (ie. inverting endstops, change some travel speeds, etc). I then went in and enabled auto bed leveling with the OEM Marlin numbers. I was able to move my probe, retract the servo, locate my proper offset, etc. It would even complete the bed leveling sequence with the OEM numbers. As soon as I enter mine in, it won't compile. I don't get it.

As an FYI, looking at my Prusa, the x endstop and motor are on the right, my y endstop is closest to you on the right, and z is on the probe. I believe this may be the opposite origin as some Prusas; I've noticed a lot of them with the x axis motor on the left, and a lot have their y endstop in the back right corner. If there is any other information anyone needs, please let me know. Again, I really appreciate anyone's help.

Did you read the commented line above the area you are changing numbers??

"// X and Y offsets must be integers"

You entered a floating number in an area that only accepts integers, this is what the error messages are telling you.


Please add your printer design to [reprap.org]
Re: Bed Auto Leveling.. check this out
March 16, 2015 12:15PM
Quote
tjb1
Quote
enzo1027
Quote
stephenrc
Remove the space you have between the - and the number on line 430 in Configuration.h and try again.

No dice. :/

Still the same compile error. I downloaded Marlin (newest stable version) yesterday, and only changed my what I needed to make my Folger-Tech Prusa work (ie. inverting endstops, change some travel speeds, etc). I then went in and enabled auto bed leveling with the OEM Marlin numbers. I was able to move my probe, retract the servo, locate my proper offset, etc. It would even complete the bed leveling sequence with the OEM numbers. As soon as I enter mine in, it won't compile. I don't get it.

As an FYI, looking at my Prusa, the x endstop and motor are on the right, my y endstop is closest to you on the right, and z is on the probe. I believe this may be the opposite origin as some Prusas; I've noticed a lot of them with the x axis motor on the left, and a lot have their y endstop in the back right corner. If there is any other information anyone needs, please let me know. Again, I really appreciate anyone's help.

Did you read the commented line above the area you are changing numbers??

"// X and Y offsets must be integers"

You entered a floating number in an area that only accepts integers, this is what the error messages are telling you.


THANK YOU!!!!!!!!!!! You're a genius! I can't believe I missed that. If I could buy you a beer I would!
Re: Bed Auto Leveling.. check this out
March 26, 2015 03:09PM
Hi there,

I am trying to set up this feature on my folger tech i3 and I have a sg90 servo that is properly jumped and wired in according to ZenMaster. The config.h file is also edited. When I plug in the USB to my computer, I get the device connected sound, then immediately the device disconnected sound. The servo twitches and this does this about 10 times before the device permanently disconnects. Has anyone else had this problem? Do I have a bad servo? Thanks!
Re: Bed Auto Leveling.. check this out
April 06, 2015 07:24AM
When I run G28 it moves to X,Y home position (0,0), then it moves to the middle of the bed, extends the probe and lowing down until it hits the microswitch. It hits the switch 3,55mm below my nozzle. I have entered the offset values on configuration. If I start a print the nozzle doesn't touch the bed. It stays at Z offset (3,55mm) where the switch triggered.
What am I missing?
See my configuration file.
Attachments:
open | download - Configuration.h (37 KB)
Re: Bed Auto Leveling.. check this out
April 06, 2015 07:57AM
Hello!
I think there is a process to follow in order to calibrate your servo with his microswitch. You can't enter directly your value in the config.h
I had a similar problem but at the end I used a Hall effect sensor which is more accurate and faster.
Re: Bed Auto Leveling.. check this out
April 06, 2015 08:31AM
I followed this proccess to calculate these numbers. The problem is it thinks the Z=0 point is where it hits the switch but the nozzle is higher than this point. So the print should start at -[Z offset] point.
I could specify a z offset at slic3r but i'd like the command G1 Z0 could make the nozzle touches the bed. What is the right method to do it?
What's the Z=0 point with auto bed level enabled? Is it where the nozzle touched the bed or where the micro switched is triggered?
Re: Bed Auto Leveling.. check this out
April 06, 2015 01:22PM
did you uncomment the line in config which allows to go further? #define ENDSTOPPULLUP_ZMIN and in adv.config.h :
#define ENDSTOPS_ONLY_FOR_HOMING // If defined the endstops will only be used for homing
I have an I3 Hephestos, maybe it's different ...

Edited 2 time(s). Last edit at 04/06/2015 01:26PM by touchthebitum.
Re: Bed Auto Leveling.. check this out
April 07, 2015 02:37AM
Quote
johnka
When I run G28 it moves to X,Y home position (0,0), then it moves to the middle of the bed, extends the probe and lowing down until it hits the microswitch. It hits the switch 3,55mm below my nozzle. I have entered the offset values on configuration. If I start a print the nozzle doesn't touch the bed. It stays at Z offset (3,55mm) where the switch triggered.
What am I missing?
See my configuration file.

You need to set the Min software end stops to False or it won't go down to the bed.
Re: Bed Auto Leveling.. check this out
April 07, 2015 06:19PM
@touchthebitum I have uncomment both.

@Brainscan I set it to false when I wanted to find the offsets for X,Y,Z. After that procedure I set it to true and reflashed the firmware.

When I home Z it declares as Z=0 the point it hit the probe microswitch but the nozzle is a few mm higher. With G1 Z0 the nozzle doesn't touch the glass. It stays at Z_PROBE_OFFSET_FROM_EXTRUDER height. I am still able to move the nozzle lower manually with pronterface as many mm as the Z probe offset is.

I ran the M851 to adjust the Z probe offset. I think this is the step I was missing. Now with G1 Z0 the nozzle touches the glass. The only problem is that I am still able to move my nozzle manually below Z=0 as many mm as Z_PROBE_OFFSET_FROM_EXTRUDER is, and it may damage the glass or the nozzle itself. Is there any fix? Am I still missing anything?

Thank you

Edited 2 time(s). Last edit at 04/07/2015 06:20PM by johnka.
Re: Bed Auto Leveling.. check this out
April 08, 2015 02:41AM
Quote
johnka
@touchthebitum I have uncomment both.

@Brainscan I set it to false when I wanted to find the offsets for X,Y,Z. After that procedure I set it to true and reflashed the firmware.

When I home Z it declares as Z=0 the point it hit the probe microswitch but the nozzle is a few mm higher. With G1 Z0 the nozzle doesn't touch the glass. It stays at Z_PROBE_OFFSET_FROM_EXTRUDER height. I am still able to move the nozzle lower manually with pronterface as many mm as the Z probe offset is.

I ran the M851 to adjust the Z probe offset. I think this is the step I was missing. Now with G1 Z0 the nozzle touches the glass. The only problem is that I am still able to move my nozzle manually below Z=0 as many mm as Z_PROBE_OFFSET_FROM_EXTRUDER is, and it may damage the glass or the nozzle itself. Is there any fix? Am I still missing anything?

Thank you

Why would you set it to false and then to true? It needs to be set to false and left that way. Did you try my suggestion? I'm pretty sure M851 is a redundant piece of code that should have been removed a while ago. Last time I looked there was no documentation on how that is used anyway. I'm sorry if my suggestion doesn't work but I have had exactly the same problem when I tried setting mine up last year.
Sorry, only registered users may post in this forum.

Click here to login