Reversed USB tethering from OpenWrt to PC

Hey friends!

I'm trying to use Linkit 7688 devboard to teach stuff in class, but the board does not come with an RJ45 port and by default it should be accessed via Wi-Fi. It will be quite a signal and network mess to make every student's board act as AP or connect to Wi-Fi routers, so I thought maybe reverse usb tethering could do the trick.

I've been searching for infos about reverse usb tethering for OpenWRT for a while but unfortunately there aren't really much information out there, except this short document:
However this doc isn't helpful too as I'm not trying to tether network to an Android device, but a PC. I've also gave it a try and proved it didn't work :frowning:

Does anyone know if reverse usb tethering to PC is actually doable or I should seek other solutions?
Thanks a bunch!


Appreciate your reply! :grinning_face_with_smiling_eyes:
I tried to look for kmod-usb-gadget-eth in kernel driver menuconfig options, however I couldn't find one.
I've set the target profile to MediaTek LinkIt Smart 7688. If I can't find kmod-usb-gadget-eth in build options, does it mean the chipset doesn't support it?

Depends on:  TARGET_PER_DEVICE_ROOTFS [=n] && m && MODULES [=y]
Kernel Modules > USB Support
1 Like

Sorry for the typo! I meant to say I looked in Kernel Modules, not kernel driver. Unfortunately I can't see the option for kmod-usb-gadget-eth .....

About the dependency, I'm not sure I understand it correctly, but it seems TARGET_PER_DEVICE_ROOTFS is target dependent. Is it possible to change what's defined in a target profile? Also I'm not sure what the m in the middle is supposed to mean....
I'm sorry if this is a noob question, but it really puzzled me even after some extensive googling :sweat_smile:

good question... likely also depending on usb-gadget in general rules also...

try: make kernel_menuconfig

( general internet references for that board will also likely assist you... )

you can also check to see if there is an .ipk in the package repos...

I've already enabled USB support and USB gadget support in kernel_menuconfig, but the option for usb-gadget-eth in menuconfig still doesn't show up.

I spent all night trying to figure out how to make TARGET_PER_DEVICE_ROOTFS =y but there are just too little information could be found :sob:

what you've enabled in the screenshot above seems to be all that is available... (and seems like you may have what you need)

you won't see 'usb-gadget-eth' in kernel_menuconfig as it's an openwrt 'package' name for the underlying kernel support option that you've enabled above...

did you compile and see if it works?

1 Like

According to the datasheet, the MT7688 only supports USB host mode, so you cannot use the gadget drivers and you cannot connect it to a PC with a passive USB cable.

However, you could use an USB ethernet adapter and an ethernet cable to connect the board to a PC.

Note that I do not have this board, my judgement is just based on the documentation.

I would not run many such boards in AP mode either, but why not use them in WiFi station mode?
One or two access points might be capable of serving a whole classroom set.


@anon50098793 @mpa
Thanks to all your replies :smiling_face_with_three_hearts:
Yes, I finally realized that USB host and OTG are different down to the hardware level after tons of searching.
It is "physically" impossible to ask a USB host to do OTG things so I'll have to go for adding RJ45 hat for 7688 board.

but why not use them in WiFi station mode?

Appreciate the advice :grinning_face_with_smiling_eyes:, but I try to keep things as clean as possible to avoid wasting time on possible network issues if they all connect to an AP.
So the I guess the best scenario would be having p2p connection for every student and their board.

1 Like

This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.