Synthesizer!

Love Legowelt, but this video is too funny to pass up! The full studio tour is an interesting watch (assuming you’re into that kinda thing).

How to fix intonation problems on a fixed-bridge biscuit resonator guitar or: How I Learned to Stop Worrying and Love the Eastwood Airline Folkstar.

Hear ye, hear ye my tale of woe and redemption concerning the Eastwood Guitars Airline Folkstar.

So there I was lusting after a resonator guitar and came across this interesting specimen online, and found a shop that would sell it to me for a more than seemingly decent knock-down price.

Being the innocent lad (and mostly because I was drunk – both with enthusiasm and literally), and having read the positive reviews, I poked-in my credit card details and took the punt.

Sure enough, next day the package arrived.

First-off, what a beauty!. I can’t deny that the look of this guitar contributed to my lust. Buying on the internet and all that.

IMG_20170318_233015

My camera can’t do better than the stock photos above, but it’s quite dazzling in real life. Closer inspection did reveal some rather surprising construction flaws, however. Doubts creep in.

Sound-wise: Long story short, when plugged-in to an amp this guitar sounds wonderful. Mixing between the Humbucker and the Piezo pickups with the blend knob produces a huge range of tones, from chugging rock, jazz and the high-frequency zing of delta blues. Played with a slide in open D tuning, and with a touch of overdrive and reverb – great fun.

Plugged-out it retains the bluesy vibe with a touch of banjo, which sounds pretty nice, isn’t too loud, and yet entices to fondle.

HOWEVER….

…although the guitar seemed to be well setup out-of-the-box, and according to these instructions, it was immediately obvious to my uncultured bony ass that the intonation was waaaaay off.

Essentially, although the open strings are tuned correctly, moving up the fretboard caused notes to become progressively sharper. At the 12th fret the 3rd string is a full semitone sharp when fretted (harmonic is OK though), and it doesn’t sound good. I re-checked the neck and action (which is low anyway), I tried different strings and angled the bridge as much as possible…

No joy.

No matter what, the strings always sounded sharp up the fretboard, and some more than others. OK then, onward to Google, the chief answerer of all these periodic inane questions.

What I found online was mostly guitar-geek forum posts where opinion lazily conceded that resonator guitars were always destined to sound a little out of tune at the higher frets (due to high action), and that intonation problems on fixed-bridge guitars are generally intractable without the surgical intervention of an experienced luthier.

The construction flaws I can live with, the intonation problems not. Do I send it back for a refund?

Being a stubborn bastard and not wanting to give-up, I did take it to a luthier. After less than 30 seconds of inspection he sighed and gave that disappointed look of ‘poor child, what a dumbass’.

But even this didn’t calm my hubris. Why? Because Youtube always comes to the rescue!:

[youtube https://www.youtube.com/watch?v=8qq451ZXoDg&w=400&h=255]

Paco’s brilliantly simple solution rang a bell, flashed a light, and struck a chord. I would try this.

And indeed it works! Instead of the metal screws used by Paco, I wanted to use something softer to avoid possible fretboard damage. A quick dig around my junk stash came up with using only the plastic parts from header pins. Just cut to size and yank out the pins. Comes with a complimentary built-in string notch!

IMG_20170319_030228

IMG_20170318_232945

IMG_20170318_232940

And there you go, a quick ‘n easy way to fix intonation on any fixed-bridge guitar. Thanks Paco!

One minor, concern is that these ‘floating nuts’ will move when bending, so periodic checks and readjustments are advised. None needed here so far.

This is not to excuse the poor quality control at Eastwood. Judging by the the adjustments needed, the guitar seems to have some fundamental issues and thus it will sent back. Shame really.

Using a Raspberry Pi as USB MIDI Host

Wheeeeeeeee! I have some money again, though not a lot of time, but I’m determined to finish and further expand the projects I started with such gusto last year.

Both the Tempest and FS1r are blurred memories, and I’ve been getting my kicks, whenever possible, with a Monomachine/Blofeld Combo.

The great thing about this pairing is that I can sequence 6 channels of Blofeld multimode goodness alongside 5 Monomachine tracks, with the 6th track acting as the FX machine for the Blofeld, which is routed back through the MnM inputs. A nice, self contained, and gloriously digital setup. Did I mention that MnM does killer drum synthesis?

RPi_USB_MIDI_Host_MnM

On the the MnM it is possible to input chords using an external MIDI keyboard for the Arps and external sequencing.

I have an cheapo Akai LPK USB mid keyboard that would make a nice compliment to this mini setup. But MnM only accepts 5-pin DIN MIDI. One existing option is the Kenton USB MIDI Host, but that goes for over 100 euro.

I got to thinking that I could use my similarly-abandoned and superseded Raspberry Pi 1, and a MIDI 1×1 USB MIDI cable that never got used because it kept causing bluescreens on my Windows PC. What if I could use the Pi to route the output of the LPK through the 1×1?

Well yes, it’s possible, works perfectly, and is really easy to get running.

Any flavour of linux will do, in my case I’m using a Raspberry Pi v1 with an optimised Raspbian Wheezy image I downloaded from here. I’ve also got this to work on a Rpi2 using the official Ubuntu ARMv7 distro.
The instructions for both are the same.

EDIT: Georgios Says:

By the way, on the latest raspbian, it works out of the box. No need to install anything 🙂

Obviously, with only 2 USB ports on the Pi v1, there is no room for wireless, so I needed to login over ethernet.

Once a command prompt is available, it’s a matter of installing Alsa:

sudo apt-get install alsa alsa-utils

Now connect the *class compliant* MIDI devices, in my case the Akai LPK25 and E-mu USB MIDI 1×1.

To show all connected MIDI devices:

sudo amidi -l

Show connection status and port numbers of connected MIDI devices

sudo aconnect -i -o

Look for the device ID, which is in the format x:0. In my case, the LPK25 was 20:0 and the Emu 1×1 was 16:0. So to connect the output of the LPK to the output of the Emu, just go:

sudo aconnect 20:0 16:0

…and voila! Works a treat here, no latency and I’ve sent boatloads of MIDI through it.

To dump all midi message to the screen,
sudo amidi -d

Naturally, we will want this connection to happen automatically every time we start the Pi. Of the several ways to do this, I opted for the laziest, which was to make a root crontab.
If you’re not root already,

sudo su
crontab -e

at the end of the file, enter the aconnect command that works for you to run at reboot, e.g.

@reboot aconnect 20:0 16:0

🙂

Bjorklund: First Session – Simple Rhythms

Here’s Bjorklund. He’s been dropped, stood-on and attacked by cats, yet survives. I was pissed drunk when I made this but hopefully it will provide a first inkling of the little fella’s potential:

[embedyt] https://www.youtube.com/watch?v=xupqW1Cyig8[/embedyt]

Blurb:

Euclid’s algorithm (circa 300 BC) describes a method for computing the greatest common divisor (GCD) of two integers. It is one of the oldest numerical algorithms still in common use.

In 2003 Eric Bjorklund extended the Euclidean algorithm to address timing issues in Neutron Accelerators. He wanted to solve the following problem:

‘distribute n pulses over m “timing slots” in the most even way possible, even though n may not necessarily be an even divisor of m.’

See: https://ics-web.sns.ornl.gov/timing/Rep-Rate%20Tech%20Note.pdf

In 2004, Godfried Toussaint demonstrated that the resulting binary patterns mirrored many familiar ostinatos (repeating rhythmic phrases) heard in diverse range of musical styles.
African rhythms are well represented and, naturally, have since appeared in South American music, modern jazz, pop, rock and dance.

See: http://aatpm.com/banff.pdf

Bjorklund is a Bjorklundean sequencer.

8 independent tracks, each with their own:

– Tracklength of 1- 64 steps
– 1-64 Pulses, feeding into the algorithm.
– Full control over current playback position (rotation).
– Clock dividers (Whole note to 1/32 ).
– Solo/Mute.
– Velocity.
– Random Velocity offset – Humanisation (+/-)
– Accented notes every 1-16 steps (max velocity)
– Assignable MIDI Note.
– Assignable MIDI Channel.
– Randomization per track or all tracks.

Fine control over Master BPM (+/- 3, 1, 0.1).

Next version will bump-up to Teensy 3.1 and will feature…
USB MIDI
Performance Controls
Groove – Tick Quantization and Tick shift
Extensive preset management and fast switching
Track groupings
Touchstrip
Proximity sensors/D-beam
Tap Tempo

Apologies for the shitty video quality. But does it matter?

Bjorklund: Hardware Notes

I’ve got the beer on ice, so tonight I will make a video demonstration of the finished item, and it has far surpassed my expectations! 🙂

Some quick snippets…

But first, here’s a catch-up on construction and materials used. Rather than explain in minute detail each step, I will for now just point to the resources that provided the most direct and useful information. They are the nuggets gleaned from numerous trawls through crappy/broken code and bad schematics. :/

I keep the power supply on a separate board. It’s a common diode-protected, RC filtered 5v regulated design…

http://www.noisylittlebugger.net/diy/arduino/power-supply-5v.gif

MIDI output is easy-peasy…(but remember to map the pins of the ATMega)
http://www.noisylittlebugger.net/diy/arduino/arduino_MIDI_out_breadboard.png

The LED matrices are just too big for the breadboard, so I propped-them up on stackable headers to allow me access to the pins. I’m using 2 x MAX7219 driver chips. Connecting these to the ATMega and to each other was a breeze, however wiring the matrices themselves was a little tricky. I mostly followed the instructions here, however this wiring was not correct for my particular LED matrix (common cathode – from Tayda). I found the wiring diagram here to work for me.

bjorklund_view1

The encoders were connected and via the MCP23017 I/O port expander. I got these encoders from Reichelt – they are quite stiff and they have been problematic.

bjorklund_encoders

Firstly they wouldn’t stay on the breadboard (legs too short!) so I made a breakout. Those funny protrustions are my attempt at hardware ‘debouncing’. I soldered sockets to the pins so that I could experiment with different capacitor values. In the end, 100n capacitors connected between each pin and common ground were best, although the encoders were still somewhat jumpy. I used a healthy dose of contact cleaner on each and this helped significantly. These encoders need to be ‘broken-in’.

In the code I am polling these controls according to this helpful post. This works well but is quite the resource drain. To circumvent this I tried using interrupts, however they proved even more problematic because they were detecting even the slightest tap of the encoders. Also, setting-up interrupts via the MCP23017 is no trivial task. I managed to fry two chips for my troubles. Interrupts are for another day….

In the next version I will abandon the mechanical encoders in favour of optical. I think the additional cost will be more than compensated by time spent, in frustration, fixing a problem that is beyond my control.

Finally there is a RGB LED which provides instant access to 7 colours as menu indicators. I’ve coded a state machine that allows me to turn 4 encoders into 40 controls, depending on what sequence of buttons is pressed. The mode is indicated by the single-or-mixed colours of the RGB. Thus there is always a clear visual indication of which menu is currently in use.

bjorklund_view2

Overall, a fairly small parts count, easily obtained. Here is the Bill of Materials and sources:

Main Board:
1 x ATMega 328-PU
1 x 16MHz Quartz Crystal
2 x 22n Ceramic Capacitors
3 x 47K Resistors
1 x MCP23017 I/O Port Expander
2 x 8×8 Dot Matrix LED display – Common Cathode
2 x MAX7219 LED Display Drivers (Tayda’s are much cheaper, but apparently counterfeit. They work!)
4 x 24/24 Encoders (optical would be sooo much nicer)
10 x 100n Ceramic Capacitors
2 x 10uf Electrolytic Capacitors
1 x RGB LED 5mm Common Anode
3 x 220 Ohm Resistors
1 x 27K Resistor
Lots of jumper wire!

MIDI Output:
1 x MID DIN Socket
1 x 220 Ohm resistor

When I finish the code I will publish it, along with a proper schematic (hey, I’m still learning).