In this tutorial, its all about Teensy vs. Arduino! What’s the difference? Why use a Teensy over an Arduino or vice-versa? We will touch on the basics and then dive into a few key areas to help you understand when you should use one over the other. Both are fantastic platforms with lots applications and use cases. Once you understand the difference you’ll probably find places for both Teensy’s and Arduinos in your projects.
Teensy vs. Arduino
Before we go into the major differences, let’s take just a second to understand the Arduino and what makes it important.
Also, if you decide to purchase one of these units, here’s a handy parts list:
The Arduino
So let’s get into this. If you’ve not read our article and video Introductions to the Arduino you should definitely do that! Simply put for brevity, Arduino made micro-controllers easy to use for everyone from the hard core professional to the school age children just learning about them. Arduinos are generally based on the ATMega328P micro-controller. Arduino created a development board with serial interfaces and an entire development environment making programming the ATMega328P super simple. Something that was a radical change when they were first released.
What Arduino did next was to open source the entire platform, allowing anyone to make an Arduino clone using their hardware schematics and development software.
The ATMega328P is a general purpose micro-controller. It’s an 8-bit RISC based architecture running at roughly 20Mhz. It has 32K of flash memory, and 2K of SRAM. Honestly, not that great. However, what makes it great is that it can be purchased for about $2.00. Its powerful enough and cost effective enough to be used in millions of micro-controller applications. But that comes with some trade-offs. For some applications its just not fast enough, and doesn’t have enough RAM to store larger programs.
The Teensy
And that brings us to the Teensy! Teensy is not made by Arduino or any of their clone manufacturers. It’s actually a seperate company called PJRC, owned by Paul Stoffregen. Paul immediately recognized the areas that made the Arduino great, and also the areas that made it not so great for bigger applications. He immediately went to work on an ARM based “version” of the Arduino that incorporated everything great from the Arduino, with power of a 180 MHz ARM Cortex-M4! The Teensy will run circles around an Arduino Uno running the ATMega328P!
In addition rocking a 32-bit 180Mhz processor, certain versions of the Teensy rock SD-Card slots, Ethernet ports and extended serial communications ports. The Teensy is an Arduino on steroids! Paul also developed a ton of additional libraries and software for the Teensy. This means all that great new functionality is all built-in and won’t require a single line of code on your part to use it!
To program the Teensy and use it in your existing Arduino projects you only need to add the Teensy software to your PC and it will integrate itself into your existing Arduino IDE. In most cases you’ll be able to compile and upload your existing Arduino projects directly to the Teensy without modification. How great is that?
When to Use a Teensy in Your Projects
You’re probably wondering at this point when to pick a Teensy over an Arduino in your projects and we don’t blame you! It’s a great line of thinking that we will help you explore.
A great example of a project that needs something more than an Arduino is Clough42’s Electronic Lead Screw Project. He’s not using a Teensy in his project, he’s using a TI Launchpad but the idea is the same. He needed to make certain that his microcontroller would never miss a digit on the rotary encoder as is spun at higher RPM. Something the Arduino and ATMega328P just would not be able to guarantee.
The main times you’ll want to pick a Teensy over an Arduino is when the application simply needs more accuracy and processing power than can be provided by the Arduino’s micro-controller. Automotive applications that control and monitor things like a engine timing, fuel injection, and other mission critical engine operations are the perfect use case for the Teensy. Checkout this Megasquirt CAN system built by BuildPics. It’s Teensy based, and for all of the right reasons.
11 Responses
5
Yep! I use the Teensy in my race truck. Super fast. Perfect for automotive projects!
With so little difference in price, I’ve just defaulted to using the Teensy in my projects.
The Teensies, like the 3.x series all implement Cortex M4, and one of the great benefits is a built-in signal (audio, analog) library that provides e.g. FFT. So lots of audio projects use the Teensy for this reason.
4
1
Hi, is it Teensy good for sending images, I want to use it for diy thermal imagers? Thank you very much!
Most Arduino boards run at 16 MHz, not 20. Though the ATMega328P can run at 20.
With good programming skills, though, it can accomplish a lot, though. Take the electronic lead screw project mentioned in the article. Yes for sure it’s easier to just throw a faster MCU at this problem. But it doesn’t mean an Arduino can’t do it. The so called “Russian ELS” (by Oleg) uses an Arduino mega (16 MHz) to read a 1800 pulse per revolution spindle encoder (in 2x mode, for 3600 counts per rev). It’s a mature project already implemented by many other Russians (and not only) on various lathes, and it works well, with a lot of extra features as well (such as X axis control – automatic thread cutting, taper and ball turning). Clough42’s project looks much more basic and “rough” despite using a more powerful MCU.
Faster boards like Teensy or ESP32-based boards have their place, but shouldn’t be a substitute for lack of proper programming skills. As we all probably noticed, the modern web applications can slow down even the super powerful modern computers to a crawl, and consume whatever number of gigabytes of RAM we throw at them. Most of the 32-bit boards run on 3.3V (Arduino is available in 5V or 3.3V versions), which can be good or bad, depending on which devices one has to interface with. Logic level converters might be needed.
For a given project, I would choose an Arduino if it’s enough for the job, and a faster board if it’s really necessary. It’s just cost effective to do it this way. The official Arduino boards are not that cheap, but Chinese clones are available at ridiculously low prices (e.g. Arduino Uno for less than 3 USD with free shipping). Last time I checked, Teensy is several times more, although it seems nice and well supported. Although the Chinese ESP32 (dual core 240 MHz) boards are about 5-10 USD, and have some pretty impressive specs. Quite good Arduino support and community. There is also STM32 (72 MHz 32-bit), and Logic Green’s AVR compatible chip, boards with it are similar to Arduino nano but run at 32 MHz and have some extra features such as an 8-bit DAC.
4.5
3.5
As soon I make a rebuild of Chris Annins 6-axis robot, I definitely will use a Teensy board as it looks strong enough for that use-case. Sady some of the project mentioned in your article seems to be dead. For example the automotive application.