Ethernet_LDD usage

cancel
Showing results for 
Search instead for 
Did you mean: 

Ethernet_LDD usage

Jump to solution
1,841 Views
serhatitu
Contributor III

what is the real usage of ethernet_ldd bean?

i can not see any field to configure ip adress.

i have looked example to understand but it has been used for loopback not communicate?

Could you help me ?

how can i communicate with my pc using ethernet_ldd bean?

Labels (1)
1 Solution
818 Views
LadislavVadkerti
NXP Employee
NXP Employee

Hello,

the Ethernet_LDD component handles only ethernet frame transmission. It does not implement an Internet Protocol stack. You need a library which creates/analyzes IP packets, then you can send/receive them using the component.

Ladislav Vadkerti

Freescale Processor Expert Team

View solution in original post

0 Kudos
16 Replies
819 Views
LadislavVadkerti
NXP Employee
NXP Employee

Hello,

the Ethernet_LDD component handles only ethernet frame transmission. It does not implement an Internet Protocol stack. You need a library which creates/analyzes IP packets, then you can send/receive them using the component.

Ladislav Vadkerti

Freescale Processor Expert Team

0 Kudos
818 Views
serhatitu
Contributor III

Thanks for your helpful answer.

Now i am trying to use fnet stack but i could not configure it in my processor expert project.

Do you know anything about using fnet stack with processor expert?

0 Kudos
818 Views
Petr_H
NXP Employee
NXP Employee

Hi,

could you please write more detail on what MCU are you using?

best regards

Petr Hradsky

Processor Expert Support Team

0 Kudos
818 Views
serhatitu
Contributor III

Hi Peter,

i am using TOWERK60N512.

Processor: MK60DN512ZVLQ10

i did configuration according to the fnet documentation.

1.Drag and drop fnet stack folder to my project->sources folder.

2. writing the fnet paths to the project->properties ->C/C++ General->Paths and symbols

3.describe fnet_user_conf.h

should i make changes in  processorexpert_ld (for gcc compiler) / processorexpert.lcf(for freescale compiler) file?

Thanks

0 Kudos
818 Views
LadislavVadkerti
NXP Employee
NXP Employee

Hello,

the FNET stack uses its own ENET module driver and chip initialization. You cannot use the Ethernet_LDD component with FNET, because FNET does not take into account the initialization generated by Processor Expert and vice versa. You can try to replace the ENET driver in FNET, but that is not an easy thing to do.

Ladislav Vadkerti

Freescale Processor Expert Team

818 Views
serhatitu
Contributor III

Thanks for your helpful reply,

Could you suggest any TCP/IP stack , which it is compatible with processorexpert?

818 Views
LadislavVadkerti
NXP Employee
NXP Employee

Hello,

lwIP looks promising, but we have never tried it.

Ladislav Vadkerti

Freescale Processor Expert Team

0 Kudos
818 Views
ChrisTango
Contributor IV

Hello Ladislav,

I know the Ethernet_LDD is not for IP communcation and that's fine for me.

I'm searching for a simple demo, like sending a packet (nothing more). I'm trying to use this component with a FRDM-K64F board.

I set up everthing, but the queue gets full without sending any packet and it seems that the regarding interrupts (tx/rx) are not called.

So at all a very basic demo would be terrific.

Do you know one or some body else?

Best regards,

Chris

818 Views
LadislavVadkerti
NXP Employee
NXP Employee

Hi Chris,

depending on which product with Processor Expert you use, there should be an Ethernet demo example in the "<product_path>\eclipse\ProcessorExpert\Projects\Kinetis\ProcessorExpert\TWR-K70FN1M\Ethernet" directory. It is a demo for the K70 board, but with some minor modifications you should be able to use it on the K64F board. The transmission happens on an internal loopback. To use the RJ45 connector, the on-board PHY chip must be configured properly (using jumpers or the MII management interface).

Ladislav Vadkerti

Freescale Processor Expert Team

818 Views
ChrisTango
Contributor IV

Hi,

I ported the PE example for usage with the FRDM K64F board. Find attached the zipped project. Unfortunately I cannot get it to run so far; because the ISR ETH_OnFatalError() gets called.

I proved the initialization of the LDD through the ETH_GetDriverState() function. So, the initialization seems to be fine. I also didn't get any errors for the PE configuration - that seems to be fine as well.

I used the virtual serial terminal instead of console in eclipse, so that's a change I did; but which should not affect the Ethernet functionality at all.

Perhaps someone knows what I'm doing wrong. Perhaps you Ladislav? :smileywink:

Best regards

-Chris

0 Kudos
818 Views
kgouveia
Contributor II

Hi CrisTango,

I tried to run your project, but when I compiled appeared in my console the following text:

'Building target: Test_EthLDD.elf'

'Invoking: Cross ARM C++ Linker'

arm-none-eabi-g++ -mcpu=cortex-m4 -mthumb -mfloat-abi=hard -mfpu=fpv4-sp-d16 -O0 -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections  -g3 -T "C:/Users/Kleber Gouveia/Desktop/Test_EthLDD/Project_Settings/Linker_Files/ProcessorExpert.ld" -Xlinker --gc-sections -L"C:/Users/Kleber Gouveia/Desktop/Test_EthLDD/Project_Settings/Linker_Files" -Wl,-Map,"Test_EthLDD.map" -nanolibc -o "Test_EthLDD.elf"  ./Sources/Events.o ./Sources/main.o  ./Project_Settings/Startup_Code/startup.o  ./Generated_Code/System/CPU_Init.o ./Generated_Code/System/Peripherals_Init.o ./Generated_Code/System/Vectors.o  ./Generated_Code/Cpu.o ./Generated_Code/CsIO1.o ./Generated_Code/ETH.o ./Generated_Code/IO1.o ./Generated_Code/PE_LDD.o ./Generated_Code/Pins1.o ./Generated_Code/TIMER.o  

arm-none-eabi-g++: error: unrecognized command line option '-nanolibc'

make: *** [Test_EthLDD.elf] Error 1

I am using KDS 3.0.0. What version of KDS did you use?

Best regards,

Kleber.

0 Kudos
818 Views
ChrisTango
Contributor IV

Hi Kleber,

Yes, I created the project in KDS 2 and after your message I tried to compile it in KDS 3 on my side too. I got the same error as you did. That's strange, I also tried to removed the unrecognized command line but got same other issues. So, I will create an other thread for this new issue running KDS 2 projects in KDS 3.

In order to show the issue about the Ethernet_LDD I've created a ported demo for KDS 3.

This should compile without any problems.

Best regards,

Chris

0 Kudos
818 Views
navinarsavad
Contributor II

Hi Chris,

    I did not go through your code but the most probable reason you are facing the ETH_OnFatalError() is because the DMA which is used by the Ethernet LDD is inaccessible. You have to disable the MPU. Try placing this line of code before your ethernet LDD init function. This problem does not occur in K60, but I faced this issue in K64 when I ported the K60 code to K64.

MPU_CESR &= ~MPU_CESR_VLD_MASK;  //Disable MPU.

I hope this solves your problem.

Regards,

Navinar Savad

0 Kudos
818 Views
ChrisTango
Contributor IV

Hi Navinar,

Thanks for this hint! I didn't think about such a reason for my problem yet.

I will check it and let you know if it worked. Perhaps I've time on friday in order to do so.

Best regards,

Christian

819 Views
ChrisTango
Contributor IV

Hi Sohal,

hi Ladislav,

Thanks for your hints! I'll be back on the track to solve my issue with the PE ethernet driver. This a private project, so there is not much pressure on it to get it done in time. At work I'm using the same chip, but an other OS and different drivers and therefore this is a good chance to get familiar with PE (and MQX) at it's edge, getting everything initialized and under control using the autocode.

I'll keep you updated on this.

-Chris

0 Kudos
819 Views
sohalpatel
Contributor II

Hi Chris,

Seems no update! need to bang our head and burn our fingers! :smileyconfused:

Good luck!

meanwhile this is what I am readinghttps://lse.epita.fr/lse-summer-week-2014/slides/lse-summer-week-2014-21-Porting%20and%20testing%20a... to port lwIP to a system already having ProcessorExpert + FreeRTOS. The FreeRTOS is a component I got from MCU on Eclipse | Everything on Eclipse, Microcontrollers and Software.

Cheers,

Sohal.