From 5d0f151f4aab62cde4da30278ec79077b8456d4d Mon Sep 17 00:00:00 2001 From: Marius Greuel Date: Tue, 27 Dec 2022 13:00:57 +0100 Subject: [PATCH 1/6] Add ft2232h programmer for consistency with existing ft232h programmer --- src/avrdude.conf.in | 32 +++++++++++++++++--------------- 1 file changed, 17 insertions(+), 15 deletions(-) diff --git a/src/avrdude.conf.in b/src/avrdude.conf.in index ccc5f271a..cf4fc34f4 100644 --- a/src/avrdude.conf.in +++ b/src/avrdude.conf.in @@ -788,7 +788,7 @@ programmer ; #------------------------------------------------------------ -# avrftdi +# ft2232h #------------------------------------------------------------ # this will interface with the chips on these programmers: @@ -812,26 +812,28 @@ programmer # these FTDI ICs has been designed. programmer - id = "avrftdi"; - desc = "FT2232D based generic programmer"; + id = "ft2232h"; + desc = "FT2232H based generic programmer"; type = "avrftdi"; prog_modes = PM_TPI | PM_ISP; connection_type = usb; usbvid = 0x0403; usbpid = 0x6010; usbdev = "A"; -# ISP-signals - lower ADBUS-Nibble (default) - reset = 3; - sck = 0; - sdo = 1; - sdi = 2; -# LED SIGNALs - higher ADBUS-Nibble -# errled = 4; -# rdyled = 5; -# pgmled = 6; -# vfyled = 7; -# Buffer Signal - ACBUS - Nibble -# buff = 8; +# ISP-signals - lower ADBUS-Nibble (default) + reset = 3; # AD3 (TMS) + sck = 0; # AD0 (TCK) + sdo = 1; # AD1 (TDI) + sdi = 2; # AD2 (TDO) +; + +#------------------------------------------------------------ +# avrftdi +#------------------------------------------------------------ + +programmer parent "ft2232h" + id = "avrftdi"; + desc = "FT2232D based generic programmer"; ; #------------------------------------------------------------ From 252d6833d4c4c347516b0f0583ded7c94a20942f Mon Sep 17 00:00:00 2001 From: Marius Greuel Date: Tue, 27 Dec 2022 13:03:41 +0100 Subject: [PATCH 2/6] Add ft4232h programmer --- src/avrdude.conf.in | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/src/avrdude.conf.in b/src/avrdude.conf.in index cf4fc34f4..db6440de0 100644 --- a/src/avrdude.conf.in +++ b/src/avrdude.conf.in @@ -869,18 +869,27 @@ programmer ; #------------------------------------------------------------ -# 4232h +# ft4232h #------------------------------------------------------------ #The FT4232H can be treated as FT2232H, but it has a different USB #device ID of 0x6011. -programmer parent "avrftdi" - id = "4232h"; +programmer parent "ft2232h" + id = "ft4232h"; desc = "FT4232H based generic programmer"; usbpid = 0x6011; ; +#------------------------------------------------------------ +# 4232h +#------------------------------------------------------------ + +programmer parent "ft4232h" + id = "4232h"; + desc = "FT4232H based generic programmer"; +; + #------------------------------------------------------------ # jtagkey #------------------------------------------------------------ From 9412413fca5ea3f8198db6e955d8133f0314fb85 Mon Sep 17 00:00:00 2001 From: Marius Greuel Date: Tue, 27 Dec 2022 13:05:38 +0100 Subject: [PATCH 3/6] Make 2232hio programmer derive from ft2232h --- src/avrdude.conf.in | 20 +++----------------- 1 file changed, 3 insertions(+), 17 deletions(-) diff --git a/src/avrdude.conf.in b/src/avrdude.conf.in index db6440de0..d8d1055aa 100644 --- a/src/avrdude.conf.in +++ b/src/avrdude.conf.in @@ -843,25 +843,11 @@ programmer parent "ft2232h" # This is an implementation of the above with a buffer IC (74AC244) and # 4 LEDs directly attached, all active low. -programmer - id = "2232HIO"; +programmer parent "ft2232h" + id = "2232hio"; desc = "FT2232H based generic programmer"; - type = "avrftdi"; - prog_modes = PM_TPI | PM_ISP; - connection_type = usb; - usbvid = 0x0403; -# Note: This PID is reserved for generic H devices and -# should be programmed into the EEPROM -# usbpid = 0x8A48; - usbpid = 0x6010; - usbdev = "A"; buff = ~4; -#ISP-signals - reset = 3; - sck = 0; - sdo = 1; - sdi = 2; -#LED SIGNALs +# LED SIGNALs errled = ~11; rdyled = ~14; pgmled = ~13; From aed9e1b7fa5eef63ce0d66a2703322fee44d88c0 Mon Sep 17 00:00:00 2001 From: Marius Greuel Date: Tue, 27 Dec 2022 13:09:00 +0100 Subject: [PATCH 4/6] Improve FTDI programmer documentation --- src/avrdude.conf.in | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/avrdude.conf.in b/src/avrdude.conf.in index d8d1055aa..d1f291a5c 100644 --- a/src/avrdude.conf.in +++ b/src/avrdude.conf.in @@ -907,14 +907,14 @@ programmer programmer id = "ft232h"; - desc = "FT232H in MPSSE mode"; + desc = "FT232H based generic programmer"; type = "avrftdi"; prog_modes = PM_TPI | PM_ISP; connection_type = usb; usbvid = 0x0403; usbpid = 0x6014; usbdev = "A"; -#ISP-signals +# ISP-signals reset = 3; # AD3 (TMS) sck = 0; # AD0 (TCK) sdo = 1; # AD1 (TDI) @@ -1024,7 +1024,7 @@ programmer usbproduct = "LM3S811 Evaluation Board"; # Enable correct buffers buff = 7; -#ISP-signals - lower ACBUS-Nibble (default) +# ISP-signals - lower ACBUS-Nibble (default) reset = 3; sck = 0; sdo = 1; @@ -1332,7 +1332,7 @@ programmer programmer id = "ft245r"; - desc = "FT245R Synchronous BitBang"; + desc = "FT245R based generic programmer"; type = "ftdi_syncbb"; prog_modes = PM_TPI | PM_ISP; connection_type = usb; @@ -1348,7 +1348,7 @@ programmer programmer id = "ft232r"; - desc = "FT232R Synchronous BitBang"; + desc = "FT232R based generic programmer"; type = "ftdi_syncbb"; prog_modes = PM_TPI | PM_ISP; connection_type = usb; From 805db5b13e345ccbaa853ff517130e6f2b3ac8ff Mon Sep 17 00:00:00 2001 From: Marius Greuel Date: Tue, 27 Dec 2022 13:17:27 +0100 Subject: [PATCH 5/6] Add tigard programmer --- src/avrdude.conf.in | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/src/avrdude.conf.in b/src/avrdude.conf.in index d1f291a5c..56ecc8ab3 100644 --- a/src/avrdude.conf.in +++ b/src/avrdude.conf.in @@ -854,6 +854,24 @@ programmer parent "ft2232h" vfyled = ~12; ; +#------------------------------------------------------------ +# tigard +#------------------------------------------------------------ + +# Tigard - FT2232H based multi-protocol tool for hardware hacking. +# https://github.com/tigard-tools/tigard + +programmer parent "ft2232h" + id = "tigard"; + desc = "Tigard interface board"; + usbdev = "B"; +# ISP-signals + reset = 5; # BD5 (GPIOL1) + sck = 0; # BD0 (TCK) + sdo = 1; # BD1 (TDI) + sdi = 2; # BD2 (TDO) +; + #------------------------------------------------------------ # ft4232h #------------------------------------------------------------ From f220656e0b3afd69fe72df206bb8a25de40d3021 Mon Sep 17 00:00:00 2001 From: Marius Greuel Date: Tue, 27 Dec 2022 13:35:52 +0100 Subject: [PATCH 6/6] CMake: For MSVC builds, use latest libftdi for Windows --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 1269650d1..22043cbaf 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -247,7 +247,7 @@ if(USE_EXTERNAL) FetchContent_Declare(libftdi GIT_REPOSITORY https://github.com/avrdudes/libftdi.git - GIT_TAG f3a54da710002a7d25a32a69e667a69ef84cc120 + GIT_TAG f9fe6e96b97c3a08efd081632c1859cb83aa14e3 ) message(STATUS "Fetching external libraries, please wait...")