Solving Grounding Issues On Switch Audio

Grounding of electrical systems is an often forgotten yet important design consideration. Issues with proper grounding can be complicated, confusing, and downright frustrating to solve. So much so that engineers can spend their entire careers specializing in grounding and bonding. [Bsilvereagle] was running into just this sort of frustrating problem while attempting to send audio from a Nintendo Switch into a PC, and documented some of the ways he attempted to fix a common problem known as a ground loop.

Ground loops occur when there are multiple paths to ground, especially in wires carrying signals. The low impedance path creates oscillations and ringing which is especially problematic for audio. When sending the Switch audio into a computer a loop like this formed. [Bsilvereagle] set about solving the issue using an isolating transformer. It took a few revisions, but eventually they settled on a circuit which improved sound quality tremendously. With that out of the way, the task of mixing the Switch audio with sources from other devices could finally proceed unimpeded.

As an investigation into a nuisance problem, this project goes into quite a bit of depth about ground loops and carrying signals over various transforming devices. It’s a great read if you’ve ever been stumped by a mysterious noise in a project. If you’ve never heard of a ground loop before, take a look at this guide to we featured a few years ago.

Upgrading A MIDI Controller With An FPGA

While the “M” in MIDI stands for “musical”, it’s possible to use this standard for other things as well. [s-ol] has been working on a VJ setup (mixing video instead of music) using various potentiometer-based hardware and MIDI to interface everything together. After becoming frustrated with drift in the potentiometers, he set out to outfit the entire rig with custom-built encoders.

[s-ol] designed the rotary-encoder based boards around an FPGA. It monitors the encoder for changes, controls eight RGB LEDs per knob, and even does capacitive touch sensing on the aluminum knob itself. The FPGA communicates via SPI with an Arduino master controller which communicates to a PC using a serial interface. This is [s-ol]’s first time diving into an FPGA project and it looks like he hit it out of the park!.

Even if you’re not mixing video or music, these encoders might be useful to any project where a standard analog potentiometer isn’t accurate or precise enough, or if you just need something that can dial into a specific value quickly. Potentiometers fall short in many different ways, but if you don’t want to replace them you might modify potentiometers to suit your purposes.

Continue reading “Upgrading A MIDI Controller With An FPGA”

The Teensy Audio Library

There are a few ways of playing .WAV files with a microcontroller, but other than that, doing any sort of serious audio processing has required a significantly beefier processor. This isn’t the case anymore: [Paul Stoffregen] has just released his Teensy Audio Library, a library for the ARM Cortex M4 found in the Teensy 3 that does WAV playback and recording, synthesis, analysis, effects, filtering, mixing, and internal signal routing in CD quality audio.

This is an impressive bit of code, made possible only because of the ARM Cortex M4 DSP instructions found in the Teensy 3.1. It won’t run on an 8-bit micro, or even the Cortex M3-based Arduino Due. This is a project meant for the Teensy, although [Paul] has open sourced everything and put it up on Github. There’s also a neat little audio adapter board for the Teensy 3 with a microSD card holder, a 1/8″ jack, and a connector for a microphone.

In addition to audio recording and playback, there’s also a great FFT object that will split your audio spectrum into 512 bins, updated at 86Hz. If you want a sound reactive LED project, there ‘ya go. There’s also a fair bit of synthesis functions for sine, saw, triangle, square, pulse, and arbitrary waveforms, a few effects functions for chorus, flanging, envelope filters, and a GUI audio system design tool that will output code directly to the Arduino IDE for uploading to the Teensy.

It’s really an incredible amount of work, and with the number of features that went into this, we can easily see the quality of homebrew musical instruments increasing drastically over the next few months. This thing has DIY Akai MPC/Monome, psuedo-analog synth, or portable effects box written all over it.