STM32F4 Ethernet Support

I am looking at using the PX4 middleware without the flight-stack on a Nucleo-F429ZI board.

I have created a target board definition and added another ROMFS configuration which has an rc$ file which does a bare minimum to bringup uorb and parameters etc.
This is all working well.

I would like to use ethernet for some UDP communications. Unfortunately I cannot get this to work with PX4 and this hardware. It builds and uploads fine. However, I can’t establish connectivity with ping etc.

I have been able to use a plain version of nuttx with this hardware to successfully use ping and telnet daemons.

I have been able to hack around the av/x-v1 board configuration to run on Nucleo-F767ZI hardware. Again, this allowed me to successfully use ping and telnet daemons, this time within PX4. Unfortunately, this is a different chip target (STM32F7).

I have started to look at the differences between the new nuttx code and what is used in PX4 as it relates to this target (STM32) and network code. I can’t see any significant differences.

Does anyone have any ideas why ethernet should not work with STM32 targets when it does work on STM32F7 targets?

I am still trying to debug this, but I thought someone more familiar might know whats going on.

I appreciate I have left a lot of details regarding the exact configuration etc, I can provide this kind of info if it helps.


Ok, it turns out that ethernet works perfectly fine on the STM32 when you don’t accidentally initialise SPI2 SCK on the same pin as RMII_TXD1_1.

@Dino_Mani you might be able to comment here.

Thanks Julian, I have managed to get this working. The problem was in my board configuration.

1 Like