Commit graph

1464 commits

Author SHA1 Message Date
3d-gussner
466de83ae0 Remove white spaces in messags which saves ~62bytes 2021-04-26 07:22:22 +02:00
3d-gussner
9f77ca31b8 Set MSG_SET_TEMPERATURE chars to c=20
Fix Italian warning shown by `lang-check.py`
2021-04-24 08:19:48 +02:00
Marek Bel
aa45091400
Scale extruder motor current linearly with speed. (#2813)
Scale extruder motor current linearly with speed.

49% less heating when running at low speed and standstill, 4% more torque at maximum extrusion rate (15mm^3/s), 15% more torque in high speed movements (un/retractions).

StealthChop mode is used for low speeds (below 900mm/min)
spreadCycle is used above. Transition speed is well above maximum extrusion rate of 15mm^3/s (275mm/min) so mode transition is not expected to be visible on printed surface.

StealthChop is expected to improve printed surface quality (less artifacts).

Warning you can burn extruder motor if it is not the same impedance as original Prusa i3 Extruder stepper motor. There is no current feedback in low speed so lower impedance motor can be burned by over current.

Even there is no direct current feedback, there is no risk for original motor thermal runaway, as motor resistance increases with temperature, current decreases.

Standstill peak phase current is expected to be 500 mA and linearly increase with speed to 970 mA at 900mm/min where spreadCycle constant current regulation takes over and keeps peak current at 805 mA to maximum speed possible.

As motor heating increases with current squared, lowering low speed current from 700mA to 500mA decreases heating 49% in thate mode, where motor spends most of the time.

Enable E-motor cool mode in farm mode only (and experimental menu) - the experimental menu is visible AND the EEPROM_ECOOL variable has a value of the universal answer to all problems of the universe - i.e. two conditions must be met at the start of the FW to enable the E-cool mode. If the user enables the experimental menu, sets the E-cool mode and disables the menu afterwards, on the next start of the FW the E-cool mode will be DISABLED. This is still subject to discussion how much obscure (security through obscurity) we'd like this option to have .

Additional stuff:
* Add serial debug msg to verify if E-cool mode is on
* Avoid access to E-cool mode switch on machines without TMC2130
* Do not allow only M907 E in case of E-cool mode+warn the user on the serial line that the command was skipped

Co-authored-by: D.R.racer <drracer@drracer.eu>
2021-04-23 16:06:28 +02:00
3d-gussner
c2cde83d7e Fix MSG_SELFTEST_WIRINGERROR to c=18 2021-04-23 13:29:45 +02:00
3d-gussner
032e8a5957 @leptun strip 1st char hack for duplicate Cancel 2021-04-23 13:03:59 +02:00
3d-gussner
28aec049a2 Fix Typo in MSG_FIL_FAILED 2021-04-23 09:41:12 +02:00
3d-gussner
ff9185d1bb Readded >Cancel as the > has some meaning. Sadly the previously 10bytes more free space are gone again 2021-04-23 08:50:50 +02:00
3d-gussner
e18d688b64 Fix merge issues 2021-04-22 20:48:26 +02:00
3d-gussner
681bc560c9 Merge remote-tracking branch 'upstream/MK3_3.10.0' into PFW-1189 2021-04-22 20:43:54 +02:00
DRracer
00ce16ee55
Merge pull request #3121 from wavexx/reduce_m600_min_height
Revert/cleanup mininum extruder height during M600
2021-04-22 11:43:18 +02:00
Yuri D'Elia
8d04316497 Revert/cleanup mininum extruder height during M600
This change restores the minimum extruder height for filament purge
during M600 from the current 50mm back to 27mm from FW 3.9.

We do this by introducing a new option for unload_filament() to indicate
that the unload is part of an automatic swap, and in such cases avoid
raising more than absolutely necessary (this will _also_ come in handy
to avoid the extra purge in PR #2318 during M600).

A new define MIN_Z_FOR_SWAP is introduced for this purpose.
MIN_Z_FOR_UNLOAD is still used for manual lcd unload and for M702 and
hasn't been changed.
2021-04-21 19:07:58 +02:00
Yuri D'Elia
bc355674d9 Fix partial redraw during filament autoload
If the printer was already being pre-heated but didn't reach the target
temperature yet and a new filament is being inserted, the LCD used to
display a "Preheating to load" message to block the loading until the
extruder is hot.

This message is currently missing, and the ">Cancel" option doesn't
display immediately either, depending on the extruder height.

This PR fixes this behavior, which was broken during an earlier update.

We now force-update LCD updates during the first (and _only_) time the
screen is setup, and push all messages _before_ the carriage is
eventually raised, so that ">Cancel" is shown immediately as well.
2021-04-21 16:56:16 +02:00
Alex Voinea
9454f9d8ec Rename w25x20cl to xflash 2021-04-06 10:16:47 +02:00
3d-gussner
3b431bcbc1 Fix output "Y distance from min" by removing ":" so translations can use 20 chars 2021-03-31 08:54:16 +02:00
3d-gussner
d864a5cfdb Define #MSG_PRINTER_IP c=18 2021-03-31 08:46:17 +02:00
3d-gussner
9922774fa7 Cleanup some comments ////c= 2021-03-31 08:11:19 +02:00
3d-gussner
8e74cbce58 Remove r=1 and some minor fixes 2021-03-31 08:07:42 +02:00
3d-gussner
fb691b44b4 Update #MSG_INFO_SENSORS c=18 2021-03-31 07:51:22 +02:00
3d-gussner
3fb90be46f Define #MSG_SELECT c=18 2021-03-31 07:50:18 +02:00
3d-gussner
9a0e67c1d7 Define #MSG_RENAME c=18 2021-03-31 07:43:48 +02:00
3d-gussner
cdfc40fb62 Define #MSG_MODE_CHANGE_IN_PROGRESS c=20 r=3 2021-03-31 07:38:41 +02:00
3d-gussner
268d4020cf Define #MSG_FINDA c=5 and update #MSG_PINDA c=5 2021-03-31 07:32:43 +02:00
3d-gussner
c0b8eef6cd Define #MSG_FALSE_TRIGGERING c=20 2021-03-31 07:29:42 +02:00
3d-gussner
1ca443f1f4 Define #MSG_CHECKS c=18 2021-03-31 07:28:18 +02:00
3d-gussner
5e049283be Define #MSG_UNKNOWN c=13 2021-03-31 07:24:41 +02:00
3d-gussner
982153fee1 Define and update #MSG_PRINT_TIME c=19, #MSG_FILAMENT_USED c=19, #MSG_TOTAL_FILAMENT c=19, #MSG_TOTAL_PRINT_TIME c=19 2021-03-31 07:16:36 +02:00
3d-gussner
7a88ce89e4 Update MSG_TEMPERATURE c=18 2021-03-31 07:11:01 +02:00
3d-gussner
c0df79d39a Define #MSG_SELECT_TEMP_MATCHES_MATERIAL c=20 r=4 2021-03-31 07:10:03 +02:00
3d-gussner
7268f6a824 Define #MSG_SELECT_FILAMENT c=20 2021-03-31 07:08:09 +02:00
3d-gussner
2e43234d3f Update #MSG_SUPPORT c=18 2021-03-31 07:06:46 +02:00
3d-gussner
ba38262109 Update #MSG_STATISTICS c=18 2021-03-31 07:05:28 +02:00
3d-gussner
960ebac02d Update #MSG_SPEED c=15 2021-03-31 07:04:47 +02:00
3d-gussner
acbdc2ac8d Define #MSG_RUNOUTS c=7 2021-03-31 06:59:16 +02:00
3d-gussner
09f4850a8a Define #MSG_SLIGHT_SKEW c=13, #MSG_SEVERE_SKEW c=13 2021-03-31 06:53:04 +02:00
3d-gussner
4749dd1750 Define #MSG_CHECK_IR_CONNECTION c=20 r=4 2021-03-31 06:46:43 +02:00
3d-gussner
bd8ab39b39 Define #MSG_UNLOAD_FILAMENT_REPEAT c=20 r=4 2021-03-31 06:45:33 +02:00
3d-gussner
5280a89fba Define #MSG_MMU_INSERT_FILAMENT_FIRST_TUBE c=20 r=6 2021-03-31 06:43:21 +02:00
3d-gussner
4f394c8c5a Update #MSG_TUNE c=18, #MSG_PREHEAT c=18 2021-03-31 06:38:50 +02:00
3d-gussner
fbecae1707 Update MSG_PREHEAT c=18 2021-03-31 06:38:06 +02:00
3d-gussner
ac810bf03a Define #MSG_REMOVE_SHIPPING_HELPERS c=20 r=3 2021-03-31 06:36:28 +02:00
3d-gussner
00b100bf26 Define #MSG_NOZZLE_FAN c=10, #MSG_PRINT_FAN c=10 2021-03-31 06:30:00 +02:00
3d-gussner
baf231b0f1 Update MSG_NO_CARD c=18 2021-03-31 06:23:18 +02:00
3d-gussner
1c09e8411d Define #MSG_PINDA c=6 and remove duplicate saved 8 bytes 2021-03-30 19:30:26 +02:00
3d-gussner
6a266d497b Define #MSG_REMOVE_TEST_PRINT c=20 r=4 2021-03-30 19:19:43 +02:00
3d-gussner
5fcc731be1 Define #MSG_INSERT_FIL c=20 r=6 2021-03-30 19:17:48 +02:00
3d-gussner
243fa68745 Define #MSG_LIN_CORRECTION c=18 2021-03-30 19:16:11 +02:00
3d-gussner
44f7be134d Define #MSG_FS_VERIFIED c=20 r=3 2021-03-30 19:13:31 +02:00
3d-gussner
bcdaecb46d Define #MSG_TO_LOAD_FIL c=20, #MSG_TO_UNLOAD_FIL c=20, #MSG_PRESS_KNOB c=20 2021-03-30 19:10:56 +02:00
3d-gussner
de9697b913 Define #MSG_PREHEATING_TO_LOAD/UNLOAD/CUT/EJECT c=20 2021-03-30 19:06:46 +02:00
3d-gussner
e9750a7312 Update #MSG_FIL_FAILD c=20 r=5 2021-03-30 18:52:58 +02:00
3d-gussner
4a5d7bc6b7 Define #MSG_Y_DIST_FROM_MIN c=20 2021-03-30 18:51:04 +02:00
3d-gussner
7f3fe6740b Update #MSG_NO_MOVE c=20 2021-03-30 18:46:56 +02:00
3d-gussner
1a1a1d88a7 Update MSG_MOVE_X/Y/Z c=18 2021-03-30 18:13:49 +02:00
3d-gussner
c1f22a5239 Update #MSG_MOVE_AXIS c=18 2021-03-30 18:12:03 +02:00
3d-gussner
99893d5066 Define #MSG_MMU_CONNECTED c=18 2021-03-30 18:11:22 +02:00
3d-gussner
4d9dffb042 Define #MSG_MEASURED_SKEW c=13 2021-03-30 18:06:43 +02:00
3d-gussner
afb7c82e26 Update #MSG_LOAD_TO_NOZZLE c=18 2021-03-30 18:00:20 +02:00
3d-gussner
2408bc9f2e Update MSG_LOADING_COLOR c=20 2021-03-30 17:58:51 +02:00
3d-gussner
c4f80642b3 Update #MSG_MAIN c=18 2021-03-30 09:52:52 +02:00
3d-gussner
6900c206cd Define #MSG_SEL_PREHEAT_TEMP c=20 r=6 2021-03-30 09:36:32 +02:00
3d-gussner
12dc48ff1a Update #MSG_BELTTEST c=18 2021-03-30 09:34:41 +02:00
3d-gussner
b697117654 Update #MSG_SELFTEST c=18 2021-03-30 09:33:49 +02:00
3d-gussner
9bc702ae0a Update #MSG_SELFTEST_OK c=20 2021-03-30 09:32:27 +02:00
3d-gussner
00fedbb08a Update MSG_LANGUAGE_SELECT c=18 2021-03-30 09:30:04 +02:00
3d-gussner
164226c739 Define #MSG_RIGHT c=10 2021-03-30 09:29:07 +02:00
3d-gussner
2daf1d9114 Define #MSG_LEFT c=10 2021-03-30 09:26:50 +02:00
3d-gussner
169f8983b6 Define #MSG_ADDITIONAL_SHEETS c=20 r=9 2021-03-30 09:23:35 +02:00
3d-gussner
0139bb5a5e Update #MSG_CHANGE_SUCCESS c=20 2021-03-30 09:20:57 +02:00
3d-gussner
280a3c4d3a Update #MSG_PRUSA3D_HOWTO c=18 2021-03-30 09:16:14 +02:00
3d-gussner
12bd2f1a09 Update #MSG_PRUSA3D c=18 2021-03-30 09:15:21 +02:00
3d-gussner
4e4fb7a59f Update #MSG_PRUSA3D_FORUM c=18 2021-03-30 09:14:20 +02:00
3d-gussner
10c586b577 Update #MSG_FLOW c=15 2021-03-30 09:13:09 +02:00
3d-gussner
7a99f63ffd Define #MSG_FAIL_STATS c=18 2021-03-30 09:06:59 +02:00
3d-gussner
d427563e2b Define #MSG_MMU_FAIL_STATS c=18 2021-03-30 09:05:18 +02:00
3d-gussner
b6031c02a8 Update #MSG_DISABLE_STEPPERS c=18 2021-03-30 08:59:27 +02:00
3d-gussner
411caddc55 Define #MSG_CHOOSE_FIL_1ST_LAYERCAL c=20 r=7 2021-03-30 08:14:46 +02:00
3d-gussner
2d2dc23e81 Define #MSG_CALIBRATING_HOME c=20 2021-03-30 08:12:20 +02:00
3d-gussner
c8af50d344 Define #MSG_COPY_SEL_LANG c=20 r=3 2021-03-30 08:09:08 +02:00
3d-gussner
5f9b66a23a Update #MSG_NOT_COLOR c=19 2021-03-30 08:04:39 +02:00
3d-gussner
02ff05639b Define MSG_CHECKING_FILE c=17 2021-03-30 08:01:26 +02:00
3d-gussner
f2298b1a46 Update #MSG_SD_REMOVED c=20 2021-03-30 07:57:42 +02:00
3d-gussner
3733c42d38 Update #MSG_HOMEYZ_DONE c=20 2021-03-30 07:54:11 +02:00
3d-gussner
fa0382fd3e Update #MSG_CALIBRATE_BED c=18 2021-03-30 07:50:54 +02:00
3d-gussner
7c906dd0b1 Update #MSG_BED_CORRECTION_MENU c=18 2021-03-30 07:44:16 +02:00
3d-gussner
ba0f2b2501 Update MSG_LOOSE_PULLEY c=20 2021-03-20 07:11:41 +01:00
3d-gussner
3fcc81ebdb Update MSG_SELFTEST_ENDSTOP c=16 2021-03-20 07:11:07 +01:00
3d-gussner
17df4e1c8d Update MSG_SELFTEST_ENDSTOPS c=20 2021-03-20 07:10:09 +01:00
3d-gussner
4a6c53daf8 Update MSG_SELFTEST_PLEASECHECK c=20 2021-03-20 07:09:33 +01:00
3d-gussner
b3d3feef4d Update MSG_SELFTEST_ERROR c=20 2021-03-20 07:08:48 +01:00
3d-gussner
5d167ce813 Update MSG_SELFTEST_NOTCONNECTED c=20 2021-03-20 07:08:20 +01:00
3d-gussner
625604d704 Update MSG_SELFTEST_HEATERTHERMISTOR c=20 2021-03-20 07:07:14 +01:00
3d-gussner
b86ad11b68 Update MSG_SELFTEST_BEDHEATER c=20 2021-03-20 07:06:37 +01:00
3d-gussner
b3b062e4ba Update MSG_SELFTEST_SWAPPED c=16 2021-03-20 07:05:47 +01:00
3d-gussner
b6684f6114 Update MSG_SELFTEST_AXIS c=16 2021-03-20 07:05:03 +01:00
3d-gussner
bc9f6b6ae6 Update MSG_SELFTEST_AXIS_LENGTH c=20 2021-03-20 07:03:47 +01:00
3d-gussner
fe1b4e50be Update MSG_AMBIENT c=14 2021-03-20 06:59:54 +01:00
3d-gussner
178fe36dc7 Create MSG_CANCEL c=9
Delete ">Cancel"
Samed 10 bytes
Updated MSG_MEASURED_OFFSET c=20
2021-03-20 06:30:26 +01:00
3d-gussner
1c965cd988 Update MSG_MEASURED_OFFSET c=20 2021-03-20 06:18:41 +01:00
3d-gussner
92acac453f Update MSG_MMU_POWER_FAILS c=15 2021-03-20 06:16:11 +01:00
3d-gussner
b806c017cb Update MSG_BED_SKEW_OFFSET_DETECTION_FAILED_FRONT_RIGHT_FAR c=20 r=6
as Polish translation is longer
2021-03-19 18:47:58 +01:00