Here are the changes I made to the firmware posted in the link above so that it works with 1/16 microstepping. I noticed that the z-axis homing speed is very slow in the above firmware link so I changed that to something closer to the factory setting. I'm impressed with the print quality!
Configuration.h
#define PID_MAX 140 // limits current to nozzle; 255=full current
#define min_software_endstops true //If true, axis won't move to coordinates less than HOME_POS.
#define DEFAULT_AXIS_STEPS_PER_UNIT {88.88,88.88,400,471.5} // steps per unit for M2 with 1/16 microstepping
#define HOMING_FEEDRATE {50*60, 50*60, 20*60, 0} // set the homing speeds (mm/min)
Configuration_adv.h
#define DEFAULT_STEPPER_DEACTIVE_TIME 300