My clock project: Pulsar Buddy

I’ve been working the last month seven months on this small project:


Pulsar Buddy is a stand-alone clock follower / divider / generator. It is designed to work with SOMA Labratory’s new Pulsar-23 synth, enabling it’s looper to work in odd meters like 13/16, as well as generate tuplet triggers for things like 3:2 and 5:4 polyrhythms.

It can, however, be used with any modular synth, and supports DIN24/48, and MIDI clock sync as well.

This video shows off the features of the first prototype board.

This project is be both open source and open hardware: https://github.com/mzero/pulsar-buddy/wiki

I'm still working on the design, and welcome your feedback. I made [a short survey](https://forms.gle/vMYXmPz7bfCQY1U58), and happy to discuss here. **Update:** I've finished the rev. B board and will be test building it this week. First batch will follow very soon. **Update:** Rev. C boards are back, as is the final bamboo case, and I'm building out units & kits. Personally using mine every day with the Pulsar-23. It's working well... but also I have ideas for improving the software on it.

Update: Rev. C boards and builds are all sold or spoken for. I’m assembling the last 6 and will notify the last folks soon.

Rev. D boards - now mostly SMT and with most assembly done in a factory - are due mid- to end- July. I’ll still be doing the few through hole parts, and assembling with the bamboo case. If you want in on that batch (assembled, or kit), fill out this form: https://forms.gle/FXqGYfwuFQQStJbS8

If you’re on that list I’ll be sure to have one for you… If not - I’m sure they’ll be some no takers and the run will have some extras.

34 Likes

This seems extremely well conceived and useful. Consider me interested! Any idea on price for DIY/Kit/Built?

I imagine under $100 for a kit… but feature changes, and enclosure could push that around in either direction. The board you see in the video cost me about $270 for three.

1 Like

If you are looking for additional ideas, I would suggest to use one of the dedicated outputs (maybe Beat or maybe Other?) for the random signals with a potentiometer gradually regulating from full random to semi random to semi regular to absolutely regular. Full random would be random clock and random pulse - basically digital noise. Semi random and semi regular would gradually fix the clock to follow the internal clock. Semi regular and regular would gradually fix the pulse so at the end it would be same as ‘Beat’ output.

I would also generally prefer banana connectors over the alligators as they are more stable and have better overall feel during the performance. It would be fairly easy to convert the banana connectors to be used with alligator clips with empty 4mm tubes. Then again, this mod can be something DIY kit can offer.

A 3D printable case design would be my preference.

Revision B design concept:

Case is laser cut bamboo ply. The idea is that this can go in the back of the Pulsar-23. The lid forms a stand, that has clearance for the ¼" audio jacks on the back of the Pulsar-23. The top of the unit is flush with the top of the Pulsar-23.

This version of the design has a daughter card. While this adds some complexity and expense (second PCB and board interconnect) - it has the advantage that it can have daughter cards for banana and 3.5mm jacks as options… making this versatile.

Edit: If you want to play with this in 3D, it’s over in TinkerCAD: https://www.tinkercad.com/things/kUMlyVN715k

4 Likes

I’m very interested in a built unit. I only recently was added to the pulsar 23 waiting list, so it might be awhile. How should I register my interest/get in touch?

1 Like

Take this short survey, and add your e-mail at the end. I’ll be contacting the people who added their e-mail in the next week or two with more details of my progress, and projected functionality, price, and timeline.

Honestly, as I went through it I felt like I didn’t have strong opinions and wasn’t really interested in design by committee. The main thing was to have odd meters on the pulsar. I would like every feature mentioned in the doc sure, but if I want a fair price I leave it to the designer to make the tough calls on features, in/out options, etc. As long as it achieves its most basic purpose I don’t really care about case, lights, how many tuplets, etc. if it basically achieves the pulsar 23 odd meter goal, then everything else is cake.

I’ll fill one in to get on the list, but will leave a comment to basically disregard my opinion and build what feels right to you.

Cheers

Indeed, I am most certainly not designing by committee, or popular vote… but for example, I’d never have guessed that DIN Sync is was pretty much uninteresting to all (save one) without the input. I like to know my audience before I build something for more than just me.

1 Like

I’m hard at work on the second revision. This is what the “rev. B” boards will have:

Connections:

  • Binding posts for connections with Pulsar-23
  • Banana jacks for connections to Serge, Buchla, and Ciat-Lombard gear

I’ve decided to leave off 3.5mm. jacks for Euro rack gear in this version: They don’t work well with the kind of enclosure that works for the Pulsar-23. If you have a Pulsar-23 (as most of you do or will), then the Pulsar has converters.

No jack for DIN sync, but it will work if you make a cable with clips or bananas on the end.
MIDI over USB only. TRS jack would be nice, but needs much more thought… perhaps in a v2 version.

Functions:

I haven’t designed it yet, but I’m pretty sure I can add a 2nd tuplet generator with the output optionally replacing the measure or beat output (configurable form the UI).

LEDs:

There will be a jumper that lets you disable them, if you prefer.

Enclosure:

The enclosure will be a bamboo box where the lid becomes the stand so the unit is the same table height as Pulsar-23. It has been carefully designed to fit along the back of the Pulsar. See the images here:

Pricing:

I still haven’t finalized the BOM… but my current ballpark is:

  • Kit w/case & banana jacks: $100 (easy build, all through hole, no SMT parts)
  • Assembled: $140

You can drop the case to save $15, and/or drop the banana jacks to save $10.
Prices could fluctuate by ±$15 as I nail down all the details.
And yes, it will be all open source & open hardware if you want to do it all yourself.

Purchasing:

The sooner you let me know you will want one, the sooner I can plan and get things going!

Timeline:

end of Jan. — Finalize design after feedback from rev A. testers, order test build & parts
mid. Feb — Put in order for build… if you want one, I need to know before Feb. 5
end Feb — First builds shipped
mid. Mar — Should be all shipped

Rev A. Testers Wanted

The revision A board is what you see in the feature video. It works, but has no case. I have two units that I’d like to send to testers. If you are interested in being one of the two:

  • You have a Pulsar-23 or it is already purchased and being shipped to you.
  • You are willing to update firmware from time to time (needs just a USB cable and a computer).
  • You’ll move the display and controller boards from the rev. A. unit to the rev. B. unit if you decide to buy a rev. B.
  • You live in a place where shipping to you from California won’t be too expensive.

If you’re interested, let me know via private message.

5 Likes

Awesome project!
I’ve responded to you by email yesterday.
Good luck with the next steps in realising the Pulsar Buddy.

1 Like

public repo on GitHub is up: https://github.com/mzero/pulsar-buddy

Two prototype cases… still not quite right, but getting there. Maybe I should design a bamboo case for the Pisound, too…

2 Likes

If you do design a case for the pisound, could you do it so the pi can host a heatsink and the pisound is connected via ribbon cable instead (side by side instead of sandwiched)? I’ve been considering putting my pi to more work than just pisound and when you start to turn it into a reasonably performant general purpose computer it starts to want a heatsink pretty badly.

Rev. B. boards back, built, tested, and working!

Very quick video here:

More info now up in the Github project Wiki: https://github.com/mzero/pulsar-buddy/wiki

If you’d like to get one from the batches I’m building this month and next, fill out this form: https://forms.gle/6PLBLpajDFj6HGya8

4 Likes

First “production” units

Full album of electronic assembly p0rn here: https://photos.app.goo.gl/LofDw62rXUN6PLfBA

10 Likes

And if you’re the type that reads manuals…
Pulsar Buddy Manual

4 Likes

How do these do with irregular or possibly feedback-loop-ing clock sources? like say I want to clock it from a twitchy Rollz-5 unit, and also send tuplets, for example, back into the unit, irregurarly affecting the ‘main’ output clock… will this continue measuring the input values and adjusting? If so, it would re-set every 2 measures, I think? This is pretty well addressed in the manual - use the Click input for this purpose, and accept some straying - but wanted to ask anyway, thanks.

Depending on what the twitchy stream is doing - the Pulsar Buddy will closely follow a moving average of the tempo over two beats. The output tuplets will follow this smoothed temp, speeding up and down, surfing the tempo “wave”.

If you are feedbacking the clocks - then you should experiment with different scales of clock sync (1/4 to 1/32) to see how this affects the feel.


Clock following is a bit of an art, and there are many engineering tradeoffs to be made.

The current implementation measures the rate every ext. clock event, but then uses a moving average, two quarter notes wide, of that rate. The rate is then further adjusted by a phase locked loop (so the 1 stays the 1), tuned to converge over one quarter note.

On the one hand, you want things to track as fast as possible, so that quick BPM changes by hand are tracked directly… on the other hand many sources of sync clock are often jittery over the course of a quarter note. (Not just MIDI sources, I’ve seen this in modern DIN Sync sources as well!) My choices in the current firmware reflect this compromise… feels responsive without being jumpy to me when I play with it.

You could easily recompile the firmware with different time constants, making if faster or slower as you need! Happy to help if you want to try this.


Lastly, a note about displayed BPM - and this slight rant applies to displayed BPM on all systems that are slaved to some external sync:

tl;dr: Listen with your ears, not your eyes. Feel the groove. Don’t be a slave to numbers.

If you simply display the clock to a tenth of a BPM, most users will freak out when they look at it. If the clock system is measuring the time between, say, 24ppqn clocks (DIN24 sync or MIDI sync), and displaying the currently measured BPM - then a difference in less than 20µs is enough to make the display flicker between 120.0 and 120.1. Of course, you can’t hear such a difference: It would take more than a full minute of being at 120.1 for the attacks to drift by a 1ms… and in that minute things will have long since averaged out.

In Pulsar Buddy I have yet another filter just on the displayed BPM. This makes sure that it doesn’t flicker with steady clocks (which are none-the-less not jitter free) at the expense of looking a little (but not too much) laggy when the clock slews. By example, Elektron takes the other approach in Digitakt: It’s very responsive, but twitchy (see no end of threads about this in their forums).

3 Likes