The usual "programmer not responding" case

Good morning to all.
I am trying to upload a sketch to a Promini clone (AT328 16mhz 5v) from a MAC with MAc OS 10.9.
I have tried using different usb programmers with CH340 and FTDI chips.
Both send the same message which are, in verbose mode:

Arduino: 1.8.9 (Mac OS X), Board: "Arduino Pro or Pro Mini, ATmega328P (5V, 16 MHz)"

/
/Users/gtchekhov/Downloads/ARDUINO/Arduino.app/Contents/Java/hardware/tools/avr/bin/avr-objcopy -O ihex -j .eeprom --set-section-flags=.eeprom=alloc,load --no-change-warnings --change-section-lma .eeprom=0 /var/folders/th/sfcyqbb11d994tvg3476s71h0000gn/T/arduino_build_624519/openXsensor5611.ino.elf /var/folders/th/sfcyqbb11d994tvg3476s71h0000gn/T/arduino_build_624519/openXsensor5611.ino.eep
/Users/gtchekhov/Downloads/ARDUINO/Arduino.app/Contents/Java/hardware/tools/avr/bin/avr-objcopy -O ihex -R .eeprom /var/folders/th/sfcyqbb11d994tvg3476s71h0000gn/T/arduino_build_624519/openXsensor5611.ino.elf /var/folders/th/sfcyqbb11d994tvg3476s71h0000gn/T/arduino_build_624519/openXsensor5611.ino.hex
/Users/gtchekhov/Downloads/ARDUINO/Arduino.app/Contents/Java/hardware/tools/avr/bin/avr-size -A /var/folders/th/sfcyqbb11d994tvg3476s71h0000gn/T/arduino_build_624519/openXsensor5611.ino.elf
Sketch uses 14258 bytes (46%) of program storage space. Maximum is 30720 bytes.
Global variables use 1226 bytes (59%) of dynamic memory, leaving 822 bytes for local variables. Maximum is 2048 bytes.
/Users/gtchekhov/Downloads/ARDUINO/Arduino.app/Contents/Java/hardware/tools/avr/bin/avrdude -C/Users/gtchekhov/Downloads/ARDUINO/Arduino.app/Contents/Java/hardware/tools/avr/etc/avrdude.conf -v -patmega328p -carduino -P/dev/cu.usbserial-A50285BI -b57600 -D -Uflash:w:/var/folders/th/sfcyqbb11d994tvg3476s71h0000gn/T/arduino_build_624519/openXsensor5611.ino.hex:i

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

System wide configuration file is "/Users/gtchekhov/Downloads/ARDUINO/Arduino.app/Contents/Java/hardware/tools/avr/etc/avrdude.conf"
User configuration file is "/Users/gtchekhov/.avrduderc"
User configuration file does not exist or is not a regular file, skipping

Using Port : /dev/cu.usbserial-A50285BI
Using Programmer : arduino
Overriding Baud Rate : 57600
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x00
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x00
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x00
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x00
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x00
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x00
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x00
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x00
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x00
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x00

avrdude done. Thank you.

Problem uploading to board. See http://www.arduino.cc/en/Guide/Troubleshooting#upload for suggestions.
Invalid library found in /Users/gtchekhov/Documents/Arduino/libraries/AdditionalLibraries: no headers files (.h) found in /Users/gtchekhov/Documents/Arduino/libraries/AdditionalLibraries
Invalid library found in /Users/gtchekhov/Documents/Arduino/libraries/ardublock_tutorial: no headers files (.h) found in /Users/gtchekhov/Documents/Arduino/libraries/ardublock_tutorial
Invalid library found in /Users/gtchekhov/Documents/Arduino/libraries/AdditionalLibraries: no headers files (.h) found in /Users/gtchekhov/Documents/Arduino/libraries/AdditionalLibraries
Invalid library found in /Users/gtchekhov/Documents/Arduino/libraries/ardublock_tutorial: no headers files (.h) found in /Users/gtchekhov/Documents/Arduino/libraries/ardublock_tutorial

I have tried all solutions I found on all the possible forums since it seems it is a global issue,
I tried the RST pin tied up to DTR, or not tied. also manual Reset. Tried also to change the Promini,
No way, nothing works, always the same error messages.
I seem to have no driver issues since the usb to FTDI port is detected normally in the 'tools' section. I stopped using the CH340 usb programmer because it caused lots of crashings of my MAC.

Thanks for your help !

I noticed one very strange thing :
If I start with a new Promini, it will load a sketch once. This using USBasp Programmer.
After that it will not anymore.
I tried uploading the Blink, the promini is now blinking. BUT I got the error messages. However it blinks.
Now it wont accept any other sketch.

Do you think the bootloader is erased after one use ?
I tried to 'burn the bootloader' again, it goes directly to 'error'.
I tried to use other Programmers: same error msgs.

I feel flabbergasted.

Well, I could go around the problem.

I still don't know what went wrong nor were nor why, but here is a solution:

It seems the issue comes from the DTR pin/connexion.

So, just do this:
1- Connect Vcc, GND to VCC and GND
2- connect RX programmer to TX Promini
3- Programmer TX to Promini RX
3- you install the latest driver , from the maker's site. This because old posts found on the net perhaps will send you to obsolete drivers.
4-You now depress the RESET Promini button while you start the Upload. This upload is in 2 phases: 1 => it compiles the sketch, then 2=> it transfers it to the board. The Reset must be depressed during all the 1st phase (compilation) and immediaely let it go when it enters the 2nd phase, the Upload.

This way you don't have to use the DTR pin, which is by the way absent on some cloned boards.

This way worked fine on all my boards.

Beware ! if your sketch is small like the famous Blink, you won't have time to see the transition between Compilation and Upload. It is easier with heavy sketches.

Have a good time !

Connect the DTR pin on your USB to TTL serial adapter to the pin marked "GRN" on the Pro Mini. It might seem like "GRN" stands for "ground", but this actually stands for "green", which is the color of the DTR or RTS line on the FTDI RL232 cables that were popular at the time the Pro Mini was designed. GRN is connected to the reset pin via a 0.1 uF capacitor. If you connect the DTR pin directly to the reset pin then you are missing that essential capacitor and so the auto-reset doesn't happen.

Also, you need to use the USBAsp to reload the bootloader (connect like you did to upload blink, and do "burn bootloader") - uploading a sketch via ICSP erases the bootloader.