1
0
mirror of https://github.com/MarlinFirmware/Marlin.git synced 2024-11-26 05:17:17 +00:00

add a front-page introduction. needs an image probably

Scott Lahteine 2016-03-06 23:18:24 -08:00
parent bb0a2b213a
commit 8fe7fe9e54

61
Home.md

@ -1,35 +1,50 @@
# Marlin Firmware #
## Applicability ##
The information in this wiki is specific to the [Version 1.1](https://github.com/MarlinFirmware/Marlin) series of Marlin Releases.
Information pertaining to newer versions of the firmware can be found in the wiki associated with the [Marlin Development Repository](https://github.com/MarlinFirmware/MarlinDev).
## About this Wiki ##
This wiki describes current and upcoming Release versions of Marlin, currently [Version 1.0.2-1](https://github.com/MarlinFirmware/Marlin/releases/tag/1.0.2-1) and the upcoming [Version 1.1.0](https://github.com/MarlinFirmware/Marlin/releases). Most of the documentation here is still under development. Please pitch in if you see any topic that needs improvement.
## Current Development ##
For information related to **cutting-edge development and testing on Version 1.2 and beyond**, head over to the [Marlin Development Wiki](https://github.com/MarlinFirmware/MarlinDev/wiki). There you can find guidance on the new file layout, obtaining the hardware support package, and how to integrate Marlin with Arduino >= 1.6.7.
For information related to **patching current releases and release candidates (beta releases)** see [[Reporting Bugs]] and [[Contributing]] here in this wiki.
## Introduction ##
Marlin is a firmware for 3D printers based on avr-based microprocessors such as those used on the [Arduino](http://arduino.cc) platform.
Marlin is a highly optimized firmware for 3D printers based on AVR-based microprocessors (such as those used on the [Arduino](http://arduino.cc) platform) with movement driven by stepper motors.
This code resides in the PROM on the controller board and controls the input/output, voltage states, and movement of the 3D printer.
Depending on configuration options, the size of the Marlin binary image may be anywhere from 50K to over 200K.
Through the use of a programmer tool, Marlin is flashed directly onto the PROM on your 3D printer's controller board, and will thereafter run standalone. Marlin controls the input/output, voltage states, and movement of the 3D printer, taking buffered command streams from SD cards and host controllers.
It supports a huge number of features, such as:
Marlin aims to be adaptable to as many boards and as many configurations as possible, with a very lean default profile. Depending on configuration options, the size of the Marlin binary image may be as low as 50K or over 200K.
* Compensation for Bed Position
* Deployment of sensors for bed probing
* Manually, or by Servo, or other programmable mechanisms
* [[Bed Auto Leveling]] -- Compensation for Un-level Beds
* [[Mesh Bed Leveling]]
* [[Manual Bed Leveling]]
* [[Firmware Retraction]]
A huge number of features are included, such as:
* A rich dialect of [[G-Code in Marlin|G-Code]]
* USB communication with messages for hosts
* A growing list of [[Supported Hardware|specific boards]]. Over 40 now supported.
* More than 20 languages supported, including Japanese and Russian
* Support for [[LCD Controllers]] and [[SD cards]]
* In addition to [[Cartesian_Kinematics|Cartesian]] kinematics Marlin also supports [[Delta_Kinematics|Delta]], [[SCARA_Kinematics|SCARA]], [[CoreXY]], and [[CoreXZ]]
* Support for up to 4 extruders
* Support for [[Thermistors]] and [[thermocouples]]
* [[Thermal Runaway Protection]]
* [[EEPROM]] save and restore
* Thermistors and thermocouples
* [[LCD Controllers]] and [[SD cards]]
* [[Delta_Kinematics|Delta]], [[SCARA_Kinematics|SCARA]], and [[Cartesian_Kinematics|Cartesian]] kinematics
* USB communication
* A rich dialect of [[G-Code in Marlin|G-Code]]
* Up to 4 extruders
* Several [[Supported Hardware|specific boards]]
* Support using switches or sensors as proximity probes
* Probes on servo arms
* Probes that can be picked up and dropped
* Probes that can be enabled/disabled
* Bed Tilt Compensation, for better results printing on a non-level bed
* [[Mesh Bed Leveling]], with save to EEPROM
* [[Manual Bed Leveling]], step-by-step using an LCD controller
* [[Bed Auto Leveling]], which requires some kind of Z Probe
* [[Firmware Retraction]], to allow retraction tuning without re-slicing
* [[Acceleration]] and [[Jerk]] tuning, for better corners and surface finish
* Support for [[Dual X Carriage]] setups
* Support for [[Filament Runout Sensor]] and [[Filament Width Sensor]]
* ...and much more!
## Essential Resources ##
* [Marlin Development Repository on Github](https://github.com/MarlinFirmware/MarlinDev) Marlin Development Central. Get, and contribute to, the latest development code for Marlin firmware here.
* [Marlin Release Repository on Github](https://github.com/MarlinFirmware/Marlin) Get the latest released, or soon to be released, Marlin firmware here.
* [Marlin Development Repository on Github](https://github.com/MarlinFirmware/MarlinDev) Marlin Development Central. Help design, develop, document, test, and improve Marlin 1.2 and beyond. _Arduino 1.6.7 has sub-folders, and the future is looking bright!_
* [Marlin Release Repository on Github](https://github.com/MarlinFirmware/Marlin)
* [Marlin Current Releases](https://github.com/MarlinFirmware/Marlin/releases) including pre-release versions
* [Marlin Release Candidate](https://github.com/MarlinFirmware/Marlin/tree/RC) Current pre-release beta in testing
* [The RC Bug Patch](https://github.com/MarlinFirmware/Marlin/tree/RCBugFix) is where all patches to RC are collected ahead of the next release candidate