1. A control system, comprising: an electronic module, the electronic module comprising at least one programmable controller storing a plurality of code modules, and a non-volatile memory in communication with the at least one programmable controller, wherein the non-volatile memory comprises a plurality of designated memory locations, each location designated to receive a code module execution status for a corresponding one of the plurality of code modules executed prior to execution of the code module containing the code fault; and the at least one programmable controller is configured to identify from the plurality of code modules a code module that contains a code fault, by: executing the plurality of code modules; writing a first code module execution status to a designated memory location on the electronic module when the code module has started executing; writing a second code module execution status to the designated memory location when the code module has completed executing; and identifying, based on the code module execution status, the code module that contains the code fault.