Blog Posts

Debugging with Visual Micro

Visual Micro, creators of a Visual Studio extension that enables Arduino development in the powerful Microsoft IDE, have created a serial debugging tool compatible with the Teensyduino platform.

The plug-in allows you to use breakpoints for step-by-step execution, monitor execution time between breakpoints, and set conditional breakpoints based on data or hit count.

The software, which works with Teensy boards, also allows variable monitoring and value setting at runtime, automatic visual pin monitoring, and easy-to-use charting. It works by injecting serial statements based on breakpoint configuration, when in debug mode. More information can be found on the Visual Micro web site, and a walkthrough of installation and setup can be found in the video below.

Mini MIDI Controller

Nick Culbertson, aka Moby Pixel on YouTube, recently acquired a Teensy 4.0 and some tiny breadboards. Nick liked the aesthetics of the Teensy/tiny combo so much that it turned into a “world’s smallest MIDI controller” attempt!

Nick had been eyeing Teenage Engineering’s new EP-133 K.O. II sampler, but decided to put some of those funds toward a Teensy DIY project instead (note that the K.O. costs about as much as twelve and a half Teensy 4.0s, so there should be enough left for nearly a dozen more DIY Pocket Operators!). The code uses the Control Surface Arduino library for building MIDI controllers and control surfaces, plus USB MIDI. A couple of buttons and jumper wires complete the hardware setup. Two buttons doesn’t give a ton of expression, but the sound that Nick creates with them in the video is pretty impressive — and then, for an even more diminutive setup, the breadboard is removed, and the Teensy’s headers themselves are played with a jumper wire, creating the ultimate minimalist MIDI rig! See it in action below, and grab the code from Nick’s GitHub gist.

Fancy PC Fan Controller

CryHam, creator of the Kacey and KC4 Keyboard Controllers, has created the “Fancy” PC fan controller based on the same code.

The device can regulate seven analog or PWM fans, with RPM detection and display, automated fan power adjustment based on DS18B20 temperature sensors, and an ST7735 1.8″ color TFT LCD display to show the GUI and graphs. Code is available on GitHub, and more detail can be found on CryHam’s web site.

LMN-3 Open-Source DAW

What do you get when you cross a Raspberry Pi 4 with a Teensy 4.1 with a Teenage Engineering OP-1? Perhaps something like the LMN3 from Fundamental Frequency!

This self-described “open source DAW-in-a-box” leverages the Pi-based Tracktion Engine DAW tools with a Pimoroni HyperPixel 4.0 display, and a Teensy interfacing with the hardware layer.

An extremely impressive GitHub organization houses the DAW software, Teensy firmware, FreeCAD and KiCad files, a detailed build guide, and even a MIDI-enabled emulator!

The current functionality includes multitrack recording and editing, plugins, sampler, sequencer, effects, clip cut/paste, loop controls, and project rendering. Check out the video below, then head over to the BOM and pick up the parts to make your own today!

Soundboard – Discord Sound Effects In Real Life

Mjd2dh and their friends were headed to a bachelor party, but how would they survive without their Discord soundboard?

Thanks to mjd2dh’s Teensy 4.1-based hardware soundboard, this was not a question that they ever had to answer, since the friends could now play their favorite sounds at will in real life!

“This project is stupid. Maybe the dumbest thing I’ve ever spent my time on.” states PJRC forum member mjd2dh. With that disclaimer out of the way, mjd2dh added 16MB of PSRAM for storing samples after they’d been loaded from mSD card. A MAX98357 Class D 3W amplifier connected via I2S, and a 4-Ohm 3W speaker provide the sound. Four wireless numeric keypads with their dongles connected to a 4-port USB hub, in turn connected to the Teensy’s USB Host pads give the friends their soundboard buttons. A custom C# utility facilitates sample management. See it in action in the video below!

Software Defined Radio Transceiver

Econjack (ham radio call sign W8TEE) and Al Peter (AC8GY) have created the T41-EP Software Defined Transceiver (SDT) based on Frank Dziock (DD4WH)’s Convolution SDR code.

The T41-EP is an HF 7-band Single Sideband (SSB) voice and continuous wave (CW) Morse code transmitter, building on the receiver capabilities of the original project.

Unlike other systems, which require an external PC, the system is entirely powered by a Teensy 4.1. Similar systems also often cost ten times as much. The project is open source, with source code and more information available on the project’s Groups.io site.

BitByte Handheld Console

Dawson Pate has created BitByte, a Teensy 4.1-based handheld console with an easy-to-learn scripting language for creating your own games.

The Micro VM language allows games to be edited as simple text files on a microSD card, which is automatically mounted as a mass storage device when connected via USB.

The handheld features a 2.8″ 320×240 LCD display, an ESP32-S3 coprocessor for wireless multiplayer, dual piezos for sound, and 18 GPIO pins for incorporating additional hardware.

The MicroVM language includes tilemap, ray-casting, texturing, and more, in order to facilitate game development.

Games developed in the language are inherently open for analysis and modification since there is no compiled binary. The Arduino IDE can be used to create your own firmware without the VM. The project is currently crowdfunding on Kickstarter.

MIDI Foot Pedal Controller

ChrisT had an idea for a MIDI pedal board that could send MIDI messages to his laptop while playing guitar, to trigger samples, change effects, and play synth pad chords.

After prototyping in software using HTML and JavaScript, ChrisT built a prototype using plastic multi-purpose compartment organizers that might ordinarily be used for storing hardware of the fastener variety rather than electronics.

In addition to the Teensy 4.1 and the plastic box, the foot pedal controller features ten soft-touch footswitches and a 2.8″ ILI9341 TFT touchscreen. A JSON file is used to configure the GUI and functionality, and copied to the Teensy in mass storage device mode, meaning that changes can be made without having to compile and re-flash the firmware. In the initial prototype, five of the buttons send chords (defined in the JSON file), while the other six are used to adjust settings. See it in action in the video below, and check out the source (including for the HTML version) on GitHub.

Old Phone Interface to MS Teams and Zoom Calls

MikeSound found two old phones from the 50s and 70s in his parents’ basement. Still in good working order, and visually striking compared to today’s drab black slabs, Mike decided to give them new lives as Microsoft Teams/Zoom-compatible headsets using Teensy 4.0.

In addition to headset functionality via the Teensy Audio Adaptor Board, the phone dialer has been retrofitted to output the corresponding digits as a USB keyboard. The ringer really functions (when an audio signal is detected), and lifting the handset sends the corresponding keyboard macro to to the PC application to answer (or plays the 440Hz dial tone when there is no call).

Replacing the handset similarly ends the call, and of course, there’s a Mute button. Schematics and source are available on GitHub, so you too can surprise and delight your colleagues with a retro re-fit of your favorite old Bakelite or candlestick telephone!

Hybrid MIDI Grand Piano

A hybrid piano translates traditional acoustic piano action into MIDI (unlike a purely digital MIDI keyboard), giving pianists the best of both worlds.

Greg Zweigle had long wanted to build his own, and has gotten all 88 keys working, using two Teensy 4.1s and a Kawai grand piano action.

Greg is working on several different architectures in parallel; while the aforementioned uses two Teensy 4.1s to handle all 88 keys, a higher-performance version uses two 4.1s for every eight keys plus two for a pedal unit (i.e. 24 for a complete piano).

The system measures and sends hammer velocity and optionally damper velocity over MIDI and can also output the data to optional Adafruit 2.8″ TFT touch screens. Schematics, firmware, documentation and more can be found in the project’s GitHub repo, and if you want to get really nerdy, Greg has published data from piano and piano action measurements in another repo. Much of the journey is also published on Greg’s YouTube channel, such as the latest progress below.