Skip to content

Sparrow Evaluation Kit User Guide

Use this document to help setup and test your SP-01-EVK Sparrow Evaluation Kit.


Kit Contents

Eval Kit Contents

  • SP-01-EVK Board with SP-01-100-M2 Sparrow Module pre-installed
  • 12V DC Power Adapter
  • USB-C to USB-A 3.0 Cable
  • 2x Dual Band Wi-Fi Patch Antennas - PN: AFG4507W2S-0200S
  • 1x 2.4GHz Path Antenna - For Bluetooth Port

EVK Diagram

Eval Kit Contents


Hardware Quick Start

Note

Out of the box the EVK ships in USB/USB mode, meaning both Wi-Fi and Bluetooth will use the same WLAN USB port. For alternate configuration options, please see the Config Modes section below.

Eval Board Setup

  1. Verify M.2 Module Fully Seated in EVK

    • Ensure that during shipping & handling the SP-01-100-M2 module is still fully seated
    • Verify the M.2 screw is tight
  2. Connect Antennas

    • Attach the included flex antennas to the RF connectors as shown in the setup image
  3. Power & Data

    • Connect the 12V power adapter to the barrel jack
    • Connect the USB-C cable to the port labeled "WLAN USB" on the eval board to your computer

Config Modes

Using the CONFIG HOST jumpers on the EVK, different host interface modes can be set for Wi-Fi and Bluetooth such as USB, UART, PCIE, and SDIO.

Note

Out of the box the EVK ships in USB/USB mode, meaning both Wi-Fi and Bluetooth will use the same WLAN USB port. For alternate configuration options, please see the Config Modes section below.

The config host jumpers are numbered 0-2 and can either be set to a "1" or a "0". The silkscreen on the PCBA shows that placing the jumper in the left is a "1", and placing it on the right is a "0".

Please reference the following table for all available config host options:

CONFIG_HOST Strap Values

CONFIG_HOST [2:0] WLAN Bluetooth
000 SDIO UART
001 SDIO SDIO
010 PCIe USB 2.0
011 PCIe UART
100 USB 3.0/2.0 UART
101 USB 2.0 USB 2.0
110 USB 3.0/2.0 USB 3.0/2.0
111 USB 3.0 USB 3.0

Warning

For the config option "010" - WLAN PCIe/Bluetooth USB 2.0 - the USB interface for the Bluetooth can only be accessed via the mini PCIE connector. However, if you use option "011", you can utilize the BT UART USB-C port on the EVK.

Switching Between USB and PCIE

The Sparrow Module has a unique feature that allows its USB SS differential pairs to be used for both USB3.0 and PCIE. The EVK uses a multiplexer to select between USB-C and PCIE for the pairs. This is configured via the MUX SEL jumper. The image below shows the location and default configuration.

Eval Board Setup

By default, the Sparrow EVK ships with the CONFIG HOST pins set to 110 and the MUX SEL jumper set to USB. If the CONFIG HOST pins are configured for the PCIE interface, then the MUX SEL jumper must be switched to PCIE.


Software & Driver Setup

Linux

Currently Supported Platforms: - amd64 Ubuntu 18.04 or higher - arm based Ubuntu 18.04 or higher (raspberry pi confirmed) - More coming soon

  1. Install required firmware & driver:

Either download from Cloudsmith using the email you received

```
curl -1sLf \
  'https://dl.cloudsmith.io/API_TOKEN/botsunlimited/sparrow/setup.deb.sh' \
  | sudo -E bash

sudo apt-get update
sudo apt-get install botsu-sparrow botsu-sparrow-utils
```

or download the specific packages

For amd64:
```bash
sudo apt install ./botsu-sparrow_1.0.5_all.deb ./botsu-sparrow-utils_1.0.3_amd64.deb
```

For arm:
```bash
sudo apt install ./botsu-sparrow_1.0.5_all.deb ./botsu-sparrow-utils_1.0.3_arm64.deb
```
  1. Connect & Power on your EVK and confirm your system recognizes the USB interface:

    lsusb
    dmesg | grep mlan
    
    You should see a device from "Marvell" listed.

  2. Check for conflicting drivers: In some cases, NXP/Marvell firmwares are already built into the OS. In this case we need to blacklist the driver so it does not conflict with the custom Sparrow firmware/driver. First make sure the Sparrow EVK is powered on and connected over USB. Run the following command to check if the conflicting driver exists:

    lsmod | grep mwifiex
    
    If you see mwifiex or mwifiex_usb, then we need to blacklist those drivers. Follow the steps below:

    • Start a new text file in the /etc/modprobe.d directory:
      sudo nano /etc/modprobe.d/blacklist_sparrow.conf
      
    • Inside the file add the following two lines:
      blacklist mwifiex
      blacklist mwifiex_usb
      
    • Save the file and reboot. That's it! Now the correct driver/firmware should load.
  3. You're Ready to Test! Sparrow can be configured using built-in tools such as NetworkManager. The default configuration should create two interfaces:

    uap0
    
    This is the interface to use for configuring the access point. NOTE: This may have a different name depending on your system's naming default naming conventions.

    mlan0
    
    This is the primary station mode interface. NOTE: This may have a different name depending on your system's naming default naming conventions.

  4. Example script: Setting up an Access Point. This script will create an access point with the SSID sparrow1-ap and password 1122334455. It also sets a range of IP addresses to provide to clients.

    #!/bin/bash
    
    nmcli dev wifi hotspot ifname uap0 con-name 'sparrow1-ap' ssid 'sparrow1' password '1122334455'
    nmcli con down 'sparrow1-ap'
    nmcli con mod 'sparrow1-ap' ipv4.address 192.168.0.1/24 ipv4.gateway 192.168.0.1
    nmcli con up 'sparrow1-ap'
    
    NOTE: Replace "uap0" with the uap device name if your system automatically renamed it from uap0. You can check this by running:
    dmesg | grep uap0
    
    Look for the following text (as an example):
    wlx02504302ff01: renamed from uap0
    


Let’s build boldly —
The Bots Unlimited Team