I’ve got two nearly identical 3D printers (home-built Prusa i3 MK2 clones running Marlin on RAMPS boards). They have different extruders and different steppers, so e steps per mm, velocity, acceleration, jerk, PID values, and the bed extents are different (due to different extruder shapes). So far, I’ve been editing the config files manually with two sets of settings, tracking which settings go with which machine with manually managed comments.
The original plan was to send one printer to my brother, so I didn’t expect to be maintaining firmware for both indefinitely. Now it looks like they’re both going to be with me for a while. Incorporating my changes in new versions of the config files and flipping the comments to rebuild firmware is getting to be a big enough pain in the neck that I’m looking for a better way.
I’ve been using Arduino IDE on Windows, but recently installed PlatformIO and was able to build and push it to one of the printers at my “office” desk. I’ve also got a Linux Mint machine in the workshop next to the other printer where the Arduino IDE is still working fine, but would not be averse to putting platformIO in there too.
I have a github account but have no experience with actual source control mechanisms. I used to be a server and network admin, wasn’t ever a developer. Can someone point me to a primer that will let me get my brain wrapped around a way to use the Marlin releases a common starting point then easily track my printers’ idiosyncrasies in a way that keeps me sane?
Do I want two forks, one for each printer? What’s the build process like for that?