Pages: [1]   Go Down
Author Topic: Ethernet over USB for Leonardo board  (Read 2197 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 2
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Is there anyone interested on extending the ethernet library to allow the Leonardo board to act as a ethernet device over USB ?

According to http://en.wikipedia.org/wiki/Ethernet_over_USB there is 4 possible protocols:

1) Remote NDIS (RNDIS)
    Old protocol not recommended for new design.

2) Ethernet Control Model (ECM)
    Simple but design limited to low bandwidth and high latency.
    WARNING URL not from usb.org !!!! http://catalog.gaw.ru/project/download.php?id=18514

3) Ethernet Emulation Model (EEM)
    New design for higher bandwidth and low latency.
    http://www.usb.org/developers/devclass_docs/CDC_EEM10.pdf

4) Network Control Model (NCM)
    Improved EEM design with provision to get even more bandwidth.
    http://www.usb.org/developers/devclass_docs/NCM10_012011.zip NCM10-20101124-track.pdf

As the ATmega32U4 only support 64 byte USB packet, It look like ECM is the only way to go.
Logged

Forum Administrator
Offline Offline
God Member
*****
Karma: 52
Posts: 646
I find plain exciting
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

hey this could be a great project! It might be better for the Due that has a full blown 480MB/s Usb interface.

Would you work on this if we send you a due?? smiley

m
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 2
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

The SAM3U4E require the Network Control Model (NCM) to show his power instead of the Ethernet Control Model (ECM) that can only run the ATmega32U4. My understanding from the documents specification of ECM and NCM is that those two protocols share almost nothing in common: the framing and control are much complex in NCM . My conclusion is that there are two distinct projects.

However, ECM will work on the two processors, even if it will be slow compared to NCM. So I propose to first start with a simpler ECM protocol to see if the ethernet over USB feature take some interest from the Arduino users community. Maybe the few Mbps bandwidth of ECM will already satisfy a lot of them.

Thanks for the offer of the Due, but I think i't a bit too early at this stage because aside of you, nobody have showed interest in this feature yet. So I am not so motivated to start burning a lot of time alone on a high end implementation. For the high end projects I already use cheap ARM with Linux that have ethernet over USB, host and device.
Logged

Pages: [1]   Go Up
Jump to: