Home Artists Posts Import Register

Content

Wow, that was…

Two years after Marlin's last major version release, Marlin 1.1.0 is finally being unleashed upon the world. I'm really proud of this release, which blows the socks off the previous version in every way. I'm really impressed by everyone who contributed and awed by the flood of contributions the project continues to get.

The full write-up and change log is at Github, where you can also download the full source code package. I hope you'll take the time to scan through the code. It's prettier than ever.

RTFM!

The Marlin Documentation Project is slowly gaining ground. I've been working tirelessly on the Configuration documentation page leading up to this release, and it is now mostly complete and correct. It will be updated continuously over the coming days to fill in gaps and get all options the right order. Then the second configuration file will be documented.

The Marlin Firmware home page is a great place to get a complete picture of all the features that exist in Marlin 1.1. I hope to finish the GCode documentation soon, including new features like Unified Bed Leveling. Since a picture is worth a thousand words, I'll be posting lots of screenshots.

To help save time in documenting Marlin and the various processes surrounding it, I started to make some screencasts about the Marlin development process, but the microphone was really bad. To prove how serious I am, I acquired a new microphone and wireless headphones. So I'll be making more screencasts about Marlin, starting with the basics, but soon diving into the inner-workings. It's a big piece of software with a lot of layers and its own ecology, and I think it will make an interesting subject to explore.

Today…

The Marlin project is at a plateau and I know we're all feeling pretty high today after ~28 months of continuously changing, breaking, and repairing Marlin over and over to make it as close to perfect as it can be.

In recent months I've been the main gatekeeper on code quality, making sure that code fits into the existing system, and adapting the system to work with new ideas. What I lack in geek tact I've tried to make up for by expediting patches and helping to shepherd features to completion.

I've gotten really good at Git over the months. I can quickly adopt a PR, patch, rebase, and squash it, push it as a new PR, and get it merged within a few minutes. So, there's another thing I'll be covering in those videos. I'll keep you posted as I get those together too. I have good tools to make them, just need to finish the scripts - well, outlines.

Tomorrow…

The next phase of Marlin begins right away. We don't want to linger too long on 1.1 because we now have the opportunity to reorganize the file structure. That will be done as quickly as possible and released as version 1.2 before the end of the summer. Version 1.2 will also include the first draft of the Hardware Access (or Abstraction) Layer and support for some 32-bit boards.

Stay tuned for that! I have a Re-ARM board that connects to a standard RAMPS 1.4 shield and I can't wait to see it in action! Faster processors mean no more bottlenecks of speed or pushing the stepper interrupt so hard that the watchdog timer expires and resets the board. This is needed more and more with the advent of 32x micro-stepping drivers.

Apart from these goals, I hope to start seeing more patterns in the code organization and better encapsulation of functionality in proper classes. I feel that new features should not have to create elaborate interfaces, but that Marlin should provide standard hooks to improve that process — certainly at the cartesian motion and UI levels.

Austin, TX

It's getting warm in Austin, and it's windy this morning! I'm enjoying my stay here thus far. People are really generous and kind. I hope to find an automobile at a reasonable cost and scoop it up fast. I'm leaning towards the practical and familiar — a Subaru maybe? It was a Subaru that I drove from MA to WA in 2012 to begin this fateful cruise…

A car is needed in this city, for sure. I haven't explored too much, and I'm itching to meet people, get to know the local DIY scene more, and find out where all the good craftspeople congregate. I'll keep you posted on that too as it develops! For now, I have plenty to do on the MakerArm firmware. The production model is getting closer, and I need to make this software sing and dance.

Thanks as always to my patrons! During this time, and with your backing and support, I've been able to focus a greater part of my attention on this herding of electronic cats into something that can still print things, but do so with less heat and electrical waste, yet at faster rates.

Throughout this process I've tried to do my best Steve Jobs imitation, pushing contributors to rethink problems, harnessing their specific knowledge to Marlin's generalized cart. Mostly I just whinged about the formatting. But, whatever… The end result is a great piece of software that will only continue to get better.

---

Follow @MarlinFirmware for the latest news and updates, tips, tricks, and related information from the Marlin development team.

Files

Comments

Anonymous

Great job.. thanks 👍

Anonymous

Would it be possible to implement an anti filament cooking/burning feature? Monitor if hotend is fully heated for x seconds with no extrusion then trigger extrusion of a few mm? Just an Idea. I don't know if other people want it or if it is possible.

Scott Lahteine

That feature already exists in Marlin. Enable EXTRUDER_RUNOUT_PREVENT. When the nozzle is hot and the machine is idle, Marlin will extrude EXTRUDER_RUNOUT_EXTRUDE millimeters of filament at EXTRUDER_RUNOUT_SPEED mm/m every EXTRUDER_RUNOUT_SECONDS seconds.