Teensy 3.1 overclock to 168MHz

I am kinda new to the whole overclocking thing. Can someone explain how exactly to overclock teensy 3.1 to 144MHZ? What is boards.txt for and what are the different things that might get affected if i overclock?
 
Assistance on porting teensy/arduino to other freescale MCUs

@xxxajk, I'd like to know more about your board as I', also Trying to port teensy/arduino to other freescale MCUs.
These are the following MCUs I'm working on.

1) MK22DX256VLF5
2) MKV46F256VLH16
3) MKV56F1M0VLL24
and Vybrid Series (SVF332R3K1CKU2)

Any assistance will be appriciated
 
You need to edit hardware/teensy/avr/boards.txt.

If using Macintosh, control-click Arduino and select "Show Package Contents", then look for "hardware" inside Contents/Java. On Windows and Linux, the Arduino software is just regular folders, so you should immediately see the hardware folder. If you ran the Windows installer and rapidly clicked "Next", the default install location is c:\Program Files (x86)\Arduino, which is where you look for the hardware folder.

When you edit boards.txt, look for these lines:

Code:
#uncomment these if you want to try faster overclocking
#teensy31.menu.speed.144=144 MHz (overclock)
#teensy31.menu.speed.168=168 MHz (overclock)
 
Remember that many peripherals run from F_BUS rather than F_CPU. Because only integer division is possible between these clocks, some settings have slower F_BUS. If you want to also overclock F_BUS, you'll need to edit kinetis.h.
 
Remember that many peripherals run from F_BUS rather than F_CPU. Because only integer division is possible between these clocks, some settings have slower F_BUS. If you want to also overclock F_BUS, you'll need to edit kinetis.h.

Ok, i do it.. do you think that there is a problem about elapsed milli after overclock?
 
This is an old thread, but someone pointed it to me today... and it looks like I never answered this last question.

Assuming the CPU and memory are actually working reliably at those speeds, the timing functions like millis(), micros(), elapsedMillis, elapsedMicros and IntervalTimer should all be perfectly fine. The code implementing those functions automatically adapts to the CPU speed setting, so you get the correct times even as the chip runs faster.

One place where problems can occur is digitalWriteFast(). By default, pinMode() configures the pins with a feature called "slew rate limiting". This slows the rate of voltage change, only by nanoseconds. The limited slew rate makes a huge reduction in electrical noise and interference, especially if you use ordinary wires without shielding. Normally you want the slew rate limit feature. But at very high clock speeds, digitalWriteFast() becomes so fast that the pin's voltage can't fully change before the next instruction. This was a problem years ago with the ShiftPWM library, which was fixed by adding short delays.

The other known overclocking problem is I2S on Teensy 3.6. Beyond 192 MHz, the I2S MCLK clock generator doesn't work reliably.
 
Back
Top