Ready to Flash AnetA8 Firmware open in PlatformIo and Select Sanguino as Board and Flash
As Display is selected: ZONESTAR_LCD
For changing to a 128x64 pixel Display with Rorary Encoder change in the Configuration.h:
- line 1900 #define REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER
- line 1813 //#define ZONESTAR_LCD
- Temporarily reduced X_BED_SIZE and Y_BED_SIZE to 200 since my probe (sensor) is to far on the right
- Added Babystepping and set BABYSTEP_MULTIPLICATOR_Z to 10
The Display Language is set to German to change this go to line 1607 and change
#define LCD_LANGUAGE de
with one of this
- en, an, bg, ca, cz, da, de, el, el_gr, es, eu, fi, fr, gl, hr, it, jp_kana,
- ko_KR, nl, pl, pt, pt_br, ru, sk, tr, uk, vi, zh_CN, zh_TW, test
To safe storage space sd-card support was disabled:
- line 1647: //#define SDSUPPORT
These settings are due to the usage of a inductive proximity sensor as z-endstop probe (ROKO SN04-N).
Therefore the 'Probe Type' is set to
- line 869: #define FIX_MOUNTED_PROBE instead of
- line 862: #define PROBE_MANUALLY
The sensor offset to the nozzle is set to:
- line 937: #define NOZZLE_TO_PROBE_OFFSET { 21, 55, -1 }
The auto bed leveling stategy is set to
- line 1180: #define AUTO_BED_LEVELING_BILINEAR
"Z Safe Homing" is set to avoid homing with a Z probe outside the bed area: -line 1344: #define Z_SAFE_HOMING
In order to disable software endstops for setting the z-offset this option is enabled:
- line 1105: #define SOFT_ENDSTOPS_MENU_ITEM
[1188] #define RESTORE_LEVELING_AFTER_G28 Normalerweise wird das Bed Leveling nach G28 Auto Home ausgeschaltet. Man muss deshalb im Slicer M501 (Load all saved settings from EEPROM) und M420 S1 (Bed Leveling State: Enable) in den Start-GCode jeder Druckdatei eintragen um es vor jedem Druck wieder zu aktivieren. (Ungetestet:) Bed Leveling ist nach jedem Einschalten des Druckers standardmäßig deaktiviert. Falls das nur am Auto Home beim Start liegt würde dieser Eintrag helfen.
Optional: [1372] #define GRID_MAX_POINTS_X 3 Anzahl der Messpunkte für die x-Achse. Ich würde 5 vorschlagen. In der Zeile darunter wird der gleiche Wert für die y-Achse gesetzt.
Optional: [1372] #define GRID_MAX_POINTS_X 3 Anzahl der Messpunkte für die x-Achse. Ich würde 5 vorschlagen. In der Zeile darunter wird der gleiche Wert für die y-Achse gesetzt.
Optional: [1441] #define LEVEL_BED_CORNERS Schaltet einen zusätzlichen Menüpunkt frei, mit dem nacheinander die Ecken des Druckbettes angefahren werden können, um das Druckbett vor dem Bed Leveling einfacher von Hand einstellen zu können.
Since my printer constantly triggered a thermal runaway protection stop, I increased the THERMAL_PROTECTION_HYSTERESIS to 20 deg Celsius in [..]_adv.h:
- line 141: #define THERMAL_PROTECTION_HYSTERESIS 20
Nach dem Flashen der Firmware wie üblich einen Reset durchführen und alte Werte im EEPROM löschen.
Im Slicer unter Start-GCode für jede Druckdatei eintragen: M501 // Load all saved settings from EEPROM M420 S1 // Bed Leveling State: Enable
Eine genaue Anleitung zum Bed Leveling per Kommandozeile oder Druckermenü gibt es hier (Unter Manual Probing, Click for Details). Dabei ist es nicht so wichtig wie dick das Papier ist oder wie hoch die Kraft - solange es an allen Punkte gleich ist.
Nach dem Bed Leveling nicht vergessen die Messdaten im EEPROM zu speichern (Menüpunkt oder M500)
Anschliessend muss man einmal die Höhe der Düse über dem Druckbett während der ersten Schicht einstellen (z-Offset, der Vorgang wird First Layer Calibration genannt). Dafür gibt es einen Menüpunkt mit dem man beim laufenden Druck die Höhe verändern kann (z-Babystepping). Das erfordert etwas Übung, es ist aber sehr wichtig das gut zu machen. Der gedruckte Strang darf nicht zu platt und nicht zu rund sein, sonst gibt es trotzdem Haftungsprobleme.
Additional documentation can be found at the Marlin Home Page. Please let us know if Marlin misbehaves in any way. Volunteers are standing by!
Marlin 2.0 takes this popular RepRap firmware to the next level by adding support for much faster 32-bit and ARM-based boards while improving support for 8-bit AVR boards. Read about Marlin's decision to use a "Hardware Abstraction Layer" below.
Download earlier versions of Marlin on the Releases page.
To build Marlin 2.0 you'll need Arduino IDE 1.8.8 or newer or PlatformIO. Detailed build and install instructions are posted at:
Platform | MCU | Example Boards |
---|---|---|
Arduino AVR | ATmega | RAMPS, Melzi, RAMBo |
Teensy++ 2.0 | AT90USB1286 | Printrboard |
Arduino Due | SAM3X8E | RAMPS-FD, RADDS, RAMPS4DUE |
LPC1768 | ARM® Cortex-M3 | MKS SBASE, Re-ARM, Selena Compact |
LPC1769 | ARM® Cortex-M3 | Smoothieboard, Azteeg X5 mini, TH3D EZBoard |
STM32F103 | ARM® Cortex-M3 | Malyan M200, GTM32 Pro, MKS Robin, BTT SKR Mini |
STM32F401 | ARM® Cortex-M4 | ARMED, Rumba32, SKR Pro, Lerdge, FYSETC S6 |
STM32F7x6 | ARM® Cortex-M4 | The Borg, RemRam V1 |
SAMD51P20A | ARM® Cortex-M4 | Adafruit Grand Central M4 |
Teensy 3.5 | ARM® Cortex-M4 | |
Teensy 3.6 | ARM® Cortex-M4 |
- Submit Bug Fixes as Pull Requests to the (bugfix-2.0.x) branch.
- Submit New Features to the (dev-2.0.x) branch.
- Follow the Coding Standards to gain points with the maintainers.
- Please submit your questions and concerns to the Issue Queue.
For best results getting help with configuration and troubleshooting, please use the following resources:
- Marlin Documentation - Official Marlin documentation
- Marlin Discord - Discuss issues with Marlin users and developers
- Facebook Group "Marlin Firmware"
- RepRap.org Marlin Forum
- Tom's 3D Forums
- Facebook Group "Marlin Firmware for 3D Printers"
- Marlin Configuration on YouTube
The current Marlin dev team consists of:
- Scott Lahteine [@thinkyhead] - USA Donate / Flattr:
- Roxanne Neufeld [@Roxy-3D] - USA
- Chris Pepper [@p3p] - UK
- Bob Kuhn [@Bob-the-Kuhn] - USA
- João Brazio [@jbrazio] - Portugal
- Erik van der Zalm [@ErikZalm] - Netherlands
Marlin is published under the GPL license because we believe in open development. The GPL comes with both rights and obligations. Whether you use Marlin firmware as the driver for your open or closed-source product, you must keep Marlin open, and you must provide your compatible Marlin source code to end users upon request. The most straightforward way to comply with the Marlin license is to make a fork of Marlin on Github, perform your modifications, and direct users to your modified fork.
While we can't prevent the use of this code in products (3D printers, CNC, etc.) that are closed source or crippled by a patent, we would prefer that you choose another firmware or, better yet, make your own.