user46: I'm debugging a couple of RS232-to-TTL converter boards that I'm trying to use to program my Arduinos and one thing I would like to try would be to reduce the upload serial speed from 115200 to 19200. 
How do I do that?
I imagine that there's a setting that can be easily changed on the Arduino IDE preferences. But where is it? But then the bootloader speed would have to match that? How do I change the serial upload speed on optiboot, too?

user84: On Arduino IDE side, the upload speed is coded in hardware/arduino/boards.txt 
uno.upload.speed=115200
...

for every kind of board; you cannot change it directly from the IDE (that would be too dangerous as that value must match the expected speed for the actual bootloader of every board).
Now as per the optiboot loader side, the upload speed is defined in BAUD_RATE macro, in optiboot.c:
/* set the UART baud rate defaults */
#ifndef BAUD_RATE
#if F_CPU >= 8000000L
#define BAUD_RATE   115200L // Highest rate Avrdude win32 will support
#elsif F_CPU >= 1000000L
#define BAUD_RATE   9600L   // 19200 also supported, but with significant error
#elsif F_CPU >= 128000L
#define BAUD_RATE   4800L   // Good for 128kHz internal RC
#else
#define BAUD_RATE 1200L     // Good even at 32768Hz
#endif
#endif

So I guess you can:

#define BAUD_RATE 19200 before that block of code
recompile the optiboot loader
upload your own new bootloader version
update uno.upload.speed accordingly in boards.txt
check it on the usual blink sketch and cross your fingers :-)

Please note that this kind of task is not for beginners, you need to know what you're doing.
Also note that I disclaim any responsibility if you get unable to upload programs to your Arduino afterwards!

46: <p>I'm <a href="https://electronics.stackexchange.com/q/104466/29792">debugging a couple of RS232-to-TTL converter boards</a> that I'm trying to use to program my Arduinos and one thing I would like to try would be to reduce the upload serial speed from 115200 to 19200. </p>

<p><strong>How do I do that?</strong></p>

<p>I imagine that there's a setting that can be easily changed on the Arduino IDE preferences. But where is it? But then the bootloader speed would have to match that? <strong>How do I change the serial upload speed on optiboot, too?</strong></p>
 84: <p>On Arduino IDE side, the upload speed is coded in <code>hardware/arduino/boards.txt</code> </p>

<pre><code>uno.upload.speed=115200
...
</code></pre>

<p>for every kind of board; you cannot change it directly from the IDE (that would be too dangerous as that value must match the <strong>expected speed for the actual bootloader</strong> of every board).</p>

<p>Now as per the optiboot loader side, the upload speed is defined in <code>BAUD_RATE</code> macro, in <code>optiboot.c</code>:</p>

<pre><code>/* set the UART baud rate defaults */
#ifndef BAUD_RATE
#if F_CPU &gt;= 8000000L
#define BAUD_RATE   115200L // Highest rate Avrdude win32 will support
#elsif F_CPU &gt;= 1000000L
#define BAUD_RATE   9600L   // 19200 also supported, but with significant error
#elsif F_CPU &gt;= 128000L
#define BAUD_RATE   4800L   // Good for 128kHz internal RC
#else
#define BAUD_RATE 1200L     // Good even at 32768Hz
#endif
#endif
</code></pre>

<p>So I guess you can:</p>

<ol>
<li><code>#define BAUD_RATE 19200</code> before that block of code</li>
<li>recompile the optiboot loader</li>
<li>upload your own new bootloader version</li>
<li>update <code>uno.upload.speed</code> accordingly in <code>boards.txt</code></li>
<li>check it on the usual blink sketch and cross your fingers :-)</li>
</ol>

<p>Please note that this kind of task is not for beginners, you need to know what you're doing.
Also note that I disclaim any responsibility if you get unable to upload programs to your Arduino afterwards!</p>
