[time-nuts] Arduino Uno and Pro Mini use ceramic resonators not crystals

Casey Jones timenuts at caseyljones.com
Tue Feb 18 00:34:21 EST 2014


A warning to any time nut considering the Arduino Uno, Pro Mini, and 
maybe the Nano, is that they use poor accuracy ceramic resonators rather 
than crystals. On the Uno and maybe Nano, you can connect a wire from 
the USB/serial chip, which has a crystal, to the clock input of the 
ATmega328, but it is said that the reason they didn't do that on the 
official boards is that the 16MHz square wave broadcast too much noise 
to get FCC certification.

Something similar to the Arduino Micro can be had on Ebay for $5.30 
shipped (ebay#181286407447). Like the Leonardo it dispenses with the USB 
to serial chip and uses the ATmega32U4 with USB built in, for its CPU. 
Because ceramic resonators aren't good enough for USB, it is forced to 
use a crystal. Unfortunately the cheap one on Ebay uses a pinout 
different than the official Arduino Micro. Even the official LED blink 
example code doesn't work without modifying the source to change pin 
numbers. It seems to use the circuit and pinout of the Spark Fun Pro 
Micro board.

There is an interesting possibility with the Micro and Leonardo for 
those of us that don't have computers with good fast serial ports, and 
are forced to use USB to serial converters. With USB there is an 
unpredictable delay of a millisecond or two waiting for permission to 
transmit a PPS notification to the host computer. I think the ATmega32U4 
has an interrupt upon completion of sending a USB packet to the host. 
Thus perhaps the delay waiting to send could be measured and the error 
reported to the host as an extra custom NMEA string or something. This 
would only work if there was no slow USB hub, either built in or 
external, intervening between the Arduino and the host, to add another 
random couple milliseconds delay.


More information about the time-nuts mailing list