作为一名Android技术宅,USB OTG是你必须了解的,所谓USB OTG就是你可以利用手机或平板上用来充电、与电脑传输数据的micro USB接口来连接其他USB外设,如游戏手柄、鼠标、键盘、U盘甚至移动硬盘(当然你需要额外供电)。而一条USB OTG数据线也就是必备的工具了。

成品效果

目前关于能否兼容何种USB外设,以及是否需要root你的Android设备并没有一个明确的标准,不过一般情况下“标准”的Android设备如果没经过root的话是无法挂载USB外设的。只有运行Ice Cream Sandwich或更高系统的Android设备才能识别出USB游戏手柄、鼠标或键盘。具体情况可以咨询你身边更加资深的技术宅们。

在我们开始之前有必要说明一下,DIY并不是我们得到一条USB OTG数据线最好的办法,从网上买一条然后等快递上门是最方便的。当然了对于技术宅来说这个办法简直弱爆了,我们身边各种各样的数据线为我们提供了足够的材料,废物利用即环保又省钱,还能满足DIY的乐趣,如果你手头正好有电烙铁,那么我们就可以开始了。

材料及工具

材料和工具

我们需要准备一些材料和工具,不过别担心都是很常见的,所有需要的工具你都可以在一个技术宅的工具箱中找到:

电烙铁,低瓦数的就可以

细无铅焊料

一把锋利的小刀

一些电工胶带及热缩管

一条标准的micro USB数据线

一个A型USB延长线

焊接跳线

我们需要的是micro USB小头的部分,以及USB延长线的母头端,不过首先我们需要在micro USB接口处焊接一截跳线。拿起micro USB线,用小刀削掉小头部分的外皮,直到看到焊点为止,所以我们需要多削掉一些。

切开micro USB公头

焊点一 红色 VCC

焊点二 白色 DATA-

焊点三 绿色 DATA+

焊点四 无 ID

焊点五 黑色 地线

当我们把接口切开之后,会看到彩色的细电线焊接在小引脚上,这些线缆和引脚对应于上面的列表。我们需要将焊点四(ID)与焊点五(地线)通过跳线连接在一起。在标准的USB数据线中焊点四是开放的,而在USB OTG数据线中焊点四是需要接地的。你可以在数据线的任何地方焊接跳线,只要保证将焊点四和焊点五连接起来就可以了。

焊接跳线

然后将USB数据线做过手术的这一端完全减下来,记得留下足够长的接线,并准备两截热缩管(如果你有的话),将它们套在数据线上,但不要马上就加热,一切收尾工作都要在功能测试正常之后进行。

拼接数据线

将USB延长线的公头剪下来,剥去5厘米左右的外皮,查看一下露出来的细电线的颜色是否与之前加工好的micro USB线相同。如果相同的话只需依次按颜色匹配连接在一起就好,如果不幸不同,那么按照上面的焊点列表切开之前剪下的公头比对,如果你手头有万用表的话还可以实际测试一下。

拼接数据线

将两条数据线小心的拼接在一起,并确保在拼接前已经把热缩管套在数据线上了。由于之后在使用中会经常弯折拖拽等等,所以一定要确保焊接的足够结实,即使多花些时间也没关系的。

测试

当所有焊点都冷却后,小心的将数据线接到手机或平板上,找一款老式的USB有线鼠标,接到数据线的另一端,在几秒钟之内你应该就可以看到设备上出现了鼠标指针,如果你用的是激光鼠标而不是滚球鼠标,应该在插入的时候还可以看到鼠标亮起来。

虽然在手机或平板上外接一个鼠标很酷但其实并不是很实用,这仅仅是为了测试而已,如果一切正常的话,加热热缩管,如果没有热缩管的话可以用电工胶布将数据线的接口部分缠严。鼠标与所有其他USB设备使用的都是相同的四个接点,所以如果鼠标可以正常运转的话那么就说明我们的数据线成功了。

加热收紧热缩管

加热收紧热缩管

实际使用

如果你使用的是三星Galaxy S3,那么可以直接通过USB OTG数据线连接U盘,你会在手机的资源管理器中发现一个新的文件夹,名叫USB storage,里面可以看到所有U盘上的文件。如果你使用的是Nexus 7或Galaxy Nexus的话就会稍微复杂一点了。

原生的Jelly Bean系统可以识别并挂载U盘,不过系统不会自动安装它。就是说手机和系统是支持U盘的,但是不能直接用。Android的开发者们表示这样做是有目的的,他们会提供实现这一操作的所有功能,但是并没有提供用户界面,他们不希望手机自动读取U盘。关于这个话题之前也争论了很久。

而现在我们需要做的就是root你的设备,当你root设备之后,从谷歌Play商店下载StickMount并安装,之后当你连接U盘时就会得到提示,挂载U盘后就可以看到里面的文件了。

Android技术宅:自制USB OTG数据线的更多相关文章

  1. android USB OTG功能实现

    一个.检查HW概要,确认是否支持OTG特征(vbus无论是动力,IDDIG pin连接是否正确) 两.如果HW确认支持OTG特征,然后根据以下方法被打开USB OTG功能及实现山: 如何打开USB O ...

  2. USB otg 学习笔记

    1 USB OTG的工作原理 OTG补充规范对USB2.0的最重要的扩展是其更具节能性的电源管理和允许设备以主机和外设两种形式工作.OTG有两种设备类型:两用OTG设备(Dualrole device ...

  3. USB OTG to PC USB API简介

    本API分为四部分:Linux或Android内核 (主要是gadget驱动).linux端API及其DEMO.Windows 驱动.Windows API及其Demo. 一.linux.Androi ...

  4. USB OTG介绍(转载)

    1. 概要 OTG设备使用插头中的ID引脚来区分A/B Device,ID接地被称作为A-Device,为连接时候的USB Host,A-Device始终为总线提供电力,ID悬空被称作为B-Devic ...

  5. USB OTG学习

    1. 概要 OTG设备使用插头中的ID引脚来区分A/B Device,ID接地被称作为A-Device,为连接时候的USB Host,A-Device始终为总线提供电力,ID悬空被称作为B-Devic ...

  6. 详述USB OTG发展及协议标准

    USB On-The-Go 扩大了USB 的应用领域,将USB 从传统的PC 与外设通讯的模式,扩展到移动电子和嵌入式领域中,抛开主机PC,实现通常的外设与外设之间点对点(Point to Point ...

  7. USB OTG简单介绍

    1 引言 随着USB2.0版本号的公布,USB越来越流行,已经成为一种标准接口.如今,USB支持三种传输速率:低速(1.5Mb/s).全速(12Mb/s)和快速(480Mb/s),四种传输类型:块传输 ...

  8. USB OTG简要

    1 介绍 随着USB2.0发布版本号,USB更受欢迎.它已成为一种标准接口.现在,USB它支持三种速度:低速(1.5Mb/s).全速(12Mb/s)速(480Mb/s),四种传输类型:块传输.同步传输 ...

  9. 如何打开USB OTG功能:

    一.检查HW原理图,确认是否支持OTG功能(vbus是否供上电,IDDIG pin连接是否正确)二.若HW确认支持OTG功能,则按照以下方法分别打开USB OTG功能及实现挂载: 如何打开USB OT ...

随机推荐

  1. 我用爬虫一天时间“偷了”知乎一百万用户,只为证明PHP是世界上最好的语言

    我用爬虫一天时间“偷了”知乎一百万用户,只为证明PHP是世界上最好的语言 2015-08-06 猿圈 我用爬虫一天时间“偷了”知乎一百万用户 只为证明PHP是世界上最好的语言 看了不少朋友圈里推荐的P ...

  2. UVA 10375 Choose and divide

    n! 分解素因子 快速幂 ei=[N/pi^1]+ [N/pi^2]+ …… + [N/pi^n]  其中[]为取整 ei 为数 N!中pi 因子的个数: #include <iostream& ...

  3. C语言学习笔记frist---输入两个数比较大小

    C#学习中,问道艰辛,今自C学起,第一个函数学习:输入两个数比较大小,仅作练习: #include "stdafx.h" #include<stdio.h> // 包含 ...

  4. jquery load(URL,FUNCTION(){}) 异步加载页面

    $("#btnSearch").click(function () { var queryUrl = '/Report/LoadInsClassifFileNew'; if ($( ...

  5. MYSQL 加密的 3 类方法

    背景: 若你想要储存一些由可能包含任意字节值的加密函数返回的结果,使用BLOB列而不是 CHAR 或VARCHAR 列,从而避免由于结尾空格的删除而改变一些数据值的潜在问题. 这一句话来自官方文件,记 ...

  6. 如何测试一个U盘

    功能测试: 1 在windows xp比较流行的操作系统上是否可以识别(装了驱动后是否可以) 2 在电脑上显示的盘符是否正确 3 总空间,可用空间,已用空间是否显示正确 4 u盘中是否可以拷入各种格式 ...

  7. 必学100个常用linux命令大全

    1,echo “aa” > test.txt 和 echo “bb” >> test.txt //>将原文件清空,并且内容写入到文件中,>>将内容放到文件的尾部 2 ...

  8. extjs让按钮可用或者不可用

    Ext.getCmp(‘按钮ID’).enable();//设置为可用Ext.getCmp(‘按钮ID’).disable();//设置为不可用

  9. linux之SQL语句简明教程---Alias

    接下来,我们讨论 alias (别名) 在 SQL 上的用处.最常用到的别名有两种: 栏位别名及表格别名. 简单地来说,栏位别名的目的是为了让 SQL 产生的结果易读.在之前的例子中,每当我们有营业额 ...

  10. tsm ANS0326E问题处理

    备份tsm备份oracle 报错 ANS0326E This node has exceeded its maximum number of mount points. 查看所有节点详细信息 q no ...