Usb_modeswitch on air unit

YES !!!

# ping -I eth0 8.8.8.8                                                                                                                                                                                            
PING 8.8.8.8 (8.8.8.8) from 192.168.8.102 eth0: 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=110 time=35.5 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=110 time=34.2 ms
64 bytes from 8.8.8.8: icmp_seq=3 ttl=110 time=32.4 ms

thank’s a lot !!!
I finaly get it to work !!
so for those looking to do same

first : you need correctly libusb.so lib and usb-modswitch tool installed
you can get source and compile it from here https://github.com/joerg65/usb_modeswitch_Android
or simply get it from my previous message

  • connect your host directly to usb on air unit
  • authorize write on system partition
    adb shell "su 0 mount -o rw,remount /system"
  • autorise push on tmp folder
    adb shell "su 0 chmod +w /tmp"
  • then copy libusb.so and usb-modswitch to tmp folder
    adb push <path to your file on host>/libusb1.0.so /tmp/
    adb push <path to your file on host>/usb-modeswitch /tmp/
  • moves them to correct folder under a shell
    adb shell
$su
#mv /tmp/libusb1.0.so /system/lib64/
#mv /tmp/usbmodeswitch/system/bin/

if you are using like me a HUAWEI 3372 4G modem you will need a conf file for usb-modeswitch tool
you can directly write string code it’s up to you ( google is your friend) but I prefer readable conf file

  • just put the following into a usb-modeswitch.conf file and then push it to tmp and moves it to /etc/ folder
 TargetVendor=0x12d1
 TargetProductList="14db,14dc"
 HuaweiNewMode=1
 NoDriverLoading=1
  • unplug your adb host of air unit and get connected to remote
  • reboot the air unit
  • connect your 4G modem to air unit USB OTG port (please use an externaly powered usb cable)
  • as explained here : Herelink Ethernet - #3 by Michael_Oborne
adb shell (gets you into the gcs unit)
adb connect 192.168.0.10
adb -s 192.168.0.10:5555 shell

you will reach a shell on air unit

  • disable auto bridging of eth0 interface (thank’s a lot @Michael_Oborne I would have never find this one without you)
su
stop usbethx
  • check your modem is well registered on usb
# lsusb
Bus 001 Device 001: ID 1d6b:0002
Bus 001 Device 003: ID 12d1:1f01
  • switch the modem into hilink mode (if you are using another modem you should probably use wwan0 mode and it’s a litel bit more confuse to get qmi working)
# usb_modeswitch -v 12d1 -p 1f01 -c /etc/usb_modeswitch.conf
  • check your eth0 is registered with : ip a
  • wake up the interface : ifconfig eth0 up
  • start dhcpd on eth0 : dhcpcd-6.8.2 eth0 (it will setup route for you)
  • check your fresh IPv4
  • check you can ping outside : ping -I eth0 8.8.8.8

I still need to setup a dns correctly if someone can help it looks iptable is empty and seems android dont care about resolve.conf
thank’s for all helps

3 Likes