cancel
Showing results for 
Search instead for 
Did you mean: 

LAN8720 ETHBoard Waveshare+STM32Cube+STM3F407VG

eng
Associate II
Posted on February 28, 2015 at 15:07

Hello, Friends!

I'm trying to generate code to work with the LAN8720 PHY + FreeRTOS through STM32Cube. I can work with ethernet, only if the PHY starts with this ethernet cable. Otherwise, the ethernet does not work.

I've tried changing the PHYADR0 as 1b and 0b, without success. I've tried changing the settings of lwIP stack, also without success.

I did a test with another card Waveshare using DP83848 PHY at the beginning had the same problem, but that was resolved by changing the PhyAddress 1b to 0b.

* Attached are the wiring diagram of the LAN8720 plate ETHBoard of Waveshare and tabm�m the STM32Cube configuration file that I am using.

#lan8720 #stm32cube #freertos
3 REPLIES 3
francescatodiego
Associate II
Posted on March 03, 2015 at 17:25

Hi Ronaldo

Use autonegotiation (I don't remember but I think is defautl for PHY device)

Poll periodcally the PHY status and when linked call the init eth driver routine

In my driver iI check periodically (100ms) the PHY status

eng
Associate II
Posted on March 09, 2015 at 14:29

Hi, Francescato!

Thanks for your answer!

So I now I enabled Auto-Enabled and I imagine that when we use the lwIP and FreeRTOS stack the EthIf tasks and tcpip_thread should treat the PHY status.

I keep looking at lwIP stack and in some instances the ST, a solution to this case. Any news post here.

francescatodiego
Associate II
Posted on March 10, 2015 at 08:49

Ronaldo

sorry

,

I do not know

lwIP

and

FreeRTOS

and I can't

help

After

a quick read

of

EthIf

I think this

can't solve

The problem is

''below

''

TCP / IP stack

is related

to the

PHY

registers

lwIP

is not related

to the

PHY

(

may

be you can

install a

user callback

)

tcpip_thread

assume you have

a

configured

network

but

when the cable

is

connected

you must configure

the stack

before