Change oscilator on arduino uno

Hi everyone!

i want change quarz on uno board to 14.318mHz.
I already have that quarz, but i cant make hex bootloader for this oscil.
Maybe somebody knows a few tutorial?)

There is probably no compiled bootloader for this frequency. You have to compile it yourself.
It is not so complicated. Just follow instructions here:

1 Like

Do you really mean 0.014318 Hz ?

Or should that be 14.318 MHz ?

1 Like

Should be MHz. :slight_smile:
But yes, we must be thorough.

Just out of curiosity. Why 14.318MHz? Something with TV?

Leave the Uno be, use it as a chip programmer and make your own duino to run on your crystal and matching pF caps.

You will have to modify at least 1 time value to get correct millis() and micros() returns.

PS, the Uno uses a resonator, not a crystal. it is much more affected by temperature, much less accurate and cheaper.

1 Like

I wrote this a couple of years back, I'm not sure if it's 100% up-to-date, but it should be a good starting point:

See also CompilingOptiboot · Optiboot/optiboot Wiki · GitHub.

1 Like

Try this.
OptiBOOT_atmega328p_14318000Hz.zip (840 Bytes)

Are you still overclocking AVR's?

Yes. 24MHz is the best.

1 Like

For what purpose?

Do you really want to change the usb-serial bus clock speed? The 16MHz crystal is not for the microcontroler....................

Do you have problem with uploading the code/want it faster?

1 Like

i have one of those and the USB works fine, L-O-L !

One thing it does is read and write SD 50% faster.

It's easier now, at least if you have an avr tools environment set up.
Just connect to the proper directory after download from the optiboot github and type:

make atmega328 AVR_FREQ=14318000 BAUD=57600

(note that 14.318MHz will not reliably support 115200bps/)

there is also some info in the wiki: optiboot/Wiki/CompilingOptiboot_x.md at master · Optiboot/optiboot · GitHub

2 Likes

Right, I forgot this fact!
OptiBOOT_ATmega328P_14318000Hz_57600baud.zip (860 Bytes)

Is this reaction to my post?
Anyway, the main MCU's speed has nothing directly with USB/serial converter MCU speed.
The main request is to have reliable serial line. It means to have the baud rate as close to required speed as possible, like @westfw pointed out.
On the other hand, 16MHz clock of the USB-serial transceiver is optimal (ATmega16U2), since there is an internal 48MHz PLL derived from the main clock, needed by USB, which is exactly 3x. (It is derived from 8MHz multiplied by 6 exactly.)
About overclocking. It was discussed here a years ago. I did some experiments and it seems that ATmega reliably works up to 25MHz with preserved all functionalities. 24MHz is just the best overclocking option.
Arduino clone with ATmega1284P: Another Arduino clone with 1284P - Microcontrollers - Arduino Forum

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.