Arduino IDE, binary output files, and avrdude command line parameters

When I compile a sketch Arduino builds the binary code to be sent to the target device. It then calls avrdude to upload it.

Is there a way to specify the avrdude's command line options? For example this is the command line I use to read the fash from an ATmega328 raw chip on a breadboard (no crystals, no components):

avrdude -c usbasp -p ATmega328p -U flash:r:test:i -B 10

I need the "-B xx " parameter because the chip is running off of the internal RC clock which is something slower (maybe 1MHz).

So how can I tell Arduino IDE to modify the command line params?

Alternatively where does the Arduino IDE store the binary files, so I can upload them myself?

OK so I have found the output files in the temp directory. I wonder why there is no option to place the files in the project directory.

akis_t: OK so I have found the output files in the temp directory. I wonder why there is no option to place the files in the project directory.

Because perhaps, they are temporary files, not required after the download?

The only reason you would usually require them further, would be if you were in production of a product, which is not the usual application of the IDE. In fact, there are a few projects described to use an Arduino itself as a production programmer to replicate code.

But this is the place where the binary files are stored. I have successfully uploaded the hex file now using avrdude directly.

Programming IDEs allow you to place the output files into any directory you wish, and typically default under the project somewhere.

The avrdude -B option only works if your programmer supports that option. if it does then you can edit the avrdude.conf file to change the defaults for the IDE to use.

In the avrdude.conf file, somewhere around line 330 you should see:

#
# Overall avrdude defaults; suitable for ~/.avrduderc
#
default_parallel   = "lpt1";
default_serial     = "com1";
# default_bitclock = 2.5;

Edit the default_bitclock, you can try something like:

default_bitclock = 50;

This will change the defaults for the IDE to use. Adjust the value as needed.

OK that is great - it means I do not need to go around trying to find the output binary files.