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