Prusa-Firmware/Firmware
TheZeroBeast cc7b252424
PINDA2 Offset Tuning. Safety features setup
As per the below investigation I have tuned and tested a more robust PINDA2 Offset Calibration.


PINDA2 Investigation

Test #2 (20th Jan 2018)
Moved PINDA2 Thermistor Cal to bed centre
Moved it closer to bed from 150um to 50um
bumped bed up 5C each cycle as it wasn’t heating PINDA2 to temp at current settings

Results from a cool of 35C start

Recv: D8 - Read/Write PINDA
Recv: cal_status=1
Recv: temp_pinda=35C temp_shift=0um
Recv: temp_pinda=40C temp_shift=0um
Recv: temp_pinda=45C temp_shift=30um
Recv: temp_pinda=50C temp_shift=105um
Recv: temp_pinda=55C temp_shift=187um
Recv: temp_pinda=60C temp_shift=350um

Test #3 (21st Jan 2018)
Moved PINDA2 Thermistor Cal to bed centre with measure in default firmware position.
Moved it closer to bed from 150um to 50um
bumped bed up 5C each cycle as it wasn’t heating PINDA2 to temp at current settings and toped at 115 for bed temp
Enabled 255 hotend for test
Made test points [30, 37, 44, 51, 58, 65]

Results from a cool of 30C start

Recv: D8 - Read/Write PINDA
Recv: cal_status=1
Recv: temp_pinda=30C temp_shift=0um
Recv: temp_pinda=37C temp_shift=0um
Recv: temp_pinda=44C temp_shift=60um
Recv: temp_pinda=51C temp_shift=170um
Recv: temp_pinda=58C temp_shift=337um
Recv: temp_pinda=65C temp_shift=645um

Test #4 (21st Jan 2018)
Moved PINDA2 Thermistor Cal to bed centre (for all but first probe by mistake) with measure in default firmware position.
Moved it closer to bed from 150um to 100um
bumped bed up 5C each cycle as it wasn’t heating PINDA2 to temp at current settings and toped at 115 for bed temp
Enabled 255 hotend for test
Made test points [35, 42, 49, 56, 63, 70]
Modified the start skipping code to pickup at additional first point that was being missed

Results from a cool of 33C start

Recv: D8 - Read/Write PINDA
Recv: cal_status=1
Recv: temp_pinda=35C temp_shift=0um
Recv: temp_pinda=42C temp_shift=0um
Recv: temp_pinda=49C temp_shift=97um
Recv: temp_pinda=56C temp_shift=215um
Recv: temp_pinda=63C temp_shift=487um
Recv: temp_pinda=70C temp_shift=815umTest #5 (21st Jan 2018)
Moved PINDA2 Thermistor probe to bed centre
Moved it closer to bed from 150um to 100um
bumped bed up 5C each cycle as it wasn’t heating PINDA2 to temp at current settings and toped at 115 for bed temp
Enabled 255 hotend for test
Made test points [35, 42, 49, 56, 63, 70]
Modified the start skipping code to pickup at additional first point that was being missed

Results from a cool of 32C start

Recv: D8 - Read/Write PINDA
Recv: cal_status=1
Recv: temp_pinda=35C temp_shift=0um
Recv: temp_pinda=42C temp_shift=32753um   WTF?? Actual when probed was -30um
Recv: temp_pinda=49C temp_shift=82um
Recv: temp_pinda=56C temp_shift=200um
Recv: temp_pinda=63C temp_shift=450um
Recv: temp_pinda=70C temp_shift=835um

Send: G75
Recv: 35  0um
Recv: 36  0um
Recv: 37  0um
Recv: 38  0um
Recv: 39  0um
Recv: 40  0um
Recv: 41  0um
Recv: 42  0um
Recv: 43  0um
Recv: 44  4um
Recv: 45  18um
Recv: 46  33um
Recv: 47  50um
Recv: 48  66um
Recv: 49  82um
Recv: 50  97um
Recv: 51  111um
Recv: 52  126um
Recv: 53  141um
Recv: 54  158um
Recv: 55  178um
Recv: 56  200um
Recv: 57  225um
Recv: 58  254um
Recv: 59  286um
Recv: 60  322um
Recv: 61  361um
Recv: 62  404um
Recv: 63  450um
Recv: 64  498um
Recv: 65  550um
Recv: 66  604um
Recv: 67  660um
Recv: 68  718um
Recv: 69  776um
Recv: 70  835um
Recv: 71  893um
Recv: 72  951um
Recv: 73  1009um
Recv: 74  1065um
Recv: 75  1119um
Recv: 76  1171um
Recv: 77  1220um
Recv: 78  1265um
Recv: 79  1307um
Recv: 80  1345um
Recv: ok

Test #6 (21st Jan 2018)
Moved PINDA2 Thermistor probe to bed centre
Moved it closer to bed from 150um to 100um
bumped bed up 5C each cycle as it wasn’t heating PINDA2 to temp at current settings and toped at 115 for bed temp
Enabled 255 hotend for test
Made test points [35, 42, 49, 56, 63, 70]
Modified the start skipping code to pickup at additional first point that was being missed
Hard limits of 0 - 1.5mm offset return in temp_comp_interpolation()

Results from a cool of 34C start

Recv: D8 - Read/Write PINDA
Recv: cal_status=1
Recv: temp_pinda=35C temp_shift=0um
Recv: temp_pinda=42C temp_shift=32753um   WTF?? Actual when probed was -30um
Recv: temp_pinda=49C temp_shift=82um
Recv: temp_pinda=56C temp_shift=200um
Recv: temp_pinda=63C temp_shift=450um
Recv: temp_pinda=70C temp_shift=835um

Test #7 (21st Jan 2018)
Moved PINDA2 Thermistor probe to bed centre
Moved it closer to bed from 150um to 100um
bumped bed up 5C each cycle as it wasn’t heating PINDA2 to temp at current settings and toped at 115 for bed temp
Enabled 255 hotend for test
Made test points [35, 42, 49, 56, 63, 70]
Modified the start skipping code to pickup at additional first point that was being missed
Hard limits of 0 - 1.5mm offset return in temp_comp_interpolation()
Limit probe readings to be positive to prevent float error as in last test at 42C

Results from a cool of 34C start

Recv: D8 - Read/Write PINDA
Recv: cal_status=1
Recv: temp_pinda=35C temp_shift=0um
Recv: temp_pinda=42C temp_shift=0um
Recv: temp_pinda=49C temp_shift=10um
Recv: temp_pinda=56C temp_shift=112um
Recv: temp_pinda=63C temp_shift=355um
Recv: temp_pinda=70C temp_shift=717um
Test #8 21st Jan 2018
Moved it closer to bed from 150um to 100um
bumped bed up 5C each cycle as it wasn’t heating PINDA2 to temp at current settings and toped at 115 for bed temp
Enabled 255 hotend for test but only for the last two probe times to ensure temp is reached
Made test points [35, 42, 49, 56, 63, 70]
Modified the start skipping code to pickup at additional first point that was being missed
Hard limits of 0 - 1.5mm offset return in temp_comp_interpolation()
Limit probe readings to be positive to prevent float errors as in previous tests

Recv: D8 - Read/Write PINDA
Recv: cal_status=1
Recv: temp_pinda=35C temp_shift=0um
Recv: temp_pinda=42C temp_shift=10um
Recv: temp_pinda=49C temp_shift=62um
Recv: temp_pinda=56C temp_shift=160um
Recv: temp_pinda=63C temp_shift=402um
Recv: temp_pinda=70C temp_shift=710um
2018-01-21 20:11:12 +10:00
..
variants Removed SG software homming 2017-12-15 14:10:20 +01:00
BlinkM.cpp Build 109 2017-11-16 22:03:36 +01:00
BlinkM.h Build 109 2017-11-16 22:03:36 +01:00
Configuration.h PINDA2 Offset Tuning. Safety features setup 2018-01-21 20:11:12 +10:00
ConfigurationStore.cpp build 146 2018-01-14 23:59:43 +01:00
ConfigurationStore.h fan check can be turned off from support menu, saving parameters to eeprom with offset and different levels, fan kickstart,2nd heatbed version, fans check modified 2017-09-21 15:20:02 +02:00
Configuration_adv.h Missing serial characters debuging 2018-01-02 20:55:33 +01:00
Configuration_prusa.h PINDA2 Offset Tuning. Safety features setup 2018-01-21 20:11:12 +10:00
DOGMbitmaps.h 3.0.6 sync 2016-08-11 10:42:53 +02:00
Dcodes.cpp PINDA2 Offset Tuning. Safety features setup 2018-01-21 20:11:12 +10:00
Dcodes.h new module adc (analog2digital) 2017-12-20 13:42:20 +01:00
Firmware.ino opravene nezadouci resetovani watchdogem 2017-11-27 14:43:56 +01:00
Firmware.ino.rambo.hex PINDA2 Offset Tuning. Safety features setup 2018-01-21 20:11:12 +10:00
Firmware.sublime-project 3.0.6 sync 2016-08-11 10:42:53 +02:00
LiquidCrystal.cpp Print class printf function (experimental, disabled by default) 2017-11-20 20:09:54 +01:00
LiquidCrystal.h Print class printf function (experimental, disabled by default) 2017-11-20 20:09:54 +01:00
Marlin.h Missed a bit with the last commit. 2018-01-12 22:01:53 +01:00
MarlinSerial.cpp removed duplicit comment 2018-01-14 19:36:30 +01:00
MarlinSerial.h Missing serial characters debuging 2018-01-02 20:55:33 +01:00
Marlin_main.cpp PINDA2 Offset Tuning. Safety features setup 2018-01-21 20:11:12 +10:00
Sd2Card.cpp 3.0.12-RC2 sync 2017-06-29 18:35:43 +02:00
Sd2Card.h 3.0.12-RC2 sync 2017-06-29 18:35:43 +02:00
Sd2PinMap.h 3.0.12-RC2 sync 2017-06-29 18:35:43 +02:00
SdBaseFile.cpp first working version 2017-11-27 06:20:51 +01:00
SdBaseFile.h 3.0.12-RC2 sync 2017-06-29 18:35:43 +02:00
SdFatConfig.h 3.0.6 sync 2016-08-11 10:42:53 +02:00
SdFatStructs.h 3.0.6 sync 2016-08-11 10:42:53 +02:00
SdFatUtil.cpp 3.0.10 sync 2017-03-24 19:47:50 +01:00
SdFatUtil.h 3.0.12-RC2 sync 2017-06-29 18:35:43 +02:00
SdFile.cpp 3.0.12-RC2 sync 2017-06-29 18:35:43 +02:00
SdFile.h 3.0.6 sync 2016-08-11 10:42:53 +02:00
SdInfo.h 3.0.12-RC2 sync 2017-06-29 18:35:43 +02:00
SdVolume.cpp 3.0.12-RC2 sync 2017-06-29 18:35:43 +02:00
SdVolume.h 3.0.6 sync 2016-08-11 10:42:53 +02:00
Servo.cpp 3.0.6 sync 2016-08-11 10:42:53 +02:00
Servo.h 3.0.6 sync 2016-08-11 10:42:53 +02:00
adc.c Removed debug messages from serial comunication (octoprint...). 2017-12-27 20:29:24 +01:00
adc.h new module adc (analog2digital) 2017-12-20 13:42:20 +01:00
boards.h EINY -> EINSY 2017-11-27 18:47:48 +01:00
cardreader.cpp whitespace 2017-12-18 19:17:39 +01:00
cardreader.h First working version 2017-12-11 11:30:49 +01:00
cmdqueue.cpp flush rx buffer in case that it was full 2018-01-15 12:18:21 +01:00
cmdqueue.h initial version - messages missing (will not compile) 2017-11-07 16:49:04 +01:00
config.h new module adc (analog2digital) 2017-12-20 13:42:20 +01:00
digipot_mcp4451.cpp 3.0.6 sync 2016-08-11 10:42:53 +02:00
dogm_font_data_marlin.h 3.0.6 sync 2016-08-11 10:42:53 +02:00
dogm_lcd_implementation.h 3.0.6 sync 2016-08-11 10:42:53 +02:00
fastio.h WRITE_NC macro for non-critical (non-synchronized) access to 2018-01-12 20:15:59 +01:00
fsensor.cpp fixed bug - fsensor synchronization (b146) 2018-01-15 15:23:06 +01:00
fsensor.h Wizard: dont ask if color is clear and dont use automatic filament load; multiscreen messages update 2017-12-20 13:33:45 +01:00
langtool.php 3.0.6 sync 2016-08-11 10:42:53 +02:00
langtool.pl merging from dev/MK3 2017-12-02 21:56:39 +01:00
language.h 3.0.6 sync 2016-08-11 10:42:53 +02:00
language_all.cpp initial message for debugging fw version 2018-01-17 16:00:19 +01:00
language_all.h initial message for debugging fw version 2018-01-17 16:00:19 +01:00
language_common.h 3.0.6 sync 2016-08-11 10:42:53 +02:00
language_cz.h initial message for debugging fw version 2018-01-17 16:00:19 +01:00
language_de.h basic language corrections 2017-11-21 14:44:07 +01:00
language_en.h initial message for debugging fw version 2018-01-17 16:00:19 +01:00
language_es.h basic language corrections 2017-11-21 14:44:07 +01:00
language_it.h basic language corrections 2017-11-21 14:44:07 +01:00
language_pl.h basic language corrections 2017-11-21 14:44:07 +01:00
le.sh 3.0.12-RC2 sync 2017-06-29 18:35:43 +02:00
mesh_bed_calibration.cpp Removed debug messages from serial comunication (octoprint...). 2017-12-27 20:29:24 +01:00
mesh_bed_calibration.h Fixed homing (mbl and babystep - crashdetection recovery work fine now). 2017-09-23 16:35:01 +02:00
mesh_bed_leveling.cpp 3.0.6 sync 2016-08-11 10:42:53 +02:00
mesh_bed_leveling.h 3.0.6 sync 2016-08-11 10:42:53 +02:00
motion_control.cpp 3.0.6 sync 2016-08-11 10:42:53 +02:00
motion_control.h 3.0.6 sync 2016-08-11 10:42:53 +02:00
pat9125.cpp bugfix - Filament sensor enable from menu 2017-11-29 00:15:45 +01:00
pat9125.h PAT9125 - sampled only Y value, new debug code D9125. 2017-10-24 19:45:15 +02:00
pins.h PAT9125 I2C, hardware SG homing 2017-08-17 15:23:34 +02:00
pins_Einy_0_3.h PINDA thermistor and ambient thermistor. 2017-09-05 14:02:35 +02:00
pins_Einy_0_4.h Definition of 8 pins on the Einsy 0.4 board connected to pin headers 2018-01-12 20:18:20 +01:00
pins_Rambo.h PAT9125 I2C, hardware SG homing 2017-08-17 15:23:34 +02:00
pins_Rambo_1_0.h PAT9125 I2C, hardware SG homing 2017-08-17 15:23:34 +02:00
pins_Rambo_1_3.h PAT9125 I2C, hardware SG homing 2017-08-17 15:23:34 +02:00
planner.cpp build 146 2018-01-14 23:59:43 +01:00
planner.h Fix of a power panic print stop. 2017-09-21 17:50:39 +02:00
qr_solve.cpp 3.0.6 sync 2016-08-11 10:42:53 +02:00
qr_solve.h 3.0.6 sync 2016-08-11 10:42:53 +02:00
speed_lookuptable.h 3.0.6 sync 2016-08-11 10:42:53 +02:00
stepper.cpp Slight optimization of the stepper timer routine. 2018-01-12 21:01:01 +01:00
stepper.h fan check can be turned off from support menu, saving parameters to eeprom with offset and different levels, fan kickstart,2nd heatbed version, fans check modified 2017-09-21 15:20:02 +02:00
swi2c.cpp PAT9125 I2C, hardware SG homing 2017-08-17 15:23:34 +02:00
swi2c.h PAT9125 I2C, hardware SG homing 2017-08-17 15:23:34 +02:00
swspi.cpp PAT9125 I2C, hardware SG homing 2017-08-17 15:23:34 +02:00
swspi.h PAT9125 I2C, hardware SG homing 2017-08-17 15:23:34 +02:00
temperature.cpp babystep synchronisation 2018-01-16 01:34:44 +01:00
temperature.h MINTEMP fix 2017-12-23 03:36:08 +01:00
thermistortables.h new ambient thermistor table 2017-12-12 22:49:47 +01:00
tmc2130.cpp crashdetection limits changed (X=48, Y=64) 2018-01-16 17:04:21 +01:00
tmc2130.h Removed SG software homming 2017-12-15 14:10:20 +01:00
ultralcd.cpp Temperature ISR synchronization, M600 - faster unload 2018-01-15 17:29:07 +01:00
ultralcd.h M600 has timeout for nozzle, different procedure for unload 2018-01-15 11:30:28 +01:00
ultralcd_implementation_hitachi_HD44780.h First working version 2017-12-11 11:30:49 +01:00
ultralcd_st7920_u8glib_rrd.h 3.0.6 sync 2016-08-11 10:42:53 +02:00
uni_avr_rpi.h PAT9125 I2C, hardware SG homing 2017-08-17 15:23:34 +02:00
util.cpp development fw versions has initial message for warning 2018-01-11 15:50:26 +01:00
util.h 3.0.12-RC2 sync 2017-06-29 18:35:43 +02:00
vector_3.cpp 3.0.6 sync 2016-08-11 10:42:53 +02:00
vector_3.h 3.0.6 sync 2016-08-11 10:42:53 +02:00
watchdog.cpp 3.0.6 sync 2016-08-11 10:42:53 +02:00
watchdog.h 3.0.6 sync 2016-08-11 10:42:53 +02:00