Have you looked at freeze frame data, prior to resetting the ECM? Yes, you can disconnect the battery to reset the ECM, but you'll loose OBD2 freeze frame data and all monitors will return to "not run". Once the monitors return to "not run", you'll have to perform the drive cycle to re-run the monitors. Also, if there are security codes for the sound system, the dealer will have to set those up for you. It would be better to erase the ECM using a OBD2 scanner. But, then again, if you have not recorded or viewed freeze frame data, then how will you know what engine parameters se the code?