I got Orthrus v3 hardware working all the way as a disk drive last night. There are a few bugs in Start's code that you have to work around:
- Start doesn't adjust the UTMI_CKTRIM register when configured with a 16 MHx crystal. You have to do that yourself.
- mscdf.c has no support for the MODE_SENSE_6 command, which is necessary (you just have to give back 4 zero bytes).
- mscdf.c has a bug where it returns non-zero when there's no error sending the zero-length "sync" at the end of a write.
- Start doesn't allow you to configure 512 byte endpoints, as the HS spec requires.
There are still a couple of bugs to work out - mostly centered around the handling of situations where cards are removed or missing.
Performance is not as good as hoped. Throughput is around 540 MB/sec. Halving the SD card clock doesn't appreciably change throughput, so this may be being limited by USB. But even at only ~5 times faster than before, it's now actually usable as opposed to unacceptable.
Another couple of days to polish the firmware, and I think I'll be able to send some units off to the HP judges!
Discussions
Become a Hackaday.io Member
Create an account to leave a comment. Already have an account? Log In.