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.
Hi jcamdr, my name is Marco and I am really interested in following up this discussion. I need to use Arduino to emulate a CDC ECM device, and I believe Arduino Micro is the way to go.
Is there any activity going on this topic? I would like to provide support
@jcamdr, @Massimo Banzi is there any progress and activity going on this topic?
firstly, I think the idea is very attracting. As arduino is one prototype hardware and the IoT become more and more popular, there is strong potential requirement that connecting arduino based device to some embedded USB host via USB, such as, PLC, Switch, Router. So that the arduino based device can give many hardware and software extendibility and flexibility to the traditional hardware device without the hardware change. For example, if i need to extend the switch WSN access ability, I just need to plug in one usb based WSN gateway device, if i need to extend the switch GSM access ability, I just need to plug in one usb based GSM device.
Currently there is only serial over USB supported, I think it's not strong enough to fix the communication problem over USB, as many embedded host device do not have the virtual uart over USB functionality while RNDIS is widespread supported. So from this perspective, this idea is also very interesting.
secondly I think the big problem should be lacking of IP stack support on Lenoardo, Uno. Although we get the ethernet over USB working, we still can not easily get the IP based communication working. Any comments on this?