Hope everyone is doing well. I'm back from a mini vacation and am going down the USB rabbit hole to implement keyboard interrupt control / input for the ESP8266 NONOS SDK. Now I think I may know enough to pull it off so I ordered a few Max3421 breakout boards and have a gameplan to tackle usb input. Before I dive in and burn time I wanted to reach out and see if any of you have gone down this road already with the ESP and actually made traction?
PostScript: Does anyone know of any useful psudo code that describes setting up the Max3421 for Keyboard Interrupt request? Somelike like below...
1. Assert SS low.
2. Clock out SPI command byte 11011010 – selects R27 (MODE) for a write.
3. Clock out 11000001 – sets D+ and D- pulldowns and Host mode.
3. Assert SS high to end.
Read HRSL status register:
4. Assert SS low.
5. Clock out SPI command byte 11111000 – selects R31 (HRSL) for a read.
6. Clock in R31 data and check for JSTATUS AND KSTATUS to determine when a device has been connected or disconnected and is a Low or High speed device.
7. Loop step 6 until detected.
8. Assert SS high to end.
Load Send FIFO register with camera shutter release command data bytes:
9. Assert SS low.
10. Clock out SPI command byte 00010010 – selects R2 (SNDFIFO) for a write.
11. Clock out data bytes to load Send FIFO.
12. Assert SS high to end.
Load Send Byte Count register with the number of data bytes in Send FIFO:
13. Assert SS low.
14. Clock out SPI command byte 00111010 – selects R7 (SNDBC) for a write.
15. Clock out number of bytes loaded into SNDFIFO.
16. Assert SS high to end.
Send data to device by writting to HXFR register:
17. Assert SS low.
18. Clock out SPI command byte 11110010 – selects R30 (HXFR) for a write.
19. Clock out 00100001 – selects Bulk Transfer and EP1.
20. Assert SS high to end.
21. Pause x seconds then repeat the write to HXFR register.