JBL Control 25 ceiling mount adapters

This is an extremely boring thing to write about, but hopefully it will save someone some annoyance. JBL’s Control 25 and 28 speakers come with a neat, simple plate-and-stick “Invisiball” mounting system, designed to mount the speakers on vertical walls. They also sell an adapter to attach them to the ceiling instead, where the “stick” of the normal adapter is replaced by a longer, offset stick enabling vertical mounting. These adapters require that you have the original wall plates, but the used speakers I bought were missing them, and new ones cost more than I paid for the speakers, so I wanted to figure out how to mount them some other way.

For the search engines among you, the ceiling adapters are part number MTC-2825CM, and the original wall mounts are 179-00002-00 and 179-00002-01, in white and black respectively.

The ceiling mounts I had came with an extra cone-shaped, dual-threaded adapter that I couldn’t find a spec for:

I found a spec sheet for the ceiling mounts, which tells me that the end of the mounting rod has an imperial 7/16″, 20tpi thread (really??). But the one on the blunt end of the cone was a mystery that didn’t fit any of the bolts I had (which were mostly for bikes, so all too small). I took some measurements and guessed that it might be a 3/8, 16tpi, given that the other threads were all imperial so I ordered some nuts… which were wrong. I remeasured and popped to my local DIY store, where I verified that it is actually standard metric 10mm thread. So we have a revolting combination of imperial and metric units. Blech. At least it looks neat!

That finally screwed down, I designed (in Autodesk Fusion) a ceiling mount that this threaded end could fit into that I could 3D print. It looks much nicer than the stock mounting plate, and the screw holes are designed to take nice stainless steel Allen bolts. Because it’s designed to mount vertically and bolted to the ceiling, the plastic will be mostly in compression, a direction that’s nice and strong for printed parts, though the speakers only weigh 3kg each. I printed it with a generic white PLA Meta filament that only took 70 mins to print two of my design on my Bambu P1S and feels really strong even with only a 15% infill (though with 5 walls). You can find the model on Thingiverse and Makerworld.

God speed (Student Union remix)

Fadr and SoundCloud sent me a somewhat spammy email inviting me to take part in a remix event for the song “God speed” by Erin LeCount. I gave in, built a track, and submitted it. Listen and vote on the event site.

I’d never heard of Erin before, but this is a great song, with a very impressive vocal performance. I’ve not done much in the way of remixing, but I have done many cover versions, so I decided to combine aspects of both. Working in Apple’s Logic Pro X as usual, I kept the song’s original structure and vocals, but completely replaced the backing track. Much of the marketing pitch for this event was about using Fadr’s “AI remix” tools, but I’m not really very interested in that.

I made two main edits to the vocals: picking the “god speed” line from later in the song and using it as the opening line, then overlaying the opening verse on top of the final one. The first verse is longer than the second, so there were some vocals left over to make a new ending. While the event provided stems, broken out into 18 tracks, these were not completely isolated. For example, the first half of the main vocal track is quite dry, but the second half has a ton of reverb on it, making it harder to reprocess. This was quite convenient though as the dry vocal made for a better ending. It’s very nice working with such good, real vocals, but they are much harder work to edit, and I can’t randomly change the lyrics and melody like I can with Synthesizer V!

I replaced each instrumental track in turn with my own version, and I found some good equivalents to the existing tracks, though some of the odder sounds like bow screeches were difficult to emulate, so I either left them or dropped them.

The keyboard part had some chord voicings I couldn’t figure out, so ended up using Excite Audio’s VISION 4X plugin (a very detailed audio spectrum analyser!) to figure out what notes and harmonics I needed by trial and error!

I replayed the electric guitar part, and really liked the recording, so I added more of it elsewhere in the track. Then I wanted a line that would hold everything together, for which I added a full-length acoustic guitar track using UJAM’s Amber2. Drums are played by Logic’s player with manual patterns, using the “Detroit Garage” kit with some modifications, notably a pitched-up snare, and a 40% “pull” on the feel. Bass and sub-bass tracks use Apple’s Alchemy synth. The electric and toy pianos, harp, and reverse synth hit are Logic sampler patches, a second electric piano uses Kontakt 8. Reverbs are all Logic Space Designer patches.

Overall it has come out sounding like something a college band would play at a student union gig, hence the choice of title.

This was a fun exercise. Some of the other remixes were rather more ambitious in rearranging, changing pace, or transforming it into other styles (like disco and breakbeat), but I’m pretty happy with what I produced.

If you like this song, please consider supporting me by buying my albums on Bandcamp, and sharing links to my music on your socials.

Dancing by myself

A screen shot of GForce impOSCar version 3, showing the bass patch used in this song.

No, this isn’t about me; no, this isn’t a cover of a similarly named Billy Idol track. Now that we’ve got that out of the way, let’s talk about what this is: a full-blooded, unapologetic dance track that’s not going to require you to understand some odd geeky concept, like several of my other songs do…

I feel lucky to have had this song included in the second album in “The Four Seasons of Bonk Wave” series, entitled “A Midsummer Bonk’s Dream (1)“.

The inspiration for this song, in my usual feel requirements, is something along the lines of one of Shingo Nakamura’s oeuvres. Lots of synths, bass with a bit of oomph, satisfying, but somewhat predicable, chord progressions, and some sweet but essentially meaningless lyrics. This is head-down, late-night boppy stuff, no thinking required.

As for the sounds, well, I’ve long owned GForce’s impOSCar virtual synth, having played with an original OSC Oscar synth in a music shop in Oxford back when it first appeared in the early 80s. However, I’d not really paid it much attention (yes, having too many synth plugins is a problem). GForce released version 3, a very nice upgrade that grabbed my attention. Its arpeggiator, filters, polyphony, built-in effects, and all-round gnarliness just needed to be unleashed in lavish quantities, so here we are.

impOSCar3 is responsible for the bass, two pads, and a twinkly arpeggiator. The strummy guitar is by UJAM’s Amber2 virtual guitarist that I also used on “Pair programming”.

Bass and Drums are played by Logic’s usual players, with some manual overrides. Vocals are by Synthesizer V, as usual, but using the basic “Mai” voice database, which I used on “AI Girlfriend” for its wonderful squeaky artificiality. I’ve toned that down by pitching it lower and pushing the gender and tension sliders around appropriately. The repeat of the chorus has the more believable Solaria II voice on the backing vocal.

I came up with the main chord progression while just noodling about, and then asked Claude to suggest some alternative sections. There’s not a great deal of variation, but no worries, we’re just out to make a bangin’ choon.

To keep things interesting, I learned all about Logic’s Remix FX. This plugin has some fairly basic controls for filtering, repeating, gating, bitcrushing that are individually outdone by other plugins, but they are all in one place, are very easy to use and to automate, making things very dynamic.

Screen shot of Logic's Remix FX, showing it in action during the ending, using a high-pass filter and bit crushing effects.
Remix FX in action during the ending, using a high-pass filter and bitcrushing effects.

There is a lot of automation in this song: filter sweeps, pans, levels, reverb sends, plus all the swirly goodness that the Remix FX plugin provides. This is squarely in the genre of BT’s “Movement in Still Life”, which has production values I can only aspire to, but it’s all just for fun. Now go boogie, by yourself or otherwise!

It doesn’t mean I’m lonely
when I’m dancing by myself.
I’m happy when I’m dancing,
I don’t need your help.
My night-times are for dancing;
you can’t take that away.
Dancing is for everyone,
but you don’t have to stay.

If you like this song, please consider supporting me by buying my albums on Bandcamp, and sharing links to my music on your socials.

Pair Programming

Sorry to mislead you, but this page is not about pair programming. Well it is, but it’s mainly about a song about pair programming. Or is it a love song? Who can tell.

Pair programming is an approach where two developers sit side by side, sharing a keyboard and mouse, and work together on the same task/problem together, critiquing, explaining, understanding, and supporting each other’s work, taking it in turns to “drive”. It’s a good environment for mentoring, sharing knowledge, preventing “siloing”, onboarding new developers, getting to know your colleagues, and working on difficult bugs. Obviously there’s close personal interaction in such a situation, so I thought I’d explore the romantic possibilities in a song!

While this song is entitled “Pair Programming”, there isn’t any direct reference to the activity of that name. It might use some terminology familiar to those used to it, but I’ve deliberately used double meanings and ambiguity to leave things “uncommitted”. Hopefully it will still make sense to someone that has no idea what pair programming is, and takes the sentiments at face value! I’m not going to list them all, but hopefully some of the puns will elicit a few groans. My favourite line is “we could share a set of keys”, which could refer to the humble shared keyboard, but more intriguingly the prospect of moving in together. Similarly, does “making something beautiful, all it takes is you and me” refer to their co-written code, or forthcoming offspring? There is a minor break of the “4th wall” when our protagonists refer to “striking up a little nerd duet”.

The final line, repeated a few times, refers to “writing love letters to the people that we’re going to be”. This is a reference to a nice programming maxim – write clean, understandable code as a love letter to your future self, that you will thank yourself for when you revisit it to refactor or revise it, possibly many years later. Here though, they could easily be talking about each other.

I’ve said before that I often start out with how I want a song to feel, rather than any particular genre, instrumentation, or content; this one is no different. In terms of influences, this song owes a lot to “You + me”, by Public Service Broadcasting, from the lovely “Every Valley” album. It’s just a beautiful, simple duet, and from a production perspective I love the initial dry mix with that clean guitar that slowly builds into full orchestral backing. I don’t understand a word of Welsh though 🤷‍♂️.

Vocals are, again, courtesy of Synthesizer V, newly upgraded to version 2.0, using the Solaria and NOA Hex voice databases. It’s possibly the most complex set of vocals I’ve written, from both a lyrical and harmonic perspective. Building those harmonies was quite tricky. I also made much better use of the UJAM Amber2 virtual guitarist plugin I bought for “I’ve only met you once”, using more of its pattern library. I decided to go to town a bit for the orchestral backing, so in addition to Logic’s lush Studio Strings, we also have a wind ensemble (bassoon, clarinet, oboe, cor anglais, and flute), and some extra clarinets.

Bass and drums are, comme d’hab, using Logic’s built-in Bass and Drum kit libraries, played by Logic’s excellent players.

The overall mix is really quite simple (there are only 9 tracks), but I used a lot of automation, particularly on the reverb sends on the voices; dry voices have a certain raw appeal, but they really come to life with a little ambiance, and I wanted to capture that transition, which you can hear in the first verse.

To finish it off with a little more romance, I commissioned a sweet, Flamenco-ish nylon string guitar solo from Spanish guitarist Javi Sanchez on Fiverr.

Anyway, this duet is sung by a pair of developers who are clearly into each other, and I wish them all the luck in the world.

[M verse]
I love flying solo
I’ve made the whole world I can see
I might be going in the wrong direction,
but I’m enjoying being free.
I could use another point of view
to put my feet back on the ground.
Somebody to take my hand
guide me back in to land

[F verse]
I see the words fall from your lips
in ideas that flowed from fingertips.
You’ve got my attention now,
we just need to work out how
you’re finishing my sentences,
reading between the lines.
Together we’ll make something
beautiful.

[Chorus]
We’re writing love letters
to the people that we’re going to be.
I was hoping that perhaps one day
we could share a set of keys.
With you by my side we’d be a force
taking turns to take the lead.
We're building something beautiful
all it takes is you and me.

[Verse]
I’m staying up reading your every last letter
wondering if I could have said it any better.
Your echoes filling the gaps I’ve left,
striking up a little nerd duet.
I love the way you question
every choice I think I've made.
Not afraid to challenge, reconsider, rearrange.
When I’m sitting side by side with you
one and one is sometimes more than two.

[Chorus]
We’re writing love letters
to the people that we’re going to be.
I was hoping that perhaps one day
we could share a set of keys.
With you by my side we’d be a force
taking turns to take the lead.
We're building something beautiful
all it takes is you and me.

[Outro]
We’re writing love letters
to the people that we’re going to be.

If you like this song, please consider supporting me by buying my albums on Bandcamp, and sharing links to my music on your socials.