Commit Graph

236 Commits

Author SHA1 Message Date
PavelSindler
11d19879fc
Merge pull request #1533 from MRprusa3d/PFW-210
preHeat @ filament load / unload / autoLoad / MMU
2019-02-15 17:45:38 +01:00
PavelSindler
9d76b6912c merge new changes from upstream 2019-02-15 17:05:39 +01:00
PavelSindler
69ff37729e whitespace 2019-02-15 14:19:30 +01:00
PavelSindler
0f791ce47f mmu needs attention: idler error fix 2019-02-15 14:17:47 +01:00
MRprusa3d
80c3420a12
Merge branch 'MK3' into PFW-210 2019-02-14 00:05:50 +01:00
MRprusa3d
ef1f82627e preHeat @ filament load / unload / autoLoad / MMU
MMU options added
2019-02-13 23:53:00 +01:00
Marek Bel
a5437cb15b Resend MMU T commands only.
This solves problem with unload repeated if unload takes too long, second ok reply then triggers Wait end and resumes print.
2019-02-13 22:29:29 +01:00
Marek Bel
a4032e437e Add MMU wait command after MMU load failed. Resume print when MMU wait command returns OK. 2019-02-13 21:28:21 +01:00
Marek Bel
daaec0ef04 Convert MmuCmd to enum class. 2019-02-13 17:12:35 +01:00
Marek Bel
8e23e7f322 Save some flash by using smaller type for filament. 2019-02-13 16:37:54 +01:00
Marek Bel
9e873ac0f7 Use enum for mmu_cmd instead of plain integer type. 2019-02-13 01:51:39 +01:00
Marek Bel
bb7eeef1f4 Define debug printf and puts functions to make code more readable. 2019-02-12 23:24:23 +01:00
Marek Bel
e1216934ef Save flash by defining underlying type and omitting number value. 2019-02-12 21:53:11 +01:00
Marek Bel
3379fb4866 Convert mmu_state to enum. 2019-02-12 21:43:26 +01:00
Marek Bel
6c8d9c6fb4 Retry filament load on MMU load failure once. 2019-02-11 23:43:42 +01:00
Marek Bel
d33b24c281 Unload filament after MMU load failed so MMU unit can be controlled by its buttons. 2019-02-11 23:24:55 +01:00
PavelSindler
9926468c91 Merge remote-tracking branch 'upstream/MK3' into variants 2019-01-30 17:26:45 +01:00
PavelSindler
83510ed489 check_for_ir_sensor 2019-01-28 17:27:16 +01:00
Robert Pelnar
eea755496b Conditional translation for SYSTEM_TIMER_2 because we want to have posibility to switch between old/new implementation.
Timing functions (millis, micros and delay) replaced in whole source, defined in Marlin.h.
This commit enables original implementation (SYSTEM_TIMER_2 undefined)
Verified with passed complete wizard process.
2019-01-27 22:48:51 +01:00
Robert Pelnar
434a723151 Timing functions 'micros' and 'delay' replaced in whole source with 'micros2' and 'delay2' 2019-01-27 17:37:27 +01:00
PavelSindler
fc1491670f mmu_idler_sensor_detected -> ir_sensor_detected 2019-01-25 18:03:05 +01:00
PavelSindler
6b6a3d7d5f MMU_IR_SENSOR_PIN -> IR_SENSOR_PIN 2019-01-25 18:01:17 +01:00
PavelSindler
7e3a1c7d45 merge changes from upstream 2019-01-25 17:57:24 +01:00
PavelSindler
661c40ef75
Merge pull request #1472 from mkbel/IR_fsens_selftest
Ir fsens selftest
2019-01-25 13:14:18 +01:00
PavelSindler
f4e5c729ac
Merge pull request #1451 from mkbel/Tx_fix
Tx fix
2019-01-24 13:41:43 +01:00
PavelSindler
e0c1e4a02d version which should on all printer versions: autoload, selftest, filament detection, filament sensors initialization, filament menus 2019-01-24 01:12:30 +01:00
Marek Bel
c371a5ea65 Document. 2019-01-22 14:05:08 +01:00
Marek Bel
a92d9c782b Add IR sensor test. 2019-01-22 11:29:55 +01:00
PavelSindler
ca8cb3784c
Merge pull request #1456 from mkbel/Fix_load_fail_current
Do not disable motor currents when print is paused due to mmu load er…
2019-01-16 12:49:38 +01:00
Marek Bel
3af1f81269 Do not disable motor currents when print is paused due to mmu load error. 2019-01-15 21:40:02 +01:00
Marek Bel
d09ff5c3e7 Remove commented out code. 2019-01-15 01:30:54 +01:00
Marek Bel
3b175459b1 Fix filament loaded to far and MMU idler never disengaged after Tx command on printer with idler sensor. 2019-01-15 01:28:51 +01:00
Marek Bel
2db42c8577 Merge branch 'MK3' into auto_deplete_2 2019-01-07 21:39:46 +01:00
PavelSindler
7946cd7250 eeprom write nr. limitation 2019-01-04 22:23:11 +01:00
PavelSindler
02262ff7ca mmu load fail: possibility to unload/eject filament from menu 2019-01-04 21:37:19 +01:00
Marek Bel
d89c03a0f1 Documentation. 2019-01-04 21:26:13 +01:00
Marek Bel
1a219b2372 Mark filament as depleted when detected by MMUv2 FINDA. Do not try to load filament if it is marked depleted, load next filament instead. Force user action when all filaments are marked as depleted. 2019-01-04 21:11:42 +01:00
PavelSindler
b7b7e9387f do resend attempts before pausing print (mmu needs attention state) so the print would not be paused if T-code is not received correctly by mmu; prevent infinite loading 2019-01-04 21:07:52 +01:00
PavelSindler
88441f7f2f scan power failures fix 2018-12-21 23:07:39 +01:00
PavelSindler
6ba86acebc send A (abort) command to mmu only when loading phase of T-code 2018-12-21 22:33:01 +01:00
PavelSindler
ba57986b72 merge changes from upstream 2018-12-21 20:58:38 +01:00
PavelSindler
5462d451e1 show power failures in fail stats menu, shorter load to nozzle if idler sensor detected 2018-12-21 20:56:45 +01:00
PavelSindler
d292e877df load to nozzle shortened, sensor menu moved to support 2018-12-21 18:51:13 +01:00
PavelSindler
3c64bad1cb initial version which works on old and new hw, initial version of idler sensor detection 2018-12-21 17:12:16 +01:00
Robert Pelnar
75d31fd2cb Repeat last MMU command after timeout 2018-12-18 18:47:54 +01:00
PavelSindler
4543949cac build without MMU_IDLER_SENSOR_PIN defined 2018-12-18 17:29:44 +01:00
PavelSindler
fc33affbda temporary change 2018-12-18 17:24:29 +01:00
PavelSindler
7703125b2e retry unload movements (T-codes, M702 C) if filament detected by idler sensor, then turn off stepper and wait, MMU_LOAD_TIME prolonged 2018-12-18 16:08:29 +01:00
PavelSindler
27c8612360 use just short movement for unloading filament 2018-12-17 21:25:07 +01:00
PavelSindler
24ef6deeed typo fixed 2018-12-13 16:43:40 +01:00
PavelSindler
9c4f086add fixed statistics for MMU_FAIL 2018-12-13 01:09:21 +01:00
PavelSindler
df71398066 statistics fix 2018-12-13 00:43:27 +01:00
PavelSindler
a9829b6a1a add statistics and idler sensor state 2018-12-13 00:12:00 +01:00
PavelSindler
665f1d7ffe pause print after N continue loading attempts and wait for user, then start print and repeat last T-code 2018-12-12 23:36:50 +01:00
PavelSindler
29ecd4ec7a duplicit T-codes execution improved, E-stepper movements when waiting for ok from mmu, continue loading function improved, eeprom: fail stats for mmu 2018-12-12 22:32:47 +01:00
PavelSindler
c256af0a1c unknown filament added; the same T-code will be not executed twice in a row; continue loading 2018-12-12 14:50:55 +01:00
PavelSindler
e52e53d1eb send continue loading commands periodically if initial load fails 2018-12-12 13:54:17 +01:00
Robert Pelnar
35378769fd MMU - idler sensor 2018-12-06 19:19:50 +01:00
PavelSindler
51b4858a87
Merge pull request #1334 from XPila/V3_5
PFW658 - disable extruder motor while changing filament with mmu2 (pr…
2018-11-13 16:10:24 +01:00
Robert Pelnar
bfc343c7c5 PFW658 - disable extruder motor while changing filament with mmu2 (prevents extruder motor overheating) 2018-11-13 16:04:46 +01:00
MRprusa3d
5e8e96b5d7 MMU module adjustment
MMU module conditional compilation adjustment for MMU v1
2018-11-12 20:09:54 +01:00
PavelSindler
22cf2c6b6b M600 load messages synchronization fixed 2018-11-09 15:31:44 +01:00
Marek Bel
e95c2ad592 Display auto deplete as not available if filament sensor is disabled. 2018-11-05 17:43:07 +01:00
PavelSindler
0a2ad97bc6
Merge pull request #1290 from PavelSindler/mmu_improvements
mmu improvements: load to nozzle, gcodes for single material mode, M600 fix
2018-11-05 10:38:05 +01:00
PavelSindler
d18013e5a2 manage response now contains showing nozzle temperature and possibility to resume saved nozzle temperature 2018-11-02 19:31:10 +01:00
PavelSindler
1342c312a0 use feedrate 200mm/min for final feed (faster and better filament sensor function), show default welcome message when load is finished 2018-11-01 16:51:18 +01:00
PavelSindler
96ce324b7c load to nozzle improved, unified feedrate and E-distance for final feed used in load filament function, M600 etc. 2018-11-01 16:29:09 +01:00
PavelSindler
e80af46503 load to nozzle and Tx and Tc codes: intial version 2018-10-31 21:48:05 +01:00
mkbel
cdb06c65f3
Merge pull request #1275 from PavelSindler/3_4_2_branch_merging
3_4_2 branch merging into MK3
2018-10-25 21:45:51 +02:00
PavelSindler
d1de9fff60 mmu_loop: missing return added 2018-10-22 20:38:32 +02:00
PavelSindler
bc247ca02c MK2.5 sw reset at setup function 2018-10-19 17:54:48 +02:00
PavelSindler
b8f92fdfa9 MK2.5 printers set mmu to stealth mode (using Mx code), required mmu2 buildnr can be different for MK2.5 and MK3 printers 2018-10-18 02:44:16 +02:00
Marek Bel
ab2d350ed1 Don't enable lcd update in lcd_show_fullscreen_message_and_wait_P(). Don't show menu in wizard when ejecting filament. 2018-09-17 21:23:13 +02:00
Marek Bel
a687b8e64a Don't enable lcd update inside mmu_eject_filament(). 2018-09-17 17:12:36 +02:00
Marek Bel
de2100ac7b Merge branch 'MK3' into MK3_dev 2018-09-12 15:22:12 +02:00
PavelSindler
1bb9e9ed92 MMU_DEBUG 2018-09-10 20:39:28 +02:00
PavelSindler
6fa798aa83 init 2018-09-10 20:08:13 +02:00
Marek Bel
0e50c388af Save 1K flash memory. 2018-09-06 15:06:46 +02:00
Marek Bel
0d99dc0a3f PFW-543 Add filament ramming when unloading filament with MMU. 2018-09-06 15:06:33 +02:00
PavelSindler
ed43913c5c
Merge pull request #1099 from mkbel/fix_compiler_warnings
Fix compiler warnings
2018-09-05 16:53:51 +02:00
Marek Bel
c95b463e0b Remove unused variable yes. Remove redundant tmp_extruder assignment. 2018-09-03 20:44:40 +02:00
Marek Bel
517fbb66bf Save 1K flash memory. 2018-09-03 20:00:46 +02:00
Marek Bel
d796df3f14 PFW-543 Add filament ramming when unloading filament with MMU. 2018-09-03 17:32:42 +02:00
Marek Bel
e5c0e26601 Merge branch 'MK3' into MK3_dev 2018-08-30 19:05:24 +02:00
PavelSindler
b2c94f36cc removed unused "out of range" function 2018-08-29 14:41:39 +02:00
PavelSindler
8a453e65f8 eject filament allowed only when nozzle is hot (there can be filament loaded in printer nozzle) 2018-08-29 13:16:17 +02:00
PavelSindler
515e78cfd1 Eject filament feature in menu, M600: if it was envoked by FINDA, eject filament 2018-08-29 01:58:28 +02:00
PavelSindler
b9808354c4 Merge remote-tracking branch 'upstream/MK3' into M600_change_extruder 2018-08-28 23:53:35 +02:00
PavelSindler
d290543d7d
Merge pull request #1085 from mkbel/fix_active_filament
Fix active filament PFW-528
2018-08-28 23:50:57 +02:00
PavelSindler
705f098b1c eject filament: initial version 2018-08-28 23:50:31 +02:00
Marek Bel
8aeb7e04f1 Fix bound check for T0 .. T4 command. Document mmu_load_to_nozzle(). 2018-08-28 18:52:16 +02:00
Marek Bel
adde0d3944 Merge branch 'prusa3d_MK3' into MK3_dev 2018-08-28 17:31:12 +02:00
PavelSindler
27bd31e255 removed redundant code 2018-08-28 11:26:35 +02:00
PavelSindler
3e2cb72695
Merge branch 'MK3' into auto_deplete_2 2018-08-28 11:01:30 +02:00
PavelSindler
755baddb54
Merge branch 'MK3' into fix_unable_to_compile 2018-08-28 10:57:19 +02:00
Marek Bel
7aadb2f660 Fix compile time error: default argument given for parameter 2 of int8_t lcd_show_fullscreen_message_yes_no_and_wait_P 2018-08-27 20:57:57 +02:00
Marek Bel
9611401b69 Fix mmu_M600_load_filament increments tmp_extruder, which is not set in case of automatic == true. 2018-08-27 20:23:43 +02:00
Marek Bel
b08ae95568 Rename autoDeplete to lcd_autoDeplete and make it global. When filament runs out, call M600 AUTO if lcd_autoDeplete is enabled. Shorten finda polling period to 300 ms. 2018-08-27 19:36:54 +02:00
PavelSindler
191e5dfddd mmu M600: dont use change extruder posibility; unload starts always imidiately 2018-08-27 16:12:10 +02:00
PavelSindler
168bc74102
Merge pull request #1075 from PavelSindler/mmu_filament_sensor
Mmu filament sensor
2018-08-27 05:26:12 +02:00
PavelSindler
b01e2a1a22
Merge pull request #1073 from PavelSindler/M600_mmu_fix
M600 mmu fix
2018-08-27 05:26:00 +02:00
PavelSindler
03fffae4c3 finda runout sensor can be turned on/off from menu 2018-08-27 05:20:42 +02:00
PavelSindler
ceb49d1262 finda filament runout: initial version 2018-08-27 04:21:43 +02:00
PavelSindler
ac3b92bade commentary fix 2018-08-26 23:55:29 +02:00
PavelSindler
b13ff8e424 Wait for ok after U0 (unload current filament) command. 2018-08-26 22:08:52 +02:00
PavelSindler
4b1f1bc6a6 mmu timeout update: no need to press knob on printer to recover paused print 2018-08-26 21:39:37 +02:00
PavelSindler
85358342bc
Merge pull request #1065 from PavelSindler/mmu_v2_continue_loading
Mmu v2: continue loading command
2018-08-25 20:03:12 +02:00
PavelSindler
0929a35a4f 5 minutes mmu timeout 2018-08-25 17:21:17 +02:00
PavelSindler
1f5bece0db check for required mmu2 firmware buildnr 2018-08-25 16:15:35 +02:00
Marek Bel
6b7e47d730 Merge branch 'MK3' into MK3_dev 2018-08-24 22:21:08 +02:00
PavelSindler
0c80eca648 merge with upstream 2018-08-24 18:30:03 +02:00
PavelSindler
68f2e22dad continue loading command 2018-08-24 18:28:05 +02:00
PavelSindler
e6ac75f6a1
Merge pull request #1061 from mkbel/MK3_dev
Merge branch 'MK3' into MK3_dev
2018-08-24 16:27:07 +02:00
Marek Bel
050a7c41d0 Fix "Check MMU. Fix the issue and then press button on MMU unit." shown instead of "Loading filament 1". 2018-08-24 03:49:51 +02:00
Marek Bel
3c9047c9cd Remove usage of global variable tmp_extruder in mmu_M600_load_filament. For automatic load filament, use mmu_extruder value as filament previously selected. 2018-08-23 23:34:45 +02:00
Marek Bel
54138407dd Encapsulate MMU internal state. 2018-08-23 23:34:38 +02:00
Marek Bel
f1c51502fd Merge branch 'MK3' into MK3_dev 2018-08-23 23:28:20 +02:00
Marek Bel
142bf28dc2 Clear communication buffer when sending load filament command to MMU.
This fixes PFW-517 in the moment, when the problem with not displaying "Loading filament 1" to "Loading filament 5" has appeared for the first time.
2018-08-23 22:05:56 +02:00
PavelSindler
a81b8dbd61 remove manage_heater 2018-08-22 16:09:38 +02:00
PavelSindler
d2aeb40bee manage response function update 2018-08-22 15:46:36 +02:00
PavelSindler
f99196a7a0 fix reseting during filament change 2018-08-22 11:09:12 +02:00
Marek Bel
3b3d6ab472 Merge branch 'MK3' into MK3_dev 2018-08-21 17:56:34 +02:00
Robert Pelnar
315bfc43dd MMU communication fix 2018-08-21 16:41:01 +02:00
Robert Pelnar
94423e6f7e MMU communication - mmu_ready 2018-08-20 20:53:53 +02:00
Marek Bel
ac62117d6b Merge remote-tracking branch 'prusa3d/MK3' into MK3_dev 2018-08-13 19:38:55 +02:00
Robert Pelnar
8409a26594 Live adjust Z - display zero in case of invalid calibration status (same logic in babystep_load and _lcd_babystep) 2018-08-10 19:55:50 +02:00
Marek Bel
d94a1c5952 Merge remote-tracking branch 'prusa3d/MK3' into MK3_dev 2018-08-09 21:26:33 +02:00
Robert Pelnar
796079bb08 MMU2 communication - connection after reset, fw versions, state machine
+removed debug log from tmc2130
2018-08-09 17:43:43 +02:00
Robert Pelnar
10cc077ee4 mmu_enabled = true removed 2018-08-08 21:05:25 +02:00
Robert Pelnar
310751397c line endings + fixed declaration 2018-08-08 20:11:57 +02:00
Robert Pelnar
23e5cea5d0 MMU - code cleaning (modularity)
M403 set filament type
hardware reset
2018-08-08 18:58:03 +02:00
Robert Pelnar
9e09efc9f4 Merge remote-tracking branch 'upstream/MK3' into MK3-new_lang
conflicts + fix
2018-08-07 20:55:08 +02:00
Robert Pelnar
71f1a1f6db MMU - communication, check after start, code cleaning 2018-08-07 20:37:59 +02:00
Marek Bel
548f4cb1fa Fix compiler warning sketch/mmu.cpp:32:6: warning: unused parameter 'extr' [-Wunused-parameter] 2018-08-07 15:01:49 +02:00
PavelSindler
0c2d0bebce merge with upstream fix 2018-08-03 19:14:17 +02:00
Robert Pelnar
468873ec68 MMU2 - removed conditional translation for SNMM_V2, new module mmu 2018-08-02 18:54:00 +02:00