cancel
Showing results for 
Search instead for 
Did you mean: 

Ethernet - without RTOS or CubeMX - STM32H7

CEagl.1
Associate III

Hello,

I am hoping i can be pointed in the right direction.

I would like to create, using an STM32H7, a device that has an ethernet port. 
The idea is simply to go to various sites and scrape info for processing later on. I guess this will require TCP/IP.

So i have found some examples online of this to help me and get started. However they seem to make little sense to me since i dont use and refuse to use CubeMX. I would rather understand what i am writing rather than have so much abstraction it takes forever to understand the code.
Ideally not having to use RTOS would be good, mostly because i dont understand them yet and i feel it just adds more complexity to what i am doing.

Ideally i would have liked to use the H7 internal MAC and an external PHY. Then i can attempt to code in the stack, which i know would be quite difficult and time consuming. But it does allow me to do software update fixes.
This would be preferred over using say a WIZ5500, although i do understand the benefits of using a hardwired stack.

I am looking for something stuctured that can help me understand what i need to have and also why thats been written at a lower level, i.e register level. 
Does anyone know of any such resource? 

1 ACCEPTED SOLUTION

Accepted Solutions
STea
ST Employee

Hello @CEagl.1 ,

if i understand you request correctly the way to go for you is developing with LWIP RAW API without RTOS would be ideal for you usecase.

In fact, you can have a look at Developing applications on STM32Cube with LwIP TCP/IP stack user manual and see section 4.1 Developing in standalone mode using the Raw API which contains a description of TCP/IP example with the RAW LwIP API you also take a look at the section 6 Using the LwIP applications which contains Example developed for the F4 series but can be easily ported to the H7 with caution to the memory usage and memory configuration (MPU) potential issues and conflicts with the Cache enabled.A good guide for these potential issues For H7+Ethernet can be found in this article How to create project for STM32H7 with Ethernet an... - STMicroelectronics Community.(you can skip the CubeMX config part and do everything else by hand).


Regards

In order 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
STea
ST Employee

Hello @CEagl.1 ,

if i understand you request correctly the way to go for you is developing with LWIP RAW API without RTOS would be ideal for you usecase.

In fact, you can have a look at Developing applications on STM32Cube with LwIP TCP/IP stack user manual and see section 4.1 Developing in standalone mode using the Raw API which contains a description of TCP/IP example with the RAW LwIP API you also take a look at the section 6 Using the LwIP applications which contains Example developed for the F4 series but can be easily ported to the H7 with caution to the memory usage and memory configuration (MPU) potential issues and conflicts with the Cache enabled.A good guide for these potential issues For H7+Ethernet can be found in this article How to create project for STM32H7 with Ethernet an... - STMicroelectronics Community.(you can skip the CubeMX config part and do everything else by hand).


Regards

In order 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.
Pavel A.
Evangelist III

For your goal ("go to various sites and scrape info for processing later on") just use a Raspberry Pi or similar board with Linux. Don't torture yourself with LwIP and all that nuisance. Life is short, so much interesting things to do.