When recording WinCE firmware onto i.MX28 to the SD card as boot device, if there is no firmware written on the SD card, then the internal ROM will bring the device to the HID mode, and manufacturing tool can burn the firmware from this state.
Suppose the SD card contains old version of firmware and cusotmer wants to overwrite using the manufacturing tool. I know that operator can press - hold the PSWITCH to force the player internal ROM to boot into recovery mode, and let the manufacturing tool to properly identify and burn the firmware. What if the operator does not press-hold the PSWITCH, and plug in the USB. The player will boot using the old firmware residing on the SD card. Can the manufacturing tool force the player from this state and burn the firmware onto it? Or should the operator press-hold the PSWITCH in order to overwrite the old firmware?
They have to hold the button or take out the SD card till the device is enumerated then reinsert the SD card before hitting Start.
In order for the MfgTool to detect the device running the old firmware, The MfgTool would have to know what class of device to look for and what the USB IDs of that device are. Then the firmware running on the device would have to support a host command that would set a persistent bit checked by the ROM to boot to “recovery mode”