Marlin: keeping marlin up to date

Created on 3 Apr 2018  Â·  12Comments  Â·  Source: MarlinFirmware/Marlin

Hi,

There is a question that is bugging me for quite some time now and due to recent re-occurance of this problem, I finally ask you guys :)
I just would like to know how your workflow is when you update marlin, since I have the suspicion that mine is a bit... cumbersome I guess.

I am no dev, so I did not have the idea yet to use git for updating, but what I always do is
download a new release from github, extract it to a new folder, replace configuration.h, configuration_adv.h and my pins file with my versions of the files and then use my Atom/Platformio enviroment to compile.
When there has been a long time since my last update I go ahead and do a cumbersome diff between my configs and the latest config file, since it could have well been that I missed some new entries... anyways I have the suspicion that there is an easier way to keep up to date (I am testing the 2.0.0 branch currently...)

How do you guys do it and ensure you don´t miss out any new features/changes...?

best regards

Most helpful comment

Using a Visual Diff program makes it easy to cross your working settings over to a newer version of the Configuration.h files. You might want to check out NotePad++ with the visual diff plug in enabled.

All 12 comments

git stash
git fetch origin
git rebase origin/bugfix-2.0.x
git stash pop

You can also commit your config with git commit -a -m "My config" and skip the stash commands.
The fetch rebase could possibly be replaced with git pull.

Using a Visual Diff program makes it easy to cross your working settings over to a newer version of the Configuration.h files. You might want to check out NotePad++ with the visual diff plug in enabled.

For Windows I recommend "Tortoise GIT" and "Sourcetree"

What would be awesome is if thinkyhead the master of the universe would create a windows tool that allowed us to run it while connected to our printers over USB, check the version on the board, and then download and then compile, and automatically port over the configuration from previous version to the newer version, and then re-upload. Sort of like an "auto update" system.

Thinkyhead could also become like Microsoft and start updates in the middle of prints, and then blame people for not unchecking the setting for "always update immediately when new version is found".

What would be awesome is if thinkyhead the master of the universe would create a windows tool that allowed us to

No! Software takes so much time to develop. His changes are needed here more than we need Yet Another Git tool.

@Roxy-3D You're right! Instead I nominate you to create this yet another git tool! :)

@ImplementOfWar — Please keep the jibber-jabber and cuteness to a minimum. We would like to help @yellobello with the issue at hand, and surely you know that every reply to an issue goes out in an email to everyone in the conversation. Impertinent comments, if they are useful, should be posted in a new issue.

I use sed scripts to rewrite from scratch the fresh config files (including their recent modifications) copied from the examples (and thanks a lot for keeping them up-to-date by the way!). To track the changes, I either look at the github commit history, or I do a git diff on the config files between my current version and the latest one.

Good thing also is that all my changes (and only my changes set) resides in one or two condensed files. It makes it easy to follow how my config differs from the default ones.

Only drawback is that, at first, sed scripts are not super readable...

I published them here if you are interested: https://github.com/AxelVoitier/marlin-config

I also tried to do a python script that would connect to the printer and list all the difference between M503 and the config files. But it has some connections issue... So I didn't published that one (and it turns out I need it less now, so...)

@AxelVoitier — Thanks! Such things are always of interest. Have you looked at Marlin-config? It's under constant development, and if it doesn't have the ability now to migrate older configs to the latest Marlin, I'm sure that capability will be added at some point.

@yellobello

This Issue Queue is for Marlin bug reports and development-related issues, and we prefer not to handle user-support questions here. (As noted on this page.) For best results getting help with configuration and troubleshooting, please use the following resources:

After seeking help from the community, if the consensus points to to a bug in Marlin, then you should post a bug report.

@thinkyhead i think we can close this one

This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

Kaibob2 picture Kaibob2  Â·  4Comments

otisczech picture otisczech  Â·  3Comments

esenapaj picture esenapaj  Â·  3Comments

StefanBruens picture StefanBruens  Â·  4Comments

Ciev picture Ciev  Â·  3Comments