Close

Crystal Stability

A project log for Vectr - 3D Gesture Controller and Sequencer

Vectr is an open source 3D sensing controller and sequencer for modular synthesizers or anything you can dream up.

mattMatt 08/08/2014 at 12:270 Comments

I got the boards from manufacturing and had 8 sets to check out. On some of them I noticed some strange behavior, they occasionally would be slow to start up or would stall at start up and not get going. It's not a huge problem, but I'm testing to make sure there are zero problems. These types of problems come from one of four places: power, reset, clock, or firmware. I know that the power situation is good and the reset circuit is straight out of the datasheet and I also know what the beginning of the code should do, so I went looking at the clock. Sure enough, this crystal is a little slow to stabilize. I played with the parallel capacitance values for a while, but that didn't change anything. So, I went to the datasheet for the microcontroller to see if there was anything I was misunderstanding. I came across this feature called Internal/External Switchover, which allows for "Two-Speed Start-up." What it does is start the microcontroller for the internal RC (Resistor/Capacitor) Oscillator while it waits for the primary crystal oscillator to stabilize. This worked the trick, I tested it on a number of units and powered them all up a hundred times to make sure the problem was banished. Phew. Problems arising at this point can either be very expensive or time consuming. I'm glad to find solutions.

Discussions

Rich text editor