Feb 032014

I built my 3D printer from a kit a couple years ago. It is a MendelMax style and it came with a modified version of Marlin as the firmware and printrun as the host app.

One of the first things I did after putting everything together was update the firmware to the latest version of Marlin and printrun. That was a couple years ago. New versions of both the printer firmware and host software have come and gone and I’ve largely ignored them. My printer has been working fine and no need to mess with what works.

I’m in the process of building a polar plotter and I’m using my 3D printer more heavily to create many of the parts. After using the printer to print a couple parts, and remembering many of the little irritations that always bothered me, I decided to look around and see what new firmware and host apps are available.

I tried a couple different firmwares but eventually settled back on Marlin. I forked and cloned the latest from ErikZalm, created a branch for my printer mods, updated the Configuration.h, pushed my branch back to my fork, and pushed the changes to my fork. The changes for my printer are pretty minimal but pushing them to github gives me a place to stash them off box and makes them available if anyone else finds them interesting.

I added ErikZalm’s original github repo as an upstream repo so I can continue to fetch and merge his latest changes.

Fork ErikZalm’s Marlin repo into my github – do this on github.

Clone my fork onto my desktop.
git clone https://github.com/bhunting/Marlin.git

Add ErikZalm’s repo as an upstream remote.
git remote add upstream https://github.com/ErikZalm/Marlin.git

Create and checkout a branch for my feature work (support for my MendelMax)
git checkout -b bhunting_MendelMax

Fetch and merge upstream (ErikZalm’s repo), not really needed right now since I just forked and cloned it.
git fetch upstream
git merge upstream/Marlin_v1

Push my feature branch to my repo
git push origin bhunting_MendelMax

Modify the code as needed…..

Add, commit, and push
git add Configuration.h
git commit -m"configuration changes for MendelMax 3D printer - BAH"
git push

After the mods I built the firmware using Arduino 1.5.2 and flashed it to my printer.

First off I like that the annoying beep when using the rotary encoder has been toned down. Much more palatable now. I like the new menu system. Not a lot has changed but it does look cleaner and I like the wording better. But how does it print?

I upgraded to the latest version of printrun but at the same time I wanted to try Repetier Host. Printrun seems to work fine with the latest Marlin but Repetier has a more full featured interface. Repetier provides both host side software and printer side firmware. I was unsure if Repetier Host would talk to Marlin firmware but it turns out Repetier Host is more than happy to drive the Marlin firmware. In fact the two get along just dandy.

I’ve only done one print using Repetier Host and Marlin firmware but one thing I did notice, other than the improved user interface on both the printer and host side, is my print started and completed in one pass, no hiccups or restarts. It might be an anomaly but at least it didn’t crash and burn right out of the gate. So far I’m happy and looking forward to trying more prints with this combination.

 Leave a Reply

To create code blocks or other preformatted text, indent by four spaces:

    This will be displayed in a monospaced font. The first four 
    spaces will be stripped off, but all other whitespace
    will be preserved.
    Markdown is turned off in code blocks:
     [This is not a link](http://example.com)

To create not a block, but an inline code span, use backticks:

Here is some inline `code`.

For more help see http://daringfireball.net/projects/markdown/syntax

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>