From Lantronix Wiki!
Jump to navigation Jump to search

This is an new feature of 1.4 firmware. Features are subject to change. Version 1.4 Betas are available in the forums: Forum link

Why USB to Wi-Fi with xPico Wi-Fi

See this video for how USB to Wi-Fi works: YouTube Link

USB Communications Protocol

The USB interface of the xPico Wi-Fi is a device-side, Full speed (12Mbps) port. When plugged into a USB Host, it will enumerate as a RNDIS Ethernet device.


No special drivers are needed for the xPico Wi-Fi. The operating system of the host needs to support RNDIS as a network interface. Most Debian Linux distributions have built in support in the kernel. Most Windows operating systems also have built in support for RNDIS.

Configuring xPico Wi-Fi


To enable the USB to Wi-Fi bridging function, go to the web manager, click on Bridge, then Configuration, and set the radio checkbox to Enabled. Click Submit, then reboot the xPico Wi-Fi. See the screenshot to the right.

Configuring WLAN Profiles

Unlike most USB to Wi-Fi adapters, the xPico Wi-Fi enumerates as an Ethernet interface. This means that the host doesn't have to configure the Wi-Fi interface with the SSID and password or other details of the WLAN Profile. Just plug into USB, and it appears as an Ethernet interface, and the xPico Wi-Fi automatically connects to one of the saved WLAN Profiles.

To provision a WLAN Profile, you can use the SoftAP interface of the xPico Wi-Fi and use the Web Configuration Manager's QuickConnect feature (see the Quick Start Guide), or use the Lantronix xPico Wi-Fi Utilities App. The other option is to connect one of the UARTs to your host's UART and use it in Command Line mode to configure the WLAN Profiles.

Raspberry Pi

If running Raspbian, then edit the /etc/modprobe.d/blacklist.conf file and add this line:

blacklist cdc_subset

This will prevent the built in driver in the kernel from loading (as it currently doesn't work), and will instead load the RNDIS driver from the modules, which is more up to date and does work.

Also, you will want to add eth1 to /etc/network/interfaces so that it is automatically configured and it tries to get a DHCP address (or assign it a static IP if that's what you would like to do):

iface eth1 inet dhcp
auto eth1

When plugged in, the xPico Wi-Fi will show up as eth1 interface, see below:

pi@raspberrypi ~ $ ifconfig
eth0      Link encap:Ethernet  HWaddr b8:27:eb:17:87:bf
          inet addr:  Bcast:  Mask:
          RX packets:513 errors:0 dropped:0 overruns:0 frame:0
          TX packets:371 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:53048 (51.8 KiB)  TX bytes:63921 (62.4 KiB)
eth1      Link encap:Ethernet  HWaddr 00:80:a3:a0:0a:89
          inet addr:  Bcast:  Mask:
          RX packets:14 errors:7 dropped:0 overruns:0 frame:7
          TX packets:2 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:1423 (1.3 KiB)  TX bytes:772 (772.0 B)
lo        Link encap:Local Loopback
          inet addr:  Mask:
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

Other Embedded Linux devices

Make sure that the kernel has the following enabled: