Commit Graph

2632 Commits

Author SHA1 Message Date
MCUdude
1f3f2ccbdc Add support for HAS_FOSC_ADJ in avrdude.conf 2023-04-16 19:33:22 +02:00
Stefan Rueger
c1e725b53d Update NEWS 2023-04-06 21:16:59 +01:00
Stefan Rueger
b6cbbea120 Update avrintel.[ch] (#1333)
* Update avrintel.[ch]

These are written by a program that takes AVR-relevant sources such as
io*.h header files and atdf files into account. For this update a set of
decade-old .xml files have been added (useful for discontinued chips
that may still want to be programmed).

* Format avrintel table to max 99 chars

This to be able to extract more easily relevant information from the
source. Now can grep //.Mem avrintel.c to extract a table with memory
sizes, similarly  grep //.Source or grep //.ID. And lines are now less
than 100 characters wide.

* Expand avrintel table to cover configuration bitfields
2023-04-06 21:11:20 +01:00
Stefan Rueger
e6e02aeb51 Merge pull request #1332 from MCUdude/flyswatter2
Add Flyswatter2 programmer
2023-04-06 21:10:44 +01:00
Stefan Rueger
99061a99c8 Merge pull request #1331 from MCUdude/docs-495
Documentation improvements
2023-04-06 21:10:03 +01:00
Hans
f7afbe0303 Add terminal read, write and erase with address intervals (#1320)
and improved documentation
---------

Co-authored-by: Stefan Rueger <stefan.rueger@urclocks.com>
2023-04-06 21:09:13 +01:00
am-ar
ffcdcd89e1 Add CH341A programmer (#1215)
- Add CH341A programmer support 
 - Provide paged access functions so terminal cache works
 - Provide avrdude.conf entry for the ch341a programmer
 - Select ch341a reset line from reset=<n>; property in avrdude.conf.in
 - Update ch341a documentation
---------
Co-authored-by: Alex Manoel Ferreira Silva (Windol) <windol@legytma.com.br>
Co-authored-by: Stefan Rueger <stefan.rueger@urclocks.com>
Tested and reviewed by @MCUdude and @mcuee
2023-04-06 21:06:56 +01:00
MCUdude
515af74201 Attempt to standardize programmer extended parameter styling 2023-03-31 08:30:01 +02:00
MCUdude
3944d5f340 Small grammar fixes 2023-03-31 07:58:44 +02:00
MCUdude
e8a51771d4 Add Flyswatter 2 programmer 2023-03-30 20:12:46 +02:00
MCUdude
e1464e6b4d update terminal mode sck and parms documentation 2023-03-29 22:22:49 +02:00
MCUdude
b7009afe22 Fix formatting 2023-03-29 21:41:15 +02:00
MCUdude
9d7f850e6b Viewing operational parameters in terminal mode is not
limited to the STK500 and STK600 programmers
2023-03-29 21:38:03 +02:00
MCUdude
605e0afa74 Add information about bitclock values stored in programmers 2023-03-29 21:26:30 +02:00
Stefan Rueger
7a8d257676 Update NEWS 2023-03-22 00:15:02 +00:00
Stefan Rueger
421a85adc4 Merge pull request #1323 from stefanrueger/usbtiny
Fix return value in usbtiny_cmd() and wrong error msg
2023-03-21 23:53:16 +00:00
Stefan Rueger
cb2c2e2635 Merge pull request #1318 from stefanrueger/updi-eeprom
Support UPDI EEPROM write
2023-03-21 23:52:53 +00:00
Stefan Rueger
95cdc6caca Merge pull request #1317 from MCUdude/prog-failed-error-msg
Print meaningful error message when using the serialupdi and bitbanged UART ISP programmers
2023-03-21 23:52:30 +00:00
Stefan Rueger
7f8d488088 Merge pull request #1315 from MCUdude/terminal-single-byte-write
Make the start write address optional in terminal mode
2023-03-21 23:51:27 +00:00
Stefan Rueger
a953f3cb17 Merge pull request #1314 from llinjupt/patch_avrispv2
Remove PM_PDI flag for avrispv2 programmer
2023-03-21 23:50:50 +00:00
Stefan Rueger
e5be3ef206 Merge pull request #1310 from stefanrueger/at89s5x
Support AT89S51, AT89S52, AT90S2323 and ATtiny22
2023-03-21 23:50:35 +00:00
Stefan Rueger
31bc1d3da3 Merge pull request #1309 from mariusgreuel/pr-auto-reset
Change Arduino auto-reset via RTS to allow direct RTS-reset connection
2023-03-21 23:50:20 +00:00
Stefan Rueger
4169150284 Merge pull request #1299 from SebKuzminsky/libgpiod
Add optional libgpiod support to linuxgpio
2023-03-21 23:49:59 +00:00
Stefan Rueger
7e94ed4442 Change wiring auto-reset to allow direct DTR/RTS-reset connection 2023-03-19 19:25:55 +00:00
Stefan Rueger
ed6ad1eb55 Fix return value in usbtiny_cmd() and wrong error msg 2023-03-19 13:05:58 +00:00
Stefan Rueger
b7f48a08db Fix typo 2023-03-18 16:37:08 +00:00
Sebastian Kuzminsky
2663fb4d5c avrdude.conf: add connection_type to example linuxgpio programmer 2023-03-16 08:53:02 -06:00
Sebastian Kuzminsky
bfb795551c avrdude.conf: move raspberry_pi_gpio reset, add prog_modes, reformat
This makes the raspberry_pi_gpio programmer work on older Pis with the
smaller 26-pin GPIO header.

Updates based on code review by Hans (MCUdude).
2023-03-16 08:53:02 -06:00
Sebastian Kuzminsky
5abbefe63b add a new conntype for linuxgpio
This also adds a default linuxgpio port ("gpiochip0"), and adds a
programmer to the avrdude.conf file using linuxgpio from the Raspberry
Pi GPIO port.
2023-03-16 08:53:02 -06:00
Sebastian Kuzminsky
3b93eccfb5 gpiod: find gpio lines by port ("gpiochipN") and offset (pin number)
Before this commit, linuxgpio-gpiod used `gpiod_line_find()` to find
gpio lines by name, and would construct the gpio name by appending the
requested gpio number to the string "GPIO".  This had the advantage
that it didn't have to specify the gpiochip to use, since gpio names are
globally unique in gpiod-land.  But it has the severe drawback that only
gpios whose name begins with "GPIO" could be used.

This commit changes that to use `gpiod_line_get()` instead, which takes
a gpiochip name (the avrdude "port") and an "offset" (the pin number on
that chip).  This lets it use any available gpio line, no matter what
name libgpiod assigned it.
2023-03-16 08:53:02 -06:00
Sebastian Kuzminsky
cffd3c976a linuxgpio: add optional libgpiod support
The "linuxgpio" backend will now try both the old sysfs and new (since
Linux 4.8) libgpiod interface to access gpio pins.  If libgpiod works
it will use that, if it does not work it will fall back to the old
sysfs interface.

The libgpiod code is compiled in if libgpiod is available at build time,
and compiled out otherwise.
2023-03-16 08:53:02 -06:00
Sebastian Kuzminsky
a7bf91c86d cmake: find & use libgpiod 2023-03-16 08:53:00 -06:00
Stefan Rueger
770c6b3975 Update comments for AT89S51/2 2023-03-16 10:21:13 +00:00
Sebastian Kuzminsky
0ff4192248 linuxgpio: rename all internal functions and variables to include "sysfs"
This commit renames the internal functions and variables of the linuxgpio
pin driver to include "sysfs", to indicate that they're referring to
the older sysfs interface.

The following commits will add libgpiod support to the linuxgpio pin
driver, and autoselect between them.
2023-03-15 18:38:51 -06:00
Stefan Rueger
666dfd7b36 Fix comment 2023-03-16 00:30:59 +00:00
Stefan Rueger
0d299b9aa9 Support UPDI EEPROM write 2023-03-15 21:37:24 +00:00
Stefan Rueger
2b04a2e4a7 Update urclock/stk500 reset times and streamline DTR/RTS twiddling 2023-03-15 19:42:54 +00:00
MCUdude
c72aff3083 Print meaningful error message
When using the serialupdi and bitbanged UART ISP programmers
2023-03-15 20:42:09 +01:00
MCUdude
4311da6803 Document terminal write feature
where start addres isn't needed
2023-03-15 20:14:32 +01:00
Stefan Rueger
ac55a86e9a Add lock write command for AT89S51/2 2023-03-15 18:48:56 +00:00
MCUdude
e1ba5288a8 Make the start write address optional
when writing data to a memory that's exactly one byte large
2023-03-08 20:05:24 +01:00
llinjupt
09b6f89531 Remove PM_PDI flag for avrispv2 programmer 2023-03-08 22:17:51 +08:00
Stefan Rueger
6c8f7e10fd Support AT89S51, AT89S52, AT902323 and ATtiny22
In `avrdude.conf.in` this PR
  - Adds AT89S51 and AT89S52
  - Adds AT902323 and ATtiny22 by inheritance from AT902343
  - Changes AT90S4433 to inherit from AT90S2333 (same datasheet)

Changes in `avrintel.[ch]` are needed to add the two new `mucid`s
for AT89S51/52; as a "bycatch" a new version of avrintel.c is
deployed with corrections to UART interrupts

`config_gram.y` needed changing to suppress false warnings for the odd
address bit positions for AT89S51/52 SPI read signature commands.
2023-03-06 22:55:16 +00:00
Marius Greuel
b1da0b0922 Change Arduino auto-reset via RTS to allow direct RTS-reset connection 2023-03-05 18:27:25 +01:00
Stefan Rueger
4019edf60d Update NEWS 2023-03-04 17:25:59 +00:00
Stefan Rueger
579927f020 Merge pull request #1308 from djacobow/dgj/extend_max_pin_number
extend max pin number to 1000
2023-03-04 17:19:34 +00:00
Stefan Rueger
cdaeb6423d Merge pull request #1301 from mariusgreuel/pr-build_sh-cmake-fix
build.sh: For compatibility with old CMake versions, use old syntax to generate build system
2023-03-04 17:19:02 +00:00
Stefan Rueger
ea938153cb Merge pull request #1294 from mariusgreuel/pr-hid-detection
CMake: Remove LIB_LIBHID from configuration is favor of hard-coding it
2023-03-04 17:15:31 +00:00
Stefan Rueger
1995ca6868 Merge pull request #1286 from MCUdude/xplainedmini-suffer
Add `extra_features` to easily identify a programmers special abilities
2023-03-04 17:11:08 +00:00
Stefan Rueger
4a47b10a41 Merge pull request #1285 from mariusgreuel/pr-verbal-cmake-options
CMake: Convert verbal switches into boolean expressions
2023-03-04 17:09:49 +00:00