9 point auto leveling not working

9 point auto leveling not working

Postby RPearce » 2016-Jul-Sun-13-Jul

Hey lads, i cant figure out marlin for the life of me, but i have the Flip process down pretty good, anyways ive been running a good file on my PB SM W/ H and the file is for an E3D head, plus 9 point level. it works great! now i have a play and a plus that both just got E3D Heads, i flashed the same firmware into them and now both wont move the beds, they just bounce along the gantry 9 times with out moving the bed. if anyone has any ideas? or wants to review my firmware file let me know and ill share a drop box link. could someone here by chance compile the proper Hex file for the play and plus for me please?
  • 0

Ryan Pearce, CEO Pearce Industries
www.PearcePlastics.ca/
Printrbot Play - Heated bed + E3D V6
Printrbot Simple Metal - Heated Bed + E3D V6
Printbot Plus + E3D V6
RPearce
Loading filament...
 
Posts: 11
Joined: 2016-Jun-Tue-20-Jun
Reputation: 0

9 point auto leveling not working

Sponsor

Sponsor
 

Re: 9 point auto leveling not working

Postby RetireeJay » 2016-Jul-Sun-15-Jul

Hi Rpearce,
All of us who are active users of this forum saw your first post because we use the feature to "see recent posts" - and new posts that we haven't looked yet at are highlighted with a red icon. So multiple postings on the same topic in different sub-forums don't increase your chances of getting an answer.

There are some on the forum who seem to like 9-point bed tramming (aka "leveling") but there are many of us who think it's a waste of time. The reason is this: "bed leveling" software ONLY calculates a correction for a flat, plane surface that's not exactly perpendicular to the X and Y axes. Mathematically, three points are sufficient to define this plane. The mechanical precision of the actuators is good enough to make this mathematical calculation as accurate as it needs to be.

If your bed is not truly planar (i.e. it's warped) then the 9-point leveling will possibly do a better job of finding the average or "best fit" plane, but it won't correct for the warping itself.

So here's my personal opinion:
- I'm convinced that the very best way to print is on a surface that is planar and is mechanically adjusted to be parallel to the plane defined by the X and Y axes, no probing or software corrections needed.
- The second-best way to print is on a surface that is planar and nearly parallel to the X-Y plane, adjusted (fine-tuned) in software by 3-point leveling.
- And if you have a surface that is so warped and non-planar that 9-point leveling makes a serious difference in the calculation of the corrected plane, then you will still have problems with your prints because the nozzle is never a consistent distance away from your bed.

Finally, to directly answer your question, I don't have (or want) a probe; I don't do software bed leveling, so I can't help you to do what you want to do. Sorry. But maybe someone else can and will; we have dozens of active contributors to this forum.
  • 0

Printrbot Plus operational January 2013
Brass threaded rods (5/16" X 18) & nuts for Z axis
GT2 belts & pulleys
Cable chain to reduce probability of fatigue failure in wires
E3D V5 Hot End, 0.4mm nozzle, also 0.8 and 0.25 in use occasionally
PB fan mount + 40mm fan -- using printed mount adapter, not the E3D supplied fan
Injection molded extruder gears
Optical Z "endstop" (custom designed and built)
Have used many pounds of T-Glase filament. Now also doing some work with Ninjaflex SemiFlex
Print on glass with Scotch Craft Stick or other glue stick
"My next printer is..." Prusa i3 MK3, upgraded to MK3S
User avatar
RetireeJay
My next printer is...
 
Posts: 5003
Joined: 2013-Jan-Wed-13-Jan
Location: Greenville, SC
Reputation: 498

Re: 9 point auto leveling not working

Postby RetireeJay » 2016-Jul-Sun-15-Jul

Looking again at your question: do all three printers have the Y axis "home" switch in the same place (either at Y=0 or Y= Max)? If, for example, your Simple homes to Y = Max but the other printers have home at Y=0, then this might explain your behavior.

Anyway, do an M503 to see what each printer is using for bed size and other parameters (I don't know exactly what parameters you will see on your version of the firmware). Perhaps by studying the parameters there you can figure out what needs to be changed. These parameters are stored in EEPROM and you can change them yourself without re-compiling Marlin. See the sticky post in Software - Newbie Talk about EEPROM settings. You almost certainly want to change your bed size for the bigger printers.
  • 0

Printrbot Plus operational January 2013
Brass threaded rods (5/16" X 18) & nuts for Z axis
GT2 belts & pulleys
Cable chain to reduce probability of fatigue failure in wires
E3D V5 Hot End, 0.4mm nozzle, also 0.8 and 0.25 in use occasionally
PB fan mount + 40mm fan -- using printed mount adapter, not the E3D supplied fan
Injection molded extruder gears
Optical Z "endstop" (custom designed and built)
Have used many pounds of T-Glase filament. Now also doing some work with Ninjaflex SemiFlex
Print on glass with Scotch Craft Stick or other glue stick
"My next printer is..." Prusa i3 MK3, upgraded to MK3S
User avatar
RetireeJay
My next printer is...
 
Posts: 5003
Joined: 2013-Jan-Wed-13-Jan
Location: Greenville, SC
Reputation: 498

Re: 9 point auto leveling not working

Postby RPearce » 2016-Jul-Sun-17-Jul

yes sorry for the double post, i wasnt getting any bites, so far im doing better here, unfortunatly, i have adjusted all there units firmware so i no longer know what the OEM position is, that being said, the play is running its oem firmware again if im not mistaken. i have all three units open right now,
Play > M503
< echo:Steps per unit:
< echo: M92 X80.00 Y80.00 Z2020.00 E96.00
< echo:Maximum feedrates (mm/s):
< echo: M203 X125.00 Y125.00 Z5.00 E14.00
< echo:Maximum Acceleration (mm/s2):
< echo: M201 X2000 Y2000 Z30 E10000
< echo:Acceleration: S=acceleration, T=retract acceleration
< echo: M204 S3000.00 T3000.00
< echo:Advanced variables: S=Min feedrate (mm/s), T=Min travel feedrate (mm/s), B=minimum segment time (ms), X=maximum XY jerk (mm/s), Z=maximum Z jerk (mm/s), E=maximum E jerk (mm/s)
< echo: M205 S0.00 T0.00 B20000 X20.00 Z0.40 E5.00
< echo:Home offset (mm):
< echo: M206 X0.00 Y0.00 Z0.00
< echo:PID settings:
< echo: M301 P22.20 I1.08 D114.00
< echo:Min position (mm):
< echo: M210 X0.00 Y0.00 Z0.00
< echo:Max position (mm):
< echo: M211 X100.00 Y203.00 Z130.00
< echo:Bed probe offset (mm):
< echo: M212 X0.00 Y0.00 Z-1.50

Simple > M503
< echo:Steps per unit:
< echo: M92 X80.00 Y80.00 Z2020.00 E93.50
< echo:Maximum feedrates (mm/s):
< echo: M203 X125.00 Y125.00 Z5.00 E14.00
< echo:Maximum Acceleration (mm/s2):
< echo: M201 X2000 Y2000 Z30 E10000
< echo:Acceleration: S=acceleration, T=retract acceleration
< echo: M204 S3000.00 T3000.00
< echo:Advanced variables: S=Min feedrate (mm/s), T=Min travel feedrate (mm/s), B=minimum segment time (ms), X=maximum XY jerk (mm/s), Z=maximum Z jerk (mm/s), E=maximum E jerk (mm/s)
< echo: M205 S0.00 T0.00 B20000 X20.00 Z0.40 E5.00
< echo:Home offset (mm):
< echo: M206 X0.00 Y0.00 Z0.00
< echo:PID settings:
< echo: M301 P22.20 I1.08 D114.00
< echo:Min position (mm):
< echo: M210 X0.00 Y0.00 Z0.00
< echo:Max position (mm):
< echo: M211 X152.40 Y152.40 Z152.40
< echo:Bed probe offset (mm):
< echo: M212 X0.00 Y0.00 Z-0.15

and the Plus > M503
< echo:Steps per unit:
< echo: M92 X80.00 Y80.00 Z2020.00 E96.00
< echo:Maximum feedrates (mm/s):
< echo: M203 X100.00 Y100.00 Z100.00 E14.00
< echo:Maximum Acceleration (mm/s2):
< echo: M201 X2000 Y2000 Z30 E10000
< echo:Acceleration: S=acceleration, T=retract acceleration
< echo: M204 S3000.00 T3000.00
< echo:Advanced variables: S=Min feedrate (mm/s), T=Min travel feedrate (mm/s), B=minimum segment time (ms), X=maximum XY jerk (mm/s), Z=maximum Z jerk (mm/s), E=maximum E jerk (mm/s)
< echo: M205 S0.00 T0.00 B20000 X20.00 Z0.40 E5.00
< echo:Home offset (mm):
< echo: M206 X0.00 Y0.00 Z0.00
< echo:PID settings:
< echo: M301 P22.20 I1.08 D114.00
< echo:Min position (mm):
< echo: M210 X0.00 Y0.00 Z0.00
< echo:Max position (mm):
< echo: M211 X254.00 Y254.00 Z254.00
< echo:Bed probe offset (mm):
< echo: M212 X0.00 Y0.00 Z5.00

i honestly have no idea what im doing in regards to coding a machine, i will review the suggested literature. i put marline.cpp.hex into the plus and it just hates it. but the OEM firmware was being weird and wouldnt talk back to the computer so im kinda stuck. i just prefer the 9 point level over the 3 and IMO its a preference thing. i my play using the 3 my simple use the 9, i just prefer the 9 over the 3. as for changing the settings my self, i am not sure what they need to be to accommodate the E3D heads, and i cant find there source code for marlin, and Git is a nightmare to try and use. thank you guys for working with me so far, hopefully we can figure it out today.
  • 0

Ryan Pearce, CEO Pearce Industries
www.PearcePlastics.ca/
Printrbot Play - Heated bed + E3D V6
Printrbot Simple Metal - Heated Bed + E3D V6
Printbot Plus + E3D V6
RPearce
Loading filament...
 
Posts: 11
Joined: 2016-Jun-Tue-20-Jun
Reputation: 0

Re: 9 point auto leveling not working

Postby RPearce » 2016-Jul-Sun-17-Jul

i have reviewed the suggest article viewtopic.php?f=18&t=2763 it does not make any sense to me, i write to my machines from Cura using pronterface UI, nothing in that article seemed relevant? unless im supposed to be viewing the information they are talking about inside marlin.
  • 0

Ryan Pearce, CEO Pearce Industries
www.PearcePlastics.ca/
Printrbot Play - Heated bed + E3D V6
Printrbot Simple Metal - Heated Bed + E3D V6
Printbot Plus + E3D V6
RPearce
Loading filament...
 
Posts: 11
Joined: 2016-Jun-Tue-20-Jun
Reputation: 0

Re: 9 point auto leveling not working

Postby RetireeJay » 2016-Jul-Sun-17-Jul

RPearce wrote:i have reviewed the suggest article viewtopic.php?f=18&t=2763 it does not make any sense to me, i write to my machines from Cura using pronterface UI, nothing in that article seemed relevant? unless im supposed to be viewing the information they are talking about inside marlin.


But it looks like you just did use M503 in your other post, where you successfully retrieved all the EEPROM values using M503. The other commands in the M500 family allow you to save changed values into EEPROM, or to recover "original factory" settings if you want. My writeup was focused on only a few parameters, but the flow chart is valid for any parameters in the M503 list that you recovered.
For example, you could issue the following commands to your Play (which will re-write the max position values with the same ones you have now):
M211 X100.00 Y203.00 Z130.00
M500

By the way, it looks like your settings for the different machines are in fact different (print volume dimensions for example) - so I don't understand your original statement that you had loaded the identical firmware into all three machines. Clearly they are not now identical.

When changing from a Ubis to an E3D head, the major things to look out for are:
(1) Z offset (the E3D is shorter than the Ubis, and you'll have to physically adjust your probe; then fine-tune the offset between the probe and the nozzle)
(2) Thermistor type (The stock E3D thermistor is different from the stock Ubis thermistor. If you don't change thermistors then you either have to live with a 20 degree offset [in the usual operating range] or else install a compiled firmware using the correct thermistor table)
(3) Temperature control PID tuning. There's a command you can give to auto-tune the PID parameters (M303, read up on it before you use it); then you save them to EEPROM with M500. (PID parameters control how quickly, precisely, and stably your hot end reaches and maintains setpoint temperature; different physical construction of the hot end means different PID settings.)
  • 0

Printrbot Plus operational January 2013
Brass threaded rods (5/16" X 18) & nuts for Z axis
GT2 belts & pulleys
Cable chain to reduce probability of fatigue failure in wires
E3D V5 Hot End, 0.4mm nozzle, also 0.8 and 0.25 in use occasionally
PB fan mount + 40mm fan -- using printed mount adapter, not the E3D supplied fan
Injection molded extruder gears
Optical Z "endstop" (custom designed and built)
Have used many pounds of T-Glase filament. Now also doing some work with Ninjaflex SemiFlex
Print on glass with Scotch Craft Stick or other glue stick
"My next printer is..." Prusa i3 MK3, upgraded to MK3S
User avatar
RetireeJay
My next printer is...
 
Posts: 5003
Joined: 2013-Jan-Wed-13-Jan
Location: Greenville, SC
Reputation: 498

Re: 9 point auto leveling not working

Postby RPearce » 2016-Jul-Sun-18-Jul

RetireeJay wrote:
RPearce wrote:i have reviewed the suggest article viewtopic.php?f=18&t=2763 it does not make any sense to me, i write to my machines from Cura using pronterface UI, nothing in that article seemed relevant? unless im supposed to be viewing the information they are talking about inside marlin.


But it looks like you just did use M503 in your other post, where you successfully retrieved all the EEPROM values using M503. The other commands in the M500 family allow you to save changed values into EEPROM, or to recover "original factory" settings if you want. My writeup was focused on only a few parameters, but the flow chart is valid for any parameters in the M503 list that you recovered.
For example, you could issue the following commands to your Play (which will re-write the max position values with the same ones you have now):
M211 X100.00 Y203.00 Z130.00
M500
Yes i have done this already, this machine is working ok i guess, its using the factory play settings and is working just fine with the E3D head and thermistor.
By the way, it looks like your settings for the different machines are in fact different (print volume dimensions for example) - so I don't understand your original statement that you had loaded the identical firmware into all three machines. Clearly they are not now identical.
Yes, what i ment was that i used the same Marlin.cpp.hex file, loaded into all 3 machines, but i have gotten different results, it seems to only work on the Simple, the other two dont like the code at all.
When changing from a Ubis to an E3D head, the major things to look out for are:
(1) Z offset (the E3D is shorter than the Ubis, and you'll have to physically adjust your probe; then fine-tune the offset between the probe and the nozzle) i have done this on all three, so thats squared away.
(2) Thermistor type (The stock E3D thermistor is different from the stock Ubis thermistor. If you don't change thermistors then you either have to live with a 20 degree offset [in the usual operating range] or else install a compiled firmware using the correct thermistor table) this i didnt do? its should be fine on the simple but the other two will probably be out to lunch then.
(3) Temperature control PID tuning. There's a command you can give to auto-tune the PID parameters (M303, read up on it before you use it); then you save them to EEPROM with M500. (PID parameters control how quickly, precisely, and stably your hot end reaches and maintains setpoint temperature; different physical construction of the hot end means different PID settings.)
so far i dont have any issues here in the heads, the beds take for ever to heat up to 110 (they only really get to 100) but other wise this hasnt been an issue.

im not sure what to do about the plus, i have the OEM Hex file for it, but it doesnt like it for some reason. so im not sure what to do, and when i load in the Marlin file it really doesnt like it, especially for the home command it makes tons of weird noises and sounds like its fighting its self or something idk, i just need someone who know how to compile a working hex to set me up with one that will work on the play and the plus.
  • 0

Ryan Pearce, CEO Pearce Industries
www.PearcePlastics.ca/
Printrbot Play - Heated bed + E3D V6
Printrbot Simple Metal - Heated Bed + E3D V6
Printbot Plus + E3D V6
RPearce
Loading filament...
 
Posts: 11
Joined: 2016-Jun-Tue-20-Jun
Reputation: 0

Re: 9 point auto leveling not working

Postby Mooselake » 2016-Jul-Sun-20-Jul

You should be able to download the official firmware from Printrbot's site. For the source (it's a modified Marlin) look on github. I didn't poke around, but it was recently updated so the odds are good it's the source Printrbot used.

I echo Jay's comment on 9 point leveling. Like many urban myths that one has propagated far beyond what it should have. Supposedly if your bed is really out of whack (likely by whacking it too hard) it might make a small difference by helping to average the tilt over more points, but if you need that then you're at the point you need to do some serious repairs. The probe's accuracy is less than the Z step size (another way of saying that is that the probe will trigger at different points that are more than a step apart) so all that extra probing doesn't actually add anything.

If you enjoy firmware building and updating for the fun of it go ahead, but if you're expecting better results spend you time finding out what it takes to actually make that printing surface the same distance from the print head all over (aka the mislabeled bed leveling). Like Jay I have a plywood bot that's nowhere as rigid as the metal ones, but have the bed "leveled" within the 1/100" of a mm resolution of my dial gauge. This probe stuff is to reduce manufacturing cost and tolerance, not because it provides some secret sauce.

Kirk
  • 0

Modified KickStarter Classic Plus 7/2012
KS Thingybot Delta Pro 10/31/16
User avatar
Mooselake
My next printer is...
 
Posts: 3617
Joined: 2011-Dec-Tue-23-Dec
Location: Moose Swamp, Upper Michigan, USA
Reputation: 177

Re: 9 point auto leveling not working

Postby RPearce » 2016-Jul-Sun-20-Jul

so i guess out of the 8 hex i downloaded i found one that works, now new problem, the probe is off set from the head, so much so that when it would inspect at 244 the probe misses the bed, is there any way to have it inspect at say X (or Y?) 230

here is my results from the inspection

< Bed x: 10 y: 10 z: -5.03
< Bed x: 127 y: 10 z: -6.23
< Bed x: 244 y: 10 z: -11.00
< Bed x: 244 y: 127 z: -11.00
< Bed x: 127 y: 127 z: -6.93
< Bed x: 10 y: 127 z: -5.25
< Bed x: 10 y: 244 z: -5.27
< Bed x: 127 y: 244 z: -6.95
< Bed x: 244 y: 244 z: -11.00
  • 0

Ryan Pearce, CEO Pearce Industries
www.PearcePlastics.ca/
Printrbot Play - Heated bed + E3D V6
Printrbot Simple Metal - Heated Bed + E3D V6
Printbot Plus + E3D V6
RPearce
Loading filament...
 
Posts: 11
Joined: 2016-Jun-Tue-20-Jun
Reputation: 0

Re: 9 point auto leveling not working

Postby RPearce » 2016-Jul-Sun-20-Jul

the hex im using i dont think i can use, im getting a perfect rhythm from my print head from it, 265 to 275 then back down over the course of 10 seconds over and over. so i think something is wrong in it, other files would hold a steady temp, so idk. ive got like 3 files left to try and then im stuck. and the OEM Hex from printrbot simply doesnt work with this machine. it just gets stuck on opening serial port.
  • 0

Ryan Pearce, CEO Pearce Industries
www.PearcePlastics.ca/
Printrbot Play - Heated bed + E3D V6
Printrbot Simple Metal - Heated Bed + E3D V6
Printbot Plus + E3D V6
RPearce
Loading filament...
 
Posts: 11
Joined: 2016-Jun-Tue-20-Jun
Reputation: 0

Re: 9 point auto leveling not working

Postby RetireeJay » 2016-Jul-Sun-21-Jul

RPearce wrote:the hex im using i dont think i can use, im getting a perfect rhythm from my print head from it, 265 to 275 then back down over the course of 10 seconds over and over. so i think something is wrong in it, other files would hold a steady temp, so idk.


This is EXACTLY what I was talking about. Temperature oscillation is a classic symptom of a mis-tuned PID loop. You CAN fix this without loading a new hex into the printer!

RetireeJay wrote:(3) Temperature control PID tuning. There's a command you can give to auto-tune the PID parameters (M303, read up on it before you use it); then you save them to EEPROM with M500. (PID parameters control how quickly, precisely, and stably your hot end reaches and maintains setpoint temperature; different physical construction of the hot end means different PID settings.)
  • 0

Printrbot Plus operational January 2013
Brass threaded rods (5/16" X 18) & nuts for Z axis
GT2 belts & pulleys
Cable chain to reduce probability of fatigue failure in wires
E3D V5 Hot End, 0.4mm nozzle, also 0.8 and 0.25 in use occasionally
PB fan mount + 40mm fan -- using printed mount adapter, not the E3D supplied fan
Injection molded extruder gears
Optical Z "endstop" (custom designed and built)
Have used many pounds of T-Glase filament. Now also doing some work with Ninjaflex SemiFlex
Print on glass with Scotch Craft Stick or other glue stick
"My next printer is..." Prusa i3 MK3, upgraded to MK3S
User avatar
RetireeJay
My next printer is...
 
Posts: 5003
Joined: 2013-Jan-Wed-13-Jan
Location: Greenville, SC
Reputation: 498

Re: 9 point auto leveling not working

Postby RPearce » 2016-Jul-Sun-21-Jul

ok so for giggles, and since it was the only Hex i had left, i told my Plus that is it is a Play, its programmed as a play, but i increased its bed size to that of the Plus, and its actually working with the E3D head just fine, 3 point level like the play but otherwise its all working. its even printing at 270c with out a problem so i guess my machines are good to go, i dont think anyone here is going to compile a 9 point for me and these are working so i guess im fully operational.
  • 0

Ryan Pearce, CEO Pearce Industries
www.PearcePlastics.ca/
Printrbot Play - Heated bed + E3D V6
Printrbot Simple Metal - Heated Bed + E3D V6
Printbot Plus + E3D V6
RPearce
Loading filament...
 
Posts: 11
Joined: 2016-Jun-Tue-20-Jun
Reputation: 0

Re: 9 point auto leveling not working

Postby RetireeJay » 2016-Jul-Mon-13-Jul

Glad to hear that you are up and running!

One issue that we didn't discuss but might explain SOME of your difficulties is that there are two incompatible versions of the Printrboard in common use. Printrbot printers made in the last year or so ship with a version of the Rev F board. But older printers and probably most clones ship with Rev D boards. I know from personal experience that Rev D firmware won't work correctly on a Rev F board, and vice versa. So if you loaded a hex that was compiled for a Rev D board onto a Rev F board, then yes, it's going to be unhappy. There are enough similarities that it may seem to work partially, but there are a couple of differences to prevent full functionality. If you want more details, you can look at this post: viewtopic.php?f=21&t=10715&p=69152
  • 0

Printrbot Plus operational January 2013
Brass threaded rods (5/16" X 18) & nuts for Z axis
GT2 belts & pulleys
Cable chain to reduce probability of fatigue failure in wires
E3D V5 Hot End, 0.4mm nozzle, also 0.8 and 0.25 in use occasionally
PB fan mount + 40mm fan -- using printed mount adapter, not the E3D supplied fan
Injection molded extruder gears
Optical Z "endstop" (custom designed and built)
Have used many pounds of T-Glase filament. Now also doing some work with Ninjaflex SemiFlex
Print on glass with Scotch Craft Stick or other glue stick
"My next printer is..." Prusa i3 MK3, upgraded to MK3S
User avatar
RetireeJay
My next printer is...
 
Posts: 5003
Joined: 2013-Jan-Wed-13-Jan
Location: Greenville, SC
Reputation: 498


Return to Simple talk (software)

Who is online

Users browsing this forum: No registered users and 1 guest