Commit Graph

5367 Commits

Author SHA1 Message Date
Voinea Dragos
2129bcf315 M20 T 2021-04-19 14:48:50 +03:00
Voinea Dragos
b16e1e5235 Invert size and LFN in M20 L output 2021-04-19 13:54:43 +03:00
Voinea Dragos
6d7d8c7c75 Do not show hidden/system dirs with M20 L 2021-04-19 13:31:30 +03:00
DRracer
10de97c042
Merge pull request #3110 from prusa3d/MK3_3.10.0
merge MK3_3.10.0 into MK3
2021-04-19 10:07:42 +02:00
Yuri D'Elia
a5e4df390d Sync before/after setting mesh_bed_leveling_flag/homing_flag
mesh_bed_leveling_flag and homing_flag should be set only when the
planner is empty as a consequence of #3100, since any operation executed
*while* the mbl/homing flag is set is considered part of the compound
instruction that generated it (G80, G28, G30, G76).

Failure in doing so can result in instructions just prior being lost,
since they're incorrectly discarded (assumed to be redone).

G1  ; lost ..
G80 ; .. if PP happens here
2021-04-19 06:31:57 +02:00
Yuri D'Elia
23c75da727 Fix Crash/PP recovery position on instructions with comments
PR #2967 altered the way ``sdpos_atomic`` was set, causing issues in the
crashdetect/powerpanic recovery offset if the instruction being
recovered happens to contain a comment.

Previously ``sdpos`` was assumed to be a single byte prior to the last
read character. sdpos+1 would thus position the index to the next
instruction. With gcode-filtering in place, sdpos is left just before
the comment, while the actual read position is at the newline. This
causes to parser to resume in the middle of the comment.

Change the value returned by cardreader::get_sdpos() to always return
the last read position, as everybody expects (!!).

This avoids the +1, and correctly sets the resume position to the next
valid instruction without overhead.
2021-04-19 06:30:37 +02:00
3d-gussner
f8bec339e2 Hack to get more flash and ram for MK404 debug 2021-04-18 20:28:08 +02:00
D.R.racer
c43688a549 Version changed (3.10.0-RC2 build 4104) 2021-04-16 13:52:36 +02:00
DESKTOP-AFI832L\admin
5a91e1de4d Calibration: fix checking of scan of calibration points
PFW-1223
2021-04-14 06:25:18 +02:00
Voinea Dragos
7356cd0811 EEPROM_JOB_ID 2021-04-09 08:09:51 +02:00
DRracer
f9f6284c50
Merge pull request #3100 from wavexx/powerpanic_state_fixes
Fix PowerPanic and Crash Detection during homing and bed leveling
2021-04-07 18:19:50 +02:00
Yuri D'Elia
61faa49cbb Fix buffer overflow in buf
Fix cmd overflow introduced in 186ce0f.

With a precision of %f being .6 and assuming a maximum (theoretical)
acceleration of 99999 we need 47 bytes including terminating byte.

Round it to 48
2021-04-07 15:57:50 +02:00
Alex Voinea
d31601dcb8 Use correct mfrid for gd25q20c 2021-04-06 10:16:47 +02:00
Alex Voinea
94c1e65d83 Fix MK2.x builds 2021-04-06 10:16:47 +02:00
Alex Voinea
56948157d0 GD25Q40C xflash support 2021-04-06 10:16:47 +02:00
Alex Voinea
07bf4bbe48 Fix gd25120c rd_uid command 2021-04-06 10:16:47 +02:00
Alex Voinea
9454f9d8ec Rename w25x20cl to xflash 2021-04-06 10:16:47 +02:00
Yuri D'Elia
449d181971 G80: handle power panic
This is handled in the same way crash detection is handled: homing/mbl
invalidates saved_target _and_ current position.

Fixes PP recovery during MBL and homing.
2021-04-06 02:20:00 +02:00
Yuri D'Elia
b46a52ffa8 G80: Handle crash detection
At a higher level, crash detection will repeat the last gcode command.

Some commands such as G28 or G80 need to be repeated in full and require
special handling.

In such cases, do not store the saved target coordinate (which is fake
in such cases) and invalidate the saved position.

This fixes the last coordinate of the first G1 move after recovery.

We also avoid moving from the origin when the saved position is
invalidated, which is not strictly necessary, but saves some time.
2021-04-06 02:00:47 +02:00
Yuri D'Elia
a5530593fa G80: preserve lcd status and message when aborting
Restore the old status just before returning, so that the subsequent G80
can restore the first (initial) message correctly.
2021-04-06 00:31:56 +02:00
Yuri D'Elia
5923276a86 G80: correctly abort during crash detection
Crash detection is handled at a higher level (which automatically
repeats the current command), however we still need to abort the current
command correctly.

Handle XY crashes by checking the planner status after st_synchronize().
2021-04-06 00:31:29 +02:00
Yuri D'Elia
5da39df968 G80: Use consistent XY axis feedrate 2021-04-06 00:10:33 +02:00
Yuri D'Elia
ce2e35d14d Move G80 into it's own function
No actual changes done in the function in this, besides break->return.

In G28, simply call the new function instead of using goto, making the
code more readable.

Also remove the senseless comments in G28 about command queuing (dating
back to when G80 was queued instead of being executed).
2021-04-05 23:35:17 +02:00
Yuri D'Elia
d2be40491b PP recovery: clamp initial position to software endstops
As done when initializing the printer from a cold start, we need to
clamp the starting position to software endstops before setting the
planner position since 0,0 is frequently out-of-bounds.

This avoids an useless move during recovery that can cause a crash:

- Initial X is set to be 0
- G1 performed by homing will clamp X>=0, resulting in a positive shift
- If X is already at max X (extruder being parked due to PP), this will
  slam at X+, causing an immediate crash.
2021-04-05 22:11:06 +02:00
Yuri D'Elia
3276320a06 Hide tmc2130_sg_change behind DEBUG_CRASHDET_COUNTERS
tmc2130_sg_change is only used for debugging purposes.
Hide definition and usage behind the required define.
2021-04-05 20:07:03 +02:00
Yuri D'Elia
6a61c26955 Removed unused crashdet_stop_and_save_print2 2021-04-05 20:04:50 +02:00
3d-gussner
b74e1d6062 Update RepRap url for M123 2021-04-01 19:48:14 +02:00
3d-gussner
e12c1dde5c Updated RepRap Wiki and removed the @todos 2021-04-01 19:06:31 +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
84c3853351 Fix Dutch #MSG_FINDA c=5 2021-03-31 07:53:27 +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
15919a0f09 Define #MSG_NOZZLE_DIFFERS_CONTINUE c=20 r=5, #MSG_NOZZLE_DIFFERS_CANCELLED c=20 r=9 2021-03-31 07:41:21 +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
c0869efc76 Define #MSG_MK3S_FIRMWARE_ON_MK3 c=20 r=4, #MSG_MK3_FIRMWARE_ON_MK3S c=20 r=4 2021-03-31 07:36:26 +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
e470ee96c8 Update #MSG_BACK c=18 2021-03-31 07:26:41 +02:00
3d-gussner
5e049283be Define #MSG_UNKNOWN c=13 2021-03-31 07:24:41 +02:00
3d-gussner
67a0370332 Delete "Unload" as it isn't used anymore 2021-03-31 07:19:56 +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