Reset your printer... Connect to it with PronterFace. And give it a M114 command. What does it say? Does the Z_PROBE_OFFSET_FROM_EXTRUDER match what is declared in your Configuration.h file?
Printable View
I don't have the printer in front of me at the moment, but after adjusting my code per AbuMaia's suggestion, after a cold start and not touching the printer in any other way, an M114s declares my z at 15. My offset in my config is still the actual 8.60 however....
I should add, I even started afresh using Dab's most recent firmware release, and still the same effects too...
The reason for the question is the version of Configuration.h I have from you has the EEPROM turned on. You need to load the 'default settings' into memory, and then save them to EEPROM using a M500. The reason is Marlin takes all it's settings from the EEPROM if the EEPROM is turned on.
Hence the question: What does M114 and specifically the M851 command say?
Crap, I completely forgot about eeprom, I wll check it this afternoon...maybe that's my issue all along hmm...
Here's my startup code from pronterface, cold start, haven't moved or touched anything else.
And here's it after a G28Quote:
Connecting...
start
Printer is now online.
echo: External Reset
Marlin1.0.0
echo: Last Updated: Dec 5 2014 21:48:19 | Author: (MakerFarm Inc, 10" i3v Prusa, dacb)
Compiled: Dec 5 2014
echo: Free Memory: 3519 PlannerBufferBytes: 1232
echo:Stored settings retrieved
echo:Steps per unit:
echo: M92 X80.00 Y80.00 Z4000.00 E859.00
echo:Maximum feedrates (mm/s):
echo: M203 X250.00 Y250.00 Z2.00 E22.00
echo:Maximum Acceleration (mm/s2):
echo: M201 X1000 Y1000 Z5 E1000
echo:Acceleration: S=acceleration, T=retract acceleration
echo: M204 S500.00 T500.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:SD init fail
>>>M114
SENDING:M114
X:0.00 Y:0.00 Z:0.00 E:0.00 Count X: 0.00 Y:0.00 Z:0.00
>>>M851
SENDING:M851
echo:Z Offset :
0.00
Quote:
>>>G28
SENDING:G28
>>>M114
SENDING:M114
X:93.00 Y:131.00 Z:15.00 E:0.00 Count X: 93.00 Y:131.00 Z:15.00
>>>M851
SENDING:M851
echo:Z Offset :
0.00
Well I think we can lay this thread to rest :)
I can't believe I was so dumb, as to never in this entire event issued a M502 to default the settings and load the values from the config.h and not what was in the EEPROM. I did so, and everything now looks great, my G28, and G29 now work correctly and my Z height is correct too (some small tweaking, but its in the ballpark)
I guess my lesson learned here, and to all those who have any issues is, to always run M502 after changing your configs.... I'll also include this link to Roxy's amazing code to invalidate the EEPROM automatically as well: http://3dprintboard.com/showthread.p...lidate-Command
I just want to say thank you to Roxy, AbuMaia and everyone else who's been so kind and helpful the last few weeks in working with me on my glitches and user-issues I've had. You're all top marks in my books, and I can't thank you enough for your help, and this entire amazing forum too :)
Ryan
Has anyone ever looked into tweaking how the Arduino IDE uses the avrdude programming utility? There's no reason why avrdude can't reprogram EEPROM values when reflashing the firmware. I do that all the time with avrdude in my non-Arduino AVR projects. Not always since sometimes I do want to retain the old EEPROM data, but it's a simple command line option with avrdude to go either way.