differences refactoring, firmware update refactoring  v. alpha 0.1