cancel
Showing results for 
Search instead for 
Did you mean: 

Ethernet with Azure RTOS on STM32H743ZI2

clans87
Associate

Hi there,

i recently started a new project with a Nucelo-H743ZI2 development board.

Previously i have worked with FreeRTOS, but i now i want to migrate to Azure RTOS.

My problem:

I can not get the ethernet interface to work.

It seems like there is no software error. The UDP package is built by the DHCP Client and calls

HAL_ETH_Transmit_IT(&eth_handle, &TxPacketCfg)

without error.

But i cannot see the package in wireshark.

If i try LwIP_HTTP_Server_Netconn_RTOS example, everything is working finde. I see the DHCP messages and the http server is reachable.

Btw: I started with the TCP Echo Client for Nucleo-H723ZG from https://github.com/STMicroelectronics/x-cube-azrtos-h7

I have attached my IOC file.

3 REPLIES 3
GGree.1
Associate III

Using TCP Echo Client for Nucleo-H723ZG application example from the PACK version 2.0.0 does not work on the Nucleo H723G board. I imported the .ioc file and ended up with a project that was missing almost all the code from the app_netxduo.c file. It compiles great but does nothing. I copied over the file with the needed code from the PACK and ended up in cycle of copying over many other files that contained far less than their counterparts in the PACK. Also had to add/update a bunch of include paths that the original project did not pull over. In the end I have code that compiles with a warning that there is a missing .h file but that warning only shows up in the problems tab and is not shown in Build Finished line in the Console. With all the missing code fixed and the files matching with what is in the PACK for the 723 Nucleo board, and the compile with no errors. The code runs but does not receive the IP grant from the server and 0 wireshark packets from the Client. All this using firmware version 1.9.1. Using 1.9.0 results in the same thing. And when imported and code generated from CubeMX, it complains that the ETH parameters are not set correctly. The First Tx & RX Descriptor Addresses red and the information indicate that you cannot use anything other than 0x20000000. But there MCU Regions set aside for the addresses called out in the ETH parameter settings. Aside from the complaint it generates anyway and everywhere else does not seem to care. I just wish it would work out of the box for the board it was intended for. But I guess that would be too easy.

GGree.1
Associate III

So I must recant. The Nx_TCP_Echo_Client for STM32H723 Nucleo does work if you import it as an Existing Project into Workspace from the application example in the PACK 2.0.0 and do not select the .ioc. Also do not try to start a new project using the STM project from an ioc file either.

After that the .ioc can be modified, the code regenerated, and it seems to work or at least the tcp still functions when trying to alter the uart.

MSG_ST
ST Employee

Hi,

From a first view of your .IOC file, it seems that your problem is related to the fact that you are using MII mode as ethernet interface instead of RMII interface.

Could you please test with RMII interface and give us your feedback ?

Regards

Mahdy