Teensy 4.1 from PJRC is one of the most powerful boards that still fit on a breadboard. The NXP i.MX RT1062 processor (Cortex-M7) runs at 600 MHz, and the board adds Ethernet, a microSD slot, USB Host and room for extra memory.
It’s programmed in the Arduino IDE with the Teensy package – and thanks to its performance it’s well suited for audio processing, MIDI or fast motor control.
Specifications
- i.MX RT1062: Arm Cortex-M7 at 600 MHz
- 1 MB RAM (512 kB of it tightly coupled), 8 MB flash
- pads for PSRAM or extra flash (QSPI) on the bottom side
- 55 digital pins (42 on the headers), 35× PWM, 18 analog inputs
- 8× UART, 3× SPI, 3× I2C, 3× CAN (one supports CAN FD), 2× I2S, S/PDIF
- 10/100 Ethernet (RJ45 jack via kit), USB Host, microSD slot
- micro USB, 3.3 V logic, 61 × 18 mm
The smaller Teensy 4.0 has the same processor but fewer pins, and it lacks Ethernet and microSD. The Teensy package is installed through the Boards Manager in the Arduino IDE, and uploading is handled by the Teensy Loader application.
Pinout and pin table
Hover over a pin in the diagram or a table row; use the filter to highlight a bus. You can download the pinout as PNG or SVG.
Bottom side
| Name | Direction | UART | I2C | SPI | CAN | PWM | I2S (PCM) | ADC | Note |
|---|---|---|---|---|---|---|---|---|---|
| 0 | input/output | RX1 | CS1 | CRX2 | PWM | Serial1 RX, SPI1 CS, CAN2 RX | |||
| 1 | input/output | TX1 | MISO1 | CTX2 | PWM | Serial1 TX, SPI1 MISO, CAN2 TX | |||
| 2 | input/output | PWM | OUT2 | ||||||
| 3 | input/output | PWM | LRCLK2 | ||||||
| 4 | input/output | PWM | BCLK2 | ||||||
| 5 | input/output | PWM | IN2 | ||||||
| 6 | input/output | PWM | OUT1D | I2S1 data output D (RX data 1 for multichannel inputs) | |||||
| 7 | input/output | RX2 | PWM | OUT1A | |||||
| 8 | input/output | TX2 | PWM | IN1 | |||||
| 9 | input/output | PWM | OUT1C | I2S1 data output C (RX data 2 for multichannel inputs) | |||||
| 10 | input/output | CS | PWM | MQS audio output – right channel | |||||
| 11 | input/output | MOSI | PWM | Alternatively CAN1 TX (FlexCAN_T4) | |||||
| 12 | input/output | MISO | PWM | MQS audio output – left channel | |||||
| 13 | input/output | SCK | PWM | Orange LED (via 470 Ω to GND) – do not use INPUT_PULLUP | |||||
| 14 | input/output | TX3 | PWM | A0 | S/PDIF output (Audio) | ||||
| 15 | input/output | RX3 | PWM | A1 | S/PDIF input (Audio) | ||||
| 16 | input/output | RX4 | SCL1 | A2 | |||||
| 17 | input/output | TX4 | SDA1 | A3 | |||||
| 18 | input/output | SDA | PWM | A4 | |||||
| 19 | input/output | CTS3 | SCL | PWM | A5 | CTS3 – hardware flow control for Serial3 | |||
| 20 | input/output | TX5 | LRCLK1 | A6 | |||||
| 21 | input/output | RX5 | BCLK1 | A7 | |||||
| 22 | input/output | CTX1 | PWM | A8 | |||||
| 23 | input/output | CRX1 | PWM | MCLK1 | A9 | ||||
| 24 | input/output | TX6 | SCL2 | PWM | A10 | ||||
| 25 | input/output | RX6 | SDA2 | PWM | A11 | ||||
| 26 | input/output | MOSI1 | A12 | A12 on ADC2 only | |||||
| 27 | input/output | SCK1 | A13 | A13 on ADC2 only | |||||
| 28 | input/output | RX7 | PWM | ||||||
| 29 | input/output | TX7 | PWM | ||||||
| 30 | input/output | CRX3 | CAN3 – also supports CAN FD | ||||||
| 31 | input/output | CTX3 | CAN3 – also supports CAN FD | ||||||
| 32 | input/output | OUT1B | I2S1 data output B (RX data 3 for multichannel inputs) | ||||||
| 33 | input/output | PWM | MCLK2 | ||||||
| 34 | input/output | RX8 | |||||||
| 35 | input/output | TX8 | |||||||
| 36 | input/output | CS | PWM | Additional hardware CS for SPI | |||||
| 37 | input/output | CS | PWM | Additional hardware CS for SPI | |||||
| 38 | input/output | A14 | A14 on ADC2 only; alternatively SPI1 CS and I2S1 IN1 | ||||||
| 39 | input/output | A15 | A15 on ADC2 only; alternatively SPI1 MISO and I2S1 OUT1A | ||||||
| 40 | input/output | A16 | |||||||
| 41 | input/output | A17 | |||||||
| GND | – | ||||||||
| 3V3 | output | 3.3 V output from the regulator, max. 250 mA for external circuits. Teensy 4.1 pins are not 5V tolerant – do not apply more than 3.3 V to any pin except VIN and VUSB. | |||||||
| GND | – | ||||||||
| 3V3 | output | 3.3 V output from the regulator, max. 250 mA for external circuits. Teensy 4.1 pins are not 5V tolerant – do not apply more than 3.3 V to any pin except VIN and VUSB. | |||||||
| GND | – | ||||||||
| VIN | input | Power 3.6–5.5 V. With USB connected, VIN is tied to VUSB – before powering from VIN, cut the VIN–VUSB jumper on the underside of the board. | |||||||
| VBAT | input | 3 V backup cell for the RTC clock | |||||||
| 3V3 | output | 3.3 V output from the regulator, max. 250 mA for external circuits. Teensy 4.1 pins are not 5V tolerant – do not apply more than 3.3 V to any pin except VIN and VUSB. | |||||||
| GND | – | ||||||||
| PROGRAM | input | Connecting to GND enters download mode (same as the white button); it is not a reset. Holding for 13–17 s erases the flash and restores the Blink program. | |||||||
| ON/OFF | input | Button to GND: holding for 4 s turns off the 3.3 V supply, a 0.5 s press turns it on. With a backup cell on VBAT, it remembers the state even without power. | |||||||
| 5V | output | USB Host – device power (protected) | |||||||
| D- | input/output | USB Host – D− | |||||||
| D+ | input/output | USB Host – D+ | |||||||
| GND | – | ||||||||
| GND | – | ||||||||
| TX+ | output | Ethernet – transmit + | |||||||
| TX- | output | Ethernet – transmit − | |||||||
| RX+ | input | Ethernet (DP83825I) – receive +, to magnetics/RJ45 | |||||||
| RX- | input | Ethernet – receive − | |||||||
| LED | output | Ethernet – link LED (through 150 Ω) | |||||||
| GND | – | ||||||||
| 42 | input/output | MISO2 | PWM | Kontakt slotu microSD (DAT1); SPI2 MISO | |||||
| 43 | input/output | MOSI2 | PWM | microSD slot contact (DAT0); SPI2 MOSI, alternatively CTS5 | |||||
| 44 | input/output | CS2 | PWM | microSD slot contact (CLK); SPI2 CS, alternatively Wire1 SDA | |||||
| 45 | input/output | SCK2 | PWM | microSD slot contact (CMD); SPI2 SCK, alternatively Wire1 SCL | |||||
| 46 | input/output | PWM | microSD slot contact (DAT3); alternatively Serial5 RX | ||||||
| 47 | input/output | PWM | microSD slot contact (DAT2); alternatively Serial5 TX | ||||||
| VUSB | output | 5 V z USB konektoru | |||||||
| 48 | input/output | Pad underneath (QSPI) – CS0 for PSRAM; alternatively Serial8 RX | |||||||
| 49 | input/output | Pad underneath (QSPI) – D1, shared by both memories; alternatively SPI2 SCK | |||||||
| 50 | input/output | Pad underneath (QSPI) – D2, shared; alternatively SPI2 MOSI | |||||||
| 51 | input/output | PWM | Pad underneath (QSPI) – CS1 for additional flash | ||||||
| 52 | input/output | Pad underneath (QSPI) – D0, shared; alternatively Serial1 RX | |||||||
| 53 | input/output | Pad underneath (QSPI) – CLK, shared; alternatively Serial1 TX | |||||||
| 54 | input/output | PWM | Pad underneath (QSPI) – D3, shared; alternatively SPI2 MISO | ||||||
| USB D- | input/output | USB (device) – D−, pad on the underside next to the connector | |||||||
| USB D+ | input/output | USB (device) – D+, pad on the underside next to the connector |
What to watch out for
- Pins are not 5V tolerant – only VIN and VUSB can take more than 3.3 V.
- VIN is connected to VUSB. Before powering from VIN with USB connected, cut the VIN–VUSB jumper on the bottom of the board.
- Draw at most 250 mA from the 3.3V pins, and preferably no more than 4 mA from a single pin.
- Pin 13 has an LED –
INPUT_PULLUPdoesn’t work on it. - The Program pin is not a reset: it enters upload mode, and holding it for 15 s erases the flash and restores the Blink program.
Teensy on chiptron.eu/
On chiptron.eu/ you'll find these articles about Teensy boards:
- Adafruit and SparkFun over Teensy – Adafruit stops selling Teensy boards and is preparing an open-source alternative
- Teensy 3.5 and 3.6 – the older Teensy generation with ARM Cortex-M4 for the Arduino IDE
More pinouts
See all pinouts on the Pinouts page.