Getting Started with n-Link® Firmware Development
Introduction
n-Link is a high throughput wireless module that supports Wi-Fi, Bluetooth, BLE, and ZigBee
protocols. n-Link uses the TCP/IP stack of the host operating system, which may be Linux, Windows,
or an Embedded OS. n-Link supports USB2.0 and SDIO interfaces.
The purpose of this document is to quickly get you started with using n-Link on a Linux system.
Software
1. N-Link Software Package
2. Bootable Linux USB (included in EVK)
(4)
Getting Started
The USB drive included with the EVK contains a bootable Linux image with the n-Link software package
already installed. Follow the steps outlined in 4.2 of the EVK User Guide
obtain the latest image, follow the instructions in Section 11.1 “Steps to update Live USB Image” of the
User Guide. The latest image is available at ftp://redpne:Ewd&09Fe@203.196.161.94/RS9113-x.y.z.iso,
where x.y.z is the latest version).
If you prefer to evaluate on your own Linux system, then follow the n-Link TRM
after downloading the n-Link software package from silabs.com. Note that this will require
compiling drivers from source.
(1)
to boot from Linux. (Note: To
(3)
Sections 3 and 4
Example
We will now run a simple ping demo using n-Link Wi-Fi. n-Link runs on the host TCP/IP stack, and
therefore typical applications would only use the host OS APIs.
The n-Link package provides numerous executables and helper scripts for installing configuring, and
running the n-Link device. These utilities should be run as a root user. To learn more about these
utilities, consult section 5 of the TRM.
1. Navigate to `/home/Onebox-Mobile/` (If building on your own system, go to
`RS9113.NBZ.NL.GENR.LNX.X.Y.Z/source/host/release`).
2. Modify the file `sta_settings.conf` so the device will know which AP to connect to. See
section 4.4.1 of the TRM for more details.
3. Enter `sudo sh wlan_enable.sh` to enable the Wi-Fi drivers. There are many common
problems with this step.
a. If this returns a message in the form “insmod: ERROR: could not load module ___:
___”, then a necessary module either does not exist or did not build correctly. If
your system does not support Bluetooth by default, it may be necessary to run the
command `sudo modprobe bluetooth`. Errors for Bluetooth (onebox_bt_*) and
ZigBee (onebox_zb_*) modules can safely be ignored.
b. If this returns the message “Error while starting/enabling protocols,” run the script
`remove_all.sh`, unplug and replug the device, and repeat step 3.
v1.0 Page 1
Getting Started with n-Link® Firmware Development
4. Run the command `sudo sh start_sta.sh`. You should receive the message “VAP created
Successfully”. If not, recheck your `sta_settings.conf` file.
5. You have now created an interface “wifi0” which is associated you’re your AP. Now obtain
an IP address by running `sudo dhclient wifi0`
6. Run the command `ifconfig wifi0`. This should show information on your Wi-Fi interface,
including its assigned IP address. Make note of the IP address.
7. Now ping the device from another computer on the same network. If you receive a
response, then the device is working.
What’s Next
You should now be familiar with the basics of the n-Link system. You can continue to try out other
examples.
Section 4 of the User Guide covers the various n-Link use cases, including Wi-Fi (4.4), Wi-Fi + BT (4.5),
Wi-Fi + BLE (4.6), Wi-Fi + BT + BLE (4.7), and Wi-Fi + ZigBee (4.8). Section 5 of the TRM covers ioctl,
which allows users to control low level device settings such as DTIM and maximum throughput.
v1.0 Page 2