Guðni Már Gilbert
592fc56bfc
MMU: Sync code with 32-bit
...
The changes in this commit are mainly formatting
But there are some changes like adding a new function planner_draining()
2024-07-06 16:55:32 +00:00
D.R.racer
67d7be2b2d
MMU2: Report current tool onto the serial
...
PFW-1546
2023-11-27 13:16:13 +01:00
3d-gussner
0016b77827
Updated MMU serial status message
...
- Shown during bootup
- Shown on LCD menue MMU [ON|OFF]
- Shown using `M709`
- Shown when `Disable`d with MMU ERROR FW UPDATE NEEDED
2023-11-11 12:18:34 +01:00
Guðni Már Gilbert
12a3051c50
mmu: Add CheckErrorScreenUserInput
...
Due to differences in 8-bit FW I had to implement two new get functions
* GetCommandInProgress
* GetLastErrorCode
2023-10-19 18:32:41 +00:00
D.R.racer
be5523187b
Sync MK3<->MK4 MMU2 mmu2_mk4.h
2023-09-18 10:51:32 +02:00
D.R.racer
ec4740fe53
Clean-up ProgressCodes and ErrorCodes parameters throughout the code
2023-09-18 10:51:32 +02:00
Guðni Már Gilbert
fc18f4c5d7
PFW-1522 Implement filament change screen
...
Change in memory:
Flash: +116 bytes
SRAM: +1 byte
2023-08-18 14:27:39 +02:00
Guðni Már Gilbert
f0a48b11f7
PFW-1530 Refactor the menu to be non-blocking
...
The UI works much smoother now
Saves ~60 bytes of flash
2023-08-14 09:34:55 +02:00
Guðni Már Gilbert
1cda696e14
PFW-1530 Add Tune to Selector screen and more
...
- Rename "Idler" to "Sensitivity"
- Implement ReadRegisterInner() as a way to read register in blocking contexts such as manage_response()
This allows us to show the current EEPROM value on the printer's LCD
2023-08-14 09:34:55 +02:00
Guðni Már Gilbert
5f60eaff85
PFW-1530 Initial prototype
...
Add a 'Tune' option to HOMING_IDLER_FAILED error
This will open a menu which allows
the user to change the stallguard threshold
from the MMU error screen
Change in memory:
Flash: +334 bytes
SRAM: +1 byte
2023-08-14 09:34:55 +02:00
Guðni Már Gilbert
02676fc888
Limit scope of is_mmu_error_monitor_active
...
Move the variable to mmu2_reporting
Change in memory:
Flash: -6 bytes
SRAM: 0 bytes
2023-05-22 08:04:22 +02:00
Guðni Már Gilbert
1f9fc4ef3f
MMU: add UnloadInner and CutFilamentInner
...
Sync with the 32-bit side.
The ReportingRAII does not handle recursion.
Fixes an issue with the multiple calls to
BeginReport() and EndReport()
Change in memory:
Flash: +14 bytes
SRAM: 0 bytes
2023-05-22 08:00:42 +02:00
Guðni Már Gilbert
4b54cd1f30
Remove unused LoadingToNozzleRAII
...
The variable is not used anywhere.
Change in memory:
Flash: -14 bytes
SRAM: -1 byte
2023-04-16 17:23:28 +00:00
D.R.racer
303a67cd6f
Introduce MMU EEPROM reset feature
...
This new feature requires MMU FW v 2.1.7 (which brings some more small changes)
2023-02-24 15:26:07 +01:00
D.R.racer
d2f3835b2c
Fixup after review
2023-01-31 09:35:22 +01:00
D.R.racer
528abcb8d8
clang-format
2023-01-31 09:35:22 +01:00
D.R.racer
0555376502
Refactor mmu2.cpp and related interfaces
...
The general idea is to keep platform specific implementation away from the MMU state machines as much as we can.
That would enable unit testing the top level MMU state machine and integration into other project as well (if needed).
2023-01-31 09:35:22 +01:00
D.R.racer
472f84e46a
Avoid FullScreenMsg "Eject/Cut Filament" when called inside a toolchange
...
CutFilament and EjectFilament got a flag: enable/disable FullScreenMsg
2023-01-16 09:25:04 +01:00
D.R.racer
d4f0f363cd
Fixes from tests
...
- introduce Cut Filament
- limit retries try-unload
- fix waiting in "Load to extruder failed" error screen
- add LOAD_TO_EXTRUDER_FAILED error definition
2022-12-30 14:23:44 +01:00
Guðni Már Gilbert
c72ae8a2f3
PFW-1439 Remove parameters from execute_load_to_nozzle_sequence
2022-12-19 21:12:12 +00:00
Guðni Már Gilbert
6ee5f08505
PFW-1439 Compensate load to nozzle extruder sequence for Extra Loading Distance
...
The Extra Loading Distance is configurable by the user.
We need to compensate the hardcoded sequence
such that it does not extrude too much or
too little. Currently the firmware
extrudes too little.
2022-12-19 21:12:11 +00:00
Guðni Már Gilbert
c8157919b1
PFW-1440 Fix issue where cooldown timer is not set after a faile retry
2022-11-21 12:54:53 +01:00
D.R.racer
fe6e3ca2b1
Unload first before retrying
...
Should free the filament if accidentally held by the fsensor.
2022-11-20 19:23:07 +01:00
Guðni Már Gilbert
ef51b5778d
Fix VerifyFilamentEnteredPTFE
...
Test should push filament first and then retract.
2022-11-20 17:27:36 +01:00
Guðni Már Gilbert
46f4f2658d
PFW-1432 Reduce LOC
...
If verification test fails, increment load fail statistic
2022-11-20 17:27:36 +01:00
Guðni Már Gilbert
03235c8aab
PFW-1432 restore toolchange load testing
2022-11-20 17:27:36 +01:00
D.R.racer
4eaabbf092
Revive MMU stats + LCD screens
2022-11-20 17:27:36 +01:00
D.R.racer
ffbd95b482
Unify naming convention (index->slot)
...
in all top level MMU-related functions
2022-11-20 17:27:36 +01:00
D.R.racer
e414413b2e
Refactor ToolChange+LoadToNozzle
...
Add basic infrastructure for handling of repeated commands until they finish correctly.
2022-11-20 17:27:36 +01:00
D.R.racer
10a9e0f0a0
Recover from MMU restart while performing a command
...
PFW-1427
2022-11-20 17:27:36 +01:00
Guðni Már Gilbert
e11ef11a64
PFW-1425 Rename "Load to Extruder" to "Loading Test"
2022-11-16 06:00:15 +01:00
Guðni Már Gilbert
006fe110cc
Don't raise MMU error screen until retry is done
...
Change in memory:
Flash: +8 bytes
SRAM: 0 bytes
2022-11-12 18:47:10 +01:00
VintagePC
ecef69012a
Fix PFW-1364 & possible comms timeout during reheat
2022-11-12 18:47:10 +01:00
Guðni Már Gilbert
59a452ac27
PFW-1397 minor comment tweaks
2022-11-08 13:49:40 +01:00
Guðni Már Gilbert
a896dfd4e0
PFW-1397 To reserve EEPROM write cycles, only update toolchange counter when a print finishes or is stopped
2022-11-08 13:49:40 +01:00
Guðni Már Gilbert
3120bf0aa2
PFW-1397 Implement new function increment_tool_change_counter()
...
Reduces flash consumption by 44 bytes
2022-11-08 13:49:40 +01:00
Guðni Már Gilbert
7bc7f21fa5
mmu: move RetryIfPossible outside the error screen
...
This fixes issue where 'retryAttempts=3' may be spammed in the logs
Change in memory:
Flash: 0 bytes
SRAM: 0 bytes
2022-11-01 06:22:39 +01:00
Guðni Már Gilbert
d6e0f47739
PFW-1403 Rename ReportErrorSource to ErrorSource for shorter code
2022-10-08 08:51:32 +00:00
Guðni Már Gilbert
33690b927a
PFW-1403 Fix issue where physical MMU buttons do not dismiss error screen
2022-10-08 08:51:32 +00:00
Yuri D'Elia
6cfe000ac9
cleanup: Reorder members to match initialization order
2022-09-30 12:55:47 +02:00
3d-gussner
edad625cf7
RIP Bondtech long live the Extruder
2022-09-16 16:31:27 +02:00
Guðni Már Gilbert
e9f5a95d4b
PFW-1362 Make sure FINDA runout is impossible with MMU disabled
...
Since mmu_loop() is called in the main loop() function
when the MMU is disabled, we need to utilise the
MMU protocol layer to prevent FINDA runout from happening
if MMU is disabled.
We also need to keep in mind we probably can't trigger
a FINDA runout in the middle of a Q0 query.
So my solution now is to wait for the "Finished" state
and check if the FINDA is off during printing.
When "Finished" state appears, the FINDA value should be up
to date.
2022-09-16 10:23:47 +02:00
D.R.racer
4d3a5433ad
Implement read/write registers for M707/M708
2022-09-16 10:23:47 +02:00
Guðni Már Gilbert
2216ba9fbf
M600: Ask for which slot to use when loading
...
This fixes an issue where the assumed slot to use is unknown and
the printer will hang on loading filament 100.
Another good thing is this is an old user feature request which
we have in our 3.12 milestone.
Change in memory:
Flash: +14 bytes
SRAM: -1 bytes
2022-09-16 10:23:47 +02:00
D.R.racer
6c0d3b0b78
Optimize MMU protocol logic
2022-09-16 10:22:39 +02:00
Guðni Már Gilbert
dfddf3eaa5
Initial commit for MMU statistics
2022-09-16 10:22:39 +02:00
Guðni Már Gilbert
fb087fc535
PFW-1386 Add M707 and M708
...
WriteRegister and ReadRegister function will create new compiler
warnings due to unused parameters, we can ignore it for now.
2022-09-16 10:22:38 +02:00
D.R.racer
022aa53b2d
Remove active_extruder completely
...
we only use 1 extruder + saves ~800B
2022-09-16 10:22:38 +02:00
Guðni Már Gilbert
0d64cfa2e5
extruder variable should be one byte
...
Saves 1 byte of SRAM and 132 bytes of flash
2022-09-16 10:22:38 +02:00
VintagePC
ba52430e1d
Magic numbers are bad...
2022-09-16 10:22:38 +02:00