RNDIS Setup (Windows)
Windows hosts do not support CDC-ECM devices. To connect to the boards using USB Ethernet on Windows hosts, you need to configure an RNDIS interface instead.
Steps
Modify
$BUILD_DIR/conf/local.conf
. Find the line:# USB_GADGET_FUNCTION = "ecm"
Uncomment and change it to:
USB_GADGET_FUNCTION = "rndis"
Connect USB0 to host PC. You might find the device cannot be detected properly.
Press
Windows+R
and typedevmgmt.msc
then pressENTER
Right-click on the unrecognized RNDIS/Ethernet Gadget device, and select Update Driver Software:
Select Browse my computer for driver software → Let me pick from a list of device drivers on my computer → Network adapters
Select Microsoft Corporation → Remote NDIS Compatible Device
You should see an additional network adapter appear in Network and Sharing Center.
Set the Static IP of the adapter to:
IP:
192.168.96.2
Subnet Mask:
255.255.255.0
Default Gateway:
192.168.96.1
After static IP setting, you should now be able to proceed to next section to connect to the board with SSH.
Connecting using the board IP
The USB CDC-ECM interface in rity-demo-image is configured with the following static IP: 192.168.96.1
.
You can connect to the board using the following command:
ssh root@192.168.96.1
root@genio-350-evk:~#
You can also use the scp
program to copy files to the board:
scp host-file.txt root@192.168.96.1:/path/to/target/directory
Connecting by using mDNS
IoT Yocto also includes a mDNS server avahi daemon to provide device discovery.
The host name of the board is in the form <machine>.local
, where <machine>
is the value of MACHINE
variable that
was used to build the SDK.
For instance you can connect to the genio-350-evk
board with the host name genio-350-evk.local
by using the following command:
ssh root@genio-350-evk.local
root@genio-350-evk:~#
Hint
It is recommended to modify /etc/avahi/avahi-daemon.conf
and set host-name
to change the host name of the board to something unique if there are multiple boards of the same model connected to the same network. And run systemctl restart avahi-daemon
to take effect.