element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Avnet Boards Forums
  • Products
  • Dev Tools
  • Avnet Boards Community
  • Avnet Boards Forums
  • More
  • Cancel
Avnet Boards Forums
Software Application Development Raw Ethernet frames with XEmacPs driver
  • Forum
  • Documents
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join Avnet Boards Forums to participate - click to join for free!
Actions
  • Share
  • More
  • Cancel
Forum Thread Details
  • State Verified Answer
  • Replies 7 replies
  • Subscribers 316 subscribers
  • Views 1669 views
  • Users 0 members are here
Related

Raw Ethernet frames with XEmacPs driver

Former Member
Former Member over 11 years ago

Hi,

I posted a question a few weeks ago, and since I didn't get answer, I would like to try again in a simpler way.

I want to send and receive raw frames through the Eth0 interface (the Ethernet interface I've enabled) using a bare-metal aplication (XEmacPs driver).

I'm using the example code of this driver and Wireshark, but I can't see any identifiable frame from the Zedboard (MAC, frame length...).

What am I doing wrong?

Thank you.

  • Sign in to reply
  • Cancel
  • Former Member
    0 Former Member over 11 years ago

    There's a bunch of things that could have gone wrong. It's probably an issue with the initialization of the ethernet driver. Try stepping through it and make sure each step completes successfully. One thing that may simplify getting ethernet to run is disabling caches, so you don't need to worry about flushes, invalidates, and making sure that your Rx and Tx BD spaces are in non-cached memory.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • Former Member
    0 Former Member over 11 years ago

    Thank you for your answer (and sorry for my delay).

    As long as I understood from the only example of the XEmacPs driver of Zedboard, it uses non-cached memory. The example runs without errors, but I don't receive any frame from the board.

    The other example I am studying is the lwIP echo server example. Despite the program doesn't echoes the packets I send to the board, I receive a "Gratuitous ARP" frame from the Zedboard (and it's the only proof I have of the example working). However, the code for the initialization of the ethernet driver is a complete madness (at least for me).

    Does anyone know how to initialize the driver or make it work in the simplest way?

    I know there could be a bunch of things that I can have done wrong, but I think the problem is probably in the standalone application code. I'm probably asking too much, but I'm not an expert at all, and I can't believe that the documentation and examples of the Ethernet driver of this family boards is so poor.

    Thank you! (Sorry for my english...)

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • Former Member
    0 Former Member over 11 years ago

    Hello Sysseon,

    I try to run the ethernt with bare metal as well. Did you already fix this problem? If Yes: How did you do it? can you post some easy application for initializing and sending via ethernet?

    Thanks.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • Former Member
    0 Former Member over 11 years ago

    Hello Schlauby,

    Actually, I solved the problem the last week, after I gave up for a long time. So, I can't send you an easy application for initializing because I haven't finished yet cleaning the "useless" code lines of the example, although I hope to do that this week.

    However, if you are trying to see that XEmacPs example works in the same way I did it (Wireshark in PC), I can tell you which my problem was... although it's very stupid.

    In the XEmacPs example, in EmacPsDmaIntrExample() function (which initialize the Ethernet device), there is a line that establish a loopback in the Ethernet device, so data can't go out the board through RJ45 port. So, if you simply comment the line where the funtion "EmacPsUtilEnterLoopback(EmacPsInstancePtr, EMACPS_LOOPBACK_SPEED_1G)" is used, you should be able to see (in Wireshark) one Ethernet packet from your Zynq board.

    From this point, you can study and modify the sending and receiving in EmacPsDmaSingleFrameIntrExample() function (I am at this point trying to solve a problem with the device buffers when sending). If I made it, I'm sure anyone can. Anyway, I will post an easy example when I have it.

    I hope this can help you. If you have other problems, tell me.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Reject Answer
    • Cancel
  • Former Member
    0 Former Member over 9 years ago

    Dear Sysseon

       I ve tried many time to use the example code but always had compiling errors, I would appretiate it if you can pass me your code  even with useless parts as a point of start

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • julian-bauer
    0 julian-bauer over 8 years ago in reply to Former Member

    Hello sysseeon,

    do you have a working project that sends Ethernet frames vom the zedboard to the pc?

     

    actually I'm in a project to send data from the board to the pc. i already got the example project to run but I'm still at the beginning.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • julian-bauer
    0 julian-bauer over 8 years ago in reply to Former Member

    Hi Oggo,

    check this out for "ZedBoard version of XAPP1026: LightWeight IP (lwIP) Application Examples"

    http://zedboard.org/support/design/1521/11

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2025 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube