Teensy LC

The Teensy LC board is based on the KL26Z64VFT4 which is a 48MHz device from the ultra-low-power KL family with Cortex-M0+ core and USB. This KL26 device has 64k Flash and 8k SRAM and is in a 64 pin QFN package, whereby the KL26 is also available in various other LQFP packages (32, 48, 80 pins) and its memory ranges from 32k ..256k Flash and 4k ..32k SRAM. There is an 16MHz crystal on the board for clocking the part.

Full details and documentation for this board can be obtained from the PJRC web site: Teensy LC

To configure the µTasker project for this board simply enable the define TEENSY_LC in the project's config.h file. The compiler needs to be set to build for Cortex M0+ (and not Cortex M4) and the linker script KL_64_8.ld should be selected [KL_64_8_BM.ld for downloadable version] {the linker script extension may vary for different compilers, whereby *.ld is valid for GCC}

Teensy LC Arduino/Teensyduino users can use their projects together with the µTasker serial loader by following these instructions: "Using the uTasker Serial Loader with Teensy 3.1 Arduino/Teensyduino applications", whereby the same instructions are valid for the Teensy LC.

Download the Teensy LC simulation and run it to obtain the screen as shown above. This requires no installation and can be started by extracting and simply executing the file uTaskerSerialLoader_TEENSY_LC.exe. When running, processor and board pins connections, possible peripheral functions and present pin configuration are displayed when the mouse is hovered over the pin in question.

Teensy LC Binaries

Here are some binary/srec/hex files that can be loaded to the board. These were built using the µTasker applications (serial loader and V1.4 application) and can be simply generated using the supported compilers/IDEs [these were built using GCC], built using different configuration options or modified to suit specific requirements or hardware derived from this board :
  • uTaskerSerialBoot_TeensyLC_SREC_MSD.hex USB-MSD Boot loading as well as SREC loading on UART 0 [17.9k binary / 47.8k HEX] allowing applications to be loaded at link address 0x6080 (using UART0 SREC at 115'200 Baud or USB-MSD when the board appears as upload hard disk). When operating, the green LED blinks at 5Hz. To force the loader reset the board with header pin 16 [A2] connected to GND. To disable the watchdog reset the board with pin 17 [A3] connected to GND. This can be loaded using the Teensy Loader Application (HalfKay boot loader) as described on the PJRC web site. Note that the loader limits application sizes to 38k - it can be built without limits using the µTasker project.
  • uTaskerV1.4.8_BM_TeensyLC_USB-CDCx3_6080.bin Teensy LC application configured for a 3 USB-CDC interface composite device by enabling USB-CDC and setting the define for USB_CDC_COUNT to 3, the maximum number of available UARTs in the KL26 on the TEENSY LC. The first interface (0) is connected to the command line shell (as is UART0 TX1 on pin 1/RX1 on pin 0) but can be commanded to a USB-UART0 bridge in the USB menu. The other 2 USB-CDC interfaces perform dedicated USB-UART bridges as follows:
    CDC Interface 1 - UART 1 (TX2 on pin 10/RX2 on pin 9)
    CDC Interface 2 - UART 2 (TX3 on pin 8/RX3 on pin 7)
    Low power modes can be set in the application menu and wakeup from the low-leakage power mode (LLS) is achieved by a falling edge on pin 16 (LLWU_P5), which temporarily allows the processor to run and respond with a message before automatically returning to the low-leakage power mode. A falling edge on pin 11 (LLWU_P10) can be used to wake the processor back to its fully operational state. More details of this operation can be found in Low-Leakage Wakeup (LLWU) Support
    Linked to 0x6080, this binary image can be loaded with drag-and-drop onto the upload disk that appears when the serial loader is operating or using the KBOOT loader's USB connection. When the application is running the green LED blinks at 2.5Hz. The processor operates at 48MHz [35.9k]
  • uTaskerV1.4.8_BM_TeensyLC_USB-CDCx3_6080.srec The same Teensy LC application in SREC format that can be loaded via UART0 with the SREC serial loader function [98.8k SREC / 35.9k binary].
  • uTaskerV1.4.8_TeensyLC_USB-CDCx3.hex The same Teensy LC application as stand-alone software that can be loaded using the Teensy Loader Application [101k HEX / 37k binary].

  • The following drivers can be used with this device:
  • uTaskerFreescaleMultiVirtualCOMx1-6.inf USB CDC installation file for 32-bit windows (usable for 1..6 USB-CDC composite interfaces).
  • uTaskerFreescaleMultiVirtualCOM1-6_64bit.inf USB CDC installation file for 64-bit windows (usable for 1..6 USB-CDC composite interfaces). See the following for a guide to installing unsigned drivers on Windows 8.1

USB-MSD with SD card

The following µTasker V1.4 application configures for a USB-MSD device with SD card support (USB_INTERFACE, USE_USB_MSD and SDCARD_SUPPORT). This enables the utFAT on the SD card and makes it accessible from a USB host, with support for the interface in the disk interface menu as disk D.
An SD card can be connected using the Teensy SD adapter.
As well as USB-MSD, the USB device is composite with USB-CDC where the command line menu for a DOS like disk drive interface is located.

100/10M Ethernet using the Microchip ENC424J600

The following µTasker V1.4 application configures for an Ethernet connection with internal TCP/IP stack via SPI to the Microchip ENC424J600. Since the KL26 on the Teensy LC has limited memory only ICMP and UDP are configured, with NetBios, SNTP and DHCP clients operating over UDP. The USB device is configured for USB-CDC as the SD card interface operates in parallel with the Ethernet connection on SPI0.

The SD card can be inserted into the Teensy's Micro SD Card Adaptor and the SPI based Ethernet controller connected using the following connections SPI0_SCK, SPI0_SOUT and SPI0_SIN are the same as the SD card connections:

  • SPI0_SCK = PTC5 (Teensy pin 13 LED)
  • SPI0_SIN = PTC7 (Teensy pin 12)
  • SPI0_SOUT = PTC6 (Teensy pin 11)
  • SPI0_CS = PTC4 (Teensy pin 10)
  • Interrupt line = PTC3 (Teensy pin 9)

When connected to the PC host via USB a command line menu is available on the virual COM port. The fixed IP address of the Ethernet connection is (this can not be modified in this configuration since the uParameterSystem has been deactivated to maximise Flash space for the program. Alternatively DHCP can be used (see second version below) which will automatically obtain its IP setting form the DHCP server in the network. The IP address that was obtained can be displayed in the LAN menu (command "show_config").

The SD card content can be viewed and manipulated in the utFAT Disk Interface sub-menu via the USB-CDC virtual COM port connection.

The Teensy LC will respond to ping requests and periodically attempt to connect to an SNTP server in the Internet to synchronise its local time, which can be viewed in the command line menu. It is not necessary to have a 32kHz oscillator connected on the board since the configuration performs a software based Gregorian RTC and will also maintain the time across software resets.

  • uTaskerV1.4.8_BM_TEENSY-LC_LAN_CDC_SD.hex Stand-alone version that can be loaded using the Teensy Loader Application - fixed IP address [167k hex / 60.6k binary]
  • uTaskerV1.4.8_BM_TEENSY-LC_DHCP_CDC_SD.hex Stand-alone version that can be loaded using the Teensy Loader Application - DHCP eabled [167k hex / 60.6k binary]

  • The following USB drivers can be used with this device
  • uTaskerFreescaleMultiVirtualCOMx1.inf USB CDC installation file for 32-bit windows (usable for 1 USB-CDC).
  • uTaskerFreescaleMultiVirtualCOMx1_64bit.inf USB CDC installation file for 64-bit windows (usable for 1 USB-CDC). See the following for a guide to installing unsigned drivers on Windows 8.1

  • Return to the Kinetis landing page

    µTasker Kinetis Teensy LC support. Copyright (c) 2004..2018 M.J.Butcher Consulting