Giter Club home page Giter Club logo

marlin-amsse's Introduction

Anycubic Mega-SSE Marlin 1.1.9 by Stot

This is a custom version of the Marlin Firmware for the Anycubic Mega-S, based on davidramiro's repo.

Why use this?

Other than the great updates added by Davids repo this fork has support for the Stot Switching Extruder (SSE), a single stepper extruder capable of automatically switching between 4 filaments by utilizing one of the servo signals. As long as you dont have a bltouch for example this means without any hardware changes. If you do you will need to solder on a servo header to one of the free servo signal pads.

To support this a new '> SSE Menu' has been added to select active filaments and load/unload them on the Anycubic TFT. This allows you to use standard one colour sliced files and simply select from one of the 4 loaded filaments.

I also made the existing 'Special' menu easier to read and in a more natural order.

Custom G-Codes

I have added 2 custom gcode commands to use for loading and unloading filaments. Without any extra parameters these will use the Configuration.h settings COMBINER_LENGTH, COMBINER_TO_COOLING_BOWDEN_LENGTH and COOLING_TUBE_LENGTH all of which can be overwritten by entering them on the gcode.

M751 Load Filament

This will load the filament from the parked position to the hot end.

Optional parameters are

C<distance>

Cooling tube length in mm. If omitted COOLING_TUBE_LENGTH is used.

Y<distance>

Length of the Y filament combiner in mm from output to input furthest from output. If omitted COMBINER_LENGTH is used.

B<distance>

Bowden tube Length in mm from the top of the cooling tube to the output of the filament combiner. If omitted COMBINER_TO_COOLING_BOWDEN_LENGTH is used.

M752 Unload Filament

This will perform a series of extruder operations to minimise stringing then extract the filament back to the park position.

Optional parameters are

C<distance>

Cooling tube length in mm. If omitted COOLING_TUBE_LENGTH is used.

Y<distance>

Length of the Y filament combiner in mm from output to input furthest from output. If omitted COMBINER_LENGTH is used.

B<distance>

Bowden tube Length in mm from the top of the cooling tube to the output of the filament combiner. If omitted COMBINER_TO_COOLING_BOWDEN_LENGTH is used.

How to flash this?

  • Download and install Arduino IDE
  • Clone or download this repo
  • Browse into the Marlin folder and run Marlin.ino
  • In the IDE, under Tools -> Board select Genuino Mega 2560 and ATmega2560
  • Open Marlin.ino in the Marlin directory of this repo
  • Customize if needed based on davidramiros repo (e.g. motor directions and type at line 559 to 566 and line 857 to 865 in Configuration.h)
  • Under Sketch, select Export compiled binary
  • Look for the .hex file in the Marlin directory (only use the Marlin.ino.hex, not the Marlin.ino.with_bootloader.hex!)

After obtaining the hex file:

  • Flash the hex with Cura, OctoPrint or similar

Updating

Anycubic i3 Mega

This repo can be used on the AnyCubic i3 Mega if the configuration.h file is editied as per davidramiro's repo.

Back up & restore your settings

Some updates require the storage to be cleared (M502), if mentioned in the update log. In those cases, before updating, send M503 and make a backup of all the lines starting with:

M92
G29
M301
M304

After flashing the new version, issue a M502 and M500. After that, enter every line you saved before and finish by saving with M500.

Something went wrong?

No worries. You can easily go back to the default firmware and restore the default settings.

  • Flash the hex file from the manufacturer's website
  • After flashing, send M502 and M500. Now your machine is exactly as it came out of the box.

About Marlin

Marlin is an optimized firmware for RepRap 3D printers based on the Arduino platform. First created in 2011 for RepRap and Ultimaker printers, today Marlin drives a majority of the world's most popular 3D printers. Marlin delivers outstanding print quality with unprecedented control over the process.

Coverity Scan Build Status Travis Build Status Flattr Us!

Contributing to Marlin

If you have coding or writing skills you're encouraged to contribute to Marlin. You may also contribute suggestions, feature requests, and bug reports through the Marlin Issue Queue.

Before contributing, please read our Contributing Guidelines and Code of Conduct.

Marlin Resources

Credits

Marlin's administrators are:

Notable contributors include:

License

Marlin is published under the GPLv3 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.

Disclaimer

/*
* Flashing a custom firmware happens at your own risk.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS
* AND CONTRIBUTORS “AS IS” AND ANY EXPRESS OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
* PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
* THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
* ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
* IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
* OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/

marlin-amsse's People

Contributors

andyslick avatar boystot avatar davidramiro avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.