Commit Graph

237 Commits

Author SHA1 Message Date
MRprusa3d da0867cfc5 preHeat @ filament management
another funcionality
2019-02-20 03:01:33 +01:00
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