cancel
Showing results for 
Search instead for 
Did you mean: 

Issues with FileX on STM32H747IIT6 – Error 0x90 on fx_media_open

OskarP
Associate III

Hello everyone,

I'm trying to interface a microSD card using FileX on a custom board with an STM32H747IIT6.
The microSD card is connected to the SDMMC1 peripheral using a 4-bit wide bus, with external pull-ups on the data lines.

Initially, we used FATFS to interface with the microSD card, which worked flawlessly. Now, as we transition to Azure, we want to use FileX. Additionally, we are using NetXDuo to create a web server, with the SD card serving as storage for web server files.

The issue occurs when calling fx_media_open (app_netxduo.c, line 522), which almost always returns error code 0x90 (except for a single successful attempt going step by step via the debugger).

Current Configuration:

  • SDMMC1 pin speed: medium
  • SDMMC1 peripheral clock: 40 MHz, scaled down to 10 MHz using a divider (set to 4)
  • SD card: SanDisk 64GB, formatted in exFAT (exFAT support is enabled)

Troubleshooting Steps Taken:

  • Adjusted clock speed via divider (1–40 MHz)
  • Changed pin speed (medium, high, very high)
  • Tested different microSD cards (4–64GB, all SanDisk)
    • Lower-spec cards failed with a different error code (0x03)
    • If formatted with FAT, the exFAT option was disabled

I would greatly appreciate any insights or suggestions on how to resolve this issue.

Best regards,
OskarP.

1 ACCEPTED SOLUTION

Accepted Solutions
MOBEJ
ST Employee

Hello @OskarP  ,

 

Please try downloading the latest X-CUBE-AZRTOS-H7 package from ST.com or Github 

For your project, you can start with the FileX example on the STM32H747I-DK board and compare it with the FileX/Fx_Dual_Instance  project.

For the NetXDuo web server project, use the Nx_WebServer example.  It demonstrates how to develop a web HTTP server on the STM32H735G-DK board based on Azure RTOS NetX Duo stack , and you can easily port it to your STM32H747 board.

Regards 

 

To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.

View solution in original post

2 REPLIES 2
MOBEJ
ST Employee

Hello @OskarP  ,

 

Please try downloading the latest X-CUBE-AZRTOS-H7 package from ST.com or Github 

For your project, you can start with the FileX example on the STM32H747I-DK board and compare it with the FileX/Fx_Dual_Instance  project.

For the NetXDuo web server project, use the Nx_WebServer example.  It demonstrates how to develop a web HTTP server on the STM32H735G-DK board based on Azure RTOS NetX Duo stack , and you can easily port it to your STM32H747 board.

Regards 

 

To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.

Hello @MOBEJ,

Sorry for the late reply. In the meantime, I got it working. The code provided in the example you mentioned works fine.

The issue was that the filesystem on the tested SD cards was not compatible with FileX.

In the non-working state, I had formatted the cards using the latest macOS system. After reformatting them on Windows (with the "Fast Format" option disabled), everything works as expected.

Thank you for your help!

Best regards,
OskarP.