Realtek RTL8188CU Wireless LAN 802.11n USB

Has anyone gotten this wifi dongle to work on the roboRIO usb port?
This is what the console is saying during boot.

Booting LabVIEW RT…
[ 0.552618] spidev spi0.0: buggy DT: spidev listed directly in DT
[ 0.559994] spidev spi0.1: buggy DT: spidev listed directly in DT
[ 0.567308] spidev spi0.2: buggy DT: spidev listed directly in DT
[ 0.574736] spidev spi0.3: buggy DT: spidev listed directly in DT
[ 0.582808] spidev spi1.0: buggy DT: spidev listed directly in DT
[ 0.697958] xiic-i2c 81000000.i2c: Optional input clock not found.

INIT: version 2.88 booting

Starting udev
[ 6.052541] ubi0 error: ubi_open_volume: cannot open device 0, volume 2, error -16
[ 6.070478] ubi1 error: ubi_open_volume: cannot open device 1, volume 0, error -16
[ 7.571037] rtlwifi: Selected firmware is not available
hwclock: Cannot access the Hardware Clock via any known method.

hwclock: Use the --verbose option to see the details of our search for an access method.

Next boot mode is runtime

vm.overcommit_ratio = 86

Starting rtctld: done

INIT: Entering runlevel: 5

Setting up networking on wlan0:

/etc/rc5.d/S01networking: line 116: setup_wireless: command not found

[ 13.042897] rtl_usb: reg 0x80, usbctrl_vendorreq TimeOut! status:0xffffffb9 value=0xa400
[ 13.097190] rtl_usb: reg 0x80, usbctrl_vendorreq TimeOut! status:0xffffffb9 value=0xa500
[ 13.151409] rtl_usb: reg 0x80, usbctrl_vendorreq TimeOut! status:0xffffffb9 value=0xa600
[ 13.204659] rtl_usb: reg 0x80, usbctrl_vendorreq TimeOut! status:0xffffffb9 value=0xa700
Starting system message bus: dbus.

Starting NIAuth: done

Starting OpenBSD Secure Shell server: sshd

done.

Much appreciated for any help. Or even stop trying it wont work. Spent about 4 days on this now.
Pretty sure I need a rtl8188cu driver file if one exist for the ni roboRIO. Maybe from a device that uses ‘opkg’ to install.

realtek linux support is spotty so you’re probably SOL. if you can i would purchase a radio. if you cant idk what to tell you. sorry.

1 Like

If I’m remembering correctly, Realtek’s networking stuff doesn’t have great Linux support… Any reason you need to use this instead of the more standard Ethernet WiFi bridge?

Edit: It appears there’s an open source driver available. I would try building this using the WPILib C++ toolchain or doing it directly on the RIO if you can and going from there.

1 Like

I have one I use with my raspberry pi. It would make for a really compact test platform.

that looks promising, but that’s a little over my head in technical terms.
I would have to download git gcc make linux-header / kernal-devel & bc

help

does the rio even have enough storage for all of this?

I could just purchase a compatible wifi dongle if anyone knows of one on amazon

I’ve used this one before, but it’s been discontinued. https://www.amazon.in/7WL100-150Mbps-Wireless-Raspberry-Supports/dp/B00YOG16RM. It uses the rt2800usb.

If the robot isn’t going anywhere, why can’t you just connect using Ethernet or USB-B? I smell an XY Problem here.

3 Likes

I had to install drivers for my raspberry pi. Not sure if you have terminal access or root access to the roborio. If you do, you need to get the kernel version then you can download and install drivers and it should work

My goal is to build a robot that can run pathweaver.
My idea was to use my home built robot with two talon pwm motor controllers and roboRIO.
I tried to use an old Linksys wrt54g router for the radio. I was getting lost packets and the pwm signal would periodically drop out because the roboRio was disabling teleop briefly and would re-inable it. (verified with scope) The code I wrote was from a template - simple motor controller controlled by game controller. I switched to the usb dongle to see if I could get rid of the packet loss.
The dongle works on a pi (28 pin) uname -r reports 4.4.50+ (its raspbian)
The roboRio is reporting 4.14.87-rt49-cg-7.0.0f0-xilinx-zynq-189
Since the pi is Armv6 and roboRio is Armv7 could I simply use the pi drivers? Or is this too simplistic?

Thanks for everyone for your help. I was surprised at the speed of some of your replies.
Appreciate it.

Oh, I’m a technical mentor - gave up my coaching role (about 8 years) to new physics teacher this year. Students haven’t been able to meet in person because of covid-19. I may be able to get a radio from the class room. My wife is a teacher at the school and she knows the primary coach. May be difficult to convey what I need. I know the primary coach knows what the radio is because she has been to competitions and have seen the kids program it for Field. Difficulty may be getting the proper plug for the power jack. (poe cable would be nice too but I believe we only have one and it is on competition robot) So this is why I’m trying to MacGyver something from home. Trying to hone my skills to help the kids learning java programming and sensors (imu, encoder, etc.) USB and Ethernet to my home router with wire works fine. I just don’t want to be tethered to prevent tangling Ethernet cord.
Hope this answers the X Y problem. And yes I’m kind of a n00b but who isn’t. :slight_smile:

No, kernel drivers have to be built for the exact kernel and architecture. NI provides some basic documentation on how to build the kernel and kernel modules for their NI Linux RT platform (which includes the Rio), but it needs a decent amount of experience.

1 Like

Any wireless router can be used on the robot, in addition to the robot radio we are all accustomed to.
So, if you have any old home routers or can get your hands on one, and can figure out how to power it on the robot, it can be used (any router default settings can work).

1 Like

Not that I want to discourage anyone from kernel hacking… it’s fun, particularly the world of NI’s kernel. However, I suspect you’d be better off solving this issue by just using a different wireless router. Perhaps this one: GL.iNet GL-AR750S-Ext (Slate) Gigabit Travel AC VPN Router - AndyMark Inc

It sounds to me like your issues might be related more to wireless congestion or configuration if you are seeing dropped packets.

The radio utility from FIRST offers a few different ways to configure the OM5P-AC radios and I would try to get going with that if you can - it’ll do both client and AP modes. It’s also possible to load OpenWRT onto the OM5P-AC but it’s not as simple of a process as the FRC radio configuration utility.