Nahrání firmware Marlin

Dobrý den, vítám vás u dalšího článku z dílny malé továrny na velké věci. V minulém článku jsme podívali na PID autotune a řízení teploty, což je jedna z mnoha rozšiřujících funkcí firmware Marlin. Proto je nejvyšší čas, podívat se, jak takový alternativní firmware nahrát do řídící desky naší tiskárny. Postup je univerzální pro mnoho základních desek pracujících s mikrokontrolerem AVR já vám však postup vysvětlím právě pro desku Anet A8.

Historie skupiny Marlin

marlinfw.org

První verze Marlin firmware byla vytvořena v roce 2011 pro 3D tiskárny RepRap a Ultimaker, dnes již Marlin řídí většinu světových 3D tiskáren. Spolehlivě zajišťuje vynikající kvalitu tisku a zároveň zaručuje plnou kontrolu nad procesem tisku. Jako open source projekt hostující u společnosti Github je společnost Marlin vlastněna a spravována komunitou tvůrců.

 

Proč přejít na Marlin?

Pokud vaše tiskárna funguje bez potíží, možná se ptáte proč firmware vůbec měnit. Důvodem je neustálý pokrok ve vývoji 3D tisku a stále nové vylepšení a funkce. Mezi hlavní výhody patří:

  • vylepšené řízení teploty PID
  • výběr z více než 20-ti jazyků včetně češtiny
  • načítání SD karty bez restartování tiskárny
  • plná podpora více než 150-ti gcode příkazů
  • snadný přístup k nastavení všech důležitých kalibračních prvků, kroky\akcelerace\jerk

Příprava

Ze všeho nejdříve se podívejme, kde tento firmware získáme a co vše budeme potřebovat k flashování / nahrávání.

  • Oficiální stránka skupiny marlinfw.org nás při stažení odkazuje na stránku https://github.com/MarlinFirmware/Marlin kde se nachází repositář všech jejich distribucí. V současné chvíli je poslední verzí číslo 1.1.8.
  • Pro samotné nahrání budeme potřebovat programovací prostředí Arduino IDE ze stránky https://www.arduino.cc/en/Main/Software
  • Ovladač pro AVR čip použitý na Anet desce CH340. K nalezení je na mnoha stránkách případně si jej stáhněte od nás ZDE
  • Ovladač desky Anet pro prostředí Arduino IDE. Opět k nalezení na spoustě stránek, případně stahujte od nás ZDE
  • USB kabel na propojení desky s počítačem (USB-A / USB-B). Standardně bývá součástí tiskárny.

Všechny stažené soubory si rozbalíme z archivů a Arduino IDE a ovladače CH340 si nainstalujeme. Instalaci popisovat nebudu, je to standardní postup.

Protože by nastavení všech funkcí Marlin firmware vydalo na samostatný článek, budeme se jím zabývat někdy příště. V tomto návodu použijeme defaultní nastavení připravené právě pro tiskárnu Anet A8. Přednastavené soubory “Configuration.h” a “Configuration_adv.h” najdete ve složce s Marlinem ( \Marlin-1.1.x\Marlin\example_configurations\Anet\A8 ). Vše máme tedy připravené komunitou a nyní tyto soubory stačí vložit do hlavní složky ( \Marlin-1.1.x\Marlin\ ).

přednastavené soubory pro tiskárnu Anet A8

Dále vložíme knihovnu Anet z rozbalené složky anet-board-master do prostředí Arduino IDE nakopírováním složky “anet” do umístění \dokumenty\arduino\hardware

knihovna anet pro arduino IDE

Nyní již spustíme samotné Arduino IDE otevřením projektu Marlin.ino ze složky Marlin ( \Marlin-1.1.x\Marlin\Marlin.ino ). Otevře se okno se spoustou programového textu, několika záložkami a pár ovládacími tlačítky.

https://3dfactory.cz/2018/06/12/jak-vypalit-zavadec-anet/
Vývojová deska Anet V1.0

Před samotným nahráním programu je ještě třeba toto prostředí správně nastavit. Z nabídky “Nástoje / Vývojová deska:” vybereme nově vloženou knihovnu pro desku “Anet V1.0”. Jako to vidíte na obrázku výše. Dále vybereme správný COM “Port” ke kterému je tiskárna připojená. Obvykle to bývá COM1 až COM4 ale může to být různé. Arduino IDE vám nabídne pouze porty na kterých je připojený nějaký AVR čip. Pokud se vám jich objeví na výběr několik, stačí tiskárnu odpojit a podívat se který port z nabídky zmizel. Nebo se podívejte do správce zařízení. Ještě zkontrolujte, jestli máte jako programátor vybrán AVRISP mkii

https://3dfactory.cz/2018/06/12/jak-vypalit-zavadec-anet/
Programátor AVRISP MKII

Flash

Pokud jste prošli všemi kroky a dostali se v článku až sem, nezbývá než celou věc odpálit a konečně nahrát Marlin do našeho Anet boardu. Uděláte to kliknutím na kulatou ikonu šipky, vlevo nahoře. Programovací prostředí si nejprve připraví “zkompiluje” všechny potřebné části programu a pak přejde k nahrávání. Při tzv. kompilaci jistě narazí na několik drobných nesrovnalostí s časovači atd. a upozorní vás na to oranžovým textem ve spodní, černé,části okna. Nemusíte se obávat, není to zcela správně ale zároveň to není chyba. Pokud vše dopadlo dobře, Arduino IDE vám oznámí “konec nahrávání” v modrém proužku okna, nad černou částí. Tiskárna se restartuje a na displeji již můžete vidět úvodní obrazovku Marlin…

Řešení potíží

Jestliže se nahrávání nepodařilo a firmware nebyl nahrán, v černé části okna Arduino IDE o tom budete informováni společně s důvodem proč se to nepodařilo. Příčin může být několik, avšak nejčastěji jde o chybějící zavaděč (bootloader) u desky Anet v.1.5. Taková chyba bývá označena tímto textem:

avrdude: stk500v2_ReceiveMessage(): timeout

avrdude: stk500v2_getsync(): timeout communicating with programmer

An error occurred while uploading the sketch

Jak tento problém vyřešit si ukážeme hned v příštím článku. Použijeme vývojovou desku arduino, třeba UNO, jako programátor a pomocí jednoduchého zapojení si vypálíme zavaděč do našeho AVR čipu na Anet desce.

* Novější verzi článku i s videonávodem najdete zde: Více funkcí, více místa, to je optiboot

14 thoughts on “Nahrání firmware Marlin

  1. Ahoj,

    velmi uzitecny clanek, jen male info co bych trosku upravil je kam ty konfiguracni soubory nahrat, chvilku mi trvalo nez jsem na to prisel 🙂

    1. Dobrý den Jiří, děkuji za doplnění. Článek jsem upravil přidáním informace, kam konfigurační soubory vložit. Doufám, že to dalším čtenářům pomůže.

  2. Dobrý den, mám Anet s deskou verze 1.5 a nahrání Merlinu dle Vašeho návodu nebyl problém. Jenom taková drobnost zde chybí. Pokud chcete mít české menu je potřeba před nahráním v Arduinu nastavit v záložce Configuration.n na řádku “#define LCD_LANGUAGE en” změnit na “#define LCD_LANGUAGE cz” .

    1. Děkuji za věcný komentář. Chystám samostatný článek o nastaveních ale je to dost komplexní systém takže to bude ještě chvíli trvat.

    1. Pravděpodobně budete muset do čipu na desce vypálit zavaděč. Na stránkách je k tomu sepsán článek.

      1. Dobrý den, děkuji za odpoveď.
        nic méně mi dnes přišlo uno a vše jsem udělal podle vašeho návodu a při vypálení mam tuto chybu.

        avrdude: Expected signature for ATmega328P is 1E 95 0F
        Double check chip, or use -F to override this check.
        Chyba při vypalování zavaděče.

        koukal jsem chip a já mam atmegu 1284p ted hledám arduinu isp jestli to nepujde přepsat.

  3. Pěkné, funguje i pro MAC OS X
    Postup je stejný, jen musíte mít nainstalované ovladače CH340. Zajímavé je to, že tiskárna v Multimaker Cura nefunguje (zatím) ale v Arduino IDE ano.
    Stačí kliknout pravým tlačítkem na aplikaci Arduino – > zobrazit osah balíčku a najít příslušné adresáře a tam nakopírovat vše v tomto návodu.
    Když změníte direktivu define LCD lang z en na cz, budete mít menu v češtině.

  4. Ahoj potrebuji radu pri nahranì mi skocì chyba pri kompilaci desky nastala chyba u desky anet v1.0.

    1. to bude chtít určitě více informací případně screenshot této chyby. Obvykle se objeví také číslo chyby případně krok při kterém se kompilace nezdařila. obrázky můžete klidně do mailu info@3dfactory.cz

Napsat komentář

Vaše emailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *