cancel
Showing results for 
Search instead for 
Did you mean: 

I am having a problem with the USB HID host and the SDMMC with FATFS. For some reason these two pieces of firmware interfere with each other. The symptom is the SDMMC will fail with a disk error after the HID host has been running for a couple of seconds.

BBert
Associate III

Both of these firmware were extracted from the STM32H743i-Eval part of the version 1.7.0 HAL library code. The board I am using has no I/O expander so I have eliminated that. The HID host firmware has been modified to support both a keyboard and mouse (wireless) and as stated the SDMMC firmware is used in conjunction with the FATFS. I have been fighting this problem for well over a month now and am at my wits end trying to figure out what is wrong. Is there any known reason why these two pieces of firmware cannot work together? Any help toward a solution is very welcome.

More info on this problem. I moved the HID host code to a separate processor which in turn sends the keyboard/touchpad data to the main processor using a serial port. This setup causes the same problem with the SDMMC driver as before. This means the HID host driver is not the cause of the problem. It also means that the SDMMC driver is apparently not immune to interrupts since the serial port interrupt causes the problem to occur as well as the HID host interrupts do. So why is this?

Please ignore this issue. The problem appears to have been caused by attempting to run the SDMMC in high performance mode (i.e. 50mHz). This does not work even though the card I am using should work at this speed. Changing the SDMMC clock divider to divide by 4 (i.e. 25mHz) causes the problem to go away.

0 REPLIES 0