firmware update, adding some new testing functions