红联Linux门户
Linux帮助
当前位置: 红联Linux门户 > Ubuntu

N810在Ubuntu下的USB连接问题

发布时间:2008-09-27 00:23:07来源:红联作者:lhoobe
出自:风雷的技术天地

N810和外界的联系方式不外乎三种,wifi,蓝牙,usb。如果你希望通过ssh来开发N810,一般官方途径是通过wifi来ssh,但是maemo开发者网站上也提供了USB的链接方式,在这里有详细介绍。通常wifi的方式最方便,但是可能存在dhcp ip不固定的问题,USB不是那么方便,不过IP固定,所以虽然不是官方推荐的方法,还是会有很多开发者用。

下面针对我刚拿到N810遇到的USB连接问题谈一下。我的环境是Ubuntu8.04 64bit版本。

假设你按照上面所有步骤都进行了,还是无法通过USB在你的host连上N810,ping也ping不同,那么首先要做的事情就是

ifconfig

看看输出有没有usb0。通常遇到这种问题的,都是没有的。如果没有,用命令

ifup usb0

看看usb0能不能启动起来。如果可以,恭喜你,你很幸运,我在两台ubuntu8.04上实验都不行。如果不可以,继续。

一般来说,ifup失败的出错信息应该是这个: usb0: ERROR while getting interface flags: No such device。好,我们用

lsusb

看一看,只要USB端口正常,应该会有

Bus 007 Device 015: ID 0525:a4a2 Netchip Technology, Inc. Linux-USB Ethernet/RNDIS Gadget

这种信息的输出,也许会有多个设备信息(这几乎是肯定的),没关系,你先把设备拔了,lsusb一下,再插上去,lsusb一下,就知道哪个是你的了。好,现在我们得到这个信息,说明什么?说明usb设备是认出来了,但是系统没有认出是N810出来,换句话说,这表示你的硬件驱动就没有加载。所以我们用

modprobe cdc-ether

来加载驱动。这个命令运行后,显示信息是不会有变化的,没关系,现在我们再

ifconfig

看看,是不是有usb0的信息了?我到这里就有了,如果还是没有,看看

dmesg

的最后几行信息,可能能找到原因。

最后,此时usb0的IP不一定是正确的,再

ifdown usb0

ifup usb0

应该就没问题了。

奇怪的是,就算现在取下设备,用 rmmod cdc_ether把驱动卸载了,再插上设备,此时就能自动加载驱动了。信息可能是

Bus 007 Device 008: ID 0421:0096 Nokia Mobile Phones

我不知道为什么在我这里,第一次驱动模块不能自动加载,原因只可能是两个,要不是8.04 64bit的bug,要不就是我人品问题。Anyway,把解决过程写出来,为以后可能遇到这种问题的朋友提供一些参考。
文章评论

共有 0 条评论