* Clearing trouble codes (Diagnostic Trouble Codes or DTCs): This clears the engine control module (ECM) of stored fault codes that may be illuminating a check engine light. This doesn't actually *reset* the computer's programming, just the stored error codes. You can do this a few ways:
* Using an OBD-II scanner: This is the most common and reliable method. Buy a reasonably priced OBD-II scanner (many are available online or at auto parts stores). Plug it into the OBD-II port (usually under the dash), and it will allow you to read and clear the codes.
* Disconnecting the battery: This is a less precise method. Disconnect the negative (-) battery terminal for at least 30 minutes. This will often clear the codes, but may also reset other settings like radio presets. Reconnect the terminal and see if the light goes off.
* Resetting adaptive learning: The Duramax's computer learns your driving habits and adjusts fuel delivery and other parameters accordingly. A hard reset can force it to relearn from scratch. This might be helpful if you've made significant modifications or are experiencing performance issues. *This is generally not recommended unless you have a specific reason and understand the potential consequences.* The best way to accomplish this is usually with a professional-grade scan tool.
* Programming or reflashing the ECM: This is only done by professionals using specialized equipment and software. It's typically necessary after major repairs or modifications, and not a typical "reset."
In short: If you have a check engine light, use an OBD-II scanner to read and clear the codes. If you're trying to address a performance issue, disconnecting the battery might help, but a professional scan tool is often better, especially for dealing with adaptive learning resets. Avoid attempting any serious ECM programming yourself unless you're very experienced with automotive electronics.