circuito.io blog

Getting Started with Teensy
Blog PostAnat ZaitTue Feb 19 2019

Teensy is a high-powered alternative to Arduino. It’s compact, adaptable, and offers fantastic value for money. Teensy is now available on circuito.io (!) so we thought it would be a nice idea to introduce you all to the wonderful world of Teensy, and explore how to get it up and running.

A Little History

This family of prototyping boards started in late 2008 with the Teensy 1.0, which offered 12Mbps native USB (as opposed to the slower serial standards found on the Arduino boards of the time). Teensy 2.0 arrived just a year later and introduced support for USB keyboards, mice and MIDI devices.

The third generation of Teensy boards got off the ground thanks to a successful Kickstarter campaign. While it wasn’t actually the first 32-bit Arduino-compatible prototyping board (that distinction belongs to Maple), it did help to get most of the popular Arduino libraries working on more capable hardware.

In 2014, Teensy versions 3.1 and 3.2 launched, offering four times as much RAM and a faster processor.

In 2016 the 3.5 and 3.6 Teensy boards were released after another crowdfunding effort, of the 3.5 and 3.6 Teensy boards. These are the most powerful boards produced by the company up to date.

Here, we’re going to take a look at one of the more compact members of the family – the Teensy 3.2. This device is the least powerful of the current Teensy line-up.  But it’s still a device that’ll capably handle an enormous range of tasks. As with Arduino, you won’t need a special programmer to get your Teensy up and running – just a micro-USB cable and a PC (or mac), along with the appropriate software (the Arduino IDE).

Let’s take a closer look at the Teensy 3.2, and assess its many advantages (and a few of its drawbacks).

Teensy 3.2 Spec Overview

The first and most notable plus-point of the Teensy 3.2 sits right in the center of the board: a powerful, 32-bit ARM processor: clocked at 72Mhz, and supported by 256kb of flash memory. These specs far exceed those of the Arduino UNO, and allows the Teensy 3.2 to perform demanding tasks. Up until just a few years ago, processors of this sort were off-limits to hobbyists – but the Teensy 3.2 brings them into reach.

Like the 3.5 and 3.6, the 3.2 is designed to work with lower 3.3v signals, which makes it power-efficient. With that said, it’s able to handle 5v signals, too – which makes it flexible enough to be inserted into just about any digital circuit.

Ideal for Audio

The board comes equipped with a built-in DAC, which, along with the device’s impressive processing power, makes it ideal for audio applications. Pair it with the audio shield, the audio library, and a few buttons and potentiometers, and you can easily put together a simple music playback device. With a little creativity, you can make more complex musical devices, like samplers, sequencers and synthesizers.

There are also dedicated Audio boards for Teensy, such as the one below by Sparkfun.

Strong Data Processing

The Teensy works well with sensors which output large amounts of data with a fast refresh rate. Devices based on a Teensy are therefore able to easily incorporate accelerometers, GPS and Proximity Sensors. It’s also relatively easy to get the Teensy to work with touch-screens, mice, and keyboards, which makes getting input into the chip straightforward. Moreover, the chip allows DMA (Direct Memory Access) for speeding up processing time by algorithms that require fast processing (Led strips, Screens, Audio and Movement/Orientation).

While the documentation isn’t as extensive as that enjoyed by Arduino users, there’s still lots of information out there for new Teensy users to take a look at. There’s also an active community on the PJRC forum.

Finally, the Teensy3.2 is a direct replacement for the 3.1, and will work seamlessly with all compatible shields and other add-on boards. If you already have experience with the 3.1 you’ll find the transition to the more powerful board just-about seamless.

Teensy Versions

Generally, there are two categories to choose from: those that come with 32-bit processors and those that come with 8-bit ones.

32-bit Teensies

Teensy 3.6 and 3.5

The 3.6 and 3.5 come with Cortex-M4F processors clocked at 120Mhz and 180Mhz respectively. While the 3.5 is tolerant of 5v signals, both boards are built to work with 3.3v, much like the 3.2. They’re a little longer than the 3.2, too, at just over two-and-a-half inches. This extra space allows them to incorporate an SD-card reader at the far end.

Teensy LC

The LC retains the dimensions of the discontinued 3.1, which it replaces at the very bottom of the current line-up. It’s lightweight, compact, and suitable for just about any application where the more powerful boards would be overkill.  You’ll get 48Mhz on the ARM chip, along with 62K of flash memory and a 12-bit ADC.

8-bit Teensies

Teensy 2.0

Unlike the 3-series chips we’ve been discussing, the older 2.0 series is not based on a 32-bit ARM processor, but an 8bit AVR chip almost identical to the one found on the Arduino UNO. As such, it behaves very similarly to the UNO except it’s a lot smaller – you can think of it as an alternative to the Arduino Nano.

Teensy ++ 2.0

This is a slightly more full-featured version of the 2.0. It’s longer and comes with more pins, but in all other respects, it’s the same board.

The 8-bit boards aren’t quite obsolete yet, despite the many advantages of the 32-bit 3-series. PJRC intend to keep purchasing Atmel’s chips according to an agreed-upon schedule, up until April 2021 – and they might continue beyond that. As such, you can expect the 2-series boards to be around for a while.

TeensyDuino

One of the key advantages of the Teensy series is that they can be programmed with the Arduino IDE.  In order to do this, you’ll first need to install some add-on software called Teensyduino. The files are available from the PJRC website, together with a step-by-step guide to the installation process.

{image of teensyduino}

Things will unfold a bit differently depending on whether you’re running Windows, Linux or Mac OSX. You’ll need to pay extra attention during installation, as there are certain factors which can influence the quality of your experience.

If you’re running Windows, it’s best to deactivate anti-virus software until you’re done installing. They can also sometimes slow the compiling process if they’re set to scan in real-time, but this will only become a significant issue if you need to compile often.

The first page of the installer will list the compatible versions of Arduino IDE. Make sure yours is listed. You’ll need to remember where you’ve extracted the Arduino software to – either pick a specific place or remember the default location (which in Windows is under Program Files (x86). When you’re selecting the relevant folder, you should pick the top one, so that the ‘drivers’, ‘examples’ and ‘hardware’ folders are listed. You should then be able to click ‘next’ – but if you can’t, try clicking the ‘?’ button to find out why.

You’ll be presented with a list of libraries proven to work well on the Teensy platform. You can pick and choose which of them to install, but for most of us, there’s no reason not to simply pick all of them. The next phase should be the installation bar itself – which should be done in next to no time.

Once everything is installed, it’s time to connect up the hardware and test. Do this from the Arduino IDE. Pick Teensy from the Tools>Boards menu, and pick out one of the example sketches. When you’re uploading something for the first time, click the ‘verify’ button (the tick) rather than the ‘upload’ button. You can then press the button on the board to ensure that everything’s working as it should.

Conclusion

The Teensy 3.2 is a powerful, flexible alternative to the Arduino that comes in a very small package. It can be easily reprogrammed to the Arduino, and, with the help of circuito.io, easily incorporated into existing Arduino projects. There’s a raft of information out there that’ll help new users get started, and we’ll be incorporating the board into future projects - so keep an eye out for them!