Industry Context — Common BS Fingerprints in Industrial, Manufacturing & Engineering
PJRC
(https://pjrc.com) 📸 Data Snapshot: May 30, 2026Analyze the raw signals below. How would a machine score this business’s credibility?
Here are the exact signals captured from up to six pages of the site — the same raw inputs the evaluation engine analyzed. They are grouped by signal type so you can weigh each the way the machine does.
🏗️ Semantic Structure — heading hierarchy & page identity (Info Density · Commodity Fingerprint)
HOMEPAGE PJRC: Electronic Projects (https://pjrc.com)
PJRC: Electronic Projects
HEADING_REPEATED_BODY Teensy® 4.0 (https://pjrc.com/store/teensy40.html)
Teensy® 4.0
HEADING_REPEATED_BODY Teensy® 4.1 (https://pjrc.com/store/teensy41.html)
Teensy® 4.1
HEADING_REPEATED_BODY PJRC Store (https://pjrc.com/store/teensy3_audio.html)
PJRC Store
📝 The Narrative — clean text per page (Info Density · Semantic Coherence)
HOMEPAGE · THIN (https://pjrc.com) PJRC: Electronic Projects
Teensy 4.0 Teensy 4.1 Audio Shield Chips for DIY [H1] About US Contact Info About Paul & Robin Old Projects Site
SUB-PAGE (https://pjrc.com/store/teensy40.html) Teensy® 4.0
[H1] Teensy® 4.0 Development Board
SparkFun is now manufacturing Teensy products. You can buy directly at SparkFun.
TEENSY40
Teensy USB Board, Version 4.0
For prototypes, experimentation, and learning
TEENSY40_LOCK
Lockable Teensy USB Board, Version 4.0
For commercial products and secure applications,
See Code Security for Lockable Teensy details.
Recommended Accessories:
USB Cable,
Pins 14x1 (2)
[H3] Sections On This Page:
Photos
–
Specifications
–
Software
–
Processor
–
Pins
–
Digital Pins
–
Analog Pins
–
Communication
–
Displays
–
Audio
–
Lights & LEDs
–
Timing
–
Power
–
Memory
–
Programming
–
Code Security
–
Special Features
–
Technical Information
–
Regulatory Compliance
[H2] Photos
[H2] Specifications
ARM Cortex-M7 at 600 MHz
Float point math unit, 64 & 32 bits
1984K Flash, 1024K RAM (512K tightly coupled), 1K EEPROM (emulated)
USB device 480 Mbit/sec & USB host 480 Mbit/sec
40 digital input/output pins, 31 PWM output pins
14 analog input pins
7 serial, 3 SPI, 3 I2C ports
2 I2S/TDM and 1 S/PDIF digital audio port
3 CAN Bus (1 with CAN FD)
32 general purpose DMA channels
Cryptographic Acceleration & Random Number Generator
RTC for date/time
Programmable FlexIO
Pixel Processing Pipeline
Peripheral cross triggering
Power On/Off management
Compare detailed specifications of all Teensy models.
[H2] Software
Arduino IDE + Teensy boards add-on
Arduino's IDE software with the Teensyduino add-on
is the primary programming environment for Teensy. The
add-on is installed using Arduino's Boards Manager.
Teensy boards add-on includes a large collection of libraries which
are tested and optimized for Teensy. Other libraries may
be installed manually or by Arduino's library manager.
Visual Micro
Visual Micro allows use of
Microsoft Visual Studio to program Teensy and many other boards.
Only Windows is supported. Visual Micro is commercial paid software.
PlatformIO
PlatformIO IDE is
a cross platform development environment with many advanced features.
Windows, Linux and Macintosh are supported.
CircuitPython
CircuitPython
provides a .HEX file which you program onto Teensy 4.0 using
Teensy Loader. Then Teensy appears
to your computer as a USB disk, where copy or save your Python code.
CircuitPython does not fully support all of Teensy 4.0's hardware.
Command Line with Makefile
Makefiles
for non-graphical use are provided with the Teensyduino installer.
Teensy 4.x: {Arduino}/hardware/teensy/avr/cores/teensy4/Makefile
Teensy LC & 3.x: {Arduino}/hardware/teensy/avr/cores/teensy3/Makefile
To get all required files, install
Arduino IDE 1.8.19
and then run the Teensyduino
installer.
You don't need to use Arduino. Simply installing gives you all the files
and tools in the folder structure the Makefile expects.
[H2] Processor
Performance
ARM Cortex-M7 brings many powerful CPU features to a true real-time microcontroller
platform. CPU performance is many times faster than typical 32 bit microcontrollers.
Dual Issue Superscaler Architecture
Cortex-M7 is a dual-issue superscaler processor, meaning M7 can execute 2 instructions
per clock cycle, at 600 MHz! Of course, executing 2 simultaneously depends upon the compiler
ordering instructions and registers. Initial benchmarks have shown C++ code compiled by
Arduino tends to achieve 2 instructions about 40% to 50% of the time while performing
numerically intensive work using integers and pointers.
Floating Point Unit
The FPU performs 32 bit float and 64 bit double precision math in hardware.
32 bit float speed is approximately the same speed as integer math. 64 bit
double precision runs at half the speed of 32 bit float.
Tightly Coupled Memory
Tightly Coupled Memory is a special feature which allows Cortex-M7 fast single cycle
access to memory using a pair of 64 bit wide buses. The ITCM bus provides a 64 bit path to
fetch instructions. The DTCM bus is actually a pair of 32 bit paths, allowing M7 to
perform up to 2 separate memory accesses in the same cycle. These extremely high speed
buses are separate from M7's main AXI bus, which accesses other memory and peripherals.
Cache
Two 32K caches, one for instructions and one for data, are used to speed
up repetitive access to non-TCM memory.
Branch Prediction
Cortex-M7 is the first ARM microcontroller to use branch prediction.
On Cortex-M4 & earlier, loops and other code which much branch take 3 clock cycles. With M7, after a loop has executed a few times, the branch prediction removes that overhead, allowing the branch instruction to run in only a single clock cycle.
Digital Signal Processing
DSP extension instructions accelerate signal processing,
filters and Fourier transform.
The Audio library
automatically makes uses of these DSP instructions.
[H2] Pins
Teensy 4.0 has a total of 40 input/output signal pins. 24 are easily accessible
when used with a solderless breadboard.
This pinout reference card comes with Teensy 4.0.
Pinout Card Files:
Front Side (PDF) /
Back Side (PDF)
Not shown on this reference card, Pin 0: CS1, Pin 1: MISO1
A larger, more detailed pinout chart by KurtE is also available on the forum.
[H2] Digital Pins
Digital Input Pins
Digital pins
may be used to receive signals. Teensy 4.0 pins default to
INPUT most with a "keeper" resistor.
Teensy 4.0 pins accept 0 to 3.3V
signals. The pins are not 5V tolerant. Do not drive any digital pin higher
than 3.3V.
Input Pullup / Pulldown / Keeper Resistors
All digital pins have optional pullup, pulldown, or keeper resistors.
These are used to keep the pin at logic HIGH or logic LOW or the same
logic level when it is not being
actively driven by external circuity. Normally these resistors are used
with pushbuttons & switches.
The pinMode function with INPUT_PULLUP or INPUT_PULLDOWN must be used to
configure these pins to input mode with the built-in resistor.
Pin Change Interrupts
All digital pins can detect changes. Use attachInterrupt to cause
a function to be run automatically. Interrupts should only be used for
clean signals. The
Bounce library
is recommended for detecting changes
on pushbuttons, switches, and signals with noise or mechanical chatter.
Digital Output Pins
All digital pins can act at output. The pinMode function with
OUTPUT or OUTPUT_OPENDRAIN must be used to configure these pins to output
mode. The digitalWrite and digitalToggle functions are used to control
the pin while in output mode. Output HIGH is 3.3V. The recommended
maximum output current is 4mA.
Pulse Width Modulation (PWM)
31 of the digital pins support
Pulse Width Modulation (PWM),
which can be used to control
motor speed, dim lights & LEDs, or other uses where rapid pulsing
can control average power. PWM is controlled by the analogWrite function.
19 groups of PWM can have distinct frequencies, controlled by the
analogWriteFrequency function.
Slew Rate Limiting
This optional feature greatly reduces high frequency noise when
long wires are connected to digital output pins. The rate of voltage
change on the pin is slowed. The extra time is only nanoseconds, which
is enough to lower undesirable high frequency effects which can cause
trouble with long wires.
Variable Drive Strength
The output impedance of each digital output may be controlled in
7 steps, ranging from 150 ohms (weakest) up to about 21 ohms (strongest).
Adjustable Output Bandwidth
Digital output bandwidth is also programmable, in 4 steps: 50, 100,
150 and 200 MHz.
LED Pin
Pin 13 has an orange LED connected. The LED can be very
convenient to show status info. When pin 13 is used as an input,
the external signal must be able to drive the LED when logic HIGH.
pinMode INPUT_PULLUP should not be used with pin 13.
[H2] Analog Pins
Analog Inputs
14 pins can be used an analog inputs, for reading sensors or other
analog signals. Basic analog input is done with the analogRead function.
The default resolution is 10 bits (input range 0 to 1023), but can be
adjusted with analogReadResolution. The hardware allows up to 12 bits
of resolution, but in practice only up to 10 bits are normally usable
due to noise.
More advanced use is possible with the ADC library.
Analog Range
The analog input range is fixed at 0 to 3.3V. On Teensy 4.0,
the analogReference() function has no effect. The analog pins
are not 5V tolerant. Do not drive any analog pin higher than 3.3 volts.
Analog Comparators
These comparators allow an analog signal to be converted to
digital, with a precisely defined voltage threshold for logic
low versus high.
[H2] Communication
USB Device
Teensy's primary communication is its main USB port, which operatates in USB device /
peripheral mode at 480 Mbit/sec speed. The Teensyduino software supports many different
types of USB communication to your PC or Mac, selected by the Tools > USB Type menu.
Several of these devices types may be used simultaneously.
Serial - Seen by your computer as a COM port (Windows) or serial device (Mac, Linux),
Serial is the default and most commonly used communication type. Bytes are transfered in
both directions at maximum USB speed (baud rate settings are ignored). Teensyduino
has highly optimized code to allow fast USB serial data transfer. While normally
used with the Arduino Serial Monitor, Teensy's USB Serial mode is compatible with
software designed for serial ports, like CoolTerm. On Teensy, the seraild devices is
accessed as "Serial". In the Dual & Triple Serial modes, the additional serial
devices are "SerialUSB1" and "SerialUSB2".
Emulated Serial - The USB Type settings lacking Serial use a HID interface
to emulate serial. In these modes, your PC or Mac will not detect a COM port or serial
device, but you can still use Serial.print() to send text to the Arduino Serial Monitor.
MIDI - Musical Instrument Device. MIDI is often used to interface knobs, sliders
and buttons to music & sound control software. MIDI messages may be sent in both
directions. Teensyduino's MIDI is "class compliant" for compatibility with Macintosh,
Linux, and Windows using only built-in drivers. The MIDIx4 & MIDIx16 modes provide
4 or 16 virtual MIDI ports / cables. The MIDI device name seen by your computer may
be customized.
Audio - Bi-directional stereo audio streaming, seen by your computer as
a USB sound card. Using your computer's sound preferences, programs which play sound
can stream to Teensy, and programs which record or process sound can receive, as if
you were using a USB microphone. USB Audio is meant to be used together with the
Teensy Audio Library,
allowing your computer's sound to integrate with any audio
processing system you design on Teensy.
Keyboard - Standard 104 key USB keyboard. Programs can transmit keystrokes
to your computer, allowing control of nearly any software. Media control keys (play,
pause, volume, etc) may also be used. Many non-US keyboard layouts are supported,
using the Tools > Keyboard Layout menu.
Mouse - A special USB mouse is emulated. Both relative motion of a
normal mouse, and absolute screen position similar to a digitizer pen can be sent
to your computer. Mouse buttons and scroll wheel are also supported.
Joystick - A joystick / game controller with 6 axes (X, Y, Z, Zr, Slider1, Slider2),
32 buttons, and 1 hat switch are supported. The Joystick type is useful for controlling
games or other software which responds to a joystick.
Touchscreen - Emulates a touchscreen capable of detecting up to 10
finger positions.
MTP Disk - Media Transfer, seen by your computer as a phone or camera
which shares files.
Flight Sim - Allows integration with the X-Plane flight simulator
software. Variables and controls within the simulator are linked to variables
in your code running on Teensy.
Raw HID - Allows communicating 64 byte messages with custom written
software on your computer.
TODO: USB host connection photo (right side)
USB Host
A second USB port operates in host mode, which allows you to connect USB
devices to Teensy 4.0, using 2 small surface mount pads on the bottom side.
It is fully independent of the main USB device port, so
USB devices you connect on the host port can simultaeously communicate with
Teensy while Teensy communicates with your computer via the USB device port.
This USB host port runs at 480, 12 or 1.5 Mbit/sec, depending on
the speed if the device you connect. USB hubs may be used to connect many
USB devices. The
USBHost_t36 library
is used for the USB host port.
This USB host cable is normally used to connect a USB device or hub.
Serial
7 serial ports
allow you to connect serial devices, such as MIDI,
GPS receivers, DMX lighting, ESP wireless modules, etc. All 7 serial ports
are fully independent and can transfer data simultaneously. None are
shared with USB (as is done on some Arduino boards). All 7 ports
include FIFOs for better performance at high speed baud rates.
I2C
3 ports for I2C (signals SDA & SCL) allow connecting a wide
variety of chips which use I2C communication. The
Wire library
is used for I2C. Each I2C chip connected
to the same SDA/SCL wires needs a unique address. Multiple I2C ports
allow you to easily use more than 1 chip with the same address. All
I2C ports support 100, 400, and 1000 kbit/sec speeds.
SPI
3 ports for SPI (signals MOSI, MISO, SCK) allow connecting higher
speed chips, SD cards, and displays which use SPI communication.
The SPI library provides
software support for SPI. The
first SPI port features a FIFO for higher sustained speed transfers.
Each SPI chip requires a chip select (CS) signal. Most libraries
using SPI can use any digital pin. The SPI ports provide special
hardware controlled CS pins, which are used by specially optimized
libraries for higher performance.
CAN
3 ports for CAN bus allow connecting to automotive & industrial
control systems which use CAN communication. A CAN transceiver chip
must be added to complete the electrical interface between Teensy 4.1
and the CAN bus.
FlexIO
FlexIO is a highly configurable peripheral, with a sort of build-your-own
ports from a collection of shift registers, timers, logic and state machines.
FlexIO can implement UARTs (serial), I2C, SPI, I2S audio, PWM. Unique
interfaces can also be built, such as the
TriantaduoWS2811 library.
[H2] Displays
ILI9341 Color TFT Display The best supported display for Teensy 4.0
ILI9341 320x240 Color TFT
These displays are the best supported on Teensy 4.0, with multiple high
performance libraries for fast updates speed.
ILI9341 is usually the best
display to use, due to superior software support.
ST7735 Color TFT
These displays are slightly smaller and lower resolution than ILI9341.
Highly optimized libaries for ST7735 & ST7789 allow these to also perform
very well.
SSD1306 Monochrome OLED
These small displays are very popular and well supported.
Other Displays
Almost all displays with Arduino libraries work on Teensy 4.0.
Pixel Pipeline
A special graphic engine can perform color space transformation,
alpha blending and chroma keying, bilinear resize and other operations
one frame buffers. Software support is
SUB-PAGE (https://pjrc.com/store/teensy41.html) Teensy® 4.1
[H1] Teensy® 4.1 Development Board
SparkFun is now manufacturing Teensy products. You can buy directly at SparkFun.
TEENSY41
Teensy USB Board, Version 4.1, With Ethernet Chip
(Ethernet connector kit sold separately)
For prototypes, experimentation, and learning
TEENSY41_NE
Teensy USB Board, Version 4.1, Without Ethernet Chip
For prototypes, experimentation, and learning
TEENSY41_LOCK
Lockable Teensy USB Board, Version 4.1, With Ethernet Chip
(Ethernet connector kit sold separately)
For commercial products and secure applications,
See Code Security for Lockable Teensy details.
TEENSY41_NE_LOCK
Lockable Teensy USB Board, Version 4.1, Without Ethernet Chip
For commercial products and secure applications,
See Code Security for Lockable Teensy details.
Recommended Accessories:
USB Cable,
Pins 24x1 (2),
8MB PSRAM,
USB Host Cable,
Ethernet Kit
[H3] Sections On This Page:
Photos
–
Specifications
–
Software
–
Processor
–
Pins
–
Digital Pins
–
Analog Pins
–
Communication
–
Displays
–
Audio
–
Lights & LEDs
–
Timing
–
Power
–
Memory
–
Programming
–
Code Security
–
Special Features
–
Technical Information
–
Regulatory Compliance
[H2] Photos
[H2] Specifications
ARM Cortex-M7 at 600 MHz
Float point math unit, 64 & 32 bits
7936K Flash, 1024K RAM (512K tightly coupled), 4K EEPROM (emulated)
QSPI memory expansion, locations for 2 extra RAM or Flash chips
USB device 480 Mbit/sec & USB host 480 Mbit/sec
55 digital input/output pins, 35 PWM output pins
18 analog input pins
8 serial, 3 SPI, 3 I2C ports
2 I2S/TDM and 1 S/PDIF digital audio port
3 CAN Bus (1 with CAN FD)
1 SDIO (4 bit) native SD Card port
Ethernet 10/100 Mbit with DP83825 PHY
32 general purpose DMA channels
Cryptographic Acceleration & Random Number Generator
RTC for date/time
Programmable FlexIO
Pixel Processing Pipeline
Peripheral cross triggering
Power On/Off management
Compare detailed specifications of all Teensy models.
[H2] Software
Arduino IDE + Teensy boards add-on
Arduino IDE software with Teensy Boards add-on
is the primary programming environment for Teensy. The
add-on is installed using Arduino's Boards Manager.
Teensy boards add-on includes a large collection of libraries which
are tested and optimized for Teensy. Other libraries may
be installed manually or by Arduino's library manager.
Visual Micro
Visual Micro allows use of
Microsoft Visual Studio to program Teensy and many other boards.
Only Windows is supported. Visual Micro is commercial paid software.
PlatformIO
PlatformIO IDE is
a cross platform development environment with many advanced features.
Windows, Linux and Macintosh are supported.
CircuitPython
CircuitPython
provides a .HEX file which you program onto Teensy 4.1 using
Teensy Loader. Then Teensy appears
to your computer as a USB disk, where copy or save your Python code.
CircuitPython does not fully support all of Teensy 4.1's hardware.
Command Line with Makefile
Makefiles
for non-graphical use are provided with the Teensyduino
installer.
Teensy 4.x: {Arduino}/hardware/teensy/avr/cores/teensy4/Makefile
Teensy LC & 3.x: {Arduino}/hardware/teensy/avr/cores/teensy3/Makefile
To get all required files, install
Arduino IDE 1.8.19
and then run the Teensyduino
installer.
You don't need to use Arduino. Simply installing gives you all the files
and tools in the folder structure the Makefile expects.
[H2] Processor
Performance
ARM Cortex-M7 brings many powerful CPU features to a true real-time microcontroller
platform. CPU performance is many times faster than typical 32 bit microcontrollers.
Dual Issue Superscaler Architecture
Cortex-M7 is a dual-issue superscaler processor, meaning M7 can execute 2 instructions
per clock cycle, at 600 MHz! Of course, executing 2 simultaneously depends upon the compiler
ordering instructions and registers. Initial benchmarks have shown C++ code compiled by
Arduino tends to achieve 2 instructions about 40% to 50% of the time while performing
numerically intensive work using integers and pointers.
Floating Point Unit
The FPU performs 32 bit float and 64 bit double precision math in hardware.
32 bit float speed is approximately the same speed as integer math. 64 bit
double precision runs at half the speed of 32 bit float.
Tightly Coupled Memory
Tightly Coupled Memory is a special feature which allows Cortex-M7 fast single cycle
access to memory using a pair of 64 bit wide buses. The ITCM bus provides a 64 bit path to
fetch instructions. The DTCM bus is actually a pair of 32 bit paths, allowing M7 to
perform up to 2 separate memory accesses in the same cycle. These extremely high speed
buses are separate from M7's main AXI bus, which accesses other memory and peripherals.
Cache
Two 32K caches, one for instructions and one for data, are used to speed
up repetitive access to non-TCM memory.
Branch Prediction
Cortex-M7 is the first ARM microcontroller to use branch prediction.
On Cortex-M4 & earlier, loops and other code which much branch take 3 clock cycles. With M7, after a loop has executed a few times, the branch prediction removes that overhead, allowing the branch instruction to run in only a single clock cycle.
Digital Signal Processing
DSP extension instructions accelerate signal processing,
filters and Fourier transform.
The Audio library
automatically makes uses of these DSP instructions.
[H2] Pins
Teensy 4.1 has a total of 55 input/output signal pins. 42 are easily accessible
when used with a solderless breadboard.
This pinout reference card comes with Teensy 4.1.
Pinout Card Files:
Front Side (PDF) /
Back Side (PDF)
Cards printed before September 2021 incorrectly showed pin 53 with PWM.
A larger, more detailed pinout chart by KurtE is also available on the forum.
[H2] Digital Pins
Digital Input Pins
Digital pins
may be used to receive signals. Teensy 4.1 pins default to
INPUT most with a "keeper" resistor.
Teensy 4.1 pins accept 0 to 3.3V
signals. The pins are not 5V tolerant. Do not drive any digital pin higher
than 3.3V.
Input Pullup / Pulldown / Keeper Resistors
All digital pins have optional pullup, pulldown, or keeper resistors.
These are used to keep the pin at logic HIGH or logic LOW or the same
logic level when it is not being
actively driven by external circuity. Normally these resistors are used
with pushbuttons & switches.
The pinMode function with INPUT_PULLUP or INPUT_PULLDOWN must be used to
configure these pins to input mode with the built-in resistor.
Pin Change Interrupts
All digital pins can detect changes. Use attachInterrupt to cause
a function to be run automatically. Interrupts should only be used for
clean signals. The
Bounce library
is recommended for detecting changes
on pushbuttons, switches, and signals with noise or mechanical chatter.
Digital Output Pins
All digital pins can act at output. The pinMode function with
OUTPUT or OUTPUT_OPENDRAIN must be used to configure these pins to output
mode. The digitalWrite and digitalToggle functions are used to control
the pin while in output mode. Output HIGH is 3.3V. The recommended
maximum output current is 4mA.
Pulse Width Modulation (PWM)
35 of the digital pins support
Pulse Width Modulation (PWM),
which can be used to control
motor speed, dim lights & LEDs, or other uses where rapid pulsing
can control average power. PWM is controlled by the analogWrite function.
22 groups of PWM can have distinct frequencies, controlled by the
analogWriteFrequency function.
Slew Rate Limiting
This optional feature greatly reduces high frequency noise when
long wires are connected to digital output pins. The rate of voltage
change on the pin is slowed. The extra time is only nanoseconds, which
is enough to lower undesirable high frequency effects which can cause
trouble with long wires.
Variable Drive Strength
The output impedance of each digital output may be controlled in
7 steps, ranging from 150 ohms (weakest) up to about 21 ohms (strongest).
Adjustable Output Bandwidth
Digital output bandwidth is also programmable, in 4 steps: 50, 100,
150 and 200 MHz.
LED Pin
Pin 13 has an orange LED connected. The LED can be very
convenient to show status info. When pin 13 is used as an input,
the external signal must be able to drive the LED when logic HIGH.
pinMode INPUT_PULLUP should not be used with pin 13.
[H2] Analog Pins
Analog Inputs
18 pins can be used an analog inputs, for reading sensors or other
analog signals. Basic analog input is done with the analogRead function.
The default resolution is 10 bits (input range 0 to 1023), but can be
adjusted with analogReadResolution. The hardware allows up to 12 bits
of resolution, but in practice only up to 10 bits are normally usable
due to noise.
More advanced use is possible with the ADC library.
Analog Range
The analog input range is fixed at 0 to 3.3V. On Teensy 4.1,
the analogReference() function has no effect. The analog pins
are not 5V tolerant. Do not drive any analog pin higher than 3.3 volts.
Analog Comparators
These comparators allow an analog signal to be converted to
digital, with a precisely defined voltage threshold for logic
low versus high.
[H2] Communication
USB Device
Teensy's primary communication is its main USB port, which operatates in USB device /
peripheral mode at 480 Mbit/sec speed. The Teensyduino software supports many different
types of USB communication to your PC or Mac, selected by the Tools > USB Type menu.
Several of these devices types may be used simultaneously.
Serial - Seen by your computer as a COM port (Windows) or serial device (Mac, Linux),
Serial is the default and most commonly used communication type. Bytes are transfered in
both directions at maximum USB speed (baud rate settings are ignored). Teensyduino
has highly optimized code to allow fast USB serial data transfer. While normally
used with the Arduino Serial Monitor, Teensy's USB Serial mode is compatible with
software designed for serial ports, like CoolTerm. On Teensy, the seraild devices is
accessed as "Serial". In the Dual & Triple Serial modes, the additional serial
devices are "SerialUSB1" and "SerialUSB2".
Emulated Serial - The USB Type settings lacking Serial use a HID interface
to emulate serial. In these modes, your PC or Mac will not detect a COM port or serial
device, but you can still use Serial.print() to send text to the Arduino Serial Monitor.
MIDI - Musical Instrument Device. MIDI is often used to interface knobs, sliders
and buttons to music & sound control software. MIDI messages may be sent in both
directions. Teensyduino's MIDI is "class compliant" for compatibility with Macintosh,
Linux, and Windows using only built-in drivers. The MIDIx4 & MIDIx16 modes provide
4 or 16 virtual MIDI ports / cables. The MIDI device name seen by your computer may
be customized.
Audio - Bi-directional stereo audio streaming, seen by your computer as
a USB sound card. Using your computer's sound preferences, programs which play sound
can stream to Teensy, and programs which record or process sound can receive, as if
you were using a USB microphone. USB Audio is meant to be used together with the
Teensy Audio Library,
allowing your computer's sound to integrate with any audio
processing system you design on Teensy.
Keyboard - Standard 104 key USB keyboard. Programs can transmit keystrokes
to your computer, allowing control of nearly any software. Media control keys (play,
pause, volume, etc) may also be used. Many non-US keyboard layouts are supported,
using the Tools > Keyboard Layout menu.
Mouse - A special USB mouse is emulated. Both relative motion of a
normal mouse, and absolute screen position similar to a digitizer pen can be sent
to your computer. Mouse buttons and scroll wheel are also supported.
Joystick - A joystick / game controller with 6 axes (X, Y, Z, Zr, Slider1, Slider2),
32 buttons, and 1 hat switch are supported. The Joystick type is useful for controlling
games or other software which responds to a joystick.
Touchscreen - Emulates a touchscreen capable of detecting up to 10
finger positions.
MTP Disk - Media Transfer, seen by your computer as a phone or camera
which shares files.
Flight Sim - Allows integration with the X-Plane flight simulator
software. Variables and controls within the simulator are linked to variables
in your code running on Teensy.
Raw HID - Allows communicating 64 byte messages with custom written
software on your computer.
USB Host
A second USB port operates in host mode, which allows you to connect USB
devices to Teensy 4.1. It is fully independent of the main USB device port, so
USB devices you connect on the host port can simultaeously communicate with
Teensy while Teensy communicates with your computer via the USB device port.
This USB host port runs at 480, 12 or 1.5 Mbit/sec, depending on
the speed if the device you connect. USB hubs may be used to connect many
USB devices. The
USBHost_t36 library
is used for the USB host port.
This USB host cable
is normally used to connect a USB device or hub.
An alternate USB Host library
with GPL3 license is also available, for projects which fully release open source
under GPL3 terms.
Serial
8 serial ports
allow you to connect serial devices, such as MIDI,
GPS receivers, DMX lighting, ESP wireless modules, etc. All 8 serial ports
are fully independent and can transfer data simultaneously. None are
shared with USB (as is done on some Arduino boards). All 8 ports
include FIFOs for better performance at high speed baud rates.
I2C
3 ports for I2C (signals SDA & SCL) allow connecting a wide
variety of chips which use I2C communication. The
Wire library
is used for I2C. Each I2C chip connected
to the same SDA/SCL wires needs a unique address. Multiple I2C ports
allow you to easily use more than 1 chip with the same address. All
I2C ports support 100, 400, and 1000 kbit/sec speeds.
SPI
3 ports for SPI (signals MOSI, MISO, SCK) allow connecting higher
speed chips, SD cards, and displays which use SPI communication.
The SPI library provides
software support for SPI. The
first SPI port features a FIFO for higher sustained speed transfers.
Each SPI chip requires a chip select (CS) signal. Most libraries
using SPI can use any digital pin. The SPI ports provide special
hardware controlled CS pins, which are used by specially optimized
libraries for higher performance.
CAN
3 ports for CAN bus allow connecting to automotive & industrial
control systems which use CAN communication. A CAN transceiver chip
must be added to complete the electrical interface between Teensy 4.1
and the CAN bus.
FlexIO
FlexIO is a highly configurable peripheral, with a sort of build-your-own
ports from a collection of shift registers, timers, logic and state machines.
FlexIO can implement UARTs (serial), I2C, SPI, I2S audio, PWM. Unique
interfaces can also be built, such as the
TriantaduoWS2811 library.
Ethernet
Teensy 4.1 contains an Ethernet controller and Ethernet PHY chip.
To connect an Ethernet cable, only this
RJ45 magjack kit
is needed.
Ethernet can also be
implemented using the
Wiznet W5500 and
SUB-PAGE (https://pjrc.com/store/teensy3_audio.html) PJRC Store
[H1] Audio Adaptor Boards for Teensy SparkFun is now manufacturing Teensy products. You can buy directly at SparkFun. TEENSY4_AUDIO Audio board for use with Teensy 4.0 - 4.1, (Rev D) This audio adaptor lets you easily add high quality 16 bit, 44.1 kHz sample rate (CD quality) audio to your projects with Teensy 3.0, 3.1, 3.2, 3.5, 3.6 (Rev C), or 4.0, 4.1 (Rev D, D2). The older versions can be used with Teensy 4.0 by wires or an adaptor PCB. All versions of the audio shield support stereo headphone and stereo line-level output, and also stereo line-level input or mono microphone input. The Teensy Audio Library lets you use the input and output simultaneously together with a toolkit of audio processing objects, to easily create all types of sophisticated audio applications. You can play multiple sound files, create synthesized waveforms, apply effects, mix multiple streams and output high quality audio to the headphones or line out pins. Teensy 3.x have the Cortex-M4 DSP instructions which provide plenty of computational power for real-time FFT (spectrum analysis), opening up the possibility of creating advanced sound-reactive projects. Teensy 4.x with Cortex-M7 provides even more DSP capability, allowing sophisticated synthesis applications to create many simultaneous "voices" or effects. Two of these 14x1 pins can be used to easily soolder the Teensy 3.x and audio board together. A 14 pin socket and 14 pin header can be used to make them plug together. An optional Thumbwheel Potentiometer can be added for volume or control an audio parameter. FunctionTeensy 4.x PinsRev D, D2Teensy 3.x PinsRev CShareable Audio Data7, 8, 20, 21, 239, 11, 13, 22, 23 Audio Control18, 1918, 19SDA, SCL (other I2C chips) Volume Pot15 (A1)15 (A1)- SD Card10, 11, 12, 137, 10, 12, 14MOSI, MISO, SCK (other SPI chips) Memory Chip6, 11, 12, 136, 7, 12, 14MOSI, MISO, SCK (other SPI chips) Front SideRev D2 (for Teensy 4.x)Front SideRev D (for Teensy 4.x)Front SideRev C (for Teensy 3.x) Back SideRev D2 (for Teensy 4.x)Back SideRev D (for Teensy 4.x)Back SideRev C (for Teensy 3.x) Mechanical drawing and Eagle library. Estimated power consumption. 3D CAD models. [H2] Optional Add-Ons This photo shows a Teensy 3.1 soldered under the audio adaptor using two 14x1 pins. The optional volume knob and line in/out header are also added. [H2] Signals to Teensy The audio chip, part number SGTL5000, connects to Teensy using 7 signals. The I2C pins SDA and SCL are used to control the chip and adjust parameters. Audio data uses I2S signals, DIN (which the audio shield uses to make analog signals at the headphones and line out) and DOUT (which the audio shield creates from reading the analog signals at line in or microphone), and 3 clocks, LRCLK (44.1 kHz), BCLK (1.41 or 2.82 MHz) and MCLK (11.29 MHz). All 3 clocks are created by Teensy. Most I2S software on Teensy uses 64 bits per LRCLK (BCLK=2.82 MHz), where the upper 16 bit of each 32 bit word are used and the lower 16 bits are ignored. However, some I2S support uses only 32 bits per LRCLK (BCLK=1.41 MHz). Refer to the Design Tool documentation for each I2S input or output for details. The SGTL5000 listens for clocks. All its clock pins are inputs. 5 additional signals can optionally connect memory to store sounds and 1 optional analog signal can connect a thumbwheel pot to allow software which reads the signal with analogRead() and use the readings to control any audio parameter, such as volume. While labeled "Vol" and most commonly used to control volume, the actual purpose of this analog pin is controlled by software written to Teensy. Rev D, D2 (Teensy 4.0)Rev C (Teensy 3.x) Audio ShieldSignalRev D, D2(Teensy 4.x)Rev C(Teensy 3.x)Required ForFunction MCLK23(MCLK1)11(MCLK)AudioAudio Master Clock, 11.29 MHz BCLK21(BCLK1)9(BCLK)AudioAudio Bit Clock, 1.41 or 2.82 MHz LRCLK20(LRCLK1)23(LRCLK)AudioAudio Left/Right Clock, 44.1 kHz DIN7(OUT1A)22(OUT)Audio OutputAudio Data from Teensy to Audio ShieldGoes to both headphone jack and Line-Out pins DOUT8(IN1)13(IN)Audio InputAudio Data from Audio Shield to TeensyComes from either Microphone or Line-In pins SCL1919Audio ConfigControl Clock (I2C) SDA1818Audio ConfigControl Data (I2C) SCK1314Optional DataSD or MEMData Storage (SPI) Clock MISO1212Optional DataSD or MEMData Storage (SPI) from SD/MEM to Teensy MOSI117Optional DataSD or MEMData Storage (SPI) from Teensy to SD/MEM SDCS1010Optional DataSD CardChip Select (SPI) for SD Card MEMCS66Optional DataMEM ChipChip Select (SPI) for Memory Chip Vol15 / A115 / A1Optional KnobVolume Thumbwheel (analog signal) The SD socket is accessed with 4 SPI pins. For Rev C used with Teensy 3.2, 3.5, 3.6, SCLK and MOSI are used at alternate locations. See the audio library examples for details on how to select these different pins. The SD card is useful for playing music. Sandisk and other good quality SD cards are capable of playing 2 WAV files simultaneously. Wires for MCLK, BCLK, LRCLK, TX & RX should be kept short. The audio shield is meant to connect to Teensy through short pins. Wires can be used, but wires must be short to avoid problems. The line in/out header uses a pinout compatible with the AC97 audio header on PC motherboards. The front panel cables from most PCs can be connected, or wires can be soldered directly to the pins. [H3] Schematic, Rev D2 In January 2023, Rev D2 was created due to shortages on the 32 pin version of SGTL5000 and the original SD socket. Rev D2 is functionally the same as Rev D, except the the I2C address selection pads. The I2C address is not configurable on the 20 pin SGTL5000 chip. [H3] Schematic, Rev D In September 2019, Rev D was created for Teensy 4.0. The circuitry is the same as Rev C, but the I2S digital audio signals and SPI signals for the SD card are routed to the pins Teensy 4.0 uses. Forum user bmo created a Kicad Symbol and Footprint for the Rev D Audio Shield. [H3] Schematic, Rev C In early 2019, a 100 ohm resistor was added to the MCLK signal. [H3] Schematic, Rev B In January 2015, small improvements were added. The 1.0 µF capacitors were increased to 2.2 µF, to improve performance for sub-audible and extremely deep base sounds. 10K pullup resistors were added to pins 6 and 10. Solder pads were added to the I2S transmit and receive lines, and the I2C address configuration pin. Teensy 3.1 & 3.2 are theoretically capable of quad channel I2S audio. These pads are intended to allow a second audio board to be used, for 4 channel audio input and output! (TODO: 4 channel support has not yet been tested with Teensy 3.5 or 3.6) Update: the Teensy Audio Library now supports quad channel output. For details, see File > Examples > Audio > HardwareTesting > SGTL5000 > QuadChannelOutput. Sparkfun has great wiring instructions for 4 channel audio. [H3] Schematic, Rev A [H2] Optional Memory Chip(s) A W25Q128JV or W25Q128FV flash memory chip may be added on the bottom side. The Teensy Audio Library can play audio clips from this memory, using the SerialFlash library. This flash memory has much lower access latency than SD cards, which allows many sounds to be played simultaneously. Future versions of the audio library may also use this low latency flash memory for wavetable synthesis. Alteratively, a 23LC1024 RAM memory chip may be added. The Teensy Audio Library can use the RAM chip for a multi-tap delay line, up to 1.5 seconds. See this demo video for details. [H2] Recommended SD Card Most SD cards are optimized for sequential access, where a camera or camcorder reads or writes a single large file. All SD cards work well for playing a single WAV file at a time. Cards with "A1" or "A2" rating are likely to have better performance for use with Teensy. Since Teensyduino 1.54, the SD library supports up to 2 TB size. Teensyduino 1.53 and earlier only supported cards up to 32GB size. Very old cards smaller than 8GB may have trouble with the built in SD socket on Teensy 3.5, 3.6, 4.1, but usually with fine with the SPI-based socket on the audio shield. The audio library includes a simple benchmark to test SD cards. Open it from File > Examples > Audio > HardwareTesting > SdCardTest.
🛡️ Trust Signals — reviews, proof links, trust-theatre flag (Trust & Proof)
| Page | Reviews | Proof links |
|---|---|---|
| / (home) | 1 | 0 |
| /store/teensy40.html | 1 | 0 |
| /store/teensy41.html | 1 | 0 |
| /store/teensy3_audio.html | 1 | 0 |
🔗 Identity & Technical Layer — schema JSON-LD: identity chains, entity gaps (Identity & Authority)
Your Diagnosis
Before revealing the machine’s verdict, predict the BS score for each signal. Higher = more BS (more fluff, less verifiable substance). Drag each slider, then submit to compare your judgment against the engine.
Stuck? Reveal the heuristic lens — how the deterministic page-auditor reads each signal (no AI, pure pattern rules)
These are the structural rules a local, deterministic auditor applies — the same lens you can use to judge each signal. They describe what to look for, not this company’s result.
Classify each sentence as substantive or hollow. Grounding markers — numbers, currencies, dates, technical units, named entities — outweigh marketing adjectives. When fluff sits right next to hard evidence, the fluff is forgiven.
Pull the main entities out of the H1, then check whether they actually recur through the body. A page that announces one thing and then talks about another drifts. Headings with no real sentences underneath read as pseudo-substance.
Count trust words (review, testimonial, rating, verified) against real outbound proof links (Google, Trustpilot, Clutch, G2, Yelp). Lots of trust language with zero verification links is trust theatre. Unlinked logo galleries count against it.
Look at how much sentence length varies. Natural writing varies its rhythm; templated or mass-produced copy is statistically uniform. Very low variation reads as commodity content — unless unique named entities break the pattern.
Inspect the JSON-LD. Is there an Organization or Person schema, and does it carry sameAs links to real external profiles (LinkedIn, socials)? Missing schema or no identity declaration signals an anonymous entity.
Want to apply this lens yourself? The free BS Indicator Chrome extension runs these heuristic checks live on any page. Bear in mind it is a single-page, deterministic tool — it relies only on pattern rules for the page in front of it and does not perform the cross-page semantic correlation this audit uses, so its readout is a starting lens, not the full verdict.
Based on 2033 businesses audited.
PJRC has 25.4 points less BS than the average for Industrial, Manufacturing & Engineering.
Industrial, Manufacturing & Engineering BS: PJRC (pjrc.com)
This is an engineering-first repository that prioritizes documentation over persuasion. It contains the lowest level of bullshit possible for a commercial entity, functioning more like a technical manual than a marketing tool.
Implement Organization and Person schema to link Paul & Robin to their professional footprints. Update the temporal markers for schematics and copyright dates to avoid the appearance of stale content (current Rev dates are 41 months old). Add outbound links to independent community benchmarks or GitHub repositories to satisfy the proof_links_count requirement.
The site aligns perfectly with the Industrial, Manufacturing & Engineering category, specifically focusing on micro-electronics and embedded systems. The content is characterized by extreme technical specificity regarding component specifications and manufacturing partnerships (e.g., SparkFun).
“The score of 14 is driven primarily by technical SEO omissions (Identity and Authority) and a technical flag for review verification. The content itself contains 0% fluff and 100% substance, making it a benchmark for low-BS engineering websites.”
This training module utilizes a snapshot of public data from PJRC, captured on May 30, 2026, to demonstrate how machine logic evaluates different types of business narratives.
Purpose: This data is presented under “Fair Use” / “Educational Exception” for the purpose of forensic semantic analysis, allowing users to compare human intuition against machine-generated evaluations.
Notice to PJRC: This analysis is part of a non-adversarial audit conducted by 1 Euro SEO. The results provided by 1EuroSEO are intended as professional feedback to help improve any website’s machine-readability and authority signals. The 1EuroSEO BS Detection Tool is a free tool, and anyone can test any company to see how their content is interpreted by AI models.
Any company can use the insights for free and improve its voice by comparing it to industry clichés or competitors. When a company has updated its content, it can always submit a new audit request, which will be reflected in a new current score.
To all users: You are encouraged to visit the live site at https://pjrc.com to view the most current version of its content and learn from the source what this company is about and what it offers.