Ethernet and USB on computers
The computer side of a CopperLan Ethernet connection is handled by the default Ethernet hardware available on board.
The software in charge is the CopperLan VNM. This CopperLan piece of code creates a virtual network inside the computer and extends it as needed to the outside world, uniting multiple hardware devices and computers.
The computer side of a CopperLan USB link is directly talking to the local virtual network.
Ethernet in embedded designs
For hardware devices that need networking without being tied to a computer, we offer two solutions:
1. Embedded Linux. This is usually reserved to high-end implementations.
2. Using an off-the-shelf Ethernet capable microcontroller from various suppliers for which we provide the necessary libraries to integrate with your application code.
USB in embedded designs
For CopperLan products that cannot be used without a computer, it makes sense to connect them through USB only.
By design, USB is not a networking technology; nevertheless, CopperLan makes it appear so. CopperLan-USB products benefit from the same networking capabilities as their Ethernet counterpart.
With CopperLan through USB, it is possible to have the networking task (VNM) and the middleware (CHAI) residing inside the computer. It implies that a USB-based CopperLan device need not to run networking handling code; it only needs the code linking it to the computer in addition to its specific application code. This transfer of the networking and CHAI jobs inside the computer allows using any low-cost USB-capable MCU.
We have a reference designs based on various microcontrollers from low-end 8-bit to modern 32-bit.
Migrating our reference code to the architecture you already master is a no-brainer: just interface your USB handler to our Read-and-Write C functions.
With this solution, the compact CHAI-Link Client C-code allows rich CopperLan implementations into low-resource microcontrollers.
Combining USB and Ethernet in the same embedded design
Some devices are equally used with and without a computer. Those products could simultaneously offer USB and Ethernet for CopperLan connectivity in order to target various use cases and markets.
Such products can be realized by the combination of the options here above.
The Ethernet to USB-Host bridge: USB sans computer
For CopperLan products exclusively connected via Ethernet, it might be desirable that they also offer a USB Host port capability to which USB-based CopperLan products can connect.
For those products, Klavis is offering the firmware for dedicated off-the-shelf microcontrollers that handle both USB-Host and Ethernet functionalities. The firmware contains the usual VNM and CHAI, with the added capability of emulating the role of a computer to handle CopperLan USB products.
When using a Linux embedded platform, such functionality is implicit, as it is part of the Linux SDK we provide.