Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Very slow writing speed #13

Open
impnet opened this issue Oct 28, 2022 · 7 comments
Open

Very slow writing speed #13

impnet opened this issue Oct 28, 2022 · 7 comments

Comments

@impnet
Copy link

impnet commented Oct 28, 2022

Hi, i just update from v6.3.1.1 to v7.0 but there is problem with writing speed via FTDI.

v6.3.1.1 is super fast, write whole file under 1s, but v7.0 is so slow and write whole file around 160s.

I tried option -B 100 and -B 200. File was writed under 10s but it is 10× more than on v6.3.1.1.

Is there samo hidden option which i missing?

C:\Program Files\AVR\AVRDUDE\avrdude-v6.3.1.1-windows FTDI>avrdude -c arduino-ft232r -p m88 -U flash:w:"D:\Ostatní\C projekty\Ambilight 2.8\ambilight v2.8.hex":i -v

avrdude: Version 6.3.1.1-windows
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
         Copyright (c) 2007-2014 Joerg Wunsch

         System wide configuration file is "C:\Program Files\AVR\AVRDUDE\avrdude-v6.3.1.1-windows FTDI\avrdude.conf"

         Using Port                    : usb
         Using Programmer              : arduino-ft232r
         AVR Part                      : ATmega88
         Chip Erase delay              : 9000 us
         PAGEL                         : PD7
         BS2                           : PC2
         RESET disposition             : dedicated
         RETRY pulse                   : SCK
         serial program mode           : yes
         parallel program mode         : yes
         Timeout                       : 200
         StabDelay                     : 100
         CmdexeDelay                   : 25
         SyncLoops                     : 32
         ByteDelay                     : 0
         PollIndex                     : 3
         PollValue                     : 0x53
         Memory Detail                 :

                                  Block Poll               Page                       Polled
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
           eeprom        65    20     4    0 no        512    4      0  3600  3600 0xff 0xff
           flash         65     6    64    0 yes      8192   64    128  4500  4500 0xff 0xff
           lfuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
           hfuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
           efuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
           lock           0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
           calibration    0     0     0    0 no          1    0      0     0     0 0x00 0x00
           signature      0     0     0    0 no          3    0      0     0     0 0x00 0x00

         Programmer Type : ftdi_syncbb
         Description     : Arduino: FT232R connected to ISP
         Pin assignment  : 0..7 = DBUS0..7
           VCC     =  (not used)
           BUFF    =  (not used)
           RESET   =  7
           SCK     =  5
           MOSI    =  6
           MISO    =  3
           ERR LED =  (not used)
           RDY LED =  (not used)
           PGM LED =  (not used)
           VFY LED =  (not used)

avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.01s

avrdude: Device signature = 0x1e930a (probably m88)
avrdude: safemode: lfuse reads as E0
avrdude: safemode: hfuse reads as DF
avrdude: safemode: efuse reads as F9
avrdude: NOTE: "flash" memory has been specified, an erase cycle will be performed
         To disable this feature, specify the -D option.
avrdude: erasing chip
avrdude: reading input file "D:\OstatnÝ\C projekty\Ambilight 2.8\ambilight v2.8.hex"
avrdude: writing flash (1364 bytes):

Writing | ################################################## | 100% 0.99s
C:\Program Files\AVR\AVRDUDE\avrdude-v7.0-windows-windows-x64 FTDI>avrdude -c arduino-ft232r -p m88 -U flash:w:"D:\Ostatní\C projekty\Ambilight 2.8\ambilight v2.8.hex":i -v

avrdude: Version 7.0
         Copyright (c) Brian Dean, http://www.bdmicro.com/
         Copyright (c) Joerg Wunsch

         System wide configuration file is "C:/Program Files/AVR/AVRDUDE/avrdude-v7.0-windows-windows-x64 FTDI/avrdude.conf"

         Using Port                    : usb
         Using Programmer              : arduino-ft232r
avrdude: ft245r_open(): no device identifier in portname, using default
         AVR Part                      : ATmega88
         Chip Erase delay              : 9000 us
         PAGEL                         : PD7
         BS2                           : PC2
         RESET disposition             : dedicated
         RETRY pulse                   : SCK
         Serial program mode           : yes
         Parallel program mode         : yes
         Timeout                       : 200
         StabDelay                     : 100
         CmdexeDelay                   : 25
         SyncLoops                     : 32
         PollIndex                     : 3
         PollValue                     : 0x53
         Memory Detail                 :

                                           Block Poll               Page                       Polled
           Memory Type Alias    Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
           ----------- -------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
           eeprom                 65    20     4    0 no        512    4      0  3600  3600 0xff 0xff
           flash                  65     6    64    0 yes      8192   64    128  4500  4500 0xff 0xff
           lfuse                   0     0     0    0 no          1    1      0  4500  4500 0x00 0x00
           hfuse                   0     0     0    0 no          1    1      0  4500  4500 0x00 0x00
           efuse                   0     0     0    0 no          1    1      0  4500  4500 0x00 0x00
           lock                    0     0     0    0 no          1    1      0  4500  4500 0x00 0x00
           calibration             0     0     0    0 no          1    1      0     0     0 0x00 0x00
           signature               0     0     0    0 no          3    1      0     0     0 0x00 0x00

         Programmer Type : ftdi_syncbb
         Description     : Arduino: FT232R connected to ISP
         Pin assignment  : 0..7 = DBUS0..7
           VCC     =  (not used)
           BUFF    =  (not used)
           RESET   =  7
           SCK     =  5
           MOSI    =  6
           MISO    =  3
           ERR LED =  (not used)
           RDY LED =  (not used)
           PGM LED =  (not used)
           VFY LED =  (not used)

avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.01s

avrdude: Device signature = 0x1e930a (probably m88)
avrdude: NOTE: "flash" memory has been specified, an erase cycle will be performed
         To disable this feature, specify the -D option.
avrdude: erasing chip
avrdude: reading input file "D:\OstatnÝ\C projekty\Ambilight 2.8\ambilight v2.8.hex"
avrdude: writing flash (1364 bytes):

Writing | #####                                              | 9% 10.12s
@raspB975
Copy link

Hi! I'm having the same issue with writing/reading LOW speed via FTDI. How are you solving the problem?

@impnet
Copy link
Author

impnet commented Jan 26, 2024

Hi! I'm having the same issue with writing/reading LOW speed via FTDI. How are you solving the problem?

Nope, did not find any workaround. I switch back to version 6.3.1.1.

@raspB975
Copy link

Solution:

This is a known version of the official MSVC build.
https://github.com/avrdudes/avrdude/wiki/Known-limitations-of-avrdude#known-issues-for-programmers

Use the MinGW version, but you need to switch the driver to WinUSB using Zadig.
https://github.com/mcuee/avrdude/releases/tag/v7.2 (avrdude-v7.2_mingw64.zip)
https://github.com/arduino/avrdude-packing/releases/tag/7.2-arduino.1
Now v7.2 working fast.

Hi! I'm having the same issue with writing/reading LOW speed via FTDI. How are you solving the problem?

Nope, did not find any workaround. I switch back to version 6.3.1.1.

@impnet
Copy link
Author

impnet commented Jan 26, 2024

Solution:

This is a known version of the official MSVC build. https://github.com/avrdudes/avrdude/wiki/Known-limitations-of-avrdude#known-issues-for-programmers

Use the MinGW version, but you need to switch the driver to WinUSB using Zadig. https://github.com/mcuee/avrdude/releases/tag/v7.2 (avrdude-v7.2_mingw64.zip) https://github.com/arduino/avrdude-packing/releases/tag/7.2-arduino.1 Now v7.2 working fast.

Hi! I'm having the same issue with writing/reading LOW speed via FTDI. How are you solving the problem?

Nope, did not find any workaround. I switch back to version 6.3.1.1.

https://github.com/mcuee/avrdude/releases/tag/v7.2
Does not work.

avrdude error: cannot open ftdi device: usb_open() failed
avrdude error: unable to open programmer arduino-ft232r on port usb

If there is need to instal special drivers via some another software, then it is useless.

https://github.com/arduino/avrdude-packing/releases/tag/7.2-arduino.1
Does not work.

avrdude error: cannot open ftdi device: usb_open() failed
avrdude error: unable to open programmer arduino-ft232r on port usb

@raspB975
Copy link

My config file

#------------------------------------------------------------
programmer
  id    				= "ftbb";
  desc  				= "FT232R Synchronous BitBang";
  prog_modes            = PM_TPI | PM_ISP;
  connection_type       = usb;
  type                  = "ftdi_syncbb"; #	"ftdi_syncbb";
  usbvid                = 0x0403;
  usbpid                = 0x6001;
  usbdev                = "A";  
  sdi  					= 4;  			# DTR(2 PIN FT232R) (9 PIN ON board )  MISO 
  sck   				= 2;  			# RTS(3 PIN FT232R) (7 PIN ON board )   
  sdo  					= 7;  			# RI (6 PIN FT232R) (1 PIN ON board )  MOSI   
  reset 				= 1;  			# RXD(5 PIN FT232R) (5 PIN ON board )  
  buff 					= ~0;  			# TXD(1 PIN FT232R) (GATE pins!)   
;

@raspB975
Copy link

Zadig_install_drv

@mcuee
Copy link
Contributor

mcuee commented Jan 27, 2024

Reference: this is a known issue of avrdude MSVC build. Work-around is to use mingw build (you need to switch driver to WinUSB).

  • #1253

Binary download:
https://github.com/mcuee/avrdude/releases/tag/v7.2

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants