2013-03-24 54 views
3

我上一个问题,Android cannot talk to Arduino using AVRDUDE,已解决。我现在可以将我的Nexus 7连接到我的Arduino Uno。我正在运行的完整命令是这样的:AVRDUDE Android Arduino ioctl error

/system/xbin/su (getting root here) 
/data/data/jackpal.androidterm/local/bin/avrdude -F -V -c arduino -p ATMEGA328P -P /dev/bus/usb/002/002 -b 115200 -C /data/data/jackpal.androidterm/local/etc/avrdude.conf -U flash:w:led.hex 

这里我试图把十六进制文件放在Arduino上。但是我得到以下错误:

avrdude: ser_open():can't set attributes for device "/dev/bus/usb/002/002": Inappropriate ioctl for device ioctl("TIOCMGET"): Bad file desriptor

+0

我上传从我的MAC的文件,我也得到: AVRDUDE:AVR器件初始化并准备接受指令 阅读| ################################################## | 100%0.00s avrdude:设备签名= 0x1e950f avrdude:注意:已指定FLASH存储器,将执行擦除周期 要禁用此功能,请指定-D选项。 AVRDUDE:擦除芯片 AVRDUDE:读取输入文件 “led.hex” AVRDUDE:检测为英特尔六角 AVRDUDE输入文件led.hex汽车:写闪存(214个字节): 书写| ################################################## | 100%0.04s – HansStam 2013-03-24 12:06:56

+0

在Android上,我上传完全相同的文件,因此led.hex文件本身100%正确。 – HansStam 2013-03-24 12:08:12

回答

3

原来我使用的是错误的端口。我用/dev/bus/usb/002/002,而我应该使用ttyACM0

+1

如何知道/ dev/bus/usb/XXX/YYY设备名称的“tty”式名称? – 4ntoine 2013-06-03 12:06:52

+0

你救了我的一天... – 2015-03-17 13:47:07