cancel
Showing results for 
Search instead for 
Did you mean: 

lwip api ported for stm32 and partially using HAL

STehA.1
Associate II

Hi, I wonder if someone can tell me about the most recent lwip api for stm32 as follows:

 

1. Where can I download it (ported lwip) from the stm32 website

2. Is there any serious issue related to udp and tcp (client/server) usage of the api?

3. Is it possible to partially use HAL api that is related only to the lwip in my application (udp + tcp server/client) as I 

intended to write code mostly bare metal (registers level programming) - [NO or REDUCE HAL API + NO RTOS]

 

4. Please help me point out to the most recent works. Thank you

My embedded profile will be:

MCU: STM32H563ZIT6 or STM32F427VGT6

ETH IC: LAN8742A (RMII)

System clock: configure to 50 MHz (using external xtal of 8 MHz)

SAM

1 REPLY 1
STea
ST Employee

Hello @STehA.1 ,

1. Where can I download it (ported lwip) from the stm32 website 

  • LWIP can be found in the cube Firmware package under \Middlewares\Third_Party\LwIP for example for the STM32F4 you can find it in here.
  • for STM32H5 the Lwip port can be found in   stm32h5-classic-coremw-apps.

2. Is there any serious issue related to udp and tcp (client/server) usage of the api?

  • there is no issue related to the Usage of the Lwip API in TCP and UDP and you can find examples for each usage which are provided with the STM32CubeF4 package as well.
  • for the STM32H5 examples for UDP and TCP clients can be found in here.

3. Is it possible to partially use HAL api that is related only to the lwip in my application (udp + tcp server/client) as I 

intended to write code mostly bare metal (registers level programming) - [NO or REDUCE HAL API + NO RTOS]

  • yes, you can use HAL api to write mostly bare metal code, but this needs deep knowledge with the send receive process the PHY configuration initialization and config as well as the implementation of tcp/ip layer to be able to make UDP and TCP examples with bare metal code this can be a quit challenging journey and it needs deep understanding of networking protocol, PHY mechanism, DMA and RX/TX buffer management ...

Hope this answers all your inquiries and helps you with your development.

BR

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.