Commit Graph

88 Commits

Author SHA1 Message Date
D.R.racer c7e4c9ce99 Allow backwards compatibility with legacy MMU g-codes
This piece just changes the default extra load length on the MK3 side.
The same needs to be done on the MMU side but:
- the MMU exposes its register for this (so we can change the extra load distance by writing into the register via G-code)
- the printer shall probably set this value on its own after line up of MMU communication
2022-10-11 15:51:01 +02:00
3d-gussner d5ca47d1a6
Merge pull request #3646 from gudnimg/fix-mmu-buttons-v2
PFW-1403 Fix issue where physical MMU buttons do not dismiss error screen
2022-10-11 13:42:39 +02:00
Guðni Már Gilbert 8882d8f2c8 Only move XY when position is known
I had a crash when producing an error screen and printer was unhomed.
Extruder was located at the far right side, and immediately crashed when attempting to park.
2022-10-11 07:16:52 +02: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 c7b6b9a99b cleanup: Suppress unused argument warnings 2022-09-30 15:08:11 +02:00
3d-gussner 183e21aa0b
Merge pull request #3599 from 3d-gussner/MK3_MMU2_messages
PFW-1339 - Update MMU2 translations
2022-09-21 10:27:01 +02:00
Guðni Már Gilbert 28b0ef1acb PFW-1369 Use same ramming sequence as default settings in Slicer 2022-09-19 07:23:03 +02:00
3d-gussner 88b58cdcd5 Update messages missing c= r=
Change MMU2 KEEPALIVE_STATE to IN_PROCESS
2022-09-16 19:24:11 +02:00
3d-gussner f4f09e4062 update mmu2 messages c= r= values 2022-09-16 19:18:23 +02:00
3d-gussner 50b6044703 Use origin message on serial 2022-09-16 18:17:50 +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
Guðni Már Gilbert 63b4abb66d PFW-1362 SpoolJoin needs to known what the previous slot was 2022-09-16 10:23:47 +02:00
Guðni Már Gilbert 8610636906 PFW-1362 Add a log when FINDA filament runout is triggered 2022-09-16 10:23:47 +02:00
Guðni Már Gilbert 715af8fcc2 Rename files to SpoolJoin 2022-09-16 10:23:47 +02:00
Guðni Már Gilbert afc67332c7 PFW-1362 Initial commit 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
Guðni Már Gilbert 03b8a6e464 Use raise_z in more places
Change in memory:
Flash: -474 bytes
SRAM: 0 bytes
2022-09-16 10:23:47 +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 2662e09f1e Another message remove from RAM 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
D.R.racer 87a4f58e66 PFW-1363 Change MMU Error parking position 2022-09-16 10:22:38 +02:00
Guðni Már Gilbert 703c463a49 Optimize unload
Toolchange during print is now much quieter.
Excessive E-motor movement during print is now gone
2022-09-16 10:22:38 +02:00
Guðni Már Gilbert 47e57646ea Optimize load
Don't start moving the E-motor immediately

Instead of starting the E-motor move when the load to extruder starts,
we can start when we are loading to the fsensor. At that stage
the MMU has changed from a fast load to a slow load.
2022-09-16 10:22:38 +02:00
D.R.racer 6d6f9583ea Initialize retryAttempts in constructor 2022-09-16 10:22:38 +02:00
Guðni Már Gilbert 485ed4a213 Fix issue where logs show two corrupted chars
Issue only appears when LANG_MODE = 1
2022-09-16 10:22:38 +02:00
Alex Voinea bc85a41059 Fix xflash flashing 2022-09-16 10:22:38 +02:00
Guðni Már Gilbert be3f9376ba Add missing break 2022-09-16 10:22:38 +02:00
VintagePC ba52430e1d Magic numbers are bad... 2022-09-16 10:22:38 +02:00
VintagePC 69c39e2281 An attempt at fixing the retry. Discussion needed. 2022-09-16 10:22:38 +02:00
D.R.racer c412f062c8 Perform 3xRetry automatically
This is a draft PR showing the potential 3x retry implementation on the printer's side.
It is much less code and looks more reliable than the same functionality in the MMU FW.

Still, more work needs to be done:
- [ ] Button is sent to the MMU even before returning from the parking position
- [ ] Then the button is sent again
- [ ] Then the printer runs out of retryAttempts

We need to find a better spot to check for "automatic" retry and issuing of the buttons
2022-09-16 10:22:38 +02:00
Guðni Már Gilbert 6b7a018f9b PFW-1354 Fix slow button processing (#37)
* Fix MK3S buttons being processed too slowly

After a button is selected on the MK3S MMU error screen, we need to process it before asking for another MMU Query.

Because the MMU Query will make the Error screen return and overwrite the status screen

* Add back CheckUserInput for ButtonPushed event
2022-09-16 10:22:38 +02:00
Guðni Már Gilbert d420b20bd9 Add a missing break
I don't see any difference in behaviour but this should be more correct
2022-09-16 10:22:38 +02:00
Guðni Már Gilbert 3520020b24 * Correct the unload length on the MK3S side
* Pull all numbers into global constants
2022-09-16 10:22:38 +02:00
Guðni Már Gilbert 6eb2767dd2 PFW-1334 Distinguish between a retry unload and U0 unload
U0 unload uses the ramming sequence, while the retry unload does not because the MMU starts unloading much sooner
2022-09-16 10:22:38 +02:00
Guðni Már Gilbert 9a52bb5d04 Add MMU2_UNLOAD_TO_FINDA_FEED_RATE 2022-09-16 10:22:38 +02:00
Guðni Már Gilbert 59d19a8330 PFW-1334 Move E-motor on FSENSOR error retry 2022-09-16 10:22:38 +02:00
Guðni Már Gilbert b8432e6bf2 Partial fix for PFW-1334
When a FSENSOR error happens, the first step for the MK3S should be to stop any loading by stopping the E-motor.

From this point, the buttons should determine what the MK3S does next.
2022-09-16 10:22:38 +02:00
Guðni Már Gilbert ace5130d9f PFW-1375 MMU error reported by MK3S does not appear on LCD 2022-09-16 10:22:38 +02:00
vintagepc d7d6885765 PFW-1351 Cooldown timeout (#33)
* PFW-1351 WIP

* Fix bug with cooldown timing due to bad bitfield.

* Use default safety timer value for timeout
2022-09-16 10:22:38 +02:00
D.R.racer 121d43f896 Add a Try-Load-to-Bondtech operation
PFW-1347
2022-09-16 10:22:38 +02:00
VintagePC 0e96169bb3 remove logspam 2022-09-16 10:22:38 +02:00
VintagePC d9676eff25 Fixed buged temperature resume. 2022-09-16 10:22:38 +02:00
VintagePC f9bedc3c94 Button handling WIP 2022-09-16 10:22:38 +02:00
VintagePC 9a20c85a5d First pass, improving the error recovery. 2022-09-16 10:22:38 +02:00
Guðni Már Gilbert 1e391f303c PFW-1344 Fullscreen message Loading Filament
When loading a filament through the LCD,
show a full screen message:

Loading Filament N

Where N can range from 0 to 5.
2022-09-16 10:22:38 +02:00
Guðni Már Gilbert 8fd1653b84 PFW-1343 initial commit 2022-09-16 10:22:38 +02:00