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

Provide option -N for do not load personal config file #1555

Merged
merged 1 commit into from
Nov 13, 2023

Conversation

stefanrueger
Copy link
Collaborator

Fixes #1548

@mcuee mcuee added the enhancement New feature or request label Nov 4, 2023
@mcuee
Copy link
Collaborator

mcuee commented Nov 4, 2023

This should be good for non-Windows platform. I will check on Windows platform later.

@mcuee
Copy link
Collaborator

mcuee commented Nov 4, 2023

Yes this PR works fine under Windows as well.

PS>cat .\avrdude.rc
#
# Overall avrdude defaults; suitable for ~/.config/avrdude/avrdude.rc
#
#default_parallel   = "lpt1";
default_serial     = "COM4";
#default_spi        = "";
# default_bitclock = 2.5;
#default_linuxgpio  = "unknown";
#allow_subshells    = no;

PS>.\avrdude_pr1555 -C .\avrdude_pr1555.conf -c urclock -p m328p -xshowall
avrdude_pr1555: AVR device initialized and ready to accept instructions
0000ffffffff 2022-11-16 19.36 blink_m328p_readback.hex 960 store 31260 meta 36 boot 512 
u7.7 wes-hprac vector 0 (RESET) ATmega328P

PS>.\avrdude_pr1555 -C .\avrdude_pr1555.conf -c urclock -p m328p -xshowall -N
avrdude_pr1555 error: cannot open port \\.\com1: The system cannot find the file specified.

avrdude_pr1555 error: unable to open port com1 for programmer urclock
Possible candidate serial ports are:
  -P COM4 (via ch340 serial adapter)
  -P COM9 (via ch340 serial adapter)
Note that above ports might not be connected to a target board or an AVR programmer.
Also note there may be other direct serial ports not listed above.

avrdude_pr1555 done.  Thank you.

@mcuee
Copy link
Collaborator

mcuee commented Nov 4, 2023

PS>cat .\avrdude1.conf
#
# Overall avrdude defaults; suitable for ~/.config/avrdude/avrdude.rc
#
#default_parallel   = "lpt1";
default_serial     = "COM4";
#default_spi        = "";
# default_bitclock = 2.5;
#default_linuxgpio  = "unknown";
#allow_subshells    = no;

PS>.\avrdude_pr1555 -C .\avrdude_pr1555.conf -C +avrdude1.conf -c urclock -p m328p -xshowall -N
avrdude_pr1555: AVR device initialized and ready to accept instructions
0000ffffffff 2022-11-16 19.36 blink_m328p_readback.hex 960 store 31260 meta 36 boot 512 
u7.7 wes-hprac vector 0 (RESET) ATmega328P

@mcuee
Copy link
Collaborator

mcuee commented Nov 4, 2023

This PR is good to go from my side.

@mcuee
Copy link
Collaborator

mcuee commented Nov 4, 2023

@askn37

Please review as well. Thanks.

@dl8dtl
Copy link
Contributor

dl8dtl commented Nov 4, 2023

I wonder whether it makes sense to handle the -C option in a way that it defines the sole config file(s) to use – rather than invent another option.

@dl8dtl
Copy link
Contributor

dl8dtl commented Nov 4, 2023

I wonder whether it makes sense to handle the -C option in a way that it defines the sole config file(s) to use – rather than invent another option.

Oh, and since that's a change that breaks backwards compatibility (even though in a way that nobody might notice), it would be a reason to bump the major version number. ;-)

@askn37
Copy link
Contributor

askn37 commented Nov 4, 2023

@mcuee

askn@alicia avrdude_main % cat ~/.avrduderc                                                                     
#------------------------------------------------------------
# updi4avr
#------------------------------------------------------------

# UPDI4AVR
# https://askn37.github.io/product/UPDI4AVR/README_en.html

programmer # updi4avr
    id                     = "updi4avr";
    desc                   = "JTAGv2 (over serial) to UPDI translator";
    type                   = "jtagmkii_updi";
    prog_modes             = PM_UPDI;
    extra_features         = HAS_VTARG_READ;
    connection_type        = serial;
    baudrate               = 230400;
    hvupdi_support         = 0, 1, 2;
;
askn@alicia avrdude_main % ./build_darwin/src/avrdude -c updi4avr -p avr128db32 -P /dev/cu.usbserial-230 -qv   

avrdude: Version 7.2-20231103 (ff3e65e3)
         Copyright the AVRDUDE authors;
         see https://github.com/avrdudes/avrdude/blob/main/AUTHORS

         System wide configuration file is /Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf
         User configuration file is /Users/askn/.avrduderc

         Using Port                    : /dev/cu.usbserial-230
         Using Programmer              : updi4avr
JTAG ICE mkII sign-on message:
Communications protocol version: 1
M_MCU:
  boot-loader FW version:        1
  firmware version:              2.01
  hardware version:              1
S_MCU:
  boot-loader FW version:        1
  firmware version:              7.53
  hardware version:              1
Serial number:                   4a:34:94:37:55:3e
Device ID:                       JTAGICE mkII
         AVR Part                      : AVR128DB32
         RESET disposition             : dedicated
         RETRY pulse                   : SCK
         Serial program mode           : yes
         Parallel program mode         : yes
         Memory Detail                 :

                                           Block Poll               Page                       Polled
           Memory Type Alias    Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
           ----------- -------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
           fuses                   0     0     0    0 no         16    1      0     0     0 0x00 0x00
           fuse0       wdtcfg      0     0     0    0 no          1    1      0     0     0 0x00 0x00
           fuse1       bodcfg      0     0     0    0 no          1    1      0     0     0 0x00 0x00
           fuse2       osccfg      0     0     0    0 no          1    1      0     0     0 0x00 0x00
           fuse5       syscfg0     0     0     0    0 no          1    1      0     0     0 0x00 0x00
           fuse6       syscfg1     0     0     0    0 no          1    1      0     0     0 0x00 0x00
           fuse7       codesize    0     0     0    0 no          1    1      0     0     0 0x00 0x00
           fuse8       bootsize    0     0     0    0 no          1    1      0     0     0 0x00 0x00
           lock                    0     0     0    0 no          4    1      0     0     0 0x00 0x00
           prodsig     sigrow      0     0     0    0 no        128  128      0     0     0 0x00 0x00
           signature               0     0     0    0 no          3    1      0     0     0 0x00 0x00
           tempsense               0     0     0    0 no          4    1      0     0     0 0x00 0x00
           sernum                  0     0     0    0 no         16    1      0     0     0 0x00 0x00
           userrow     usersig     0     0     0    0 no         32   32      0     0     0 0x00 0x00
           data                    0     0     0    0 no          0    1      0     0     0 0x00 0x00
           io                      0     0     0    0 no       4160    1      0     0     0 0x00 0x00
           sib                     0     0     0    0 no         32    1      0     0     0 0x00 0x00
           eeprom                  0     0     0    0 no        512    1      0     0     0 0x00 0x00
           flash                   0     0     0    0 no     131072  512      0     0     0 0x00 0x00

         Programmer Type : JTAGMKII_UPDI
         Description     : JTAGv2 (over serial) to UPDI translator
         M_MCU HW version: 1
         M_MCU FW version: 2.01
         S_MCU HW version: 1
         S_MCU FW version: 7.53
         Serial number   : 4a:34:94:37:55:3e
         Vtarget         : 5.1 V
avrdude: silicon revision: 1.5
avrdude: AVR device initialized and ready to accept instructions
avrdude: device signature = 0x1e970d (probably avr128db32)

avrdude done.  Thank you.

askn@alicia avrdude_main % ./build_darwin/src/avrdude -c updi4avr -p avr128db32 -P /dev/cu.usbserial-230 -qv -N

avrdude: Version 7.2-20231103 (ff3e65e3)
         Copyright the AVRDUDE authors;
         see https://github.com/avrdudes/avrdude/blob/main/AUTHORS

         System wide configuration file is /Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf


avrdude programmer_not_found() error: cannot find programmer id updi4avr

Valid programmers are:
  2232hio            = 2232hio based on FT2232H with buffer and LEDs [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:621]
  4232h              = FT4232H based generic programmer [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:703]
  adafruit_gemma     = Adafruit Trinket Gemma bootloader disguised as USBtiny [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1510]
  arduino            = Arduino for bootloader using STK500 v1 protocol [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:509]
  arduino-ft232r     = Arduino: FT232R connected to ISP [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1306]
  diecimila          = Arduino: FT232R connected to ISP [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1306]
  arduino_as_isp     = Arduino board as programmer using arduino as ISP firmware [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1126]
  arduino_gemma      = Arduino Gemma bootloader disguised as USBtiny [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1494]
  arduinoisp         = Arduino ISP Programmer         [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1524]
  arduinoisporg      = Arduino ISP Programmer         [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1538]
  atmelice           = Atmel-ICE (ARM/AVR) in JTAG mode [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:2091]
  atmelice_jtag      = Atmel-ICE (ARM/AVR) in JTAG mode [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:2091]
  atmelice_dw        = Atmel-ICE (ARM/AVR) in debugWIRE mode [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:2134]
  atmelice_isp       = Atmel-ICE (ARM/AVR) in ISP mode [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:2148]
  atmelice_pdi       = Atmel-ICE (ARM/AVR) in PDI mode [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:2105]
  atmelice_tpi       = Atmel-ICE (ARM/AVR) in TPI mode [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:2162]
  atmelice_updi      = Atmel-ICE (ARM/AVR) in UPDI mode [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:2119]
  avr109             = Atmel for bootloader using AppNote AVR109 [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1661]
  avr910             = Atmel Low Cost Serial Programmer [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1228]
  avr911             = Atmel for bootloader using AppNote AVR911 AVROSP [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1673]
  avrftdi            = FT2232H/D based generic programmer [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:587]
  2232h              = FT2232H/D based generic programmer [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:587]
  avrisp             = Atmel AVR ISP                  [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1024]
  avrisp-u           = Kanda AVRISP-U                 [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:655]
  avrispmkII         = Atmel AVR ISP mkII             [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1048]
  avrisp2            = Atmel AVR ISP mkII             [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1048]
  avrispv2           = Atmel AVR ISP v2               [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1036]
  buspirate          = The Bus Pirate                 [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1061]
  buspirate_bb       = The Bus Pirate (bitbang interface, supports TPI) [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1073]
  butterfly          = Atmel for bootloader (Butterfly Development Board) [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1649]
  butterfly_mk       = Mikrokopter.de Butterfly for bootloader [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1687]
  mkbutterfly        = Mikrokopter.de Butterfly for bootloader [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1687]
  bwmega             = BitWizard ftdi_atmega builtin programmer [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1283]
  c232hm             = C232HM cable from FTDI         [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:805]
  c2n232i            = serial port banging, reset=dtr sck=!rts sdo=!txd sdi=!cts [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:2555]
  ch341a             = ch341a programmer (AVR must have minimum F_CPU of 6.8 MHz) [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1631]
  dasa               = serial port banging, reset=rts sck=dtr sdo=txd sdi=cts [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:2517]
  dasa3              = serial port banging, reset=!dtr sck=rts sdo=txd sdi=cts [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:2536]
  digilent-hs2       = Digilent JTAG HS2 (MPSSE)      [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:964]
  dragon_dw          = Atmel AVR Dragon in debugWire mode [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1890]
  dragon_hvsp        = Atmel AVR Dragon in HVSP mode  [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1874]
  dragon_isp         = Atmel AVR Dragon in ISP mode   [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1842]
  dragon_jtag        = Atmel AVR Dragon in JTAG mode  [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1826]
  dragon_pdi         = Atmel AVR Dragon in PDI mode   [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1906]
  dragon_pp          = Atmel AVR Dragon in PP mode    [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1858]
  dryrun             = Emulates programming without a programmer [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:476]
  ehajo-isp          = AVR ISP programmer from eHaJo.de [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1555]
  flip1              = FLIP for bootloader using USB DFU protocol version 1 (doc7618) [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:2442]
  flip2              = FLIP for bootloader using USB DFU protocol version 2 (AVR4023) [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:2454]
  flyswatter2        = TinCan Tools Flyswatter 2      [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:987]
  ft2232h            = FT2232H/D based generic programmer [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:609]
  ft2232h_jtag       = FT2232H based generic JTAG programmer [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:671]
  ft232h             = FT232H based generic programmer [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:739]
  ft232h_jtag        = FT232H based generic JTAG programmer [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:760]
  ft232r             = FT232R based generic programmer [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1262]
  ft245r             = FT245R based generic programmer [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1246]
  ft4232h            = FT4232H based generic programmer [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:693]
  iseavrprog         = AVR ISP programmer from iascaled.com [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1574]
  jtag1slow          = Atmel JTAG ICE (mkI)           [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1712]
  jtag2dw            = Atmel JTAG ICE mkII in debugWire mode [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1778]
  jtag2fast          = Atmel JTAG ICE mkII            [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1750]
  jtag2              = Atmel JTAG ICE mkII            [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1750]
  jtag2isp           = Atmel JTAG ICE mkII in ISP mode [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1762]
  jtag2pdi           = Atmel JTAG ICE mkII in PDI mode [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1810]
  jtag2slow          = Atmel JTAG ICE mkII            [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1740]
  jtag2updi          = JTAGv2 to UPDI bridge          [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:2574]
  jtag3              = Atmel AVR JTAGICE3 in JTAG mode [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1920]
  jtag3dw            = Atmel AVR JTAGICE3 in debugWIRE mode [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1963]
  jtag3isp           = Atmel AVR JTAGICE3 in ISP mode [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1977]
  jtag3pdi           = Atmel AVR JTAGICE3 in PDI mode [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1934]
  jtag3updi          = Atmel AVR JTAGICE3 in UPDI mode [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1948]
  jtagkey            = Amontec JTAGKey, JTAGKey-Tiny and JTAGKey2 [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:714]
  jtagmkI            = Atmel JTAG ICE (mkI)           [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1699]
  jtag1              = Atmel JTAG ICE (mkI)           [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1699]
  jtagmkII           = Atmel JTAG ICE mkII            [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1727]
  jtagmkII_avr32     = Atmel JTAG ICE mkII in AVR32 mode [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1794]
  jtag2avr32         = Atmel JTAG ICE mkII in AVR32 mode [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1794]
  ktlink             = KT-LINK FT2232H interface with IO switching and voltage buffers [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:940]
  lm3s811            = Luminary Micro LM3S811 Eval Board (Rev. A) [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:857]
  mib510             = Crossbow MIB510 programming board [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1138]
  micronucleus       = Micronucleus for bootloader    [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1588]
  nibobee            = NIBObee                        [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1441]
  o-link             = O-Link, OpenJTAG ARM JTAG USB  [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:820]
  openmoko           = Openmoko debug board (v3)      [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:836]
  pavr               = Jason Kyle's pAVR Serial Programmer [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:2418]
  pickit2            = MicroChip's PICkit2 Programmer [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:2430]
  pickit4            = MPLAB(R) PICkit 4 in JTAG mode [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:2261]
  pickit4_jtag       = MPLAB(R) PICkit 4 in JTAG mode [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:2261]
  pickit4_isp        = MPLAB(R) PICkit 4 in ISP mode  [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:2304]
  pickit4_pdi        = MPLAB(R) PICkit 4 in PDI mode  [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:2290]
  pickit4_tpi        = MPLAB(R) PICkit 4 in TPI mode  [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:2318]
  pickit4_updi       = MPLAB(R) PICkit 4 in UPDI mode [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:2275]
  pkobn_updi         = Curiosity nano (nEDBG) in UPDI mode [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:2403]
  ponyser            = design ponyprog serial, reset=!txd sck=rts sdo=dtr sdi=cts [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:2486]
  powerdebugger      = Atmel PowerDebugger (ARM/AVR) in JTAG mode [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:2176]
  powerdebugger_jtag = Atmel PowerDebugger (ARM/AVR) in JTAG mode [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:2176]
  powerdebugger_dw   = Atmel PowerDebugger (ARM/AVR) in debugWire mode [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:2219]
  powerdebugger_isp  = Atmel PowerDebugger (ARM/AVR) in ISP mode [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:2233]
  powerdebugger_pdi  = Atmel PowerDebugger (ARM/AVR) in PDI mode [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:2190]
  powerdebugger_tpi  = Atmel PowerDebugger (ARM/AVR) in TPI mode [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:2247]
  powerdebugger_updi = Atmel PowerDebugger (ARM/AVR) in UPDI mode [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:2204]
  serialupdi         = SerialUPDI                     [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1011]
  siprog             = Lancos SI-Prog (same as ponyser) [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:2504]
  snap               = MPLAB(R) Snap in JTAG mode     [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:2332]
  snap_jtag          = MPLAB(R) Snap in JTAG mode     [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:2332]
  snap_isp           = MPLAB(R) SNAP in ISP mode      [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:2375]
  snap_pdi           = MPLAB(R) SNAP in PDI mode      [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:2361]
  snap_tpi           = MPLAB(R) SNAP in TPI mode      [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:2389]
  snap_updi          = MPLAB(R) SNAP in UPDI mode     [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:2346]
  stk500             = Atmel STK500 (probes STK500v2 first then STK500v1) [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1097]
  stk500hvsp         = Atmel STK500 v2 in high-voltage serial programming mode [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1176]
  scratchmonkey_hvsp = Atmel STK500 v2 in high-voltage serial programming mode [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1176]
  stk500pp           = Atmel STK500 v2 in parallel programming mode [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1163]
  scratchmonkey_pp   = Atmel STK500 v2 in parallel programming mode [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1163]
  stk500v1           = Atmel STK500 version 1.x firmware [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1110]
  stk500v2           = Atmel STK500 version 2.x firmware [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1150]
  scratchmonkey      = Atmel STK500 version 2.x firmware [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1150]
  stk600             = Atmel STK600                   [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1189]
  stk600hvsp         = Atmel STK600 in high-voltage serial programming mode [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1215]
  stk600pp           = Atmel STK600 in parallel programming mode [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1202]
  tc2030             = Tag-Connect TC2030             [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1322]
  teensy             = Teensy for bootloader          [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1602]
  tigard             = Tigard interface board         [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:639]
  ttl232r            = FTDI TTL232R-5V with ICSP adapter [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1378]
  tumpa              = TIAO USB Multi-Protocol Adapter [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:883]
  tumpa-b            = TIAO USB Multi-Protocol Adapter [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:896]
  tumpa_jtag         = TIAO USB Multi-Protocol Adapter (JTAG) [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:905]
  um232h             = UM232H module from FTDI        [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:787]
  uncompatino        = uncompatino with all pairs of pins shorted [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1346]
  urclock            = Urclock programmer for urboot bootloaders using urprotocol [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:538]
  usbasp             = USBasp ISP and TPI programmer  [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1418]
  usbasp-clone       = Any usbasp clone with correct VID/PID [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1457]
  usbtiny            = USBtiny simple USB programmer  [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1478]
  wiring             = Wiring for bootloader using STK500 v2 protocol [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:490]
  xbee               = XBee for Series 2 Over-The-Air (XBeeBoot) bootloader using STK500 v1 protocol [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:550]
  xplainedmini       = Atmel AVR XplainedMini in ISP mode [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:2035]
  xplainedmini_isp   = Atmel AVR XplainedMini in ISP mode [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:2035]
  xplainedmini_dw    = Atmel AVR XplainedMini in debugWIRE mode [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:2049]
  xplainedmini_tpi   = Atmel AVR XplainedMini in TPI mode [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:2078]
  xplainedmini_updi  = Atmel AVR XplainedMini in UPDI mode [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:2063]
  xplainedpro        = Atmel AVR XplainedPro in JTAG mode [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:1991]
  xplainedpro_pdi    = Atmel AVR XplainedPro in PDI mode [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:2005]
  xplainedpro_updi   = Atmel AVR XplainedPro in UPDI mode [/Users/askn/Collaborator/avrdude_main/build_darwin/src/avrdude.conf:2020]

askn@alicia avrdude_main % 

Bravo! It seems to be working as expected. thank you!

@stefanrueger
Copy link
Collaborator Author

stefanrueger commented Nov 11, 2023

handle the -C option in a way that it defines the sole config file(s)

Only just now saw this; AVRDUDE has a very elaborate configuration file processing: it allows to redefine the system-wide one, it allows a personal one, and it allows additional config files to be processed after the system one and personal ones using -C +.... I wouldn't want to change that mechanism as some users could rely on this.

rather than invent another option

We could parse -C no-rc to mean what -N does in this PR. Technically, this is incompatible with previous use but would only affect the user who likes to replace the system-wide config file with their own file called ./no-rc; I wouldn't bump the version number for that.

@stefanrueger
Copy link
Collaborator Author

What is the preference here, -N or -C no-rc?

@MCUdude
Copy link
Collaborator

MCUdude commented Nov 11, 2023

I would definitely prefer -N

@mcuee
Copy link
Collaborator

mcuee commented Nov 12, 2023

I would definitely prefer -N

Same here. I think this PR is good to go now.

@stefanrueger stefanrueger merged commit fb55022 into avrdudes:main Nov 13, 2023
10 checks passed
@stefanrueger stefanrueger deleted the option-N branch November 13, 2023 02:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[Suggestion] Is it possible to control forced loading of "~/.avrduderc"?
5 participants