I am implementing a USB MSD Bootloader using MC9s08JM32.
After the bootloading process, the MCU will re-enumerate as a MSD device.
I would like to be able to send a command to soft-reset the MSD device at this point. My application is designed in such way that, if I soft-reset it, it will enter User code and enumerate as a HID device.
Question: How can I soft-reset a MSD device? By sending raw SCSI command? I do not want to implement a composite USB device, so soft-resetting by sending command to HID endpoint is out of the question.
Hello Lee,
What do you mean with soft-reset?
In case you are pretending to restart the USB module, you may refer to the following recommendations:
1.Set the USBRESET bit from the USB Control Register 0 (USBCTL0).
or
2. Set the USBPU bit from the USB Control Register 0 (USBCTL0).
Please find more detailed information at the MC9S08JM32 datasheet , especially at chapter 17.3.1:
I hope this information will be useful for you.
If I misunderstood your question, feel free to let me know. I will be glad to help.
Have a great day.
David Diaz.