NI Linux Real-Time Discussions

cancel
Showing results for 
Search instead for 
Did you mean: 

sbRIO-9651 USB wifi

Hi,

 

After reading through several threads:

https://forums.ni.com/t5/forums/v3_1/forumtopicpage/board-id/7111/thread-id/480/page/1

https://forums.ni.com/t5/forums/v3_1/forumtopicpage/board-id/7111/page/2/thread-id/228

 

It is not yet clear to me how to configure a USB Wifi dongle.

 

Can anyone explain step by step how to do it?

 

I cannot see the option create wireless interface in MAX.

 

Thanks

0 Kudos
Message 1 of 4
(4,178 Views)

Hi Luzwavelabs,

 

I'll double-check with my 9068 that's sitting on my desk, but while I wait for some software installation to finish up, can you post what network interfaces are shown when calling ip addr show? Also, can you post the kernel messages that appear following when you plug in the USB wifi adapter into the controller (using dmesg)?

0 Kudos
Message 2 of 4
(4,164 Views)

I found that the USB dongle that I had to work with (a RaLink 2800 series USB wireless dongle) would correctly be identified when plugged in, providing a wlan0 device when listing the network interfaces using ip addr, and the interface showed up in MAX (16.0), but as soon as I tried to enable the device and use it, it was unable to see any wireless networks to associate with. Checking the kernel logs (using dmesg), I see that the issue (as is so often the case with Linux wifi) was missing firmware on the target:

 

 

//From the end of the kernel log as reported by dmesg:
[1538661.587602] usbcore: registered new interface driver rt2800usb
[1639198.212055] ieee80211 phy0: rt2x00lib_request_firmware: Info - Loading firmware file 'rt2870.bin'
[1639198.212287] rt2800usb 1-1:1.0: Direct firmware load for rt2870.bin failed with error -2
[1639198.212305] rt2800usb 1-1:1.0: Falling back to user helper
[1639198.216063] ieee80211 phy0: rt2x00lib_request_firmware: Error - Failed to request Firmware
[1639198.225088] ieee80211 phy0: rt2x00lib_request_firmware: Info - Loading firmware file 'rt2870.bin'
[1639198.225171] rt2800usb 1-1:1.0: Direct firmware load for rt2870.bin failed with error -2
[1639198.225187] rt2800usb 1-1:1.0: Falling back to user helper
[1639198.226952] ieee80211 phy0: rt2x00lib_request_firmware: Error - Failed to request Firmware

Grabbing the appropriate firmware from  https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/ and placing it on the target (the kernel expects firmware to live at /lib/firmware/, using the same directory structure as the noted git repo), I replugged the dongle, fired MAX back up, lo and behold things work fine:

usb-wifi-1.jpg

Note that my 9068 (which does not have a wifi interface normally) is connected to a wireless network (192.168.X.X network vs. the wired 10.2.X.X network).

 

So, it's certainly possible to enable and use through MAX, but it's going to likely require a bit of work.

Message 3 of 4
(4,142 Views)

BradM Kudos for the 2017 post.

 

I have a Transvideo USB 150mbit WiFi NIC that is RealTek rt2800usb compatible connected to the USB port.

Using sbRIO-9637

Firmware version: 8.8.0f0

RT Software: 22.5 2022 Q3 (NI Linux Real-Time ARMv7-A 4.14.146-rt67)

 

Here are some more details on the previous post to make it quicker for others to get it up and running.

 

1.) Enable SSH access in NI-Max

2.) From windows command prompt enter -> ssh -l admin <your sbRIO IP address>

3.) admin@NI-sbRIO-9637-00000000:~# ifconfig -a

 

eth0 Link encap:Ethernet HWaddr
inet addr:192.168.1.3 Bcast:192.168.15.255 Mask:255.255.240.0
inet6 addr: Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:927 errors:0 dropped:0 overruns:0 frame:0
TX packets:1508 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:85423 (83.4 KiB) TX bytes:303133 (296.0 KiB)
Interrupt:54 Base address:0xb000

 

lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:136 errors:0 dropped:0 overruns:0 frame:0
TX packets:136 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:15543 (15.1 KiB) TX bytes:15543 (15.1 KiB)

 

wlan0 Link encap:Ethernet HWaddr
BROADCAST MULTICAST MTU:1500 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:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)

 

4.) wlan0 is only available when you enter the -a into ifconfig

5.) admin@NI-sbRIO-9637-00000000:~# pwd
/home/admin

6.) In the search box of the previous posts link seach rt2800usb and you get this link -> https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/commit/?id=9023bf7dc753c...

7.) Selecting version 36 of the rt2870.bin file you get a hex dump page which you right mouse click on PLAIN and select COPY LINK ADDRESS

8.) At the time of the post it was https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/plain/rt2870.bin?id=9023...

9.) admin@NI-sbRIO-9637-00000000:~# wget https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/plain/rt2870.bin?id=9023...
Connecting to git.kernel.org (145.40.68.75:443)
rt2870.bin?id=9023bf 100% |***********************************************************************| 8192 0:00:00 ETA

10.) admin@NI-sbRIO-9637-00000000:~# cp rt2870.bin\?id\=9023bf7dc753c99ea29be742fe4f09d455f379ba /lib/firmware/rt2870.bin

11.) admin@NI-sbRIO-9637-00000000:~# reboot
The system is going down for reboot NOW!

12.) see wifi disabled photo

13.) see wifi enabled photo

14.) see wifi connected photo

 

I hope this helps to speed up getting your sbRIO's on USB wifi.

 

Download All
0 Kudos
Message 4 of 4
(1,792 Views)