This was necessary or you would have to hard reset the arduino even after a hard reset. I'm assuming the issue is that the conditional on line 86 of StepperFirmata.cpp was not falsy for freed array elements (that or free(stepper[i] is not actually freeing the element).