Teensy LC - Hackaday win

jens.andreejens.andree wrote 06/03/2015 at 00:18 • 3 min read • Like

As part of the recurring competition on hackaday I managed to score some winnings!

Sadly Mr Postman had other ideas than delivering my items when arrived so that's why I'm late to the game...

This is my first Teensy board so after a quick Google-session I quickly found the drivers and toolchain I needed, and I decided to download Teensyduino 1.23 to see how compatible it was with a selected few of my Arduino sketches?!

The installer for Windows, Linux or Mac OS-X can be found here:

Before tinkering commenced I had a quick look at the pinout of the Teensy-LC and it's a more than competent little trinket this one! :)

Teensy-LC has a MKL26Z64VFT4 Cortex-M0+ microcontroller that runs upto 48 MHz, but is possible to run at 24 MHz if needed. It has 62 kbytes of flash mem and 8 kbytes of RAM.

It has both plenty of digital and analogue pins (27+13), PWM pins, Touch Sense pins, three serial ports, I2C and SPI. Most pins are 3.3v@5mA but four pins are 3.3v@20mA. One pin (pin 17) is also 5v and I suspect this is more or less just VIN going "out" to a pin. This is great since we now can drive WS2812b LEDs directly from the Teensy-LC! How many LEDs in reality is next to be tested but first I need to see if a sketch compiles, and loads without any problem.

Picture made by Nantonos.

First I loaded a "blinky" sketch to see if all compiled and flashed, and so it did! Pin 13 is the LED pin on the Teensy-LC and so far so good. What about my project Glediator-from-sdcard? Will it compile even though I'm using FastLED and SD libraries? Well here we go:

Build options changed, rebuilding all

In file included from Glediator-simple2.ino:5:0:

D:\dev\arduino-1.6.3\hardware\teensy\avr\libraries\FastLED/FastLED.h:12:2: warning: #warning FastLED version 3001000 (Not really a warning, just telling you here.) [-Wcpp]

#warning FastLED version 3001000 (Not really a warning, just telling you here.)


Opening Teensy Loader...

Sketch uses 20 024 bytes (31%) of program storage space. Maximum is 63 488 bytes.

Global variables use 3 276 bytes (39%) of dynamic memory, leaving 4 916 bytes for local variables. Maximum is 8 192 bytes.

No problems at all! :D Whoever wrote the Teensyduino library did a really good job because it was seemingly seamless!

It's running late here so I'm leaving the proper test to see if it can drive 80 WS2812b on a WS2801 LED strip tomorrow, and I shall put the scope on it to see if it has the power to drive these favourite LEDs of mine... Can it do it or will the magic smoke make an appearance when pushed a bit? ;)

It's not the go-to microcontroller if you have really big sketches since it "only" has ~62 kbytes of flash memory, but with optimised code you should be able to squeeze in quite a few lines of code until you do run out of memory. I've seen amazing stuff done with only 4k so you should be able to do quite a few things here until you run out!

A quick observation tells me that it's not more difficult to program and flash a Teensy-LC than an Arduino UNO - even for a beginner. The installer from PJRC is great and also imports the most common (Teensy verified) libraries into Arduino IDE for you if you want. For me the minute form-factor was a massive bonus, and I might use these a lot in the future instead of my own miniaturized Atmega328 boards. The price is certainly hard to beat with regards to what you actually get!

I'm impressed!

To be continued...

Thank you Hackaday for giving us hackers out there freebies which we otherwise might have not have acquired. :)



Mike Szczys wrote 06/04/2015 at 23:32 point

I haven't looked closely at the functionality of the Teensy-LC (I've just been using the Teensy 3.1). Thanks for taking the time to talk about your experiences!

  Are you sure? yes | no

jens.andree wrote 06/04/2015 at 23:35 point

I'll post more in detail tomorrow after I've run the tests I want to run, but so far I'm impressed to say the least!

  Are you sure? yes | no