Download Teensyduino, Version 1.59
Arduino 2.0.x Software Development
First download the Arduino 2.0.x IDE from Arduino's website.To install Teensy on Arduino IDE 2.0, click File > Preferences (on MacOS, click Arduino IDE > Settings). In "Additional boards manager URLs", copy this link:
https://www.pjrc.com/teensy/package_teensy_index.json
In the main Arduino window, open Boards Manager by clicking the left-side board icon, search for "teensy", and click "Install".
Windows: If you get precompile_helper: file does not exit, close any open Teensy Loader window, then use Boards Manageer to remove and install Teensy 1.59.0.
Stand Alone Files
- Teensy Loader - Load already-compiled .HEX or .EHEX onto your Teensy
- Linux udev rules - Proper setup for USB devices on Linux systems
- Windows Serial Installer - For USB Serial access on old Windows XP, Vista, 7, 8.
Arduino 1.8.x Software Development
Teensyduino is a software add-on for the Arduino software.
- Macintosh Complete Software
Supports: Catalina, Big Sur, Monterey, Ventura, Sonoma - Macintosh Installer for Arduino on Older Macs
Supports: Mojave - Linux Installer (X86 32 bit)
- Linux Installer (X86 64 bit)
- Linux Installer (ARM 32 bit / Raspberry Pi)
- Linux Installer (ARM 64 bit / AARCH64 / Jetson TX2)
- Windows XP / 7 / 8 / 10 / 11 Installer
Teensyduino 1.59 supports Arduino versions 1.8.5 and 1.8.9 and 1.8.13 and 1.8.15 and 1.8.16 and 1.8.19.
Future versions of Teensyduino will drop support for Arduino 1.8.15
Arduino 2.0.4 and later are supported by use of Arduino Boards Manager.
On Windows, the Arduino installer and ZIP are supported, but the Windows store "app" is not.
Windows 10 & 11 provide much better USB support than Windows 7, 8 & XP.
On Linux, PJRC tests X86 & AARCH64 on Ubuntu and ARM32 on Raspbian. Other distros may work, but are not supported.
Windows Installation
- Download and run Arduino's Windows Installer, for Windows 7 and up.
Note: The Arduino "Windows app" from the Microsoft Store is incompatible with Teensyduino. - Download and run the Teensyduino installer.
- (optional) Check for anti-virus performance problems.
Macintosh Installation
- Download Teensyduino "Macintosh Complete Software".
Note: This download is a complete copy of all software. No separate installer is used.
- On first use, you must allow access to your Documents folder.
- (optional) If using multiple monitors, uninstall old Java if the software crashes.
Linux Installation
- Download the Linux udev rules (link at the top of this page) and copy the file to /etc/udev/rules.d.
sudo cp 00-teensy.rules /etc/udev/rules.d/
- Download and extract one of Arduino's Linux packages.
Note: Arduino from Linux distro packages is not supported. - Download the corresponding Teensyduino installer.
- Run the installer by adding execute permission and then execute it.
chmod 755 TeensyduinoInstall.linux64 ./TeensyduinoInstall.linux64
Windows Non-Admin Installation
- Download Arduino's Windows ZIP file for non admin install.
- Extract the ZIP file, and remember the extracted location.
- Download the Teensyduino installer. Save the file, do not run.
- Rename TeensyduinoInstall.exe to Teensyduino.exe.
Note: Removing "Install" from the name causes Windows to treat the installer differently!
- Run the renamed Teensyduino installer. You will need to select the extracted Arduino location.
- (optional) Check for anti-virus performance problems.
Old Macintosh Installation
- Download Arduino 1.8.5 from Arduino's Previous IDE Releases Page.
- Move Arduino to Applications.
- Run Arduino and confirm running software downloaded from the internet.
Note: This must be done before installing Teensyduino, to avoid a corrupted install.
- Download and run the Teensyduino Installer. It only works on MacOS versions 10.7 to 10.14.
Version 1.08
Support for Arduino 1.0.1-rc2Add Flight Sim Controls USB Type
Add function keys F13 to F24 to USB Keyboard
Add Canadian Multilingual keyboard layout
Add libraries AccelStepper, AltSoftSerial, Encoder, FlexiTimer2, LowPower, Ping, ShiftPWM
Minor fixes and changes for compatibility with libraries
Version 1.07
Serial + Keyboard + Mouse + Joystick typeRaw HID available() function
Fix Ethernet library UDP support on 0022 & 0023
Windows installer: faster detection of serial driver already installed
Version 1.06
Support for Arduino 1.0German Mac keyboard layout
(experimental) Raw HID USB type
Version 1.05
Add media keys. See File > Examples > Teensy > USB_Keyboard > MediaButtonsImprove elapsedMillis & elapsedMicros.
Fix small delayMicroseconds at 1 & 2 MHz clock.
Version 1.04
Add elapsedMillis & elapsedMicros.Fix slight timekeeping error in millis().
Fix errors with avr-gcc 4.5 on Fedora 15 (thanks to Ward Wouts).
Version 1.03
Support Arduino 0023More minor fixes in Print
MIDI improvements, thanks to Sebastian Tomczak & Dave Sorlien
Version 1.02
Minor fixes in PrintSupport CapacitiveSensor library
Version 1.01
Support Arduino 1.0-rc2Fix pulseIn
Fix printing negative floats
Improve Disk claim/release, add pause/resume API
Add compatibility functions for Leonardo Mouse API
Improve serial emulation on Linux
Version 1.00
Fix obscure bug in pinModeFix slow memory leak on Linux
Version 0.99
Support Arduino 1.0-rc1Add more keyboard mappings
Add pushbutton examples using Bounce library
Version 0.98
Fix Ethernet on 1.0-beta4Fix slow startup of serial monitor in Mac
Fix compile speedups for Mac and Windows
Version 0.97
Support Arduino 1.0-beta4, drop old 0018 & 0021Fix stall of compile/upload when auto-launching Teensy Loader
Many small fixes
Version 0.96
USB Joystick typeImproved keyword coloring
(not working yet) Disk.claim() to allow using SD library with USB Disk type
Serial using Stream class
MIDI 2.6 library included
Try to avoid stalling millis() with USB Disk and heavy PC access
Several minor bug fixes
Version 0.95
Installs 3rd Party Arduino LibrariesInstalls Teensy Loader
More Examples, in File > Examples > Teensy
Version 0.94
Support for Arduino version 0022USB MIDI type added
International USB Keyboard layouts
String class bug fixes
Rework boards.txt menu syntax (requested by Arduino devs, issue #257)
Fixed Ethernet with 0021 & 0022
Version 0.9
Support for Arduino versions 0019 and 0021USB Disk type added, supporting both SD Flash and internal flash
Fix Arduino bugs #29, #78, #209, #235
Emulate Arduino reboot behavior with Serial Monitor window is opened
Windows - directory drop-down now says "[all drives]", instead of just blank space
Compatibility with 0019, String class, improved delay(), stream class, shiftIn()
Compatibility with 0018, Tone() and noTone()
USB Serial: ignore break signal (some buggy programs send it, eg winbatch)
Windows - Teensyduino installer now included Serial driver install
USB Type and CPU Speed menus added inside Tools menu
Version 0.8B
Fix rare digitalWrite and digitalRead interference bugAdd A0, A1, A2... for analogRead(A0) - Arduino 0019 compatibility
Version 0.8
Add support for Teensy++ 2.0Add support for Arduino 0018
Fix ethernet library
Add Serial.end() - shuts off and disconnects USB, saves power!
Automatically shut down USB when possible
Serial.begin() attempts to wait until PC/Mac has initialized USB
Add Uart.end()
Remove Teensy_Firmata - StandardFirmata branch now supports Teensy
Optimize most functions
Minor bug fixes
Version 0.7
Better error checking when installing filesDo not require rxtx lib on linux, which is removed on 64 bit systems
Fix USB Keyboard/Mouse on Teensy 1.0
Support 8, 4, 2, 1 MHz if specified in boards.txt
Use ADC in high speed mode, makes analogRead() twice as fast
Use lower power idle mode inside delay()
Minor bugs fixed
Version 0.6
Add Keyboard and Mouse board typesAdd support for Teensy 2.0 (ATMEGA32U4 chip)
Add support for 0017.
Version 0.5
Add Firmata exampleAdd USB serial extensions to Serial
Add support for 0016.
Fix Serial.available()
Fix HardwareSerial()
Check Arduino version, do not install onto wrong version!
Version 0.4
Library fixes included, compatible with Sanguino
Add support for 0015.
Update core with improvements and bug fixes from 0012 to 0015.
Many small improvements.....
Version 0.3
Version 0.3 adds support for the Teensy++.Pin names are now defined automatically. PIN_B0, PIN_C7, etc.
Add support for 0014 (0013 on linux because 0014 was never released on linux).
Version 0.2
Change API to use Serial.print to talk to USB.Fix pinout
Many bugs fixed
Version 0.1
Initial releaseKnown Issues
Windows: Windows Defender and many anti-virus programs can dramatically slow down code compilation. A modern PC should take less than 10 seconds to verify simple programs. If Arduino takes 1 minute or longer to verify simple programs, that is a sure sign anti-virus software is slowing you down.
1) Open Windows Defender
2) Click on "App & browser control"
3) Click on "Exploit protection settings"
4) Click on "Program settings"
5) Click on "Add program to customize" & specifically select "Choose exact file path"
6) Navigate to the location where your Arduino IDE is installed (typically "C:\Program Files (x86)\Arduino"), highlight the "arduino.exe" executable & click "Open"
7) Activate the "Override system settings" checkbox for every option & verify that they are all turned off (make sure to scroll down the list to get everything)
8) Click "Apply" to complete the process.
Special thanks to Mark J Culross (KD5RXT) for contributing these Windows Defender instructions.
Macintosh: Teensyduino requires access to your Documents folder, because Arduino stores installed libraries and boards in Documents/Arduino. If you have disallowed access to Documents, Teensyduino may fail to open. To solve this problem, open System Preferences, click Security & Privacy, and select Files and Folders. Then find Teensyduino on the list of applications which have requested access to your Documents Folder. This box must be checked for Teensyduino to work.
All: Serial + Keyboard + Mouse + Joystick requires Mac OS X Lion, or Windows XP SP3, Vista SP1, or Windows 7, or Linux 2.6.18 or later. Mac Snow Leopard and Windows XP SP2 do not support Serial when combined with other types.
Windows & Linux: When using the Serial Monitor with the USB Keyboard/Mouse option, sometimes a "teensy gateway communication error" can occur. Close and reopen the serial monitor to regain communication.
Windows: You may need to run the Teensyduino installer as administrator for it to install all files. Some anti-virus programs can also interfere with installation and must be temporarily disabled. A Norton AntiVirus Workaround was sent by Carl B.
All: The Upload button can only work if your Teensy is running a previously loaded sketch. If your board can not be rebooted automatically, a message will ask you to press the reset button.
Mac OS X: When you run Arduino after installing Teensyduino, the Leopard's firewall will recognize the program has changed and will ask again if you wish to allow internet connection (Arduino checks for updates). Teensyduino does not "phone home", but Arduino does! TODO: is this still an issue with recent versions of Arduino??
Linux: By default, the TeensyduinoInstall.linux32 and TeensyduinoInstall.linux64 files will not have execute permission enabled when saved by most web browsers. Use a file manager or type "chmod 755 TeensyduinoInstall.linux32" in a terminal to make the file executable. Then you can run it. In a terminal, type "./TeensyduinoInstall.linux32". Replace "32" with "64" if using the 64 bit version, or "arm" if using the ARM (Raspberry Pi) version.
Linux: Teensyduino only works with Arduino from www.arduino.cc. The modified version provided by Ubuntu is not (yet) supported.
Linux (especially Gentoo): Arduino uses the AVR toolchain provided by your system. As of December 2011, Gentoo's avr-gcc is horribly broken. Some newer Fedora (avr-gcc 4.6.x) also have trouble. Faulty AVR toolchains are a persistent problem on Linux.
Please report bugs on this forum. Try to include enough information to reproduce the problem.
Credits
The Teensyduino installer is based in part on the work of the FLTK project (http://www.fltk.org).Numerous files covered by various open source licenses are installed by Teensyduino. Nearly all are provided in source code form. Please refer to the comments within each file for copyright and licensing information.
Files installed in compiled binary format that are based on code licensed under the GNU General Public License have their corresponding source code installed in a "src" directory. On Macintosh, use control-click on Arduino and select "Show Package Contents" from the menu.
The ARM toolchain source code (with PJRC's patches) is available on GitHub.