repetier / Repetier-Firmware

Firmware for Arduino based RepRap 3D printer.
815 stars 734 forks source link

one axis is slower than the others in delta printer #916

Open mj996 opened 4 years ago

mj996 commented 4 years ago

Hello everybody,I have a problem with my delta printer and I would be very grateful if you help me to solve it. I'm using Arduino due + RADDS with Repetier firmware. The problem started when the Z stepper motor only moved in one direction.I've tried loads of methods non of them helped me to solve that. I checked all of the endstops.They worked fine. I checked the stepper drivers ,all of them had the same voltage 0.7 v . and finally I found out that the problem was with the dir pin on the board So I decided to use E1 socket for Z axis stepper motor.I change it in my firmware and i plugged the stepper cable and the driver into E1.when I swapped the Z axis with E1,the Z carriage moved correctly up and down but the speed of that carriage is lower than the others now.so the things that I did :

mj996 commented 4 years ago

Actually it is ROD_RADIUS that gets used for computation. In the original config it get scomputed by subtracting CARRIAGE_HORIZONTAL_OFFSET and END_EFFECTOR_HORIZONTAL_OFFSET from PRINTER_RADIUS but not in config tool.

You should use the 6 point escher solution which keeps diagonal length constant. It is bad to adjust this as well as then object size will get wrong. Main problem is that each modification changes height at all positions. But some are symmetric and some have more effect in one region. So angles have an effect in neighbouring areas while ROD_RADIUS is symmetric changing the dome effect middle vs. at the end.

For eeprom you can switch also to sd card solution. Only requires you have a sd card in the printer. We use that for boards without eeprom. In pins.h for that board set

define EEPROM_AVAILABLE EEPROM_SDCARD

to tell it to use sd card instead. Do NOT change it in configuration.h - will not work.

OK I inserted a sd card and put #define EEPROM_AVAILABLE EEPROM_SDCARD in board section of pins.h. Now I should put the number of EEPROM mode on 3 in configuration.h file,right? I did that and now I don't get '' No start signal detected '' anymore but each time I send m502 & m500 commands in the host I get "could not write eeprom to sd card " error.What did I miss? I put pins.h and host log files in order :

// RADDS Board // http://www.dr-henschke.de/RADDS_due.html

if MOTHERBOARD == 402

ifndef SAM3X8E

error Oops! Make sure you have 'Arduino Due' selected from the 'Tools -> Boards' menu.

endif

define KNOWN_BOARD

define CPU_ARCH ARCH_ARM

/*****

define ORIG_X_STEP_PIN 24

define ORIG_X_DIR_PIN 23

define ORIG_X_MIN_PIN 28

define ORIG_X_MAX_PIN 34

define ORIG_X_ENABLE_PIN 26

define ORIG_Y_STEP_PIN 17

define ORIG_Y_DIR_PIN 16

define ORIG_Y_MIN_PIN 30

define ORIG_Y_MAX_PIN 36

define ORIG_Y_ENABLE_PIN 22

define ORIG_Z_STEP_PIN 2

define ORIG_Z_DIR_PIN 3

define ORIG_Z_MIN_PIN 32

define ORIG_Z_MAX_PIN 38

define ORIG_Z_ENABLE_PIN 15

// Note that on the Due pin A0 on the board is channel 2 on the ARM chip

define HEATER_0_PIN 13

// Due analog pin #54

define TEMP_0_PIN 7

define HEATER_1_PIN 7

define TEMP_1_PIN 3

// Due analog pin #58

define HEATER_2_PIN 12

// Due analog pin #55

define TEMP_2_PIN 6

define HEATER_3_PIN 11

// Due analog pin #56

define TEMP_3_PIN 5

// Due analog pin #57

define TEMP_4_PIN 4

// Due analog pin #59 = A5 -> AD 2

define THERMOCOUPLE_0_PIN 2

// There are no more analog pins freely available. // You can use direction and enable pin from extruder 0 socket as they are also // analog pins. Then you need to move the stepper driver to a different socket.

// Direction pin of extruder 0

define THERMOCOUPLE_1_PIN 1

// Step pin of extruder 0

define THERMOCOUPLE_2_PIN 0

// Enable pin of extruder 0

define THERMOCOUPLE_3_PIN 10

define ORIG_E0_STEP_PIN 61

define ORIG_E0_DIR_PIN 60

define ORIG_E0_ENABLE_PIN 62

define ORIG_E1_STEP_PIN 64

define ORIG_E1_DIR_PIN 63

define ORIG_E1_ENABLE_PIN 65

define ORIG_E2_STEP_PIN 51

define ORIG_E2_DIR_PIN 53

define ORIG_E2_ENABLE_PIN 49

// Extra driver on extension board // Might require pin 66 high for some drivers!

define ORIG_E3_STEP_PIN 35

define ORIG_E3_DIR_PIN 33

define ORIG_E3_ENABLE_PIN 37

// Extra driver on extension port // Might require pin 25 high for some drivers!

define ORIG_E4_STEP_PIN 29

define ORIG_E4_DIR_PIN 27

define ORIG_E4_ENABLE_PIN 31

define ORIG_E5_STEP_PIN 67

define ORIG_E5_DIR_PIN 66

define ORIG_E5_ENABLE_PIN 68

define EXTENSION_BOARD_MS1 67

define EXTENSION_BOARD_MS2 68

define EXTENSION_BOARD_MS3 69

// 66 -> not connected // 25 -> not connected // To set microstepping on startup set START_GCODE to e.g. // "M42 P67 S255\nM42 P68 S255\nM42 P69 S255"

define SDSUPPORT 1

define SDPOWER -1

// 4,10,52 if using HW SPI.

define SDSS 4

define ORIG_SDCARDDETECT 14

define SDCARDDETECTINVERTED 0

define LED_PIN -1

define ORIG_FAN_PIN 9

define ORIG_FAN2_PIN 8

define ORIG_PS_ON_PIN 40

define KILL_PIN -1

define SUICIDE_PIN \

-1 // PIN that has to be turned on right after start, to keep power flowing.

// 20 or 70

define SDA_PIN 20

// 21 or 71

define SCL_PIN 21

// Servo pins: 5,6 und 39

define E0_PINS ORIG_E0_STEP_PIN, ORIG_E0_DIR_PIN, ORIG_E0_ENABLE_PIN,

define E1_PINS ORIG_E1_STEP_PIN, ORIG_E1_DIR_PIN, ORIG_E1_ENABLE_PIN,

define E2_PINS ORIG_E2_STEP_PIN, ORIG_E2_DIR_PIN, ORIG_E2_ENABLE_PIN,

define E3_PINS ORIG_E3_STEP_PIN, ORIG_E3_DIR_PIN, ORIG_E3_ENABLE_PIN,

define E4_PINS ORIG_E4_STEP_PIN, ORIG_E4_DIR_PIN, ORIG_E4_ENABLE_PIN,

define E5_PINS ORIG_E5_STEP_PIN, ORIG_E5_DIR_PIN, ORIG_E5_ENABLE_PIN,

define TWI_CLOCK_FREQ 400000

// see eeprom device data sheet for the following values these are for 24xx256

define EEPROM_SERIAL_ADDR 0x50 // 7 bit i2c address (without R/W bit)

define EEPROM_PAGE_SIZE 64 // page write buffer size

define EEPROM_PAGE_WRITE_TIME \

7 // page write time in milliseconds (docs say 5ms but that is too short)

// specify size of eeprom address register // TWI_MMR_IADRSZ_1_BYTE for 1 byte, or TWI_MMR_IADRSZ_2_BYTE for 2 byte

define EEPROM_ADDRSZ_BYTES TWI_MMR_IADRSZ_2_BYTE

define EEPROM_AVAILABLE EEPROM_SDCARD

endif


15:08:31.897 : wait 15:08:32.397 : ok 20 15:08:32.397 : XY jerk was too low, setting to 12.21 15:08:32.397 : SelectExtruder:0 15:08:32.397 : FlowMultiply:100 15:08:32.397 : Info:Configuration reset to defaults. 15:08:32.429 : T:26.25 /0 B:11.40 /0 B@:0 @:0 15:08:33.397 : wait 15:08:33.444 : T:26.25 /0 B:11.40 /0 B@:0 @:0 15:08:34.397 : wait 15:08:34.475 : T:26.25 /0 B:11.40 /0 B@:0 @:0 15:08:35.397 : wait 15:08:35.491 : T:26.25 /0 B:11.40 /0 B@:0 @:0 15:08:36.396 : wait 15:08:36.522 : T:26.25 /0 B:11.40 /0 B@:0 @:0 15:08:36.850 : ok 21 15:08:36.850 : Info:Configuration stored to EEPROM. 15:08:37.537 : T:26.25 /0 B:11.40 /0 B@:0 @:0 15:08:37.850 : wait 15:08:38.568 : T:26.25 /0 B:11.40 /0 B@:0 @:0 15:08:38.849 : wait 15:08:39.583 : T:26.25 /0 B:11.40 /0 B@:0 @:0 15:08:39.849 : wait 15:08:40.601 : T:26.25 /0 B:11.40 /0 B@:0 @:0 15:08:40.851 : wait 15:08:41.632 : T:26.25 /0 B:11.40 /0 B@:0 @:0 15:08:41.851 : wait 15:08:42.663 : T:26.25 /0 B:11.60 /0 B@:0 @:0 15:08:42.850 : wait 15:08:43.678 : T:26.25 /0 B:11.40 /0 B@:0 @:0 15:08:43.850 : wait 15:08:44.694 : T:26.25 /0 B:11.40 /0 B@:0 @:0 15:08:44.850 : wait 15:08:45.725 : T:26.25 /0 B:11.60 /0 B@:0 @:0 15:08:45.850 : wait 15:08:46.740 : T:26.25 /0 B:11.40 /0 B@:0 @:0 15:08:46.850 : wait 15:08:47.771 : T:26.25 /0 B:11.60 /0 B@:0 @:0 15:08:47.865 : wait 15:08:48.787 : T:26.25 /0 B:11.60 /0 B@:0 @:0 15:08:48.865 : wait 15:08:49.818 : T:26.25 /0 B:11.60 /0 B@:0 @:0 15:08:49.865 : wait 15:08:50.833 : T:26.25 /0 B:11.40 /0 B@:0 @:0 15:08:50.864 : wait 15:08:51.849 : Error:Could not write eeprom to sd card 15:08:51.864 : T:26.25 /0 B:11.40 /0 B@:0 @:0 15:08:51.864 : wait 15:08:52.864 : wait 15:08:52.880 : T:26.25 /0 B:11.40 /0 B@:0 @:0 15:08:53.864 : wait 15:08:53.911 : T:26.25 /0 B:11.60 /0 B@:0 @:0 15:08:54.864 : wait 15:08:54.926 : T:26.25 /0 B:11.60 /0 B@:0 @:0 15:08:55.863 : wait 15:08:55.957 : T:26.25 /0 B:11.60 /0 B@:0 @:0 15:08:56.863 : wait 15:08:56.972 : T:26.25 /0 B:11.60 /0 B@:0 @:0 15:08:57.863 : wait 15:08:58.003 : T:26.25 /0 B:11.60 /0 B@:0 @:0 15:08:58.863 : wait 15:08:59.018 : T:26.25 /0 B:11.40 /0 B@:0 @:0 15:08:59.862 : wait 15:09:00.049 : T:26.25 /0 B:11.40 /0 B@:0 @:0 15:09:00.878 : wait 15:09:01.073 : T:26.25 /0 B:11.60 /0 B@:0 @:0 15:09:01.871 : wait 15:09:02.089 : T:26.25 /0 B:11.60 /0 B@:0 @:0 15:09:02.870 : wait

mj996 commented 4 years ago

Update : There's no matter which mode of EEPROM I choose,it will show ''Error:Could not write eeprom to sd card '' after few seconds I connect the printer.

repetier commented 4 years ago

The problem is not your eeprom setting. You seem to be not able to use the sd card, so check if you can read the sd card, e.g. list files using M20. When you can read files I'm quite sure eeprom to sd card will also start to work. If you have no feature controller selected it will use the sd card reader on the radds board, so try that first. Also make sure sd card is using a fat or vfat file system.

mj996 commented 4 years ago

The problem is not your eeprom setting. You seem to be not able to use the sd card, so check if you can read the sd card, e.g. list files using M20. When you can read files I'm quite sure eeprom to sd card will also start to work. If you have no feature controller selected it will use the sd card reader on the radds board, so try that first. Also make sure sd card is using a fat or vfat file system.

Ok I guess the EEPROM is Ok because I can read the files on sd card with M20 command. So now that I have eeprom why not trying to enable Z probe. I mounted a micro switch on the effector as my Z probe .My Z_probe is Connected to the Z_min_Endstop. The Configuration of the Firmware seems to be ok: When I send the M119, I got the Message back: Z-Probe state:L. By triggering the Probe by hand and resending M119 I get: Z-Probe state:H. Then I send the G28 -> My Delta homes all three axes, and stops properly at the top of the extrusion. Then I send the G32 S2 ,The Effector begins to go down in direction of the build-platform.It hit the bed triggered the probe but then it stopped and showed the fatal error. I homed the printer and send M119 and the Z-probe status was still H !! I think the problem is that the probe stays triggered after first hit but I don't know where does this problem come from !

Here are Z probe settings in config file : // #################### Z-Probing #####################

define Z_PROBE_Z_OFFSET 0

define Z_PROBE_Z_OFFSET_MODE 0

define UI_BED_COATING 1

define FEATURE_Z_PROBE 1

define EXTRUDER_IS_Z_PROBE 0

define Z_PROBE_DISABLE_HEATERS 0

define Z_PROBE_BED_DISTANCE 10

define Z_PROBE_PIN ORIG_Z_MIN_PIN

define Z_PROBE_PULLUP 0

define Z_PROBE_ON_HIGH 0

define Z_PROBE_X_OFFSET 0

define Z_PROBE_Y_OFFSET 0

define Z_PROBE_WAIT_BEFORE_TEST 0

define Z_PROBE_SPEED 2

define Z_PROBE_XY_SPEED 150

define Z_PROBE_SWITCHING_DISTANCE 1

define Z_PROBE_REPETITIONS 1

define Z_PROBE_USE_MEDIAN 1

define Z_PROBE_HEIGHT 6.08

define Z_PROBE_DELAY 0

define Z_PROBE_START_SCRIPT ""

define Z_PROBE_FINISHED_SCRIPT ""

define Z_PROBE_RUN_AFTER_EVERY_PROBE ""

define Z_PROBE_REQUIRES_HEATING 0

define Z_PROBE_MIN_TEMPERATURE 150

define FEATURE_AUTOLEVEL 0

define FEATURE_SOFTWARE_LEVELING 0

define Z_PROBE_X1 -77.22

define Z_PROBE_Y1 -55

define Z_PROBE_X2 77.22

define Z_PROBE_Y2 -55

define Z_PROBE_X3 0

define Z_PROBE_Y3 104

define BED_LEVELING_METHOD 1

define BED_CORRECTION_METHOD 0

define BED_LEVELING_GRID_SIZE 5

define BED_LEVELING_REPETITIONS 5

define BED_MOTOR_1_X 0

define BED_MOTOR_1_Y 0

define BED_MOTOR_2_X 200

define BED_MOTOR_2_Y 0

define BED_MOTOR_3_X 100

define BED_MOTOR_3_Y 200

define BENDING_CORRECTION_A 0

define BENDING_CORRECTION_B 0

define BENDING_CORRECTION_C 0

define FEATURE_AXISCOMP 0

define AXISCOMP_TANXY 0

define AXISCOMP_TANYZ 0

define AXISCOMP_TANXZ 0

PS : I'm using v1.0.4 dev of firmware.

repetier commented 4 years ago

With a mechanical endstop you need a pullup resistor. So set

define Z_PROBE_PULLUP 1

or output is not defined and rather random.

mj996 commented 4 years ago

With a mechanical endstop you need a pullup resistor. So set

define Z_PROBE_PULLUP 1

or output is not defined and rather random.

Ok now it works ,thanks. So this is the process : G28 G32 S2 (which measures 3 points) G1 Z10 bed height map tool and measuring heights G33 for Z correction When I reach to this level and I command G33 , the printer starts measuring the points but at the middle of this procedure a fatal error comes from nowhere and the Z correction procedure stops.

Here is the result of my bed height map measurement :

X: -80.00 -53.33 -26.67 0.00 26.67 53.33 80.00 y: 80.00 14.44 14.84 15.22 15.62 16.12 16.65 17.24 y: 53.33 14.52 14.68 15.22 15.49 15.84 16.27 16.79 y: 26.67 14.43 14.81 15.04 15.32 15.67 16.09 16.54 y: 0.00 14.52 14.75 14.96 15.26 15.50 15.82 16.19 y: -26.67 14.40 14.46 14.92 15.17 15.34 15.59 15.77 y: -53.33 14.58 14.61 14.74 15.01 15.05 15.14 15.34 y: -80.00 14.75 14.85 15.00 14.93 14.70 14.78 14.98

and here are my Z correction settings in config file :

define DISTORTION_CORRECTION 1

define DISTORTION_CORRECTION_POINTS 7

define DISTORTION_LIMIT_TO 2

define DISTORTION_CORRECTION_R 100

define DISTORTION_PERMANENT 1

define DISTORTION_UPDATE_FREQUENCY 15

define DISTORTION_START_DEGRADE 0.5

define DISTORTION_END_HEIGHT 1

define DISTORTION_EXTRAPOLATE_CORNERS 0

define DISTORTION_XMIN 10

define DISTORTION_YMIN 10

define DISTORTION_XMAX 190

define DISTORTION_YMAX 190

PS : This is the error in the log : 18:15:55.291 : Error:Stopping distortion measurement due to errors. 18:15:55.296 : RequestStop: 18:15:55.442 : TargetExtr0:0 18:15:55.447 : T:26.87 /0 B:12.80 /0 B@:0 @:0 18:15:55.464 : fatal:G33 failed! - Printer stopped and heaters disabled due to this error. Fix error and restart with M999.

mj996 commented 4 years ago

So here's an update : I changed #define DISTORTION_EXTRAPOLATE_CORNERS to 1 and

define DISTORTION_XMIN 10 to -100

define DISTORTION_YMIN 10 to -100

define DISTORTION_XMAX 190 to 100

define DISTORTION_YMAX 190 to 100

and now I am able to run G33 completely but I think I still miss something because I can't get to the fine results.

After G33 command I opened bed height map tool and measured heights again but actually there was no obvious difference. I should mention that each time I want to send G32 or G33 commands I bring the nozzle to 15mm above the bed.(My Z probe height is about 9 mm)

Maybe I'm doing something wrong or I miss some parameters in firmware. Here are the results before Z correction :

X: -70.00 -46.67 -23.33 0.00 23.33 46.67 70.00 y: 70.00 14.54 14.93 15.29 15.63 16.04 16.52 17.12 y: 46.67 14.49 14.69 15.24 15.61 15.98 16.35 16.78 y: 23.33 14.37 14.70 15.11 15.37 15.70 16.02 16.45 y: 0.00 14.39 14.56 14.94 15.28 15.53 15.77 16.12 y: -23.33 14.54 14.43 14.57 15.08 15.33 15.62 15.91 y: -46.67 14.66 14.39 14.36 14.79 15.11 15.29 15.51 y: -70.00 14.85 14.47 14.39 14.79 15.03 15.11 15.21

Here is the distortion matrix :

118, 22, -42, -93, -160, -247, -346 101, 59, 13, -63, -136, -211, -297 52, 40, -15, -62, -110, -173, -235 91, 71, 54, -23, -72, -120, -173 63, 75, 3, -50, -59, -84, -123 49, 103, 100, 35, -33, -53, -73 73, 112, 112, 41, -13, -25, -30

And here are results after Z correction when I remeasured heights in bed height map tool :

X: -70.00 -46.67 -23.33 0.00 23.33 46.67 70.00 y: 70.00 14.49 14.87 15.26 15.66 16.11 16.60 17.13 y: 46.67 14.49 14.76 15.14 15.53 15.88 16.31 16.75 y: 23.33 14.47 14.75 15.05 15.31 15.68 16.09 16.55 y: 0.00 14.44 14.71 14.94 15.25 15.47 15.82 16.22 y: -23.33 14.49 14.50 14.82 15.14 15.41 15.56 15.89 y: -46.67 14.62 14.29 14.37 15.06 15.26 15.34 15.59 y: -70.00 14.78 14.34 14.34 14.76 15.06 15.21 15.29

This is an image of my bed height map : https://www.dropbox.com/s/8s4x6jojtkyhhe4/asdfk.JPG?dl=0

and here are some settings of my config file.Maybe I missed something.

define DISTORTION_CORRECTION 1

define DISTORTION_CORRECTION_POINTS 7

define DISTORTION_LIMIT_TO 2

define DISTORTION_CORRECTION_R 70

define DISTORTION_PERMANENT 1

define DISTORTION_UPDATE_FREQUENCY 15

define DISTORTION_START_DEGRADE 0.5

define DISTORTION_END_HEIGHT 1

define DISTORTION_EXTRAPOLATE_CORNERS 1

define DISTORTION_XMIN -100

define DISTORTION_YMIN -100

define DISTORTION_XMAX 100

define DISTORTION_YMAX 100

// ########################################################################################## // ## Movement settings ## // ##########################################################################################

define FEATURE_BABYSTEPPING 0

define BABYSTEP_MULTIPLICATOR 1

define DELTA_SEGMENTS_PER_SECOND_PRINT 180 // Move accurate setting for print moves

define DELTA_SEGMENTS_PER_SECOND_MOVE 70 // Less accurate setting for other moves

define EXACT_DELTA_MOVES 1

// Delta settings

define DELTA_DIAGONAL_ROD 444 // mm

define DELTA_ALPHA_A 213.55

define DELTA_ALPHA_B 335.57

define DELTA_ALPHA_C 90

define DELTA_RADIUS_CORRECTION_A 0

define DELTA_RADIUS_CORRECTION_B 0

define DELTA_RADIUS_CORRECTION_C 0

define DELTA_DIAGONAL_CORRECTION_A 0

define DELTA_DIAGONAL_CORRECTION_B 0

define DELTA_DIAGONAL_CORRECTION_C 0

define END_EFFECTOR_HORIZONTAL_OFFSET 69.8

define CARRIAGE_HORIZONTAL_OFFSET 34

define DELTA_MAX_RADIUS 170

define ROD_RADIUS 211.4

define PRINTER_RADIUS 310.8

define DELTA_HOME_ON_POWER 0

define STEP_COUNTER

define DELTA_X_ENDSTOP_OFFSET_STEPS 520

define DELTA_Y_ENDSTOP_OFFSET_STEPS 990

define DELTA_Z_ENDSTOP_OFFSET_STEPS -190

define DELTA_FLOOR_SAFETY_MARGIN_MM 60

//#define SOFTWARE_LEVELING

define DELTASEGMENTS_PER_PRINTLINE 20

define STEPPER_INACTIVE_TIME 360L

define MAX_INACTIVE_TIME 0L

define MAX_FEEDRATE_X 150

define MAX_FEEDRATE_Y 150

define MAX_FEEDRATE_Z 150

define HOMING_FEEDRATE_X 100

define HOMING_FEEDRATE_Y 100

define HOMING_FEEDRATE_Z 100

define HOMING_ORDER HOME_ORDER_ZXY

define ZHOME_PRE_RAISE 0

define ZHOME_PRE_RAISE_DISTANCE 10

define RAISE_Z_ON_TOOLCHANGE 0

define ZHOME_MIN_TEMPERATURE 0

define ZHOME_HEAT_ALL 1

define ZHOME_HEAT_HEIGHT 20

define ZHOME_X_POS 999999

define ZHOME_Y_POS 999999

define ENABLE_BACKLASH_COMPENSATION 0

define X_BACKLASH 0

define Y_BACKLASH 0

define Z_BACKLASH 0

define RAMP_ACCELERATION 1

define STEPPER_HIGH_DELAY 1

define DIRECTION_DELAY 1

define STEP_DOUBLER_FREQUENCY 80000

define ALLOW_QUADSTEPPING 1

define DOUBLE_STEP_DELAY 1 // time in microseconds

define MAX_ACCELERATION_UNITS_PER_SQ_SECOND_X 1500

define MAX_ACCELERATION_UNITS_PER_SQ_SECOND_Y 1500

define MAX_ACCELERATION_UNITS_PER_SQ_SECOND_Z 1500

define MAX_TRAVEL_ACCELERATION_UNITS_PER_SQ_SECOND_X 1500

define MAX_TRAVEL_ACCELERATION_UNITS_PER_SQ_SECOND_Y 1500

define MAX_TRAVEL_ACCELERATION_UNITS_PER_SQ_SECOND_Z 1500

define INTERPOLATE_ACCELERATION_WITH_Z 0

define ACCELERATION_FACTOR_TOP 100

define MAX_JERK 5

define MAX_ZJERK 0.3

define PRINTLINE_CACHE_SIZE 16

define MOVE_CACHE_LOW 10

define LOW_TICKS_PER_MOVE 250000

define EXTRUDER_SWITCH_XY_SPEED 100

define DUAL_X_AXIS 0

define DUAL_X_RESOLUTION 0

define X2AXIS_STEPS_PER_MM 100

define FEATURE_TWO_XSTEPPER 0

define X2_STEP_PIN ORIG_E1_STEP_PIN

define X2_DIR_PIN ORIG_E1_DIR_PIN

define X2_ENABLE_PIN ORIG_E1_ENABLE_PIN

define FEATURE_TWO_YSTEPPER 0

define Y2_STEP_PIN ORIG_E1_STEP_PIN

define Y2_DIR_PIN ORIG_E1_DIR_PIN

define Y2_ENABLE_PIN ORIG_E1_ENABLE_PIN

define FEATURE_TWO_ZSTEPPER 0

define Z2_STEP_PIN ORIG_E0_STEP_PIN

define Z2_DIR_PIN ORIG_E0_DIR_PIN

define Z2_ENABLE_PIN ORIG_E0_ENABLE_PIN

define FEATURE_THREE_ZSTEPPER 0

define Z3_STEP_PIN ORIG_E2_STEP_PIN

define Z3_DIR_PIN ORIG_E2_DIR_PIN

define Z3_ENABLE_PIN ORIG_E2_ENABLE_PIN

define FEATURE_FOUR_ZSTEPPER 0

define Z4_STEP_PIN ORIG_E3_STEP_PIN

define Z4_DIR_PIN ORIG_E3_DIR_PIN

define Z4_ENABLE_PIN ORIG_E3_ENABLE_PIN

define FEATURE_DITTO_PRINTING 0

define USE_ADVANCE 0

define ENABLE_QUADRATIC_ADVANCE 0

// ################# Misc. settings ##################

define BAUDRATE 115200

define ENABLE_POWER_ON_STARTUP 1

define POWER_INVERTING 0

define AUTOMATIC_POWERUP 0

define KILL_METHOD 0

define ACK_WITH_LINENUMBER 1

define KEEP_ALIVE_INTERVAL 2000

define WAITING_IDENTIFIER "wait"

define ECHO_ON_EXECUTE 1

define EEPROM_MODE 3

undef PS_ON_PIN

define PS_ON_PIN -1

define STARTUP_GCODE "00"

define JSON_OUTPUT 1

// #################### Z-Probing #####################

define Z_PROBE_Z_OFFSET 0

define Z_PROBE_Z_OFFSET_MODE 0

define UI_BED_COATING 1

define FEATURE_Z_PROBE 1

define EXTRUDER_IS_Z_PROBE 0

define Z_PROBE_DISABLE_HEATERS 0

define Z_PROBE_BED_DISTANCE 10

define Z_PROBE_PIN ORIG_Z_MIN_PIN

define Z_PROBE_PULLUP 1

define Z_PROBE_ON_HIGH 0

define Z_PROBE_X_OFFSET 45

define Z_PROBE_Y_OFFSET 25

define Z_PROBE_WAIT_BEFORE_TEST 0

define Z_PROBE_SPEED 2

define Z_PROBE_XY_SPEED 150

define Z_PROBE_SWITCHING_DISTANCE 1

define Z_PROBE_REPETITIONS 1

define Z_PROBE_USE_MEDIAN 1

define Z_PROBE_HEIGHT 9

define Z_PROBE_DELAY 0

define Z_PROBE_START_SCRIPT ""

define Z_PROBE_FINISHED_SCRIPT ""

define Z_PROBE_RUN_AFTER_EVERY_PROBE ""

define Z_PROBE_REQUIRES_HEATING 0

define Z_PROBE_MIN_TEMPERATURE 150

define FEATURE_AUTOLEVEL 1

define FEATURE_SOFTWARE_LEVELING 0

define Z_PROBE_X1 -113.22

define Z_PROBE_Y1 -37

define Z_PROBE_X2 143.22

define Z_PROBE_Y2 -52

define Z_PROBE_X3 0

define Z_PROBE_Y3 149

define BED_LEVELING_METHOD 0

define BED_CORRECTION_METHOD 0

define BED_LEVELING_GRID_SIZE 5

define BED_LEVELING_REPETITIONS 5

define BED_MOTOR_1_X 0

define BED_MOTOR_1_Y 0

define BED_MOTOR_2_X 200

define BED_MOTOR_2_Y 0

define BED_MOTOR_3_X 100

define BED_MOTOR_3_Y 200

define BENDING_CORRECTION_A 0

define BENDING_CORRECTION_B 0

define BENDING_CORRECTION_C 0

define FEATURE_AXISCOMP 0

define AXISCOMP_TANXY 0

define AXISCOMP_TANYZ 0

define AXISCOMP_TANXZ 0

ifndef SDSUPPORT // Some boards have sd support on board. These define the values already in pins.h

define SDSUPPORT 1

undef SDCARDDETECT

define SDCARDDETECT SDSS

undef SDCARDDETECTINVERTED

define SDCARDDETECTINVERTED 0

endif

define SD_EXTENDED_DIR 1 /* Show extended directory including file length. Don't use this with Pronterface! /

define SD_RUN_ON_STOP ""

define SD_STOP_HEATER_AND_MOTORS_ON_STOP 1

define ARC_SUPPORT 1

define FEATURE_MEMORY_POSITION 1

define FEATURE_CHECKSUM_FORCED 0

define FEATURE_FAN_CONTROL 1

define FEATURE_FAN2_CONTROL 1

define FEATURE_CONTROLLER 0

define ADC_KEYPAD_PIN -1

define LANGUAGE_EN_ACTIVE 1

define LANGUAGE_DE_ACTIVE 1

define LANGUAGE_NL_ACTIVE 0

define LANGUAGE_PT_ACTIVE 1

define LANGUAGE_IT_ACTIVE 1

define LANGUAGE_ES_ACTIVE 1

define LANGUAGE_FI_ACTIVE 0

define LANGUAGE_SE_ACTIVE 0

define LANGUAGE_FR_ACTIVE 1

define LANGUAGE_CZ_ACTIVE 0

define LANGUAGE_PL_ACTIVE 1

define LANGUAGE_TR_ACTIVE 1

define LANGUAGE_RU_ACTIVE 0

define UI_PRINTER_NAME "RepRap"

define UI_PRINTER_COMPANY "Home made"

define UI_PAGES_DURATION 4000

define UI_SPEEDDEPENDENT_POSITIONING 0

define UI_DISABLE_AUTO_PAGESWITCH 1

define UI_AUTORETURN_TO_MENU_AFTER 30000

define FEATURE_UI_KEYS 0

define UI_ENCODER_SPEED 1

define UI_REVERSE_ENCODER 0

define UI_KEY_BOUNCETIME 10

define UI_KEY_FIRST_REPEAT 500

define UI_KEY_REDUCE_REPEAT 50

define UI_KEY_MIN_REPEAT 50

define FEATURE_BEEPER 0

define CASE_LIGHTS_PIN -1

define CASE_LIGHT_DEFAULT_ON 1

define UI_START_SCREEN_DELAY 1000

define UI_DYNAMIC_ENCODER_SPEED 1

I'm so thankful for your supports.

repetier commented 4 years ago

Does not look like you used G32 S2 first. I see a rotation of the bed quite clear in the values that are not corrected.

G33 must be run after G32 S2 - it is not meant to fix big differences like this. It is for correcting bumps in bed and maybe slight geometry errors.

define DISTORTION_START_DEGRADE 0.5

define DISTORTION_END_HEIGHT 1

Here you say that above 1mm there will be no correction from G33 at all, so measuring at 9mm will likely not show the corrected value. Run G33 L0 to see how much it would correct below 0.5mm where you have 100% correction and see if that added gives correct value. I'm not sure if I modified the output over time. But I think now G30 returns distance without correction.

Also make sure

define ENDSTOP_Z_BACK_ON_HOME 20

so you are after homing some distance away from end stops. Triggering them on top can cause errors in positions and at top you can not move xy without touching one end stop.

mj996 commented 4 years ago

G33 must be run after G32 S2

Actually I did this

Also make sure

define ENDSTOP_Z_BACK_ON_HOME 20

I set that on 20 and tried Z probing procedure multiple times by this way :

  1. Home the printer
  2. Run G32 S2 (This time I chose BED LEVELING METHOD 1 to measure as a grid and it had better results )
  3. Measure heights in bed height map tool
  4. Run G33
  5. Remeasure the heights in bed height map tool to see the results

Here are the results of each step above :

Results of G32 S2 :

15:47:53.934 : plane: a = 0.0099 b = -0.0099 c = 21.0911 15:47:53.942 : Transformation matrix: 0.999951 0.000000 -0.009866 0.000097 0.999952 0.009850 0.009866 -0.009850 0.999903 15:47:53.946 : Printer height:595.42 15:47:53.946 : CurrentZ:21.09 atZ:19.00 15:47:53.950 : Info:Autoleveling enabled 15:47:53.954 : Info:Autoleveling disabled

Results of bed height map measrurement :

X: -80.00 -53.33 -26.67 0.00 26.67 53.33 80.00 y: 80.00 12.45 12.40 12.42 12.79 12.97 13.16 13.48 y: 53.33 12.55 12.57 12.62 12.64 12.82 13.08 13.40 y: 26.67 12.63 12.66 12.56 12.52 12.89 13.04 13.24 y: 0.00 12.91 12.59 12.30 12.63 12.92 13.02 13.00 y: -26.67 13.27 12.81 12.66 12.63 13.02 12.84 12.72 y: -53.33 13.34 12.94 12.97 12.86 12.72 12.49 12.44 y: -80.00 13.61 13.19 13.11 12.95 12.68 12.39 12.29

Results of G33 :

16:00:27.696 : Info:Distortion correction matrix: 16:00:27.699 : 124, 102, 70, 49, 30, -11, -51 16:00:27.699 : 86, 132, 117, 93, 57, 7, -29 16:00:27.704 : 58, 99, 67, 56, 34, 10, -7 16:00:27.704 : 37, 110, 118, 78, 78, 72, -9 16:00:27.708 : -29, 69, 75, 48, 39, 22, 7 16:00:27.712 : -61, 53, 45, 34, 58, 89, 77 16:00:27.712 : -39, 20, 26, 1, 26, 74, 134 16:00:27.716 : G33 X-70.00 Y-70.00 Z-0.244 16:00:27.716 : G33 X-70.00 Y-46.67 Z-0.381 16:00:27.720 : G33 X-70.00 Y-23.34 Z-0.181 16:00:27.725 : G33 X-70.00 Y-0.01 Z0.231 16:00:27.725 : G33 X-70.00 Y23.32 Z0.363 16:00:27.729 : G33 X-70.00 Y46.66 Z0.538 16:00:27.729 : G33 X-70.00 Y69.99 Z0.775 16:00:27.733 : G33 X-46.67 Y-70.00 Z0.125 16:00:27.733 : G33 X-46.67 Y-46.67 Z0.331 16:00:27.737 : G33 X-46.67 Y-23.34 Z0.431 16:00:27.741 : G33 X-46.67 Y-0.01 Z0.688 16:00:27.741 : G33 X-46.67 Y23.32 Z0.619 16:00:27.745 : G33 X-46.67 Y46.66 Z0.825 16:00:27.745 : G33 X-46.67 Y69.99 Z0.638 16:00:27.749 : G33 X-23.34 Y-70.00 Z0.163 16:00:27.749 : G33 X-23.34 Y-46.67 Z0.281 16:00:27.753 : G33 X-23.34 Y-23.34 Z0.469 16:00:27.757 : G33 X-23.34 Y-0.01 Z0.738 16:00:27.757 : G33 X-23.34 Y23.32 Z0.419 16:00:27.761 : G33 X-23.34 Y46.66 Z0.731 16:00:27.763 : G33 X-23.34 Y69.99 Z0.438 16:00:27.765 : G33 X-0.01 Y-70.00 Z0.006 16:00:27.765 : G33 X-0.01 Y-46.67 Z0.213 16:00:27.770 : G33 X-0.01 Y-23.34 Z0.300 16:00:27.774 : G33 X-0.01 Y-0.01 Z0.488 16:00:27.774 : G33 X-0.01 Y23.32 Z0.350 16:00:27.777 : G33 X-0.01 Y46.66 Z0.581 16:00:27.777 : G33 X-0.01 Y69.99 Z0.306 16:00:27.782 : G33 X23.32 Y-70.00 Z0.163 16:00:27.782 : G33 X23.32 Y-46.67 Z0.363 16:00:27.786 : G33 X23.32 Y-23.34 Z0.244 16:00:27.786 : G33 X23.32 Y-0.01 Z0.488 16:00:27.790 : G33 X23.32 Y23.32 Z0.213 16:00:27.790 : G33 X23.32 Y46.66 Z0.356 16:00:27.794 : G33 X23.32 Y69.99 Z0.187 16:00:27.798 : G33 X46.66 Y-70.00 Z0.463 16:00:27.798 : G33 X46.66 Y-46.67 Z0.556 16:00:27.802 : G33 X46.66 Y-23.34 Z0.137 16:00:27.802 : G33 X46.66 Y-0.01 Z0.450 16:00:27.806 : G33 X46.66 Y23.32 Z0.063 16:00:27.806 : G33 X46.66 Y46.66 Z0.044 16:00:27.810 : G33 X46.66 Y69.99 Z-0.069 16:00:27.810 : G33 X69.99 Y-70.00 Z0.838 16:00:27.815 : G33 X69.99 Y-46.67 Z0.481 16:00:27.818 : G33 X69.99 Y-23.34 Z0.044 16:00:27.818 : G33 X69.99 Y-0.01 Z-0.056 16:00:27.822 : G33 X69.99 Y23.32 Z-0.044 16:00:27.822 : G33 X69.99 Y46.66 Z-0.181 16:00:27.827 : G33 X69.99 Y69.99 Z-0.319 16:00:27.827 : Z correction enabled

Results of bed height map measrurement after G33 command : X: -80.00 -53.33 -26.67 0.00 26.67 53.33 80.00 y: 80.00 12.33 12.60 12.41 12.61 12.97 13.23 13.56 y: 53.33 12.36 12.54 12.46 12.56 12.90 13.12 13.36 y: 26.67 12.43 12.67 12.36 12.71 12.99 13.04 13.13 y: 0.00 12.71 12.87 12.26 12.39 12.88 13.02 13.01 y: -26.67 13.24 12.99 12.45 12.66 12.86 12.92 12.83 y: -53.33 13.49 13.19 12.66 12.91 13.04 13.06 12.78 y: -80.00 13.65 13.57 12.67 12.89 12.88 12.85 12.34

After 3 attempts , Results of G32 S2 :

16:31:21.106 : plane: a = 0.0099 b = -0.0098 c = 18.9939 16:31:21.114 : Transformation matrix: 0.999951 0.000000 -0.009920 0.000097 0.999952 0.009749 0.009919 -0.009749 0.999903 16:31:21.118 : Printer height:595.38 16:31:21.118 : CurrentZ:18.99 atZ:19.00 16:31:21.122 : Info:Autoleveling enabled 16:31:21.122 : Z correction enabled 16:31:21.130 : Info:Autoleveling disabled

G33 :

16:38:09.075 : Info:Distortion correction matrix: 16:38:09.079 : 99, 76, 70, 20, -1, -22, -41 16:38:09.079 : 104, 111, 101, 95, 74, 16, -33 16:38:09.084 : 91, 74, 48, 44, 34, 9, -26 16:38:09.084 : 66, 55, 85, 109, 92, 45, -23 16:38:09.088 : -21, 3, 60, 95, 59, 5, 4 16:38:09.092 : -28, -29, 36, 70, 53, 41, 20 16:38:09.092 : -91, -72, 4, 65, 43, 29, 25 16:38:09.096 : G33 X-70.00 Y-70.00 Z-0.569 16:38:09.096 : G33 X-70.00 Y-46.67 Z-0.175 16:38:09.100 : G33 X-70.00 Y-23.34 Z-0.131 16:38:09.104 : G33 X-70.00 Y-0.01 Z0.413 16:38:09.104 : G33 X-70.00 Y23.32 Z0.569 16:38:09.107 : G33 X-70.00 Y46.66 Z0.650 16:38:09.107 : G33 X-70.00 Y69.99 Z0.619 16:38:09.112 : G33 X-46.67 Y-70.00 Z-0.450 16:38:09.116 : G33 X-46.67 Y-46.67 Z-0.181 16:38:09.116 : G33 X-46.67 Y-23.34 Z0.019 16:38:09.120 : G33 X-46.67 Y-0.01 Z0.344 16:38:09.120 : G33 X-46.67 Y23.32 Z0.463 16:38:09.124 : G33 X-46.67 Y46.66 Z0.694 16:38:09.124 : G33 X-46.67 Y69.99 Z0.475 16:38:09.129 : G33 X-23.34 Y-70.00 Z0.025 16:38:09.133 : G33 X-23.34 Y-46.67 Z0.225 16:38:09.133 : G33 X-23.34 Y-23.34 Z0.375 16:38:09.137 : G33 X-23.34 Y-0.01 Z0.531 16:38:09.137 : G33 X-23.34 Y23.32 Z0.300 16:38:09.140 : G33 X-23.34 Y46.66 Z0.631 16:38:09.140 : G33 X-23.34 Y69.99 Z0.438 16:38:09.145 : G33 X-0.01 Y-70.00 Z0.406 16:38:09.149 : G33 X-0.01 Y-46.67 Z0.438 16:38:09.149 : G33 X-0.01 Y-23.34 Z0.594 16:38:09.153 : G33 X-0.01 Y-0.01 Z0.681 16:38:09.153 : G33 X-0.01 Y23.32 Z0.275 16:38:09.157 : G33 X-0.01 Y46.66 Z0.594 16:38:09.158 : G33 X-0.01 Y69.99 Z0.125 16:38:09.162 : G33 X23.32 Y-70.00 Z0.269 16:38:09.162 : G33 X23.32 Y-46.67 Z0.331 16:38:09.166 : G33 X23.32 Y-23.34 Z0.369 16:38:09.166 : G33 X23.32 Y-0.01 Z0.575 16:38:09.169 : G33 X23.32 Y23.32 Z0.213 16:38:09.173 : G33 X23.32 Y46.66 Z0.463 16:38:09.173 : G33 X23.32 Y69.99 Z-0.006 16:38:09.178 : G33 X46.66 Y-70.00 Z0.181 16:38:09.178 : G33 X46.66 Y-46.67 Z0.256 16:38:09.182 : G33 X46.66 Y-23.34 Z0.031 16:38:09.182 : G33 X46.66 Y-0.01 Z0.281 16:38:09.186 : G33 X46.66 Y23.32 Z0.056 16:38:09.186 : G33 X46.66 Y46.66 Z0.100 16:38:09.190 : G33 X46.66 Y69.99 Z-0.137 16:38:09.194 : G33 X69.99 Y-70.00 Z0.156 16:38:09.194 : G33 X69.99 Y-46.67 Z0.125 16:38:09.198 : G33 X69.99 Y-23.34 Z0.025 16:38:09.198 : G33 X69.99 Y-0.01 Z-0.144 16:38:09.202 : G33 X69.99 Y23.32 Z-0.163 16:38:09.202 : G33 X69.99 Y46.66 Z-0.206 16:38:09.207 : G33 X69.99 Y69.99 Z-0.256 16:38:09.207 : Z correction enabled

My next try made the bed height map worse !

I have these values for my endstops offsets from my last manual calibration try :

define DELTA_X_ENDSTOP_OFFSET_STEPS 520

define DELTA_Y_ENDSTOP_OFFSET_STEPS 990

define DELTA_Z_ENDSTOP_OFFSET_STEPS -190

Can they effect the Auto calibration ? should I set them to zero ?

repetier commented 4 years ago

define DELTA_Z_ENDSTOP_OFFSET_STEPS -190

that is not good. Negative means towards end stop. Lowest should be 0. So add 190 to all values.

The G32 results look good in means of averaging error equally. The problem is you have 1mm difference between highest and lowest point. That means the geometry calibration is very bad. That error should be +/-0.2mm maybe even better for such a small bed. So now that G32 works reset G33 (G33 R0) and run escher 6 point again 1-2 times to improve that value based on what you now get es result. Then you should be good enough to even do prints with 0.3mm first layer height with such a bed. Only then should you start removing last bumps for better adhesion. Rememer correction reduces when going up and then you get the error again. And correcting 1mm on 0.5mm height difference is not good at all. Maybe you should set correction to 100% for full z height. But as said the base precision should be higher at the start.

mj996 commented 4 years ago

define DELTA_Z_ENDSTOP_OFFSET_STEPS -190

that is not good. Negative means towards end stop. Lowest should be 0. So add 190 to all values.

The G32 results look good in means of averaging error equally. The problem is you have 1mm difference between highest and lowest point. That means the geometry calibration is very bad. That error should be +/-0.2mm maybe even better for such a small bed. So now that G32 works reset G33 (G33 R0) and run escher 6 point again 1-2 times to improve that value based on what you now get es result. Then you should be good enough to even do prints with 0.3mm first layer height with such a bed. Only then should you start removing last bumps for better adhesion. Rememer correction reduces when going up and then you get the error again. And correcting 1mm on 0.5mm height difference is not good at all. Maybe you should set correction to 100% for full z height. But as said the base precision should be higher at the start.

Ok the bed leveling is exhausting me. As you said I ran escher 2 times and I reached good results that I had the same height at the middle and in front of 3 towers but in the (+x , +y ) part of coordinates system I could see a huge gap (about 2 or 3 mm) between nozzle and bed.So to make sure I ran the bed height map measurement once again and the error was still there (1mm between highest and lowest point). I thought it could be a physical error So I disassembled the whole bed assembly and just put the single glass on the lower frame without any bed holders. The error was still there !! So I don't know where does this problem exactly come from.Is there a way to figure this out?

This is my whole configuration.h file : https://www.dropbox.com/s/msy19nm4f4pmt5r/configuration.txt?dl=0

I would be very grateful if you help me to solve this.It's been 1 month since I start leveling the bed !!It's really disappointing me

repetier commented 4 years ago

You underestimate the equation when you think the bed is the problem. The equation considers angles and length of the delta. If one of these angles is only 0.5° wrong you get already errors in one sector. If you have e.g. especially between X and Z column wrong heights then you need to modify the X or Z angle. But this also influences the neighbouring sector. So choose wise and compare the patterns you get from changing angles. Then you get a feel on how this changes the heights there. Either it increases or decreases the error there. Choose the column where the neighbouring sector also improves in right direction.

mj996 commented 4 years ago

You underestimate the equation when you think the bed is the problem. The equation considers angles and length of the delta. If one of these angles is only 0.5° wrong you get already errors in one sector. If you have e.g. especially between X and Z column wrong heights then you need to modify the X or Z angle. But this also influences the neighbouring sector. So choose wise and compare the patterns you get from changing angles. Then you get a feel on how this changes the heights there. Either it increases or decreases the error there. Choose the column where the neighbouring sector also improves in right direction.

That's it !! You were right the tower angles were totally off.Thanks alot. So I set the angles as best I could and then calibrate the geometry with escher calculator. This time I could see the improvement when looking at the nozzle traveling from on tower to another But still I could see some errors right at the edges of the bed. Before I ran G32 measured the bed with bed height map tool and the map was fairly good and I had a difference of 0.8mm between H and L points. After changing the angles and correcting them so many times and running G32 I could decrease the error to something between 0.3 - 0.5 mm But I think that's not a good result yet and G33 couldn't help with this. So Are the tower angles still off or there's another problem here? Here are the angles :

define DELTA_ALPHA_A 210.050

define DELTA_ALPHA_B 330.170

define DELTA_ALPHA_C 90

With these angles My nozzle is too close to bed right in front of the X tower and It's a bit higher than the bed between X and Y towers.

Here are the results of the process of leveling for one try :

After correcting the tower angles :

bed height map measurement before G32 s2 :

X: -80.00 -53.33 -26.67 0.00 26.67 53.33 80.00 y: 80.00 10.05 10.04 9.941 0.021 0.02 10.05 10.11 y: 53.33 9.88 9.93 9.94 9.95 9.98 10.03 10.08 y: 26.67 9.69 9.70 9.86 9.89 9.90 9.99 10.06 y: 0.00 9.63 9.64 9.80 9.83 9.83 9.91 10.03 y: -26.67 9.62 9.70 9.78 9.83 9.84 9.89 10.04 y: -53.33 9.44 9.61 9.85 9.90 9.89 9.95 10.09 y: -80.00 9.49 9.69 9.83 9.93 9.94 10.03 10.18

Results after G32 :

20:48:18.746 : plane: a = 0.0043 b = 0.0010 c = 18.9949 20:48:18.754 : Transformation matrix: 0.999991 0.000000 -0.004335 -0.000004 0.999999 -0.001030 0.004335 0.001030 0.999990 20:48:18.754 : Printer height:603.70 20:48:18.758 : CurrentZ:18.99 atZ:19.00 20:48:18.762 : Info:Autoleveling enabled 20:48:18.766 : Info:Autoleveling disabled 20:48:19.116 : T:28.00 /0 B:13.40 /0 B@:0 @:0

Bed height map measurement after G32 : X: -80.00 -53.33 -26.67 0.00 26.67 53.33 80.00 y: 80.00 13.17 13.05 12.94 12.99 12.94 12.91 12.91 y: 53.33 13.23 13.03 12.96 12.95 12.89 12.86 12.89 y: 26.67 13.07 13.00 13.08 12.99 12.87 12.88 12.94 y: 0.00 12.80 12.86 13.01 12.96 12.86 12.90 12.96 y: -26.67 12.74 12.89 12.98 12.92 12.86 12.89 13.03 y: -53.33 12.78 13.01 13.05 12.99 12.91 13.01 13.11 y: -80.00 12.72 13.04 13.13 13.09 13.07 13.12 13.21

Results of G33 :

20:56:06.311 : Info:Distortion correction matrix: 20:56:06.312 : -41, -17, 4, -7, 0, 10, 23 20:56:06.316 : -33, 0, 9, 12, 18, 22, 16 20:56:06.316 : -22, -1, -9, 7, 24, 18, 6 20:56:06.320 : 19, 13, -6, 11, 27, 15, 3 20:56:06.320 : 41, 8, -5, 9, 16, 5, -7 20:56:06.324 : 23, 0, 4, 16, 20, -1, -20 20:56:06.328 : 0, -19, -32, -12, -10, -28, -39 20:56:06.328 : G33 X-80.00 Y-80.00 Z0.000 20:56:06.332 : G33 X-80.00 Y-53.34 Z0.144 20:56:06.332 : G33 X-80.00 Y-26.68 Z0.256 20:56:06.336 : G33 X-80.00 Y-0.01 Z0.119 20:56:06.340 : G33 X-80.00 Y26.65 Z-0.137 20:56:06.340 : G33 X-80.00 Y53.31 Z-0.206 20:56:06.344 : G33 X-80.00 Y79.97 Z-0.256 20:56:06.345 : G33 X-53.34 Y-80.00 Z-0.119 20:56:06.348 : G33 X-53.34 Y-53.34 Z0.000 20:56:06.348 : G33 X-53.34 Y-26.68 Z0.050 20:56:06.353 : G33 X-53.34 Y-0.01 Z0.081 20:56:06.357 : G33 X-53.34 Y26.65 Z-0.006 20:56:06.357 : G33 X-53.34 Y53.31 Z0.000 20:56:06.361 : G33 X-53.34 Y79.97 Z-0.106 20:56:06.361 : G33 X-26.68 Y-80.00 Z-0.200 20:56:06.365 : G33 X-26.68 Y-53.34 Z0.025 20:56:06.369 : G33 X-26.68 Y-26.68 Z-0.031 20:56:06.369 : G33 X-26.68 Y-0.01 Z-0.038 20:56:06.373 : G33 X-26.68 Y26.65 Z-0.056 20:56:06.373 : G33 X-26.68 Y53.31 Z0.056 20:56:06.377 : G33 X-26.68 Y79.97 Z0.025 20:56:06.377 : G33 X-0.01 Y-80.00 Z-0.075 20:56:06.381 : G33 X-0.01 Y-53.34 Z0.100 20:56:06.385 : G33 X-0.01 Y-26.68 Z0.056 20:56:06.385 : G33 X-0.01 Y-0.01 Z0.069 20:56:06.390 : G33 X-0.01 Y26.65 Z0.044 20:56:06.390 : G33 X-0.01 Y53.31 Z0.075 20:56:06.394 : G33 X-0.01 Y79.97 Z-0.044 20:56:06.394 : G33 X26.65 Y-80.00 Z-0.063 20:56:06.398 : G33 X26.65 Y-53.34 Z0.125 20:56:06.398 : G33 X26.65 Y-26.68 Z0.100 20:56:06.402 : G33 X26.65 Y-0.01 Z0.169 20:56:06.406 : G33 X26.65 Y26.65 Z0.150 20:56:06.406 : G33 X26.65 Y53.31 Z0.113 20:56:06.410 : G33 X26.65 Y79.97 Z0.000 20:56:06.410 : G33 X53.31 Y-80.00 Z-0.175 20:56:06.414 : G33 X53.31 Y-53.34 Z-0.006 20:56:06.414 : G33 X53.31 Y-26.68 Z0.031 20:56:06.418 : G33 X53.31 Y-0.01 Z0.094 20:56:06.422 : G33 X53.31 Y26.65 Z0.113 20:56:06.422 : G33 X53.31 Y53.31 Z0.137 20:56:06.426 : G33 X53.31 Y79.97 Z0.063 20:56:06.426 : G33 X79.97 Y-80.00 Z-0.244 20:56:06.430 : G33 X79.97 Y-53.34 Z-0.125 20:56:06.430 : G33 X79.97 Y-26.68 Z-0.044 20:56:06.434 : G33 X79.97 Y-0.01 Z0.019 20:56:06.434 : G33 X79.97 Y26.65 Z0.038 20:56:06.438 : G33 X79.97 Y53.31 Z0.100 20:56:06.442 : G33 X79.97 Y79.97 Z0.144 20:56:06.442 : Z correction enabled

Bed height map measurement after G33 :

X: -80.00 -53.33 -26.67 0.00 26.67 53.33 80.00 y: 80.00 15.15 15.11 14.97 15.03 14.99 14.94 14.94 y: 53.33 15.12 15.03 15.01 14.97 14.92 14.86 14.91 y: 26.67 15.08 14.95 15.08 14.96 14.86 14.89 14.96 y: 0.00 14.88 14.97 15.08 14.96 14.84 14.92 15.00 y: -26.67 14.71 14.96 15.05 14.95 14.91 14.99 15.06 y: -53.33 14.76 15.03 15.06 14.98 14.93 15.06 15.13 y: -80.00 14.77 15.18 15.24 15.10 15.08 15.19 15.24

repetier commented 4 years ago

Guess you should set 100% correction over full height with these values. Then you should also see some improvement in host bed map. Not greatest solution but I think that gives best result in the end. But you need to test.

Only other thing is testing 1.0.4dev if that behaves better as I know at least in 1.0.3 was a bug causing the z go up a bit on every probe which also adds an error component. Not sure when that was added as it worked great. Might also depend on some conditions explaining why no body noticed it.

mj996 commented 4 years ago

Guess you should set 100% correction over full height with these values

Do you mean change the value of #define DISTORTION_START_DEGRADE 0.5 to 1 ?

Only other thing is testing 1.0.4dev if that behaves better

I'm currently using 1.0.4 dev version

I printed a test model to see how level is bed currently and here is the result :

https://www.dropbox.com/s/0v0dn6tihhkv5x3/IMG_1049.jpg?dl=0

I think the nozzle is too close to bed in the spots which I marked them or is it a slicer problem? If the problem is with the bed level is there any other correcting parameter I can work with to improve the level of the bed rather than the tower angles ?

repetier commented 4 years ago

Do you mean change the value of #define DISTORTION_START_DEGRADE 0.5 to 1 ? Your printer looks higher then 1mm, so more 200 or 300. Also

define DISTORTION_END_HEIGHT 1

must be higher then DISTORTION_START_DEGRADE!

None is a slicer problem. Also it is good in your case to have a high first layer height in slicer like 0.3 regardless of what other layer height is. That helps with your problem.

Image is hard to read. Some look like being too close some like there is no adhesion.

Note that the distortion correction is only good inside the +/-80x80 square. Outside you get correction extrapolated and that can get worse the more you go outwards. Therefore the measured area should be as big as your printer allows with using the extrapolate corner feature activated so you can even go a bit more outwards here.

Once you have increased DISTORTION_START_DEGRADE you should use a block and more Z up so the block just fits below nozzle. Move then xy around and you see where it gets stuck or has more play. These are also the areas where first layer gets problems.

mj996 commented 4 years ago

Do you mean change the value of #define DISTORTION_START_DEGRADE 0.5 to 1 ? Your printer looks higher then 1mm, so more 200 or 300. Also

define DISTORTION_END_HEIGHT 1

must be higher then DISTORTION_START_DEGRADE!

None is a slicer problem. Also it is good in your case to have a high first layer height in slicer like 0.3 regardless of what other layer height is. That helps with your problem.

Image is hard to read. Some look like being too close some like there is no adhesion.

Note that the distortion correction is only good inside the +/-80x80 square. Outside you get correction extrapolated and that can get worse the more you go outwards. Therefore the measured area should be as big as your printer allows with using the extrapolate corner feature activated so you can even go a bit more outwards here.

Once you have increased DISTORTION_START_DEGRADE you should use a block and more Z up so the block just fits below nozzle. Move then xy around and you see where it gets stuck or has more play. These are also the areas where first layer gets problems.

Ok I think I found the cause of the remaining error in leveling the bed. I measured the distance between joints on carriages and effector and they weren't the same. I've read somewhere that there is no need for all three sets of arms distance to be equal but the distance between joints on carriages and effector should be the same on each set ( with less than 0.1 mm error) So here are the distances in each set : carriage effector 86.30 87.28 86.38 87.66 86.10 87.56

Do you agree with this ?

repetier commented 4 years ago

Each pair must be of identical length or your effector will rotate adding extra errors, whcih you do not want. Different pairs can have different length but you need to set one of them as diagonal length and for the other 2 add a correction of the length so internal computation is done with correct length.

mj996 commented 4 years ago

Each pair must be of identical length or your effector will rotate adding extra errors, whcih you do not want. Different pairs can have different length but you need to set one of them as diagonal length and for the other 2 add a correction of the length so internal computation is done with correct length.

The length of all pairs are the same .I built them with a jig. I'm talking about the distance between two magnetic balls on the effector and the distance between two magnetic balls on carriage.These two distances on a pair are not equal.

repetier commented 4 years ago

The length of all pairs are the same .I built them with a jig. I'm talking about the distance between two magnetic balls on the effector and the distance between two magnetic balls on carriage.These two distances on a pair are not equal.

Ok. These must be identical per pair or effector might rotate a bit causing distances in x,y and z to change. But that is with all parts in a delta. Which is why it is so hard to make it move exactly on a flat bed. Every differnce between theory and real printer causes some shifts here and there.

mj996 commented 4 years ago

The length of all pairs are the same .I built them with a jig. I'm talking about the distance between two magnetic balls on the effector and the distance between two magnetic balls on carriage.These two distances on a pair are not equal.

Ok. These must be identical per pair or effector might rotate a bit causing distances in x,y and z to change. But that is with all parts in a delta. Which is why it is so hard to make it move exactly on a flat bed. Every differnce between theory and real printer causes some shifts here and there.

Ok after several hours spending on leveling the bed manually and adjusting the angles of towers I could get a fairly leveled bed yesterday.I even printed some tests which had good results but when I turned on my printer this morning to print some other tests the bed was not level anymore !! I'm really shocked ! I have the same setting in EEPROM and I didn't change anything in printer from last night to this morning.

repetier commented 4 years ago

Did you store leveling with G32 S2? Without S2 the calibration data is not copied to eeprom. The setting of your angles/length should of course be still in eeprom unless you have reset them to configuration defaults.

mj996 commented 4 years ago

Did you store leveling with G32 S2? Without S2 the calibration data is not copied to eeprom. The setting of your angles/length should of course be still in eeprom unless you have reset them to configuration defaults.

I didn't use Z-probe at all.I calibrated the bed manually by changing the values in eeprom. I thought when I'm calibrating manually I shouldn't use G32 S2.Should I ? I didn't reset eeprom values to configuration defaults.

repetier commented 4 years ago

These are 2 different operations. G32 S2 corrects bed rotation against your delta in case it is not 100% perpendicular to the z axis of your delta.

The eeprom values correct geometric imprecisions of delta geometry that lead to the head moving up/down where it should move as a flat plane.

So eeprom is to make the swings on the bed disappear, but for the overall rotation correction you use G32 S2. Hope you understand the difference.

mj996 commented 4 years ago

These are 2 different operations. G32 S2 corrects bed rotation against your delta in case it is not 100% perpendicular to the z axis of your delta.

The eeprom values correct geometric imprecisions of delta geometry that lead to the head moving up/down where it should move as a flat plane.

So eeprom is to make the swings on the bed disappear, but for the overall rotation correction you use G32 S2. Hope you understand the difference.

I know what are you talking about. The problem is that when I don't use auto leveling at all ( I disappointed from the whole auto leveling process and put it away and decided to calibrate manually)and I leveled the bed just by changing ROD RADIUS , TOWER ANGLES , Z-HEIGHT and ENDSTOPS OFFSETS in eeprom , The bed shouldn't go out of level each time I turn off and turn on the printer but it does.

PS : I used EEPROM editor in the host to change the values last night for manual calibrating and I didn't use M502 or M500 at all this morning.

mj996 commented 4 years ago

Even now when I adjust the Z height with a paper in the center and turn the printer off I feel different tension on the paper next time I turn on the printer and bring the nozzle to Z0

repetier commented 4 years ago

G28 G1 Z0

should always feel the same. If not the homing of z differs a bit meaning the z endstops react differently.

What are your steps per mm? Homing can always vary 1-2 steps with high resolution even more. Question is what this is in mm and means in your case. 2 steps with 80steps per mm are 0,025mm - should not make so much difference but you can easily test going up/down 0,01mm a few times and see how much the paper force changes by this.

One big difference might be if nozzle/bed are hot or not. With ooze it feels also different every time. And hot extruder/bed can change shape a bit, e.g. extend the nozzle or warp a bed. So also compare under same conditions.

mj996 commented 4 years ago

What are your steps per mm?

My steps per mm is 160. so there should be about 0.0125 mm difference after each homing,but today there was 0.25 mm difference from last night.and I leveled the bed when the bed and nozzle were cold and it was also fine when the bed and nozzle were hot,so i believe it isn't a deforming problem.

If not the homing of z differs a bit meaning the z endstops react differently.

So after each homing there should be a difference,but it just changes when I turn the printer off not after each homing.

repetier commented 4 years ago

When it works without power off the precision should be ok.

The only thing you loose with power off are settings from G32 without S2. So if you did not run this between power cycles I see no reason why that should differ. But also not that changing eeprom values requires rehoming to see the result!

mj996 commented 4 years ago

When it works without power off the precision should be ok.

The only thing you loose with power off are settings from G32 without S2. So if you did not run this between power cycles I see no reason why that should differ. But also not that changing eeprom values requires rehoming to see the result!

That's really strange to me either.The point is that if it was only a bit difference in Z-height I must have a higher or lower Z0 over all parts of the bed and then I could fix this just by adjusting the Z height but it's not just that.After each power cycle I have diffderent heights in different parts of the bed and It's like I haven't level the bed before at all and I should start adjusting all of the values (e.g ROD RADIUS , TOWER ANGLES ) again from beginning !

mj996 commented 4 years ago

Sometimes when I connect to the host I see a message which says something like your Jerk is too low , changed the value to ........( I don't remember the number ).Can this jerk thing be the cause of the problem? My Jerk settings in config file :

define MAX_JERK 5

define MAX_ZJERK 0.3

My current jerk setting in eeprom editor (Host) : Max.jerk : 12.211 mm/s

repetier commented 4 years ago

You need MAX_JERK 12.3 as minimum value. The message just tells you it was modified compared to your value. Setting it to 12.3 will make the message disappear.

What is your value for ENDSTOP_Z_BACK_ON_HOME? It should be something like 20 or higher to get you away from end stops at the beginning.

Also set ALWAYS_CHECK_ENDSTOPS 0 so no crosstalk to end stops stops move in between.

These can sometimes cause unexpected positions, so better be safe as long as you do not know what is causing the problem. But what you describe happens when homing position at top differs. In that case the bed orientation also differs. But why should it differ after a reset when you do not change anything in between.

mj996 commented 4 years ago

You need MAX_JERK 12.3 as minimum value. The message just tells you it was modified compared to your value. Setting it to 12.3 will make the message disappear.

What is your value for ENDSTOP_Z_BACK_ON_HOME? It should be something like 20 or higher to get you away from end stops at the beginning.

Also set ALWAYS_CHECK_ENDSTOPS 0 so no crosstalk to end stops stops move in between.

These can sometimes cause unexpected positions, so better be safe as long as you do not know what is causing the problem. But what you describe happens when homing position at top differs. In that case the bed orientation also differs. But why should it differ after a reset when you do not change anything in between.

Update : I found out there are two problems in my printer : 1- The ''different Z-heights after each power cycle'' problem was actually a heating problem. I read your suggestions carefully and found out each time that I want to level the bed it should be in the same bed temperature conditions .If I level the bed when it's cold I'll have different results for printing when the bed is hot.

2- My bed gets so hot and the temperature that the thermistor read is too low compared to actual temperature of the bed So for each print the bed goes near 80 degrees but the thermistor says it's 50 degrees.So this too much heat makes some changes in aluminum bed shape and when I turn the printer off the bed gets cold and it deforms again.

Another issue : I watched your delta printer Auto leveling video .You bring your sliders down and put a rod between them and the bottom and with m132 s1 you set the correct offsets. I have a question about this part : In my case I already have some offsets for endstops from the time I manually calibrated the printer to reach to Nice geometry parameters.So now if I want to do it like your video should I set the current offsets to ZERO and then command m321 s1? Maybe I couldn't have a nice autoleveling before because I always used to ignore this part of your video or I did it wrong('endstop offset calibration part' , m321 s1)

PS : I changed my probe with a pressure sesnor and now I have 0.3mm difference between highest and lowest point of the bed.I tried G32 S2 for a couple of times but I couldn't get lower than 0.3mm difference.

mj996 commented 4 years ago

hello

You need MAX_JERK 12.3 as minimum value. The message just tells you it was modified compared to your value. Setting it to 12.3 will make the message disappear.

What is your value for ENDSTOP_Z_BACK_ON_HOME? It should be something like 20 or higher to get you away from end stops at the beginning.

Also set ALWAYS_CHECK_ENDSTOPS 0 so no crosstalk to end stops stops move in between.

These can sometimes cause unexpected positions, so better be safe as long as you do not know what is causing the problem. But what you describe happens when homing position at top differs. In that case the bed orientation also differs. But why should it differ after a reset when you do not change anything in between.

Hello again There's a problem with the speed of printing. when I try to print an object in vase mode there is no matter what I define the speed (any of outer/inner perimeter ,skin or print speed) the printer prints that single layer of vase with a super slow speed and the point is that the speed of first layer and infill is ok (matches to what I define for them in slicer) and just when it comes to printing the walls (single layer of vase) it prints too slow and it doesn't match to what I define for it in slicer and finally my nozzle clogs because of the super slow movement of the nozzle.

The things I tried :

Totally the printer prints solid objects with normal speeds and the problem is just with printing objects that are in a shape of a Vase.

repetier commented 4 years ago

Not really a firmware problem. The problem is i think the layer time. In filament cooling definition you can define minimum layer time and simple vase mode can be much faster. To solve it slicer then reduces the print speed to one turn is the minimum layer time. See generated gcode which speed is defined there and I guess you see it is a lower speed then what you wanted. So it is just the slicer telling to move slower.

mj996 commented 4 years ago

Not really a firmware problem. The problem is i think the layer time. In filament cooling definition you can define minimum layer time and simple vase mode can be much faster. To solve it slicer then reduces the print speed to one turn is the minimum layer time. See generated gcode which speed is defined there and I guess you see it is a lower speed then what you wanted. So it is just the slicer telling to move slower.

You were right. I lowered layer time value is slicer and the the speed problem is gone but I still have problem in printing small objects. I want to print a 5mm diameter cylinder (with 3 mm dia hole inside).When it came to print the skin of cylinder,nozzle jammed and it was just moving in the air. I tried to lower all of the speed values to 20mm/s but it didn't solve anything! That much speed reduction just lowered the print time for 2 seconds !I don't know is it normal !

PS : There's no matter if I put the layer time on the default value(5) or lower it and put the fan on the highest output rate.In both cases the the nozzle clogs.

AbsoluteCatalyst commented 4 years ago

I haven't gone through this entire thread, but for your last post:

That sounds like a common problem people run into with extremely small sized gcode extrusion amounts. Do you have relative extrusion enabled in your slicer settings by any chance? If you do, turn it off and try printing again.

Your extruder might just not be extruding/moving at all if your gcode file has very tiny E values like "G1 E0.000000023 F100" etc. At a 5mm print, I can see that happening to a 1.8 degree stepper extruder @ 16-microsteps; especially if you have relative extrusion amounts on.

RAyWB commented 4 years ago

another possibility for clogging is too high retract distance . Had this issue with e3d V6 plagiate and PLA filament especially on thin layers and small nozzles(<0.4). for me a retract distance of maximum 5mm works on 1m Bowden setup (guess you have bowden on a delta)

and i also fully agree with AbsoluteCatalyst

mj996 commented 4 years ago

That sounds like a common problem people run into with extremely small sized gcode extrusion amounts. Do you have relative extrusion enabled in your slicer settings by any chance? If you do, turn it off and try printing again.

Thanks for the reply. There's no such a thing called''relative extrusion'' in the slicer i use (I'm using cura engine in repetier host).

Your extruder might just not be extruding/moving at all if your gcode file has very tiny E values like "G1 E0.000000023 F100" etc.

I checked the G-code file ,the smallest extrusion value is >0.01

AbsoluteCatalyst commented 4 years ago

Then it may most likely be as RAyWB suggested. Retraction might be a little too high for those small dimensions

mj996 commented 4 years ago

Had this issue with e3d V6 plagiate and PLA filament especially on thin layers and small nozzles(<0.4).

Thanks for the reply RAyWB. I'm using E3D V6 and 0.4 nozzle. The thing that I'm trying to print is like a 3mm dia spacer.I don't see any retraction in printing such a thing.

for me a retract distance of maximum 5mm works on 1m Bowden setup (guess you have bowden on a delta)

My retraction distance value is 4 mm for a 60-70 cm bowden tube

mj996 commented 4 years ago

Then it may most likely be as RAyWB suggested. Retraction might be a little too high for those small dimensions

Thanks by the way. I'll try to print the thing with 2 copies beside it.Maybe giving a time to layers to cool down will fix the problem and I think I should consider the retraction distance for this case.The 4 mm value is a bit high for it.

RAyWB commented 4 years ago

on my main printer i changed to the lite Version of V6 . it´s easy to swap by changing heatbreak only. in this version the ptfe liner goes down to the nozzle so theres no chance for clogging. from my experience it does the trick and there is not that critical retraction distance. (works for 1.75mm filament only)

mj996 commented 4 years ago

on my main printer i changed to the lite Version of V6 . it´s easy to swap by changing heatbreak only. in this version the ptfe liner goes down to the nozzle so theres no chance for clogging. from my experience it does the trick and there is not that critical retraction distance. (works for 1.75mm filament only)

Ok,I'll give it a try. But I think to print such tiny objects I should do some changes somewhere in slicer. Today I printed a test cube. There were some uniform horizontal lines on the walls of the cube.

https://imgur.com/5u6Yf3n

Is it a kind of over extrusion? My extrusion multiplier value is 100.

The other thing is that when I slice something with Prusa slicer it will print the first layer just fine even better than cura engine (with same first layer height, layer height, speed of first layer values) but the problem with this slicer is that when it comes to print the second layer the nozzle clogs after printing few lines. I read in some threads that it can be the fans or the speed issue. I turned off the cooling fans and also Played with the speed values but the problem was still there.

RAyWB commented 4 years ago

on a cartesian system i would guess on a loose belt , pulley or coupler... but as I´m not familiar with deltas i have to pass. sorry

mj996 commented 4 years ago

on a cartesian system i would guess on a loose belt , pulley or coupler... but as I´m not familiar with deltas i have to pass. sorry

So you think that it's a mechanical problem? Is there a possibility that it comes from the temperature?

RAyWB commented 4 years ago

as said , on a cartesian system i would guess on mechanical issues as it seems to be repeated. don´t think it depends on temperature

mj996 commented 4 years ago

Not really a firmware problem. The problem is i think the layer time. In filament cooling definition you can define minimum layer time and simple vase mode can be much faster. To solve it slicer then reduces the print speed to one turn is the minimum layer time. See generated gcode which speed is defined there and I guess you see it is a lower speed then what you wanted. So it is just the slicer telling to move slower.

Hi, I'm using SD card as EEPROM on RADDS.I always use eeprom configuration on repetier host to change the values.Anyway I wanted to pick a file from my sd card so I removed the card from board , picked my file and then re-inserted the card into the board (while the printer was off) but when I turned on the printer my EEPROM settings were gone !!!! The shown values on eeprom configuration (repetier host) were those which I uploaded from Arduino IDE some months ago !!! Does that mean that I lost my settings?? :((

repetier commented 4 years ago

If you have no backup of the eeprom file they yes they are gone.

mj996 commented 4 years ago

If you have no backup of the eeprom file they yes they are gone.

A binary file called EEPROM is available on that SD CARD.Isn't it a backup?