Na konci března 2024 jsme začali rozesílat MMU3 pro Original Prusa MK4 (a MK3.9). Tím zároveň skončilo dlouhé období interního testování, během něhož MMU3 dokázal, že vydrží tisíce a tisíce výměn filamentů na MK4. Verzi pro MK3S+ jsme začali rozesílat v červenci 2023 a zájem o ni je pořád velký.

Aktuálně je MMU3 k dispozici pro všechny podporované tiskárny, většina verzí je skladem a den co den zkracujeme dodací lhůty verze pro MK4 (podrobnosti najdete v tabulce odesílání objednávek). Opravdu rádi taky vidíme, jak se na Redditu neustále objevuje víc a víc ambiciózních výtisků – 150+ hodinový tisk bez jediného zásahu už v dnešní době není až taková rarita. 🙂

A než se do toho začtete – odkazy na všechny modely z obrázků najdete na konci článku!

MMU3 – rychlý a efektivní

Existuje řada důvodů, proč se MMU drží stejného základu.

První je ten, že MMU je vlastně neuvěřitelně jednoduché zařízení – celou jednotku si můžete snadno sestavit sami doma (nebo upgradovat předchozí verzi), údržba je hračka, protože dostat se do jednotky abyste vyčistili případné zbytky plastu se dá snadno a rychle atd. S nejnovější MMU jsme to dotáhli ještě dál a vylepšili jsme několik jejích součástek, takže teď můžete např. nastavit sklon jednotky ve dvou krocích pro pohodlnější přístup. Taky jsme přepracovali většinu částí jednotky a vyztužili je kovovými díly. A tady bychom rádi poděkovali celé 3D tiskové komunitě za to, že nás nasměrovala správným směrem jak svými návrhy, tak uživatelskými modifikacemi – více informací o změnách v hardwaru najdete v našem dřívějším článku.

Konstrukce MMU3 taky umožňuje opravdu rychlou výměnu filamentu – v průměru se pohybuje mezi 35 a 45 sekundami v závislosti na hodnotách objemu čištění nastavených v PrusaSlicer. MMU3 vám ušetří spoustu času – během jediného vícemateriálového tisku se počet výměn filamentu pohybuje v řádech tisíců, takže se počítá každá ušetřená vteřina. Rychlejší je už jen Original Prusa XL.

Další věcí, kterou jednotka MMU3 umožňuje, je tisk z více materiálů s minimálním odpadem. Namísto odřezávání a vytlačování nadbytečného filamentu MMU3 používá kompaktní, částečně dutou čistící věž. A velikost samotné čistící věže se dá zmenšit ještě víc využitím funkcí “Vyčištění do objektu” a “Vyčištění do výplně objektu” – pokud je nastavíte, přebytečný materiál v trysce se využije buď pro tisk daného objektu nebo jako jeho výplň. Tak jako tak si pak nemusíte lámat hlavu s tím, co dělat s plastovým odpadem, který by se vám jinak hromadil u tiskárny.

Takže i když celé zařízení možná vypadá podobně jako jeho předchůdce, tisk s ním je úplně jiný zážitek. Mimo jiné i díky kompletně přepracovanému firmwaru – pokud mi nevěříte, rozhodli jsme se níže podělit o celý proces vývoje nové verze 😉 Díky plně obousměrné komunikaci mezi oběma deskami je konfigurace a spouštění vícemateriálových tisků mnohem snazší. A barevný dotykový displej na MK3.5/MK4 vám dává další možnosti, jako například rychlé přemapování filamentů nebo nastavení funkce SpoolJoin pro využití zbytků filamentu z téměř prázdných cívek.

A v neposlední řadě jsme se rozhodli zachovat design podobný MMU2S, takže upgrade vaši starší jednotky je možný, snadný a levný. Samozřejmě můžete taky “jen” do vaší jednotky MMU2S naflashovat firmware MMU3 a zlepšit tak její výkon, aniž byste museli vyměňovat jakékoli díly.

MMU3 pro MK4

Teď se nabízí otázka: proč vydání MMU3 pro MK4 trvalo déle, když ostatní verze jsou na trhu od poloviny roku 2023?
Podrobně jsme to rozebírali na blogu, takže tady jen stručně: plně funkční MMU3 pro MK4 jsme měli připravený k expedici přibližně v dubnu 2023 a čekali jsme, až se dostatečně uvolní naše výrobní kapacity – MMU3 byl naplánovaný na červen 2023. Když se ale přiblížilo léto a začaly stoupat teploty, zaznamenali jsme náhlý pokles jeho spolehlivosti (MMU3+MK4). Proč na MK3S+ fungoval bez problémů a s MK4 měl problémy? Příčina byla v rozdílných systémech extruze a hotendu. Do té chvíle jsme měli perfektně fungující kombinaci – a najednou jsme zase byli tam, kde jsme začali.

Založili jsme tedy testovací farmu a okamžitě začali pracovat na vývoji řešení. Jak jsme popisovali už dřív, výtisky s MMU snadno zaberou i víc jak 30 tiskových hodin, a to dělá jakékoliv testování výrazně časově náročnějším.

Ukázalo se, že příčinou problému byly konce filamentu – jakmile vysunete filament z extrudéru, musí být špička na jeho konci pro jeho další zavedení naprosto dokonalá. V našem případě ale vysunuté filamenty měly na konci často dlouhý, tenký plastový „ocásek“, který v natěsno navrženém Nextruderu způsoboval problémy. Podrobně jsme to celé popisovali v našich předchozích updatech (říjen 2023 a leden 2024).

Extrémní případ stringování na špičce filamentu

Poslední z nich jsme zakončili konstatováním, že většina problémů u verze pro MK4 je způsobena tím, že filament neprochází extrudérem a do vedení filamentu dostatečně hladce. A to mě přivádí k…

„Main Plate“ Nextruderu

Abychom dosáhli požadované úrovně spolehlivosti při častém zavádění/vysouvání filamentu, museli jsme v Nextruderu upravit součástku „Main Plate“ – proto je také součástí balení MMU3. Taky jsme upravili proces vysouvání filamentu tak, aby byl ještě efektivnější a mnohem rychlejší!

Když MK4 používáte „běžným způsobem“ a dokonce i když budete filamenty sami ručně měnit několikrát za den, nebude Main Plate vykazovat téměř žádné známky opotřebení – ani po delší době. Ale při vícebarevném tisku se během jediného výtisku může počet výměn filamentu snadno vyšplhat na tisíce – bez MMU se vám takový počet výměn nastřádá nejdřív za celé roky a roky opravdu častého tisku. Takže při takovém množství výměn filamentu během vícemateriálových tisků může Main Plate začít vykazovat známky opotřebení v závislosti na tom, jak intenzivně MMU používáte.

Součástka, kterou s jednotkou MMU dodáváme, byla vytištěna technologií Multi Jet Fusion, aby měla delší životnost. Stále je však potřeba s ní počítat jako se spotřebním materiálem, protože se časem opotřebuje. Tiskárna sleduje a počítá výměny filamentu a upozorní vás, že se předpokládaná životnost tohoto dílu blíží ke konci, nebo že se proces zavádění filamentu stal méně spolehlivým z důvodu nadměrného opotřebení. Podle našich interních testů MJF díl vydrží přibližně 80 000 výměn filamentu a pak už je potřeba ho vyměnit (výměna zabere přibližně 10 minut). Tuhle součástku jsme podrobili opravdu důkladnému internímu testování, takže pokud se vám projeví nějáké problémy dřív, než by se mělo projevit opotřebení, jsou nejspíš způsobené něčím jiným. V takových případech neváhejte kontaktovat naši technickou podporu. Jako krátkodobé řešení si můžete díl vytisknout z PETG – STL soubor najdete na Printables.com. Životnost tištěného PETG dílu však bude znatelně kratší.

Cesta k MMU3

Na přelomu let 2021 a 2022 začal náš firmware lead David sestavovat seznam funkcí pro nový firmware MMU2S. Původně bylo jediným cílem zobrazit na obrazovce tiskárny řádná stavová hlášení, když MMU narazí na problém. Ale nakonec z toho vznikl kompletně nový projekt, který měl za cíl přidat plnohodnotnou obousměrnou komunikaci, řádná stavová hlášení a spoustu dalších funkcí, které zajistí, že jednotka MMU bude mnohem méně náchylná k problémům spojeným s montáží. Uvědomili jsme si totiž, že montáž MMU vyžaduje až příliš mnoho trpělivosti – takže se prostě nedá zajistit, že bude všechno úplně PERFEKTNĚ seřízeno.
U našich 3D tiskáren to nikdy problém nebyl (jak říká spousta komentářů na internetu, „montážní sada prostě funguje“), takže u MMU nás to vlastně dost překvapilo. Obzvlášť proto, že uživatelé vyjádřili svoji frustraci dost silně a nahlas.

Obvykle se nepřihlašujete online proto, abyste všem řekli „Všechno je v pořádku.“”, ale proto, abyste si našli řešení problému. Takže když se začaly objevovat dotazy a žádosti o pomoc s MMU2, vyvolalo to v mnohých pocit, že MMU2S prostě nefunguje – a to tak, že vůbec. Ale většina uživatelů s tiskem z více materiálů ve skutečnosti neměla žádné větší potíže. A když se začaly objevovat různé komunitní modifikace a opravy, měly různou míru úspěšnosti – a to právě proto, že bylo příliš obtížné MMU sestavit s dostatečně vysokou přesností. Příčina problémů tak často byla na různých místech. Tyhle připomínky jsme vzali velmi vážně. Taky jsme všem uživatelům MMU2S poslali informace jak jejich jednotky MMU vylepšit novým firmwarem a nabídli jim možnosti, jak kompenzovat problémy při montáži.

Firmwarová spása

Celou situaci jsme důkladně analyzovali – prošli jsme příspěvky uživatelů na sociálních sítích, videa, recenze, modifikace a samozřejmě reporty od technické podpory. Původně jsme chtěli firmware přepracovat tak, aby byl uživatelsky přívětivější, protože jednotka používala ke komunikaci s uživatelem sice jednoduchý, ale poněkud záhadný systém pěti LEDek. To byla jedna z věcí, která přispěla ke vzniku zmatku na sociálních sítích. „Ale ne! Blikají mi první a třetí LEDka! Co to znamená?“ Zbytečně to ztěžovalo řešení i jinak naprosto jednoduchých problémů, na které můžete při tisku narazit. Daleko větší smysl by přece dávalo, kdyby vám tiskárna uměla rovnou říct „Něco blokuje rotaci idleru, prosím zkontrolujte následující:” namísto blikání LEDkami.

 

Asi není třeba dodávat, že původní firmware pro MMU2 vyvíjel před mnoha lety malý tým, a že v posledních několika letech se toho u nás hodně změnilo. David se tedy rozhodl vylepšit stávající codebase, ale z toho, co se na začátku tvářilo jako jednoduchá aktualizace firmwaru, se vyklubal zcela nový projekt, který vedl až k uvedení MMU3. Namísto rozšíření starého kódu se stávající codebase vyhodila z okna a nový firmware začínal od nuly. Na druhou stranu kompletní přepracování kódu vedlo k obrovskému zlepšení celkového výkonu – což se při vývoji softwaru nepodaří vždycky. 😉

Návrh zbrusu nové architektury firmwaru byl hotový za dva měsíce. Původně jsme uvažovali o IDE Arduina, ale od toho jsme později upustili, protože nám neumožňovalo vše, co jsme si naplánovali.

Firmware stojí na třech vrstvách:

  • HAL – Hardware Abstraction Layer – obstarává přístup k timerům, pinům, watchdogu, EEPROM, USART atp
  • Moduly – abstrakce komponent na jednotce – tlačítka, senzor FINDA, Fsensor, Idler, LEDky, pohyb krokového motoru, permanent storage, protokoly, řemenice, selektor, serial, časování, USB CDC, uživatelský vstup
  • Aplikační logika – obsahuje aplikační logiku funkcí, které MMU provádí – například Cut, Eject, Home, HW sanity check, filament load, unload a další

Jednou z věcí, které předchozí firmware brzdily (krom toho, že měl kořeny v roce 2017), bylo to, že byl napsán jako synchronní kód. To v podstatě vylučovalo jakoukoli aktualizaci tiskárny, pokud jednotka MMU prováděla nějakou akci. Než mohla jednotka MMU reagovat na jakýkoli nový vstup nebo situaci, musela dokončit svůj cyklus. Navíc ve skutečnosti nevěděla, co se děje s tiskárnou – pouze neustále přijímala příkazy, které pak prováděla. S novou architekturou tomu tak už není. Vše funguje jako paralelní stavový stroj a tiskárna i MMU spolu neustále komunikují a informace se sdílejí v reálném čase. Systém tak může sám vyřešit spoustu situací, které by jinak vyvolaly hlášení „MMU vyžaduje pozornost uživatele“. Nepodařilo se zavést filament? Automaticky to zkusíme znovu. Výborně, teď už to funguje, pokračujeme.

 

A to všechno na jednoduchém čipu ATMega 32U4. Ale kvůli omezeným zdrojům není reálné na něm provozovat vestavěný operační systém s multitaskingem. To jsme si museli zařídit sami. Tedy, není to tak docela „skutečný“ multitasking. Spíš “jen” chytrá architektura, která zajišťuje, že žádná komponenta nikdy nemůže blokovat ostatní – takže všechno běží hladce.

Unit testy a integrace

David a jeho tým strávili měsíce vývojem firmwaru pouze pomocí unit testů (softwarové testování malých částí kódu) a vždy kontrolovali, zda avr-gcc dokáže kód zkompilovat. Fyzicky se testovalo jen s částečnou implementací komponent HAL. A když vývoj dospěl do pozdějších fází, vývojový tým konečně nahrál firmware do desky MMU2S – a fungoval skvěle, což dokázalo, že cesta testy řízeného vývoje funguje i ve své nejčistější formě.

Důležitou součástí nového firmwaru byla implementace řádných chybových hlášení – a to znamenalo připravit druhou stranu (tiskárnu) na komunikaci. A dvě různé větve firmwaru (MK3S+ s deskou Einsy a 32bitový MK4 s deskou xBuddy) znamenaly „něco málo“ práce navíc.

Nakonec i tady využíváme stavové stroje. Řídicí zařízení je tiskárna a MMU pouze reaguje na příkazy (ale teď už umí „podávat hlášení“). Že výkonnější procesor v tiskárně řídí komunikaci, požadavky a další činnosti ostatně dává smysl. Nad tímto komunikačním protokolem je ještě jedna vrstva, která propojuje protokol s firmwarem Marlin. Tady jsme chtěli zachovat svrchní vrstvu API, ale všechno ostatní jsme vyhodili a kompletně přepsali.

Bylo to neuvěřitelné množství práce, ale nakonec to stálo za to. Komunikace mezi oběma zařízeními probíhá hladce a celý proces je prakticky bezproblémový.

A pak hardwarový tým přišel s několika nápady.

Poupravit tohle, přenastavit tamto…

Už jsme zmínili, že modifikace se kterými přišla komunita pro nás byly důležitým ukazatelem, který nám pomohl zaměřit se na ty nejdůležitější oblasti.

V době, kdy probíhala práce na novém firmwaru, se náš tým hardwarových vývojářů podíval na jednotku MMU a rozhodl se… no – „poupravit tohle, přenastavit tamto“.
Nakonec takhle přepracovali většinu komponent s výjimkou elektroniky.
Detaily si můžete, jako obvykle, přečíst v našem předchozím článku.

Firmwarový tým se mezitím rozhodl přidat do codebase ještě jednu komponentu. A to docela velkou: podporu registrů. Přesněji řečeno: runtime parametrizaci MMU, podobnou systému registru MODBUS. Dokonce se objevil pokus o použití celého protokolu MODBUS, nicméně vzhledem k omezeným zdrojům MK3S+ se od toho upustilo ve prospěch upravené verze protokolu MMU. Ten nyní přidává 35 záznamů registru (1 a 2bajtových) – některé jsou pouze pro čtení, jiné pro čtení/zápis a některé jsou trvale v paměti EEPROM. To nám dává celou řadu nových možností, včetně nových G-kódů M707 a M708 pro čtení/zápis položek registru. To umožňuje například nastavit rychlost zavádění filamentu před každou výměnou. Každá tiskárna také na začátku svou jednotku MMU parametrizuje – což nám umožňuje mít pouze jeden MMU firmware pro všechny podporované modely tiskáren.

Silnější není vždycky lepší

Když MMU3 vkládá filament do extrudéru, je to poměrně jednoduchá operace. Idler se protáčí, vyvíjí tlak na filament a přitlačuje ho k podávacímu ústrojí. Ozubené kolo se začne otáčet a tlačí filament přes selektor a teflonovou trubičku do extrudéru.

Naše původní myšlenka byla, že potřebujeme co největší tlak. Proč taky ne? Filament potřebujete protlačit teflonovou trubičkou a nechcete, aby proklouzl nebo ztratil kroky. Ale ve skutečnosti tomu tak není. Pohyb filamentu kontrolují dva senzory filamentu (v MMU a v tiskárně), takže je úplně jedno, jestli motor nějaké kroky vynechá. A ani nemusí běžet na plný výkon.

Tím se výrazně snižuje pravděpodobnost vzniku otisků ve filamentu- příliš silný pohon by filament v podstatě ohobloval a zabránil by jeho posunutí převodovkou dál. Sebevětší výkon je k ničemu, když kola nedokážou točivý moment přenést na vozovku. Míň proudu do motoru znamená, že pokud se filament někde zasekne, motor nebude materiál hoblovat a zadělávat tak na další problémy o půl hodiny později, až se tahle sekce filamentu dostane do extrudéru. Když MMU vyčerpá přednastavený rozsah/délku kroku, zobrazí chybu. Kus filamentu se ale dá ještě znovu použít (takže vyhazovat ho nemusíte).

Starý firmware MMU taky na rozdíl od tiskárny neměl vlastní stepper a planner engine. Jednotka tak byla hlučnější, než by musela být, a navíc bylo téměř nemožné ovládat zrychlení jinak než změnou kódu. S novým firmwarem tomu už tak není. Teď už má jak stepper tak planner engine, a řídí 3 osy najednou – včetně zrychlení vzestupných posunů. To nám umožňuje řídit rychlost a zrychlení všech motorů dynamicky, za chodu. Taky jsme změnili způsob, jakým drivery TMC2130 provádějí homing (měříme délku os), což mimo jiné přispívá k tomu, že je jednotka tišší a spolehlivější.

O firmwaru MMU3 by se tu určitě dalo rozepsat ještě víc detailů a příběhů, ale ty jsou všechny ještě víc technické než to, co jste si právě dočetli. Takže spíš možná někdy příště. 🙂

Barevný tisk s menším odpadem a větším komfortem

No a to by byl konec našeho shrnutí současné situace kolem MMU3. Jednotka je k dispozici pro všechny podporované modely tiskáren, funguje naprosto skvěle a můžete s ní s minimem námahy dosáhnout opravdu působivých výsledků.

Frontou objednávek MMU3 se prokousáváme rychleji, než jsme čekali, takže pokud na vaši jednotku pořád ještě čekáte, bude na cestě k vám už opravdu brzy! A pokud už s více filamenty tisknete, určitě se s námi podělte o vaše výsledky! Těšíme se na ně a nemůžeme se dočkat, až je uvidíme!

Tisku zdar!

 

Odkazy na modely:

https://3dsets.com/product/model-7-buggy/

https://www.printables.com/model/384371-the-frog-prince-multi-and-single-colour-fairytale-

https://www.printables.com/model/748459-articulated-sea-turtle-singlecolor-and-multicolor

https://www.printables.com/model/576954-chibi-wolverine

https://www.printables.com/model/144657-mini-viking

https://www.printables.com/model/379304-astronaut-sitting-on-moon

https://www.printables.com/model/138600-cat-sculpt-with-mmu-painting

https://www.printables.com/model/563626-lola-bunny-space-jam

https://cults3d.com/en/3d-model/art/kingfisher-mmu-three-versions