26

Re: Automatic bed leveling and z offset howto (Level 2/3)

Or maybe I'll get my force sensitive resistor gimmick working that doesn't need a servo (now that I successfully soldered the missing headers on my printrboard, I ought to be able to start trying to fool around with microcode someday when I have time - probably not till Christmas vacation though).

27

Re: Automatic bed leveling and z offset howto (Level 2/3)

Hazer wrote:

Some bad news.

This means there is no easy way for people with stock SD Printrboards to do this mod. It will require either A: reprogramming the board and replacing the PSU with one that provides separate 5V, or B: replacing the motherboard itself (better option).

Thanks for testing and for the nice troubleshooting Hazer. That sucks. Maybe if we devise a way of not needing the servo (e.g. by using the nozzle itself as probe, as proposed in another thread) it would make things easier.

28

Re: Automatic bed leveling and z offset howto (Level 2/3)

Hi everyone
ihave made the mod and everything works well ...
excepti have a strange behaviour...
everything works great the only thing strange is that after the bed probing the position of the z axis is still not perfect ( as you can see in the photo) seems that it is an error of 0.1 mm always in the same section of the print, do you know how correct it?

thx
Antonio

Post's attachments

IMG_0693.JPG 2.09 mb, file has never been downloaded. 

You don't have the permssions to download the attachments of this post.

29

Re: Automatic bed leveling and z offset howto (Level 2/3)

auto bed levelling works by compensating for the plane of the bed... not an uneven bed in unto itself.

So if you picture a square piece of paper, you can tilt that paper in all manner of directions from 'level' and auto bed levelling will compensate for this.  But if you bow that paper so there is a u shape to it.. then bed levelling will NOT compensate for that.

You still need to ensure you have a *flat* bed that is really really flat... then it can be tilted at all sorts of odd angles from the extruder plane and it will be compensated for... but you can make it convex/concave and compensate....

Im guessing, but I believe if you roll a dial gauge across your bed you will find it bows upwards at the point where it is having the issues - this is particularly evident if it occurs in the same place every print.  Not sure if its lens distortion, but I would swear I can almost see where the bed is convexing at the rear.

30 (edited by antonio 2014-01-23 11:07:13)

Re: Automatic bed leveling and z offset howto (Level 2/3)

true but if i change or turn the glass the problem should move or change.. true??
i have tried, no way the error stay there alwais in the same place
thanks
p.s. do you know if there is a way to conpensate via software ( like having 3 "software" screw on the bed)?

31

Re: Automatic bed leveling and z offset howto (Level 2/3)

So, if you change the glass position by spinning and flipping and the problem stays in the same place, then I have news:

Your rods are not straight. Same effect.

Chuck Bittner is a quadriplegic gamer who is petitioning the major console developers to include internal button remapping in all console games. You can help.
Sign Chuck Bittners petition

32

Re: Automatic bed leveling and z offset howto (Level 2/3)

Great news !! wink
ok i'll try to change the rods (you mean X and Y rods right?)

thanks again
p.s. if i swap the rods it must change position?

33

Re: Automatic bed leveling and z offset howto (Level 2/3)

Or spin it 180 degrees for opposite effect. That would confirm the problem. Bad thing is, X rods are glued in last I heard.

Chuck Bittner is a quadriplegic gamer who is petitioning the major console developers to include internal button remapping in all console games. You can help.
Sign Chuck Bittners petition

34 (edited by antonio 2014-01-23 18:37:39)

Re: Automatic bed leveling and z offset howto (Level 2/3)

welli do not know if i could tell here... but ...
my printer is home made, is a smartrap ( with bed leveling)
and
a ultimaker clone 200x200 ( still without bed leveking)
and
another ultimaker clone bit bigger 300x300 ( still without bed leveking)

wink wink

so nothing is still glued

35

Re: Automatic bed leveling and z offset howto (Level 2/3)

Ah, good. Then I would suggest twisting the rods 180 degrees and see if the problem inverts itself. That would confirm bent rods.

Chuck Bittner is a quadriplegic gamer who is petitioning the major console developers to include internal button remapping in all console games. You can help.
Sign Chuck Bittners petition

36

Re: Automatic bed leveling and z offset howto (Level 2/3)

you are right one of the y rod is bent !!!

now i'm gonna change it

thanks

37

Re: Automatic bed leveling and z offset howto (Level 2/3)

Is there anything special that would need to be done if you aren't going to use a servo? and whats the biggest difference with the Printrboard coding and the Sang? We are looking at enabling the Autoleveling on a different forum and I'm trying a semi manual design which uses a Hall-Effect Sensor for the probe but using the latest version which as an adjustment to fine tune the hall-effect sensor

I've looked at several pieces of information on how to enable autoleveling in the firmware but everyone seems to reference using a servo and I just want to be sure its as simple as not needing any of the Servo commands in the firmware.

Also your instructions don't mention needing a minimum Z-End stop, only the endstop/sensor for the leveling. Is this true? I've read two different things on one needing that stationary (home Z endstop) and a second one for the probe and then wiring both to the Z-Endstop pins as well as only needing the one on the probe. I'll have both on mine and just want some opinion on this part as if it seems to redundant or not

38

Re: Automatic bed leveling and z offset howto (Level 2/3)

Jeepguy42 wrote:

Is there anything special that would need to be done if you aren't going to use a servo?

There is nothing special, except being careful with the Z-stop. the code assumes that the Z endstop is used to probe the bed.

and whats the biggest difference with the Printrboard coding and the Sang?

There is no difference except the pinout (in pins.h)

We are looking at enabling the Autoleveling on a different forum and I'm trying a semi manual design which uses a Hall-Effect Sensor for the probe but using the latest version which as an adjustment to fine tune the hall-effect sensor

I've looked at several pieces of information on how to enable autoleveling in the firmware but everyone seems to reference using a servo and I just want to be sure its as simple as not needing any of the Servo commands in the firmware.

Yes it is quite as simple. Maybe the firmware will not compile at first, as it was not tested without the servo AFAIK

Also your instructions don't mention needing a minimum Z-End stop, only the endstop/sensor for the leveling. Is this true?

Yes with this implementation the endstop is directly mounted on the extruder, so it does both the leveling and the z-height adjustment.

I've read two different things on one needing that stationary (home Z endstop) and a second one for the probe and then wiring both to the Z-Endstop pins as well as only needing the one on the probe. I'll have both on mine and just want some opinion on this part as if it seems to redundant or not

This could be a good failsafe, but not too effective, because if the bed is more than a mm out of level, or you use a thicker glass or something like this, the bed will anyway crash into the extruder before triggering the fixed endstop.

39

Re: Automatic bed leveling and z offset howto (Level 2/3)

I was experimenting with using a force sensitive resistor to make the nozzle itself also be the bed probe. I got the firmware to compile OK without the servo, but did find a few bits and pieces that needed tweaking. You can find my patches at:

http://home.comcast.net/~tomhorsley/har … l#Working!

Despite the "Working!" name of that section, it doesn't always work :-(. The algorithm needs lots more work to distinguish between random variation in the resistance value and actually hitting the bed (but it did work well at least once :-).

40

Re: Automatic bed leveling and z offset howto (Level 2/3)

Claghorn wrote:

Despite the "Working!" name of that section, it doesn't always work :-(. The algorithm needs lots more work to distinguish between random variation in the resistance value and actually hitting the bed (but it did work well at least once :-).

Yes, I always suspected the noise floor would kill you combined with the by-design movement of the extruder assembly (I posted it somewhere once when you first started... )  But hey, at least you did have fun working on it at least and got to play with some firmware so all was not lost smile smile.

41

Re: Automatic bed leveling and z offset howto (Level 2/3)

adrian wrote:

Yes, I always suspected the noise floor would kill you combined with the by-design movement of the extruder assembly (I posted it somewhere once when you first started... )  But hey, at least you did have fun working on it at least and got to play with some firmware so all was not lost smile smile.

Having watched the data, my human pattern recognition seems to be able to tell when it hits the bed, but I'm having trouble figuring out exactly how to automate that recognition :-). The intrinsic movement of the print head is helped a lot by the springloader gadget. I also want to switch to an optical endstop for the Z axis so I can move farther after hitting it than the lever on the switch will let me go and make much more outrageously tilted demos someday when (or if) I get around to perfecting the algorithm :-).

42 (edited by adrian 2014-02-23 04:15:35)

Re: Automatic bed leveling and z offset howto (Level 2/3)

if you can identify the noise ceiling, it shouldn't be more than a bit of map() and compares and discard everything under a threshold - making sure to have used running averages not raw-reads (as that will automatically kill a lot of sensor noise)... might also help to make sure the power rail to the sensor is well filtered with appropriate caps - that should cleanup a lot of background noise and leave you only with movement and the sensors inherent noise (which at least should be a constant...)

43

Re: Automatic bed leveling and z offset howto (Level 2/3)

Claghorn wrote:
adrian wrote:

Yes, I always suspected the noise floor would kill you combined with the by-design movement of the extruder assembly (I posted it somewhere once when you first started... )  But hey, at least you did have fun working on it at least and got to play with some firmware so all was not lost smile smile.

Having watched the data, my human pattern recognition seems to be able to tell when it hits the bed, but I'm having trouble figuring out exactly how to automate that recognition :-). The intrinsic movement of the print head is helped a lot by the springloader gadget. I also want to switch to an optical endstop for the Z axis so I can move farther after hitting it than the lever on the switch will let me go and make much more outrageously tilted demos someday when (or if) I get around to perfecting the algorithm :-).

Claghorn, would you like to give me the raw data? I work a lot with signal processing and maybe with a bit of smart filtering something can be done.

44

Re: Automatic bed leveling and z offset howto (Level 2/3)

Rincewind wrote:

Claghorn, would you like to give me the raw data? I work a lot with signal processing and maybe with a bit of smart filtering something can be done.

Actually, I don't have much data at the moment (which may be why my attempts to concoct an algorithm weren't very successful). One of these days I need to find some time to get the bed nice and level and the z-stop set to a known value so I can go ahead and gather lots of data where I know for sure when the nozzle should have touched and compare it with the samples I gathered.

I have noticed that sometimes the resistor does seem to just shift to a completely range of resistance (possibly it moves a bit sometimes), so one challenge is to recognize that and start over.

In the long run, a servo and a separate switch probably is less trouble, but this is fun to fool with :-).

45

Re: Automatic bed leveling and z offset howto (Level 2/3)

How is the bed leveling initiated. Do you just click home all and does the bot need to be up to temp or will it function while cold/

Thanks

46

Re: Automatic bed leveling and z offset howto (Level 2/3)

This past weekend I got and assembled my Printrbot Simple Maker edition, which comes with a auto-leveling feature.  It uses an induction proximity sensor connected directly to the 3 pin end stop connectors of the Printrboard.  I haven't yet looked through the configuration file to see what was enabled or not, but I works pretty well on the Printrbot.  so I'm thinking it should be a fairly easy conversion for the Solidoodle, at least the newer ones with Printrboards.

http://www.soliforum.com/misc.php?action=pun_attachment&item=5665

The sensor is mounted right next to the hot end, and it installs so that it's only a few mm away from the bed.  Once installed it can be adjusted with Gcode commands.  It responds to a new command and parameters:

M212 X0 Y0 Z0 

X and Y are the offset from the printhead, and Z is the offset from the bed.  In the PB simple case, the Y offset is 0, but the X offset is 20.  To adjust for the gap, you can give it a negative offset to move it up, or a positive offset to move it down.  Then you save the parameter is to the EEPROM with M500.  From that point on, it will continually adjust the height of the nozzle to maintain the required offset distance.  Then once the first layer is printed the probe is turned off for the rest of the print.

Anyway, the sensors are dirt cheap (about $3.00 on eBay), and the implementation is pretty simple.  As I said, I haven't yet gone through the configuration.h file, but this shouldn't be that complicated to setup in  firmware, for some of our firmware gurus like Adrian or Ian.

Post's attachments

Z Probe.jpg
Z Probe.jpg 156.84 kb, file has never been downloaded. 

You don't have the permssions to download the attachments of this post.
To print or, 3D print, that is the question...
SD3 printer w/too many mods,  Printrbot Simple Maker Ed.,  FormLabs Form 1+
AnyCubic Photon, Shining 3D EinScan-S & Atlas 3D scanners...
...and too much time on my hands.

47

Re: Automatic bed leveling and z offset howto (Level 2/3)

I need some help better understanding this great mod.
As I understood, this mod eliminates the Z-EndStop from the case, and places it on the servo correct?

What if I want to keep it as I always do "Home all" !
Also, I am adapting this probe:
http://www.thingiverse.com/thing:7550

which saves me the servo and extra stuff to do, and I like the auto-retract feature, I think I can make
it fit in the Solidoodle's extruder's carriage.

Will Marlin work with it? or do I need to do extensive changes?


thanks,
Fadi

48

Re: Automatic bed leveling and z offset howto (Level 2/3)

fadi wrote:

I need some help better understanding this great mod.
As I understood, this mod eliminates the Z-EndStop from the case, and places it on the servo correct?

Yes, that's correct.

What if I want to keep it as I always do "Home all" !

You can keep the two probes and connect them in series.

Also, I am adapting this probe:
http://www.thingiverse.com/thing:7550

which saves me the servo and extra stuff to do, and I like the auto-retract feature, I think I can make
it fit in the Solidoodle's extruder's carriage.

Will Marlin work with it? or do I need to do extensive changes?

I think it might work with it, but it depends on the actual implementation. If you report your experience here we can help you in case the firmware needs some tweaking!

Good luck!

49

Re: Automatic bed leveling and z offset howto (Level 2/3)

Thanks Rincewind for the quick reply.

I thought about keeping both homeswitches, but rather than having them in series, I wanted to have it on a dedicated pin.
Now that I think about it, your proposed solution makes sense, as it is after all, a Z prove/limit and it would be better to keep it simple.

I will try to get it working and get back to this thread with updates to see how we can take it from there if we need to make changes.

On a side note, is there a way/command to keep the Z-probe readings in between several prints if nothing has changed on the bed/extruder levels?
I would love to remove the probing time from the equation on every print, sometimes I do several prints of the same object or such and I would assume removing that probing time (except for the initial run) would be a good idea.

Fadi

50

Re: Automatic bed leveling and z offset howto (Level 2/3)

Hello all,

So it seems that all this works on everything else other than the stock printrboard rev e that solidoodle supplies. Has anyone got this new firmware/features to work with printrboard rev e? I've been at for quit sometime now, however I've been having issues having my computer recognizing the new com port after the jumper is applied to the pins and reset button has been pressed. If anyone can verify if they have successfully got this to work with printrboard then I will keep chugging if not I'm very close to ditching this board?

Thanks,