USB_ModeSwitch官网: USB_ModeSwitch - Handling Mode-Switching USB Devices on Linux

USB_ModeSwitch for Android 7下载: https://download.csdn.net/download/sunrain_hjb/10573201

测试环境:APQ8096、Android 7(userdebug)、HUAWEI E8372

测试步骤:

1.插入HUAWEI E8372模块并稍等片刻,运行lsusb命令检测模块状态,12d1:1f01即为HUAWEI E8372,此时为Stroage模式。

msm8996:/sys/bus/usb/devices # lsusb
Bus 001 Device 004: ID 12d1:1f01
Bus Device : ID 1d6b:
Bus Device : ID 1d6b:

2.运行命令 adb shell usbmodeswitch -W -v 12d1 -p 1f01 -M '55534243123456780000000000000011062000000101000100000000000000" 切换模式

adb shell usbmodeswitch -W -v 12d1 -p 1f01 -M ''
Take all parameters from the command line * usb_modeswitch: handle USB devices with multiple modes
* Version 2.5. (C) Josua Dietze
* Based on libusb1/libusbx ! PLEASE REPORT NEW CONFIGURATIONS ! DefaultVendor= 0x12d1
DefaultProduct= 0x1f01
MessageContent="" Look for default devices ...
found USB ID 12d1:1f01
vendor ID matched
product ID matched
found USB ID 1d6b:
found USB ID 1d6b:
Found devices in default mode ()
Access device on bus
Get the current device configuration ...
Current configuration number is
Use interface number
with class
Use endpoints 0x01 (out) and 0x81 (in) USB description data (for identification)
-------------------------
Manufacturer: HUAWEI_MOBILE
Product: HUAWEI_MOBILE
Serial No.: 0123456789ABCDEF
-------------------------
Looking for active drivers ...
OK, driver detached
Set up interface
Use endpoint 0x01 for message sending ...
Trying to send message to endpoint 0x01 ...

3.再次运行命令lsusb,检测切换后的状态,12d1:14db即切换为Modem模式后的HUAWEI E8372

msm8996:/sys/bus/usb/devices # lsusb
Bus 001 Device 005: ID 12d1:14db
Bus Device : ID 1d6b:
Bus Device : ID 1d6b:

对应的dmesg信息如下:

[  105.249217] msm-dwc3 .hsusb: DWC3 exited from low power mode
[ 105.249255] dwc3_ext_event_notify():cancel HRTIMER
[ 105.490266] usb -: new high-speed USB device number using xhci-hcd
[ 105.631944] usb 1-1: New USB device found, idVendor=12d1, idProduct=1f01
[ 105.631965] usb -: New USB device strings: Mfr=, Product=, SerialNumber=
[ 105.631976] usb -: Product: HUAWEI_MOBILE
[ 105.631988] usb -: Manufacturer: HUAWEI_MOBILE
[ 105.631999] usb -: SerialNumber: 0123456789ABCDEF
[ 105.642186] usb-storage -:1.0: USB Mass Storage device detected
[ 105.643755] transfer actual length=, result=
[ 105.643966] scsi host1: usb-storage -:1.0
[ 105.644740] usb -: USB disconnect, device number
[ 106.220296] usb -: new high-speed USB device number using xhci-hcd
[ 106.361999] usb 1-1: New USB device found, idVendor=12d1, idProduct=14db
[ 106.362039] usb -: New USB device strings: Mfr=, Product=, SerialNumber=
[ 106.362066] usb -: Product: HUAWEI_MOBILE
[ 106.362091] usb -: Manufacturer: HUAWEI_MOBILE
[ 106.376414] cdc_ether 1-1:1.0 eth0: register 'cdc_ether' at usb-xhci-hcd.0.auto-1, CDC Ethernet Device, 0c:5b:8f:27:9a:64
[ 106.382937] cdc_ether -:1.0 eth0: kevent may have been dropped
[ 106.394406] cdc_ether -:1.0 eth0: kevent may have been dropped
[ 106.397866] cdc_ether -:1.0 eth0: kevent may have been dropped
[ 106.397879] cdc_ether -:1.0 eth0: kevent may have been dropped
[ 106.403253] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[ 106.744979] SELinux: initialized (dev fuse, type fuse), uses mountpoint labeling
[ 114.922234] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready

4.运行ifconfig命令,查看eth0的状态,并对比连接PC端时的状态

5.运行route和ping等命令,检查网络连接

msm8996:/ # route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.8.0 0.0.0.0 255.255.255.0 U eth0

6.在Chrome浏览器中测试网络连接,具体如下图所示。

USB_ModeSwitch for Android 7的更多相关文章

  1. 【Android 系统开发】 编译 Android文件系统 u-boot 内核 并烧写到 OK-6410A 开发板上

    博客地址 : http://blog.csdn.net/shulianghan/article/details/40299813  本篇文章中用到的工具源码下载 : -- ok-6410A 附带的 A ...

  2. 在Linux下adb连接不上android手机的终极解决方案

    转自: http://blog.csdn.net/liuqz2009/article/details/7942569 1.做android开发的过程,碰到了Linux下adb识别不了android设备 ...

  3. 【原】Android热更新开源项目Tinker源码解析系列之三:so热更新

    本系列将从以下三个方面对Tinker进行源码解析: Android热更新开源项目Tinker源码解析系列之一:Dex热更新 Android热更新开源项目Tinker源码解析系列之二:资源文件热更新 A ...

  4. 配置android sdk 环境

    1:下载adnroid sdk安装包 官方下载地址无法打开,没有vpn,使用下面这个地址下载,地址:http://www.android-studio.org/

  5. Android SwipeRefreshLayout 下拉刷新——Hi_博客 Android App 开发笔记

    以前写下拉刷新 感觉好费劲,要判断ListView是否滚到顶部,还要加载头布局,还要控制 头布局的状态,等等一大堆.感觉麻烦死了.今天学习了SwipeRefreshLayout 的用法,来分享一下,有 ...

  6. Android Studio配置 AndroidAnnotations——Hi_博客 Android App 开发笔记

    以前用Eclicps 用习惯了现在 想学学 用Android Studio 两天的钻研终于 在我电脑上装了一个Android Studio 并完成了AndroidAnnotations 的配置. An ...

  7. Android请求网络共通类——Hi_博客 Android App 开发笔记

    今天 ,来分享一下 ,一个博客App的开发过程,以前也没开发过这种类型App 的经验,求大神们轻点喷. 首先我们要创建一个Andriod 项目 因为要从网络请求数据所以我们先来一个请求网络的共通类. ...

  8. 【原】Android热更新开源项目Tinker源码解析系列之一:Dex热更新

    [原]Android热更新开源项目Tinker源码解析系列之一:Dex热更新 Tinker是微信的第一个开源项目,主要用于安卓应用bug的热修复和功能的迭代. Tinker github地址:http ...

  9. 【原】Android热更新开源项目Tinker源码解析系列之二:资源文件热更新

    上一篇文章介绍了Dex文件的热更新流程,本文将会分析Tinker中对资源文件的热更新流程. 同Dex,资源文件的热更新同样包括三个部分:资源补丁生成,资源补丁合成及资源补丁加载. 本系列将从以下三个方 ...

随机推荐

  1. 学习 JavaScript (七) 内存问题

    内存问题是 JavaScript 比较底层的东西,依葫芦画瓢学会了怎么使用变量,但是对于内存的概念依然模糊,今天让我们一起来了解一下内存在这门语言是怎么样的存在. 内存在不同类型的数值面前表现有很大的 ...

  2. SpringBoot自动配置原理

    前言 只有光头才能变强. 文本已收录至我的GitHub仓库,欢迎Star:https://github.com/ZhongFuCheng3y/3y 回顾前面Spring的文章(以学习的顺序排好): S ...

  3. 关于ASL(平均查找长度)的简单总结

    ASL(Average Search Length),即平均查找长度,在查找运算中,由于所费时间在关键字的比较上,所以把平均需要和待查找值比较的关键字次数成为平均查找长度. 它的定义是这样的: 其中n ...

  4. 在Salesforce成长:需要好奇心

    今天的正题,今天谈谈好奇心和技术.这两天北大学霸Cherry分两次问了我两个问题,都触发了很好的结果和思考,让大家都受益. 第一天是她在做Salesforce和Flexible Report集成项目中 ...

  5. PHP Socket编程(转)

    [PHPsocket编程专题(理论篇)]初步理解TCP/IP.Http.Socket.md [PHPsocket编程专题(实战篇①)]php-socket通信演示 [PHPsocket编程专题(实战篇 ...

  6. windows powershell基础

    windows powershell基础 目录: 1.管道和重定向 2.命令执行 3.变量 4.数组和哈希表 #@()创建数组,使用","把每个值分隔开,@{}创建哈希表,用&qu ...

  7. Linux 桌面玩家指南:07. Linux 中的 Qemu、KVM、VirtualBox、Xen 虚拟机体验

    特别说明:要在我的随笔后写评论的小伙伴们请注意了,我的博客开启了 MathJax 数学公式支持,MathJax 使用$标记数学公式的开始和结束.如果某条评论中出现了两个$,MathJax 会将两个$之 ...

  8. shell打印 倒等腰三角形

    #!/bin/bash read -p "input the length: " n方法一:内循环中的一个for循环shell写法for i in `seq 1 $n`do    ...

  9. Identity Server 4 预备知识 -- OAuth 2.0 简介

    OAuth 2.0 简介 OAuth有一些定义: OAuth 2.0是一个委托协议, 它可以让那些控制资源的人允许某个应用以代表他们来访问他们控制的资源, 注意是代表这些人, 而不是假冒或模仿这些人. ...

  10. 虎牙直播张波:掘金Nginx日志

    大家好!我是来自虎牙直播技术保障部的张波.今天主要会从数据挖掘层面跟大家探讨一下 Nginx 的价值.OpenResty 在虎牙的应用场景主要 WAF 和流控等方面,我今天主要分享的是“ Nginx ...