avrdude unable to talk to Arduino board (via uftdi)
Hans Petter Selasky
hselasky at c2i.net
Wed Aug 4 16:42:51 UTC 2010
On Wednesday 04 August 2010 18:26:22 Marcin Cieslak wrote:
> >Submitter-Id: current-users
> >Originator: Marcin Cieslak
> >Confidential: no
> >Synopsis: avrdude unable to talk to Arduino board (via uftdi)
> >Severity: serious
> >Priority: medium
> >Category: usb
> >Class: sw-bug
> >Release: FreeBSD 9.0-CURRENT amd64
>
> >Environment:
> System: FreeBSD radziecki.saper.info 9.0-CURRENT FreeBSD 9.0-CURRENT #5
> r206987: Tue Apr 27 20:45:03 CEST 2010
> saper at radziecki.saper.info:/usr/obj/usr/src/sys/VAIO amd64
>
> avrdude-5.10 installed from ports, using default
> /usr/local/etc/avrdude.conf
>
> Arduino Duemilanove board with ATMega328 processor.
>
> Using Arduino USB interface, appearing as uftdi:
>
> # usbconfig -d ugen4.3 dump_device_desc
> ugen4.3: <FT232R USB UART FTDI> at usbus4, cfg=0 md=HOST spd=FULL (12Mbps)
> pwr=ON
>
> bLength = 0x0012
> bDescriptorType = 0x0001
> bcdUSB = 0x0200
> bDeviceClass = 0x0000
> bDeviceSubClass = 0x0000
> bDeviceProtocol = 0x0000
> bMaxPacketSize0 = 0x0008
> idVendor = 0x0403
> idProduct = 0x6001
> bcdDevice = 0x0600
> iManufacturer = 0x0001 <FTDI>
> iProduct = 0x0002 <FT232R USB UART>
> iSerialNumber = 0x0003 <A8008pRI>
> bNumConfigurations = 0x0001
>
> # usbconfig -d ugen4.3 dump_all_config_desc
>
> ugen4.3: <FT232R USB UART FTDI> at usbus4, cfg=0 md=HOST spd=FULL (12Mbps)
> pwr=ON
>
>
> Configuration index 0
>
> bLength = 0x0009
> bDescriptorType = 0x0002
> wTotalLength = 0x0020
> bNumInterfaces = 0x0001
> bConfigurationValue = 0x0001
> iConfiguration = 0x0000 <no string>
> bmAttributes = 0x00a0
> bMaxPower = 0x002d
>
> Interface 0
> bLength = 0x0009
> bDescriptorType = 0x0004
> bInterfaceNumber = 0x0000
> bAlternateSetting = 0x0000
> bNumEndpoints = 0x0002
> bInterfaceClass = 0x00ff
> bInterfaceSubClass = 0x00ff
> bInterfaceProtocol = 0x00ff
> iInterface = 0x0002 <FT232R USB UART>
>
> Endpoint 0
> bLength = 0x0007
> bDescriptorType = 0x0005
> bEndpointAddress = 0x0081 <IN>
> bmAttributes = 0x0002 <BULK>
> wMaxPacketSize = 0x0040
> bInterval = 0x0000
> bRefresh = 0x0000
> bSynchAddress = 0x0000
>
> Endpoint 1
> bLength = 0x0007
> bDescriptorType = 0x0005
> bEndpointAddress = 0x0002 <OUT>
> bmAttributes = 0x0002 <BULK>
> wMaxPacketSize = 0x0040
> bInterval = 0x0000
> bRefresh = 0x0000
> bSynchAddress = 0x0000
>
> >Description:
> Any attempt to contact the board using avrdude fails.
> Checked with the same hardware (dual-boot) and Microsoft
> Vista (with arduino-0018 IDE) and the board can be
> contacted and programmed without any problems.
>
> Syslog with:
> hw.usb.ucom.debug: 15
> hw.usb.uftdi.debug: 15
>
> avrdude -c arduino -p m328p -P /dev/cuaU0
>
> Aug 4 18:10:04 radziecki saper: Connecting board
> Aug 4 18:10:07 radziecki kernel: ugen4.3: <FTDI> at usbus4
> Aug 4 18:10:07 radziecki kernel: uftdi0: <FT232R USB UART> on usbus4
> Aug 4 18:10:07 radziecki kernel: uftdi_attach:
> Aug 4 18:10:07 radziecki kernel: ucom_attach_tty: tp = 0xffffff0003cd8400,
> unit = 0 Aug 4 18:10:07 radziecki kernel: ucom_attach_tty: ttycreate: U0
> Aug 4 18:10:07 radziecki kernel: ucom_open: tp = 0xffffff0003cd8400
> Aug 4 18:10:07 radziecki kernel: ucom_dtr: onoff = 1
> Aug 4 18:10:07 radziecki kernel: ucom_line_state: on=0x01, off=0x00
> Aug 4 18:10:07 radziecki kernel: ucom_rts: onoff = 1
> Aug 4 18:10:07 radziecki kernel: ucom_line_state: on=0x02, off=0x00
> Aug 4 18:10:07 radziecki kernel: ucom_ring: onoff = 0
> Aug 4 18:10:07 radziecki kernel: ucom_line_state: on=0x00, off=0x08
> Aug 4 18:10:07 radziecki kernel: ucom_break: onoff = 0
> Aug 4 18:10:07 radziecki kernel: ucom_line_state: on=0x00, off=0x04
> Aug 4 18:10:07 radziecki kernel: ucom_param: sc = 0xffffff0003cd9458
> Aug 4 18:10:07 radziecki kernel: uftdi_pre_param:
> Aug 4 18:10:07 radziecki kernel: ucom_cfg_open:
> Aug 4 18:10:07 radziecki kernel: uftdi_cfg_open: uftdi_cfg_param:
> Aug 4 18:10:46 radziecki saper: Starting avrdude
> Aug 4 18:10:48 radziecki kernel: ucom_param: sc = 0xffffff0003cd9458
> Aug 4 18:10:48 radziecki kernel: uftdi_pre_param:
> Aug 4 18:10:48 radziecki kernel: ucom_dtr: onoff = 1
> Aug 4 18:10:48 radziecki kernel: ucom_line_state: on=0x01, off=0x00
> Aug 4 18:10:48 radziecki kernel: ucom_rts: onoff = 1
> Aug 4 18:10:48 radziecki kernel: ucom_line_state: on=0x02, off=0x00
> Aug 4 18:10:48 radziecki kernel: uftdi_cfg_param:
> Aug 4 18:10:48 radziecki kernel: ucom_ioctl: cmd = 0x402c7413
> Aug 4 18:10:48 radziecki kernel: ucom_ioctl: cmd = 0x402c7413
> Aug 4 18:10:48 radziecki kernel: ucom_ioctl: cmd = 0x802c7414
> Aug 4 18:10:48 radziecki kernel: ucom_param: sc = 0xffffff0003cd9458
> Aug 4 18:10:48 radziecki kernel: uftdi_pre_param:
> Aug 4 18:10:48 radziecki kernel: ucom_ioctl: cmd = 0x8004667e
> Aug 4 18:10:48 radziecki kernel: ucom_ioctl: cmd = 0x8004667d
> Aug 4 18:10:48 radziecki kernel: ucom_ioctl: cmd = 0x4004746a
> Aug 4 18:10:48 radziecki kernel: ucom_ioctl: cmd = 0x8004746d
> Aug 4 18:10:48 radziecki kernel: ucom_dtr: onoff = 1
> Aug 4 18:10:48 radziecki kernel: ucom_line_state: on=0x01, off=0x00
> Aug 4 18:10:48 radziecki kernel: ucom_rts: onoff = 1
> Aug 4 18:10:48 radziecki kernel: ucom_line_state: on=0x02, off=0x00
> Aug 4 18:10:48 radziecki kernel: ucom_ioctl: cmd = 0x4004746a
> Aug 4 18:10:48 radziecki kernel: ucom_ioctl: cmd = 0x8004746d
> Aug 4 18:10:48 radziecki kernel: ucom_dtr: onoff = 0
> Aug 4 18:10:48 radziecki kernel: ucom_line_state: on=0x00, off=0x01
> Aug 4 18:10:48 radziecki kernel: ucom_rts: onoff = 0
> Aug 4 18:10:48 radziecki kernel: ucom_line_state: on=0x00, off=0x02
> Aug 4 18:10:48 radziecki kernel: uftdi_cfg_param:
> Aug 4 18:10:48 radziecki kernel: ucom_outwakeup: sc = 0xffffff0003cd9458
> Aug 4 18:10:48 radziecki last message repeated 2 times
> Aug 4 18:10:53 radziecki kernel: ucom_ioctl: cmd = 0x4004746a
> Aug 4 18:10:53 radziecki kernel: ucom_ioctl: cmd = 0x8004746d
> Aug 4 18:10:53 radziecki kernel: ucom_dtr: onoff = 1
> Aug 4 18:10:53 radziecki kernel: ucom_line_state: on=0x01, off=0x00
> Aug 4 18:10:53 radziecki kernel: ucom_rts: onoff = 1
> Aug 4 18:10:53 radziecki kernel: ucom_line_state: on=0x02, off=0x00
> Aug 4 18:10:53 radziecki kernel: ucom_ioctl: cmd = 0x802c7415
> Aug 4 18:10:53 radziecki kernel: ucom_outwakeup: sc = 0xffffff0003cd9458
> Aug 4 18:10:56 radziecki saper: avrdude timeout
> Aug 4 18:11:18 radziecki saper: Sending INTR to avrdude
> Aug 4 18:11:19 radziecki kernel: ucom_outwakeup: sc = 0xffffff0003cd9458
> Aug 4 18:11:23 radziecki kernel: ucom_close: tp=0xffffff0003cd8400
> Aug 4 18:11:23 radziecki kernel: ucom_shutdown:
> Aug 4 18:11:23 radziecki kernel: ucom_cfg_close:
> Aug 4 18:11:33 radziecki saper: avrdude ended
> Aug 4 18:11:41 radziecki saper: Disconnecting board
> Aug 4 18:11:44 radziecki kernel: ugen4.3: <FTDI> at usbus4 (disconnected)
> Aug 4 18:11:44 radziecki kernel: uftdi0: at uhub5, port 3, addr 3
> (disconnected) Aug 4 18:11:44 radziecki kernel: ucom_detach_tty: sc =
> 0xffffff0003cd9458, tp = 0xffffff0003cd8400 Aug 4 18:11:44 radziecki
> kernel: ucom_close: tp=0xffffff0003cd8400 Aug 4 18:11:44 radziecki
> kernel: ucom_close: tp=0xffffff0003cd8400 already closed Aug 4 18:11:44
> radziecki kernel: ucom_close: tp=0xffffff0003cd8400 Aug 4 18:11:44
> radziecki kernel: ucom_close: tp=0xffffff0003cd8400 already closed Aug 4
> 18:11:55 radziecki saper: Board disconnected
>
> >How-To-Repeat:
> Use command:
>
> # avrdude -c arduino -p m328p -P /dev/cuaU0 -v
>
> avrdude: Version 5.10, compiled on Aug 3 2010 at 23:59:35
> Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
> Copyright (c) 2007-2009 Joerg Wunsch
>
> System wide configuration file is "/usr/local/etc/avrdude.conf"
> User configuration file is "/root/.avrduderc"
> User configuration file does not exist or is not a regular file,
> skipping
>
> Using Port : /dev/cuaU0
> Using Programmer : arduino
> avrdude: stk500_recv(): programmer is not responding
>
> At the time the timeout message comes out Arduino's bootloader LED
> blinks once indicating firmware restart.
Hi,
What happens if you use "-P usb" ?
--HPS
More information about the freebsd-usb
mailing list