Guðni Már Gilbert
77cce1fc05
Replace three lines by one function call which does the same thing
...
Saves 42 bytes of flash memory
2022-01-30 11:39:24 +00:00
Guðni Már Gilbert
a26651e7aa
Change return types of two functions uint8_t
...
These functions aren't used but they should return the appropriate type.
2022-01-30 11:39:24 +00:00
Guðni Már Gilbert
800f44509d
Change row_offsets[] to uint8_t
...
Saves 10 bytes of flash, and 4 bytes of SRAM
2022-01-30 11:39:24 +00:00
Guðni Már Gilbert
58213814cf
Replace for-loop with memcpy
...
Saves 22 bytes of flash memory
2022-01-30 11:39:23 +00:00
Guðni Már Gilbert
52aa5a5f00
Use inlined function set_destination_to_current() in more places
...
Saves 70 bytes of flash memory
2022-01-30 11:39:23 +00:00
Guðni Már Gilbert
a8d16d2949
Use memset to zero previous_speed array
...
Saves 150 bytes of flash memory
2022-01-30 11:39:23 +00:00
Alex Voinea
cdd7ea30f4
Fix LUT loop
2022-01-30 11:39:23 +00:00
Alex Voinea
fb10b4398e
Merge pull request #6 from gudnimg/gudni-PR1
...
Purged some `int`s for `uint8_t` when using the axis enum
2022-01-30 11:30:25 +00:00
Guðni Már Gilbert
f81db56793
temp_runaway_check() parameter _heater_id should be uint8_t
...
Saves 58 bytes of flash
2022-01-30 11:22:45 +00:00
Guðni Már Gilbert
261f311825
Change two arrays from int to uint8_t
...
__preheat_counter has max value of 16
__preheat_errors has max value of 5
Saves 58 bytes of flash memory and 4 bytes of SRAM
2022-01-30 11:22:45 +00:00
Guðni Már Gilbert
7535fa3a44
Remove unused variable
...
Saves 2 bytes of SRAM
2022-01-30 11:22:45 +00:00
Voinea Dragos
623762bd50
Fix build
2022-01-30 11:22:44 +00:00
Voinea Dragos
42a5f7dc20
Fix M226
2022-01-30 11:22:44 +00:00
Voinea Dragos
4aae88afdf
M42 optimization
2022-01-30 11:22:44 +00:00
Voinea Dragos
a5cd99a917
Disable unimplemented PID_ADD_EXTRUSION_RATE
2022-01-30 11:22:44 +00:00
Voinea Dragos
9951e3da52
Sound enums as uint8_t
2022-01-30 11:22:44 +00:00
Voinea Dragos
6dd59985ee
Disable PRUSA M28
2022-01-30 11:22:44 +00:00
Voinea Dragos
f22b9260ae
Fix build
2022-01-30 11:22:44 +00:00
Voinea Dragos
9abae2fd97
Remove maxlimit_status
2022-01-30 11:22:43 +00:00
Voinea Dragos
9684806e00
Change arduino IO to fastio where possible
2022-01-30 11:22:43 +00:00
Voinea Dragos
42c393764f
Adjust temperature runaway extruder count
2022-01-30 11:22:43 +00:00
Voinea Dragos
78362419da
nIRsensorLastTime
2022-01-30 11:22:43 +00:00
Voinea Dragos
a5f1f23fe2
TimeNow && TimeSent
2022-01-30 11:22:43 +00:00
Voinea Dragos
f64c6c2a39
Remove unused Stepper.cpp variables
2022-01-30 11:22:43 +00:00
Voinea Dragos
9d1e54e685
Tmc2130 use ShortTimer instead of custom timer implementation
2022-01-30 11:22:43 +00:00
Voinea Dragos
d8a14842c5
Remove unused skip_debug_msg
flag
2022-01-30 11:22:43 +00:00
DRracer
0be90dc5d1
Merge pull request #3320 from prusa3d/MK3_3.10.1
...
Merge MK3_3.10.1 into MK3 after release
2021-12-17 14:02:13 +01:00
D.R.racer
caca7bb9b8
Version changed (3.10.1 build 4697)
2021-12-16 12:14:02 +01:00
3d-gussner
1c1e69e555
Update FW crash message
2021-12-16 11:23:44 +01:00
3d-gussner
785d94ab3a
Add links to RepRap Gcode wiki for new Dcodes D20-D23
2021-12-16 09:32:38 +01:00
Yuri D'Elia
3849f9785a
Make cancel_heatup also abort cooldown in M190
...
This matches the expected behavior, as already implemented in
wait_for_heater().
2021-12-10 01:51:43 +01:00
Yuri D'Elia
320835a1b7
Do not cancel wait-for-temperature loops in disable_heaters()
...
Partially revert previous change: cancelling a single loop would often
advance the gcode stream to the next wait-for loop if executed at the
beginning of an SD print, implicitly turning off the flag again.
Cancel the loop directly in UnconditionalStop() which stops the command
queue as well in an atomic way, handling this correctly.
2021-12-10 01:46:20 +01:00
Yuri D'Elia
32d8d892f5
Actually call UnconditionalStop() in Stop()->lcd_print_stop()
...
Remove incorrect check introduced during development.
2021-12-10 01:43:59 +01:00
Yuri D'Elia
83693bf4cc
Remove useless assignment in lcd_cooldown
...
The current filament action will be aborted by lcd_return_to_status()
2021-12-07 19:27:18 +01:00
Yuri D'Elia
78f856c8d6
Do not unconditionally overwrite the status message in check_file()
...
No function should touch the status message directly without checking
the message severity level first. Replace the strcpy_P with
lcd_setstatuspgm().
2021-12-07 19:27:18 +01:00
Yuri D'Elia
7ff117d0c4
temp_runaway_stop: remove spourious space in error message
2021-12-07 19:27:18 +01:00
Yuri D'Elia
36a7b5ca56
Avoid redundant checks in lcd_setalertstatus*
2021-12-07 19:27:18 +01:00
Yuri D'Elia
a3915b57b9
Improve temp_runaway_stop robustness
...
Remove most of the duplicated code inside temp_runaway_stop(),
making it identical to the other temperature handlers.
Move the lower-level functions required to stop the entirety of the
machine into UnconditionalStop(). Reuse this function inside
lcd_print_stop().
Set the LCD alert message before calling Stop(), as done in other safety
handlers, so that the error is visible while the printer is stopping.
This also avoids other temporary status messages to appear before
the real issue is shown and/or STEALING the first CRITICAL alert
level before we do.
2021-12-07 19:25:34 +01:00
Yuri D'Elia
57abffda1b
Update temperature-related error message to use LCD_STATUS_CRITICAL
2021-12-07 11:09:58 +01:00
Yuri D'Elia
fb025bba05
Introduce severity levels for alert messages
...
Use the internal lcd_status_message_level for multiple severity levels
of alert messages.
This is needed to distinguish between non-critical alerts (such as FAN
ERROR) from critical ones (any heater issue). During a failure
scenario, a critical error MUST NOT be overridden by a lower-level one.
As such LCD_STATUS_CRITICAL is currently used for all heater-related
errors that result in a safety full-stop.
2021-12-07 11:06:08 +01:00
DRracer
a7dfe4b523
Merge pull request #3305 from gudnimg/sd-card-lcdtimer-fix-gudni-v2
...
Fix issue when the SD card is inserted and the file menu may sometimes close immediately due to a timeout
2021-11-19 07:23:21 +01:00
Guðni Már Gilbert
be79e3791f
Fixes #3262
...
Make sure to call lcd_timeoutToStatus.start() when the SD card is inserted
into the printer after it was removed beforehand.
(cherry picked from commit 6795843f153aa064f087f80990419a946cdfe857)
2021-11-18 19:23:21 +00:00
Guðni Már Gilbert
13732f162b
Fix build error when TMC2130_SERVICE_CODES_M910_M918 is enabled
...
(cherry picked from commit 6ed4b79cc6685f31b6914881008e036424dab2eb)
2021-11-18 19:19:56 +00:00
Panayiotis-git
f8410d8f3c
Print temperatures only if filament loading is still active
2021-11-18 11:46:36 +02:00
EV3R4
eff9cd9f21
Typo: M84 docs
2021-09-27 19:34:53 +02:00
Guðni Már Gilbert
e6a7abf2c1
Change temp_runaway_timer from float to uint32_t
...
Saves 32 bytes of flash
Also change temp_runaway_error_counter from int to
uint16_t to be specific
2021-08-06 15:08:46 +00:00
Guðni Már Gilbert
db1e5a203b
Change temp_runaway_status from float to uint8_t and its enum
...
Saves 90 bytes of flash, and 12 bytes of SRAM
2021-08-06 15:03:35 +00:00
Guðni Már Gilbert
b716c208d7
Various optimisation to change int to uint8_t
...
This commit saves 174 bytes of flash memory
2021-08-03 22:42:01 +00:00
Guðni Már Gilbert
8d7d1698ee
Remove unused global variable 'chunkHead'
...
No change in memory on my end, but it is one less 'int' :)
2021-08-03 21:48:26 +00:00
Guðni Már Gilbert
1946c58d21
1. Remove redundant variable 'inters'
...
2. 'gh' variable can be 1 byte instead of 2
This saves 26 bytes of flash memory
2021-08-03 21:46:11 +00:00
Guðni Már Gilbert
05ed5b9668
Improve lcd_selftest_screen_step() parameter types
...
Saves 62 bytes of flash memory
2021-08-03 21:35:28 +00:00
Guðni Már Gilbert
a54a133968
Use memset instead of nested for-loop to zero a 2d array
...
Saves 26 bytes of flash memory and removes two 'int' types
2021-08-02 19:20:51 +00:00
Guðni Már Gilbert
2554d21925
Use uint8_t when using axis enum
...
Saves 76 bytes of flash memory
2021-08-02 12:20:10 +00:00
DRracer
fd6dbba06f
Merge branch 'MK3_3.10.1' into PFW-1271_PF-buildv20
2021-08-02 08:51:51 +02:00
Guðni Már Gilbert
400f673fe0
Remove redundant extern variable lcd_encoder from menu.cpp
...
This extern variable is included from lcd.h
2021-07-20 09:12:14 +02:00
Guðni Már Gilbert
d087973e00
Remove redundant extern variable is_usb_printing from tmc2130.cpp
...
This extern variable is included from Marlin.h
2021-07-20 09:12:14 +02:00
Guðni Már Gilbert
6aee17b4ca
lcd_change_fil_state has two extern's in Marlin.h, only one needed.
2021-07-20 09:12:14 +02:00
Guðni Már Gilbert
3cfd706fff
Remove useless extern in cmdqueue.cpp
2021-07-20 09:12:14 +02:00
Guðni Már Gilbert
31c8e4bc4c
* Remove redundant externs already included with temperature.h
...
* Add ifdefs in Dcodes.cpp when using extern variables
2021-07-20 09:12:14 +02:00
Guðni Már Gilbert
eb9c8c8c20
Improve mc_arc() parameters
...
- Make the mc_arc() function declaration consistent with the definition
- isclockwise is supposed to be bool type, given how it is used.
2021-07-20 09:03:50 +02:00
Guðni Már Gilbert
538ce06bf0
Remove unused function lcd_choose_color()
2021-07-20 08:55:49 +02:00
Guðni Már Gilbert
bbe62b136a
Remove unused Sound_Save() function declaration
2021-07-20 08:51:57 +02:00
Yuri D'Elia
d04ea859fb
Consolidate "Unknown X-Code" to save 16 bytes
2021-07-20 08:19:19 +02:00
Yuri D'Elia
47b1e6ccef
Remove spourious trailing whitespace in errors
2021-07-20 08:19:19 +02:00
Yuri D'Elia
1888c783cb
Print an error on unknown D-codes
...
This follows the same convention of M/G codes, so that the user knowns
that the D-code has been either handled or ignored.
2021-07-20 08:19:19 +02:00
Guðni Már Gilbert
d853c19a21
Use fabs() instead of abs() when using floats
...
This saves 514 bytes of flash memory
2021-07-20 08:16:18 +02:00
Yuri D'Elia
31b913cddb
Correct the C implementation for MultiU16X8toH16
...
The comment behind the ASM MultiU16X8toH16 was misleading.
It actually computes ((a<<8)*b)>>16, or (a*b)>>8.
Correct the comment and C reference implementation accordingly.
2021-07-20 08:10:36 +02:00
Guðni Már Gilbert
710852a1f2
Change nrFiles from int16_t to uint16_t
2021-07-20 08:10:07 +02:00
Guðni Már Gilbert
16602f4003
change boolean to bool
2021-07-20 08:03:17 +02:00
3d-gussner
3d871a3aa6
Merge remote-tracking branch 'upstream/MK3' into PFW-1271_PF-buildv20
2021-07-17 19:10:51 +02:00
D.R.racer
4580b8a78c
Version changed (3.10.1 build 4587)
2021-07-16 07:37:11 +02:00
Yuri D'Elia
1279a6cf4b
Correctly read FW_VERSION_NR array from progmem
...
In PR #3093 the progmem array FW_VERSION_NR was introduced to store the
version components, however the code didn't read it properly using the
pgm_read_* functions, making version comparisons fail.
Fix the existing/unused is_provided_version_newer() and reuse it in
show_upgrade_dialog_if_version_newer().
Similarly also read/update correctly the version in the eeprom.
2021-06-28 06:36:26 +02:00
Yuri D'Elia
56e531d40a
Improve/fix D23 for M2.5/S printers
...
- Move D23 into it's own function inside Dcodes
- Correctly include a break in the switch statement
- Show the dumper status (enabled/disabled) after toggling
- Allow to generate an immediate dump via g-code using D23 E for
symmetry with D20 E
2021-06-25 08:46:55 +02:00
Yuri D'Elia
380e34d481
Include "Dcodes.h" after "Marlin.h" for configuration
...
This is needed in order to get the function prototypes right according
to the actual enabled configuration.
2021-06-25 08:46:55 +02:00
Voinea Dragos
ecce6f865f
write_command() no line number handling
2021-06-25 08:12:30 +02:00
Yuri D'Elia
53fcd6fc8f
Work-around GCC LTO codegen bug in process_commands()
...
When building with GCC 4.9.2 (bundled with PF-build-env-1.0.6.*), -Os
and LTO enabled, PID_autotune gets automatically inlined into
process_commands().
Sadly, due to the massive size of process_commands(), it results in
codegen bug doing a partial stack overwrite in process_commands()
itself, manifesting as random behavior depending on the timing of
interrupts and the codepath taken inside the merged function.
Mark the function as noinline and add a note about the affected compiler
version in order to be checked again in the future.
2021-06-24 07:39:28 +02:00
3d-gussner
36f2b5375f
Merge remote-tracking branch 'upstream/MK3' into PFW-1271_PF-buildv20
...
merge latest changes and fix isses
2021-06-24 05:53:43 +02:00
Yuri D'Elia
66ee9a295f
Remove useless function EEPROM_read_st
2021-06-22 19:08:20 +02:00
Yuri D'Elia
8d11ad9d2d
xfdump: correctly erase all sectors in xfdump_erase
2021-06-22 19:07:49 +02:00
D.R.racer
88074ac6c8
Remove FW version parsing
...
as it can be done at compile time. Code size dropped by >800 bytes.
2021-06-22 08:49:52 +02:00
DRracer
6188870c2e
Merge pull request #3157 from wavexx/improve_d2
...
Add extra debugging functions & crash analysis
2021-06-22 07:37:30 +02:00
DRracer
f36b9173da
Merge pull request #3191 from wavexx/fix_longpress_isr
...
Handle Long-Press in the main loop
2021-06-22 07:09:01 +02:00
Yuri D'Elia
79287ffb3d
Use uint8_t consistently for the block buffer's index
...
Instead of using a mixture of int8_t, unsigned char and (incorrectly)
int, use uint8_t consistently for indexing the current block.
This improves the performance of the wait loop in plan_buffer_line,
which currently expands all comparisons to a word for no reason.
This also extends the theoretical limit to 128 entries.
Add some static assertions to ensure BLOCK_BUFFER_SIZE is correct.
2021-06-22 06:59:57 +02:00
Yuri D'Elia
f4fcdae630
Fixup the DUMP_MAGIC constant
2021-06-22 00:04:39 +02:00
Yuri D'Elia
934b567e5a
Remove "bonus" exclamation points from the crash message
2021-06-21 22:37:28 +02:00
Yuri D'Elia
edde002cdc
Merge remote-tracking branch 'upstream/MK3' into fix_longpress_isr
2021-06-21 11:51:45 +02:00
3d-gussner
3c649a89d3
Merge remote-tracking branch 'upstream/MK3' into PFW-1271_PF-buildv20
2021-06-21 08:01:24 +02:00
Alex Voinea
30d9faef9d
Minor fixes to SD presence handling ( #3139 )
...
* Remove forgotten function protorypes
* Fix code indentation
* Fix double sorting if SD card is inserted during setup()
* Correctly handle SD removal during sorting
2021-06-21 07:30:47 +02:00
Voinea Dragos
0cbc759d8b
Second attempt at retrieving the SN from the 32u2 IC
2021-06-21 07:24:41 +02:00
Alex Voinea
6d25345fc4
optiboot_xflash comment about w25x20cl messages
...
Mention supported ICs
2021-06-21 07:21:40 +02:00
Yuri D'Elia
a92c0278fe
Use LCD_WIDTH instead of hardcoding 20
2021-06-21 07:21:10 +02:00
metacollin
8a7dd08116
Fixed C++ bug
2021-06-21 07:05:17 +02:00
Yuri D'Elia
09e935d27b
Fix two new explicit case fallthru warnings
2021-06-21 06:52:52 +02:00
Yuri D'Elia
d727a949dd
Silence explicit case-fallthru
2021-06-21 06:52:52 +02:00
Yuri D'Elia
c096462aab
Clarify statement by adding extra braces
2021-06-21 06:52:52 +02:00
Yuri D'Elia
051f03119b
Fix misleading indentation warnings by expanding tabs
2021-06-21 06:52:52 +02:00
Yuri D'Elia
f2fe57bfc0
Fix unused static declaration warnings
...
Guard declarations using the appropriate defines
2021-06-21 06:52:52 +02:00
Jonas Meyer
7bd43b77d7
Remove unnecessary assignment
2021-06-21 06:47:59 +02:00
Yuri D'Elia
eafdf6c216
Also move host_keepalive to manage_inactivity()
...
This avoids the "busy" output interleaving with regular output in very
rare scenarios.
We should focus in finding which calls are not using manage_inactivity()
properly instead of working it around.
2021-06-21 06:46:24 +02:00
Yuri D'Elia
29322d4bf3
Move host_autoreport() to manage_inactivity()
...
This makes autoreport work more consistently.
2021-06-21 06:46:24 +02:00