Sterling-60 DVK-60-SIPT using USB-USB on Ubuntu DVK-60-SIPT on Ubuntu 18.04 PC This tutorial shows how to get the DVK-60-SIPT working on a PC with Ubuntu 18.04. Required Linux PC running Ubuntu 18.04 using a kernel between 3.2 to 5.4 DVK-60-SIPT This tutorial uses Sterling 60 Release 8.6.0.12 which supports Linux kernels 3.2 to 5.4. As new releases are available new kernels will be supported. To understand which kernel is supported by the Sterling 60 Release check the release notes on GitHub. Setup The setup for the DVK will use the USB/USB mode meaning the WiFi will interface with USB and Bluetooth will interface with USB. The DVK allows for other interface modes but this tutorial only covers USB/USB. Hardware Set switches (SW7, SW6, SW5) for WLAN and BT to use USB/USB mode Set SW1 to 5V, connect 12V DC to the barrel connector, and USB cable from PC to connection USB1 Software Update system and install tools: # ensure system is up to date sudo apt update sudo apt upgrade # install software tools needed sudo apt install make bison flex Note after upgrading the system it’s good practice to reboot and then ensure the kernel didn’t get upgraded past what is supported by the Sterling 60 Release. Install # Download backports wget https://github.com/LairdCP/Sterling-60-Release-Packages/releases/download/LRD-REL-8.6.0.12/backports-laird-8.6.0.12.tar.bz2 # Download firmware (USB/USB specific) wget https://github.com/LairdCP/Sterling-60-Release-Packages/releases/download/LRD-REL-8.6.0.12/laird-sterling60-firmware-usb-usb-8.6.0.12.tar.bz2 # Extract the firmware sudo tar xvf laird-sterling60-firmware-usb-usb-8.6.0.12.tar.bz2 -C / # Extract backports tar xvf backports-laird-8.6.0.12.tar.bz2 cd laird-backport-8.6.0.12 # Set the config to use Sterling60 make defconfig-sterling60 # Compile the modules make -j4 # Install modules sudo make install Reboot Check dmesg for backports and firmware loading # The usb port will vary depending on PC and USB port used $ dmesg | grep -e 'ieee80211 ' -e 'usb 1-2' -e 'backport' [ 1.712218] usb 1-2: new high-speed USB device number 2 using xhci_hcd [ 1.866891] usb 1-2: New USB device found, idVendor=1286, idProduct=2052, bcdDevice=40.00 [ 1.866894] usb 1-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [ 1.866895] usb 1-2: Product: Marvell Wireless Device [ 1.866896] usb 1-2: Manufacturer: Marvell [ 1.866897] usb 1-2: SerialNumber: 0000000000000000 [ 2.946340] Loading modules backported from Summit Linux version LRD-REL-8.6.0.12-0-gd89840b36573 [ 2.946340] Backport generated by backports.git v8.6.0.12 [ 3.075882] ieee80211 phy0: priv->pcmd_buf = 00000000d778d804 [ 3.078388] ieee80211 phy0: lrdmwl: found firmware image <lrdmwl/88W8997_usb.bin> [ 3.078482] ieee80211 phy0: start to download FW... [ 3.358464] ieee80211 phy0: info: FW download over, size 378808 bytes, ret 0 [ 3.358466] ieee80211 phy0: Firmware download complete, port will reset with new interface... [ 4.701357] usb 1-2: USB disconnect, device number 2 [ 5.016097] usb 1-2: new high-speed USB device number 4 using xhci_hcd [ 5.174286] usb 1-2: New USB device found, idVendor=1286, idProduct=204e, bcdDevice=32.01 [ 5.174288] usb 1-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [ 5.174289] usb 1-2: Product: Bluetooth and Wireless LAN Composite Device [ 5.174289] usb 1-2: Manufacturer: Marvell [ 5.174290] usb 1-2: SerialNumber: 0000000000000000 [ 5.180423] ieee80211 phy1: priv->pcmd_buf = 000000001db83880 [ 5.180562] ieee80211 phy1: lrdmwl: found firmware image <lrdmwl/88W8997_usb.bin> [ 5.180563] ieee80211 phy1: Skipping FW download, continuing with initialization... [ 5.192178] ieee80211 phy1: OTP data len = 0 [ 5.194165] ieee80211 phy1: Adjusting combo 0's number of supported interfaces to 2 [ 5.194205] ieee80211 phy1: mwl_reg_notifier set=0 core 00 [ 5.194629] ieee80211 phy1: Sending regulatory hint for US [ 5.194631] ieee80211 phy1: Radio Type ST60 (0x0) [ 5.194632] ieee80211 phy1: Num mac 2 : OTP Version (1) [ 5.194634] ieee80211 phy1: Firmware version: 5.6.41.5 [ 5.194634] ieee80211 phy1: Firmware OTP region: 10, country: US [ 5.194635] ieee80211 phy1: Deep Sleep is disabled [ 5.194636] ieee80211 phy1: 2G enabled, 5G enabled [ 5.194637] ieee80211 phy1: 2 TX antennas, 2 RX antennas. (00000003)/(00000003) [ 5.194782] usb 1-2: Direct firmware load for lrdmwl/regpwr.db failed with error -2 [ 5.194784] ieee80211 phy1: /lib/firmware/lrdmwl/regpwr.db not found. [ 5.194785] ieee80211 phy1: Sending regulatory hint for US [ 5.194793] ieee80211 phy1: mwl_reg_notifier set=1 driver US [ 5.194802] ieee80211 phy1: mwl_reg_notifier set=1 driver US [ 5.201755] usb 1-2 wlxc0ee40503358: renamed from wlan0 [ 5.276369] ieee80211 phy1: WMM Turbo=1 [ 8.280411] ieee80211 phy1: mwl_reg_notifier set=1 country element US Check WiFi $ iw dev phy#1 Interface wlxc0ee40503358 ifindex 3 wdev 0x1 addr c0:ee:40:50:33:58 type managed txpower 0.00 dBm Check Bluetooth $ bluetoothctl [NEW] Controller C0:EE:40:50:33:5B nuc [default] Agent registered [bluetooth]# power on Changing power on succeeded [bluetooth]# scan on Discovery started [CHG] Controller C0:EE:40:50:33:5B Discovering: yes [NEW] Device 47:FE:1A:4A:AE:D3 47-FE-1A-4A-AE-D3 [NEW] Device 84:2A:FD:29:6F:FB 84-2A-FD-29-6F-FB [NEW] Device 49:12:50:98:64:30 49-12-50-98-64-30 [NEW] Device 6A:20:51:3E:E6:37 6A-20-51-3E-E6-37 [NEW] Device 7E:97:4C:AC:BA:8A 7E-97-4C-AC-BA-8A [NEW] Device 7F:2C:8C:7D:A2:64 7F-2C-8C-7D-A2-64 Kernel Lockdown If the kernel module fails to load and the following shows up in dmesg then the kernel is in lockdown and easiest way around this is to disable secure boot in the PC BIOS. [ 839.299271] usb 1-4: new high-speed USB device number 15 using xhci_hcd [ 839.448101] usb 1-4: New USB device found, idVendor=1286, idProduct=2052, bcdDevice=40.00 [ 839.448108] usb 1-4: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [ 839.448113] usb 1-4: Product: Marvell Wireless Device [ 839.448116] usb 1-4: Manufacturer: Marvell [ 839.448120] usb 1-4: SerialNumber: 0000000000000000 [ 839.460273] Lockdown: systemd-udevd: unsigned module loading is restricted; see man kernel_lockdown.7 For more info see: https://man7.org/linux/man-pages/man7/kernel_lockdown.7.html https://wiki.debian.org/SecureBoot#Secure_Boot_limitations References DVK-60-SIPT User Guide DVK-60-SIPT Schematic Sterling 60 Release Notes Sterling 60 Releases