Při příležitosti konání našeho prvního Prusa Hackathonu, na který se můžete podívat v našem krátkém videu, jsme se rozhodli pozvat naše nejaktivnější komunitní vývojáře firmwaru. Chtěli jsme si popovídat o aktuálních plánech vývoje, ale i se prostě lépe poznat. Tito 3 pánové několik měsíců pracovali na projektech, ze kterých bude těžit celá komunita 3D tisku. A dělali to ve svém volném čase aniž by očekávali jakoukoliv finanční odměnu.
V minulosti jsme bohužel přehlíželi dobrou kvalitu některých komunitních příspěvků do našeho repozitáře na GitHubu. Kvalita kódu byla v některých případech opravdu vysoká a pro začlenění do oficiálního firmwaru stačilo jen minimum změn. Kolem poloviny minulého roku (2019) si těchto příspěvků ale všimnul David, náš nový vedoucí firmware týmu. Na GitHub jsme zveřejnili příspěvek, ve kterém jsme se za naši nečinnost omluvili a od té doby jsme obdrželi stovky pull-requestů, neboli žádostí o začlenění změny do kódu. A celá řada z nich se skutečně dostala až do oficiálního firmwaru běžícím na tiskárnách Original Prusa!
Po dlouhou dobu s námi tito tři vývojáři spolupracovali, aniž bychom se s nimi kdy setkali tváří v tvář – až do teď. Seznamte se: Leptun, Wavexx a 3D-gussner!
Zleva – Leptun, Wavexx, David (náš vedoucí firmware týmu) a 3d-gussner
Jak jste se dostali k Prusa tiskárnám a k hackování našeho firmwaru?
Leptun
Všechno to začalo, když jsem se ve škole připojil k týmu robotiků, kde jsme na 3D tisk měli k dispozici tiskárnu Original Prusa i3 MK2S. Naše MK2S byla opravdový dříč. Přestože někdo zapomněl zarovnat sondu PINDA a podložku trefil tryskou nejmíň desetkrát, v průběhu let nám spolehlivě sloužila. Tu a tam jsem drobně upravil firmware, ale první velká výzva přišla s vydáním MK3. Rychle se ukázalo, že vývojáři mají plné ruce práce s novou tiskárnou. Byl jsem trochu zklamaný, protože firmware pro MK3 obsahoval opravy chyb a nové funkce, které do značné míry podporoval i hardware MK2S. Vývojáři však neměli čas je všechny implementovat i pro MK2S. Takže jsem se rozhodl vytvořit nový firmware, který tyto změny obsahoval i na starší MK2. Myslím, že jsem odeslal několik malých pull requestů, jako je například překlep ve firmwaru MMU. Což byla docela sranda, vzhledem k tomu, že jsem sám MMU nevlastnil. Můj první velký příspěvek bylo řešení chyby v selftestu, týkalo se to narážení do podložky. Mimochodem, to byl první projekt, kde jsem začal spolupracovat s Yurim (wavexxx).
Wavexx
Jsem velkým fanouškem open-source projektů a otevřený firmware je pro mě jednou z nejdůležitějších vlastností, které moje tiskárna má. Otevřený firmware byl bohužel dlouhou dobu doménou levných čínských tiskáren. Nemám nic proti levným čínským tiskárnám, taky jsem jednu měl, ale někdy prostě chcete víc tisknout a méně bastlit – tak jsem si koupil Original Prusa i3 MK3. Mým prvním velkým projektem a pull requstem bylo přidání převodu na extruder, protože jsem potřeboval tisknout s velmi malou tryskou. Při tisku vydával extruder podivné zvuky a modely nevypadaly dobře, zejména v blízkosti rohů. Začal jsem problém zkoumat a zjistil jsem, že je to kvůli funkci Linear Advance, která byla implementována na MK3. V původním Marlin firmwaru jsem objevil opravu podobného problému, a tak jsem ji začal implementovat do firmwaru MK3. Říkal jsem si, že to bude na pár víkendů a bude hotovo. Jak těžké by to mohlo být, že? Nakonec to trvalo 6 měsíců 🙂
3d-gussner
Pro mě vše začalo, když jsem se přestěhoval do Belgie a chtěl si pořídit 3D tiskárnu. Po důkladném průzkumu trhu se Prusa stal nejlepším kandidátem, zejména díky svému open-source firmwaru, skvělé technické podpoře a velké přátelské komunitě. Tak jsem si koupil moji první Prusa stavebnici. Během montáže jsem narazil na několik problémů, takže jsem pomocí komentáře navrhl, jak to napravit – k mému překvapení bylo řešení skutečně implementováno v další verzi manuálu. Protože jsem také členem makerspacu v Belgii a docela často pracuji s dětmi, myslel jsem si, že by bylo hezké mít menu tiskárny v nizozemštině, tak jsem se podíval na překlad firmwaru. Zveřejnil jsem svou jazykovou mutaci na GitHubu, získal zpětnou vazbu a lidé najednou začali posílat textové zprávy z celého světa a nabízeli mi své překlady, jestli je mohu začlenit do firmwaru.
Používáte vlastní firmware?
Leptun
Ano, téměř neustále něco vyvíjím, takže testuji vlastní firmware se změnami, které dosud nebyly sloučeny s oficiálním firmwarem. Upravil jsem menu tisku z SD karty a podařilo se mi ho až třikrát zrychlit. Stále odstraňuji a opravuji drobné chyby a pokud všechno půjde dobře, měly by být implementovány v další aktualizaci firmwaru.
Wavexx
Původní firmware na mých tiskárnách nehledejte 🙂 Vlastně ani hardware. Na tiskárnách Prusa je skvělé, že si je můžete koupit i jako stavebnici. Manuál je podle mého názoru opravdu fantastický a je škoda, si tiskárnu koupit již sestavenou. Je to trochu jako IKEA, když si něco sami sestavíte, tak je to prostě lepší. Máte z toho pak dobrý pocit, i když je výsledná tiskárna stejná, jako už sestavená.
3d-gussner
Já jsem si na svou tiskárnu (MK2) přidal několik senzorů, třeba senzor filamentu, takže tahle tiskárna má firmware dost předělaný. Pak mám dvě tiskárny MK3, z nichž jedna jede na vlastním firmwaru a druhá běží na původním. Myslím, že bych si měl nechat alespoň jednu zcela beze změn s nejnovějším firmwarem.
Vidíte zlepšení v tom, jak naši vývojáři zpracovávají požadavky komunity?
3d-gussner
Já jsem s odezvou vývojářů neměl nikdy problém. Asi hlavně proto, že jsem na začátku dělal hlavně jazykové mutace. Vím, že při vývoji open-source firmwaru existuje mnoho překážek, takže za mě je vše v pořádku.
Leptun
Vidím zvýšenou aktivitu na Prusa GitHubu, přibývá stále více požadavků začlenění změny firmwaru. Myslím, že se to opravdu změnilo poté, co nastoupil David (vedoucí firmwaru) a nyní je to skvělé.
Wavexx
Rozhodně vidím zlepšení. Jako open-source vývojář vím, jak těžké je řídit projekty s tolika různými vývojáři, z nichž každý má jiný přístup k danému tématu. V minulosti bylo docela těžké upoutat pozornost někoho z Prusa Research. Musím ale zdůraznit, že v poslední době se to změnilo, komunita na GitHubu je velmi aktivní a vývojáři rychle reagují.
Přestože spolupracujeme už dlouho, je to poprvé, kdy jsme se osobně setkali. Je to také vaše první návštěva v Prusa Research. Jak se vám tu líbí?
3d-gussner
Naprosto to tu zbožňuji, lidé jsou tu úžasní. Je super, kolik profíků se vám podařilo dostat pod jednu střechu. Kamkoliv jdete a začnete se s někým bavit, všichni jsou přátelští a prostě nadšení z toho, co dělají. Neformální diskuse se obvykle rychle změní ve velmi odbornou. Také se mi líbí, jak se takové velké společnosti podařilo zůstat nohama pevně na zemi. Prusa není korporát a pravděpodobně jím ani nikdy nebude – a to je dobře.
Wavexx
Po tom, co jsem si firmu prohlédnul, bych měl jedno doporučení. Přestože rychle rostete, zůstaňte trochu punkový. Je tu ta správná směs lidí, šílených v dobrém slova smyslu!
David (vedoucí firmware týmu)
Nemám skoro co dodat, kluci to řekli za mě. Prusa je punk, ale je to ten správný punk a já to tu miluju.
Leptun
Líbí se mi tu. Prohlídka byla super a musím říct, že mě příjemně překvapilo, jak moc fajn je personál. I lidé, kteří provozují filament linku, si o tom s vámi rádi popovídají. Myslím, že kdybych bydlel v Praze, chtěl bych tady pracovat.
Nějaká rada pro někoho, kdo přemýšlí, že by sám zkusil vylepšit firmware?
3d-gussner
Dělejte to srdcem! Pokud se vám váš nápad líbí, prostě jděte a zkuste to.
Wavexx
Někdy stačí sdílet i samotný nápad!
3d-gussner
Já jsem nikdy nezažil tak přátelskou komunitu jako je právě skupina lidí okolo 3D tisku. Všude se samozřejmě najde pár kazisvětů, ale drtivá většina jsou přátelští lidé, kteří vám rádi pomohou.
Jsme velmi vděční za to, že se naše komunita tak angažuje i ve vývoji firmwaru. Leptun, Wavexx a 3d-gussner jsou svým způsobem prvními členy našeho komunitního vývojářského programu a my budeme i nadále sledovat náš GitHub a hledat další aktivní členy.
Pokud se chcete dozvědět více o našem firmwaru a nebo dokonce zkusit nečím sami přispět, podívejte se na:
- Dokumentaci platformy 32bit Buddy, na které je založen původní firmware Prusa MINI
- Repozitář 8 bitového firmwaru na GitHubu
- Repozitář 32 bitového firmwaru na GitHubu
Tisku zdar!
🙂