I started working on a firmware merge between the Prusa I3 Mk2 firmware and the firmware published by Amedee.
It's quite the task as these two branches took separate paths and the electronics being used on the prusa is veeeery different from the one on the UMO.
Edit1: here's the github link to my work in progress: https://github.com/Antiklesys/Marlin-Experimental
So far I have identified the following type of files in the two firmwares:
-identical files (those are the best! No change needed)
-files existing in both versions but with different pieces of code
-files existing only in one of the two firmwares
List of files that "so far are identical" or have been merged:
BlinkM.cpp
BlinkM.h
motion_control.h
qr_solve.cpp
qr_solve.h
Sd2PinMap.h
SdFatStructs.h
SdFatUtil.h
SdFile.cpp
SdFile.h
SdVolume.cpp
SdVolume.h
Servo.cpp
Servo.h
speed_lookuptable.h
thermistortables.h
ultralcd_st7920_u8glib_rrd.h
vector_3.h
watchdog.cpp
watchdog.h
Edit2: Added more files to the merged list
Sd2Card.h
Sd2Card.cpp
SdBaseFile.cpp
SdBaseFile.h
SdInfo.h
MarlinSerial.cpp
MarlinSerial.h
motion_control.cpp
fastio.h
vector_3.cpp (thanks to Martin!)
cardreader.h
SdFatUtil.cpp
mesh_bed_calibration.h
mesh_bed_calibration.cpp
ConfigurationStore.h
SdFatConfig.h
stepper.h
temperature.h
The purpose of this merge would be to allow the usage of a PINDA probe on a UMO/UMO+ for automatic bed leveling by leveraging the capabilities of Marlin itself.
My challenge as of now is in the understanding of some pieces of code in the two firmwares to clarify what should be kept.
I would really appreciate the community help in this
