# Guitar Distortion With Diodes In Code, Not Hardware

Guitarists will do just about anything to get just the right sound out of their setup, including purposely introducing all manner of distortion into the signal. It seems counter-intuitive, but it works, at least when it’s done right. But what exactly is going on with the signal? And is there a way to simulate it? Of course there is, and all it takes is a little math and some Arduino code.

Now, there are a lot of different techniques for modifying the signal from an electric guitar, but perhaps the simplest is the humble diode clipping circuit. It just uses an op-amp with antiparallel diodes either in series in the feedback loop or shunting the output to ground. The diodes clip the tops and bottoms off of the sine waves, turning them into something closer to a square wave, adding those extra harmonics that really fatten the sound. It’s a simple hack that’s easy to implement in hardware, enough so that distortion pedals galore are commercially available.

In the video below, [Sebastian] explains that this distortion is also pretty easy to reproduce algorithmically. He breaks down the math behind this, which is actually pretty approachable — a step function with a linear part, a quadratic section, and a hard-clipping function. He also derives a second, natural exponent step function from the Schockley diode equation that is less computationally demanding. To implement these models, [Sebastian] chose an Arduino GIGA R1 WiFi, using an ADC to digitize the guitar signal and devoting a DAC to each of the two algorithms. Each distortion effect has its own charms; we prefer the harsher step function over the exponential algorithm, but different strokes.

Kudos to [Sebastian] for this easy-to-understand treatment of what could otherwise be a difficult subject to digest. We didn’t really expect that a guitar distortion pedal would lead down the rabbit hole to diode theory and digital signal processing, but we’re glad it did.

# An Effects Pedal For Keyboards (and Mice)

Effects pedals for musical instruments like electric guitars can really expand a musician’s range with the instrument. Adding things like distortion, echo, and reverb at the push of a button can really transform the sound of a guitar and add depth to a performance. But [Guy] wondered why these effects should be limited to analog signals such as those from musical instruments, and set about to apply a number of effects to the use of computer keyboards and mice with this HID effects pedal.

The mouse is perhaps the closer of the two to an analog device, so the translations from the effects pedal are somewhat intuitive. Reverb causes movements in the mouse to take a little bit of extra time before coming to a stop, which gives it the effect of “coasting”. Distortion can add randomness to the overall mouse movements, but it can also be turned down and even reversed, acting instead as a noise filter and smoothing out mouse movements. There’s also a looper, which can replay mouse movements indefinitely and a crossover, which allows the mouse to act as a keyboard.

For the keyboard, included effects are a tremolo, which modulates between upper- and lower-case at certain intervals; echo, which repeats keypresses; and a pitch-shift which outputs a “higher” character in the alphabet above whichever one has been pressed. Like the mouse, there’s also a crossover mode which allows the keyboard to be used as a mouse.

The device looks and feels like an effects pedal for a guitar would, with a RP2040 inside to intercept HID information, do the signal processing, and then output the result to the computer. And, while [Guy] admits this was a fun project with not many practical uses, there are a couple handy ones including potentially the distortion effect to smooth out mouse inputs for those with neuromuscular disorders or the mouse looper to act as a mouse jiggler for those with micromanaging employers. It’s also reprogrammable, and as we’ve seen since time immemorial having a programmable foot keyboard can be extremely handy for certain workflows.

# Modeling A Guitar For Circuit Simulation

Guitar effects have come a long way from the jangly, unaltered sounds of the 1950s when rock and roll started picking up steam. Starting in large part with [Jimi Hendrix] in the 60s, the number of available effects available to guitarists snowballed in the following decades step-by-step with the burgeoning electronics industry. Now, there are tons of effects, from simple analog devices that would have been familiar to [Hendrix] to complex, far-reaching, digital effects available to anyone with a computer. Another thing available to modern guitarists is the ability to model these effects and guitars in circuit simulators, as [Iain] does.

[Ian] plays a Fender Stratocaster, but in order to build effects pedals and amplifiers for it with the exact desired sound, he needed a way to model its equivalent circuit. For a simple DC circuit, this isn’t too difficult since it just requires measuring the resistance, capacitance, and inductance of the overall circuit and can be done with something as simple as a multimeter. But for something with the wide frequency range of a guitar, a little bit more effort needs to go into creating an accurate model. [Iain] is using an Analog Discovery as a vector network analyzer to get all of the raw data he needs for the model before moving on to some in-depth calculations.

[Iain] takes us through all of the methods of figuring out the equivalent impedance of his guitar and its cabling using simple methods capable of being done largely by hand and more advanced techniques like finding numerical solutions. By analyzing the impedance of the pickup, tone and volume controls, and cable, this deep dive into the complexities of building an accurate equivalent circuit model for his guitar could be replicated by anyone else looking to build effects for their specific guitars. If you’re looking for a more digital solution, though, we’ve seen some impressive effects built using other tools unavailable to guitarists in days of yore, such as MIDI and the Raspberry Pi.

# Op Amp Contest: Go Down An Octave, No FFT, No PLL, No Oscillator!

We like a project that makes us think, and that was certainly the case with [MS-BOSS]’s octave downshifter that’s an entry in our current op-amp contest. Instead of resorting to an FFT, or a PLL, it uses a technique best described as a custom analogue computer to implement the maths of octave downshifting. It’s an extremely clever approach, and we don’t mind admitting took us more than one read to understand how it works.

Just as you would with any mathematical problem, he’s split the job of halving the frequency into its constituent mathematical functions. The square root calculation circuit is probably the one that most required the dredging up of dimly-remembered analogue circuitry undergraduate courses for us.

The result is a fascinating read that’s well worth taking the time to understand if you have any interest in analogue electronics. It’s by no means the easiest way to make this particular effect in 2023, as we’re much more used to seeing our community make digital effects, but if you fancy yourself as any kind of op-amp designer, you really need to give it a look.

# ADSL Router As Effects Pedal

Moore’s law might not be as immutable as we once though thought it was, as chip makers struggle to fit more and more transistors on a given area of silicon. But over the past few decades it’s been surprisingly consistent, with a lot of knock-on effects. As computers get faster, everything else related to them gets faster as well, and the junk drawer tends to fill quickly with various computer peripherals and parts that might be working fine, but just can’t keep up the pace. [Bonsembiante] had an old ADSL router that was well obsolete as a result of these changing times, but instead of tossing it, he turned it into a guitar effects pedal.

The principle behind this build is that the router is essentially a Linux machine, complete with ALSA support. Of course this means flashing a custom firmware which is not the most straightforward task, but once the sound support was added to the device, it was able to interface with a USB sound card. An additional C++ program was created which handles the actual audio received from the guitar and sound card. For this demo, [Bonsembiante] programmed a ring buffer and feeds it back into the output to achieve an echo effect, but presumably any effect or a number of effects could be programmed.

For anyone looking for the source code for the signal processing that the router is now performing, it is listed on a separate GitHub page. If you don’t have this specific model of router laying around in your parts bin, though, there are much more readily-available Linux machines that can get this job done instead.

# Processing Audio With The RP2040

The Raspberry Pi, although first intended as an inexpensive single-board computer for use in education, is now ubiquitous in electronics communities. Its low price as well as Linux platform and accessible GPIO make it useful in many places outside the classroom. But, if you want to abandon the ease-of-use in favor of an even lower price, the Raspberry Pi foundation makes that possible as well with the RP2040 chip, commonly found on the Pico. [Jason] shows us one way to make use of this powerful chip by putting one in an audio digital signal processing board.

While development boards are available for this chip, [Jason] has opted instead for a custom PCB which he designed himself and includes an integrated headphone amplifier and 3.5 mm audio jacks. To do the actual DSP work, the RP2040 chip uses three 12-bit ADC channels and 16 controllable PWM channels. The platform is also equipped with the TLV320AIC3254 codec from Texas Instruments. With all of this put together, he has a functioning open-source platform he calls the DS-Pi.

[Jason] has built this as a platform for guitar effects and as a customizable guitar amp modeler, but with a platform that is Arduino-compatible and fairly easy to program it could be put to use for anything involving other types of music or audio processing, like this specialized MIDI-compatible guitar effects platform which is built around the same processor.

# Bass Guitar Gets Shapeshifting Pickups

Electric guitars were the hip new thing back in the mid-century. The electrification of the common and portable guitar opened up a lot of avenues in terms of sound and technique. Specifically, the use of the pickup, an electromagnetic device which converts the vibrations of the guitar strings into electrical signals, increased the number of ways that a musician can alter the guitar’s sound on-the-fly. Some guitars have several rows of pickups which can be used in any number of ways, but this custom guitar has a single pickup which can be moved around the guitar’s body instead.

[Breno] was gifted this Dolphin bass guitar to start learning after years of playing a regular guitar, and while they aren’t known for high-quality instruments this guitar seemed to play and sound well enough to attempt this modification. First, a hole had to be cut all the way through the guitar’s body in order to accommodate the build. The pickup for this guitar is then mounted on two rods which allow it to move in various positions along the strings, and a second set of adjustments can be made to bring the pickups closer or further away from the strings. Some additional custom circuitry was added to control it and also to handle the volume and tone knobs, and while this was being added [Breno] and his friend [Arthur] decided this would be a great time to build some effects into the guitar’s now-custom electronics as well.

While this was largely a project for [Breno] to understand in greater depth the effect of moving the pickups around an electric guitar, the finished product looks ready to play some live shows. The addition of some extras like the effects really adds some punch to this guitar and it looks to be completely original. The nearest thing we could find is this guitar which uses hot-swappable pickups but even those are mounted in fixed locations.