Finally finished! Bees-in-the-Trees Version 4.1 modified firmware for Braids now available


I’ve just sent links to Bees-in-the-Trees v3.6 to everyone who has hitherto expressed an interest in testing it. Here are the changes since v3.5:

  • a further bug in the way the unused portion of the Turing Machine shift register was being recycled has now been fixed. This bug was only evident if you adjusted the length of the shift register via the TRNG setting on the fly. It now behaves as it ought.
  • TRNG (shift register length) can now also be put under external CV control via the FM CV input, as well as PROB. Best to use the TRNG menu setting to set a minimum shift register length, and then use FMCV=TRNG to vary it upwards under voltage control.
  • the combinations of bit crushing, jitter and sample rate reduction available via FMCV has been rationalised slightly.

Version 3.6 really is the last of the Version 3 series. No more features! Only bug fixes henceforth! If there are no bug reports by the end of the forthcoming weekend (29th March 2015), then I will release compiled versions of v3.6 to the big wide world.

As noted above, there will be a pause of at least a month before version 4 is ready, possibly longer, because I have some other fish to fry (and some new modules to make, so I can hack their firmware…).


I lied! There will be a version 3.7, available for testing by the weekend. Thanks to some helpful advice from Olivier about the computational cost of integer divisions in Braids (not low, but not quite as bad as I thought), I’ve been able to add quantisation of the 1V/oct CV input to the Ionian major diatonic scale (C major etc) in just a few lines of code. I’ll squeeze in some other scales based on 12-tone equal temperament into v3.7. But not scales for just and other non-equal tunings, although Bees does have the ability to do harmonic series quantisation of the FM CV input.


Links to Bees-in-the-Trees v3.7 have been sent to everyone who has expressed an interest in testing it to date. Here are the changes since v3.6:

  • tweaks to the modulator rates (for MOD1 and MOD2) - the LFO rates have, in fact, been somewhat messed up since v3.5: they worked fine but it wasn’t possible to set the rates low enough. That is now fixed, and the modulators in LFO mode can now go down to quite slow rates (but not very low rates), while still going up to low audio rates
  • lots of scales have been added to the quantisation facility. So is now possible to quantise the pitch as determined by the 1V/octave CV input (and by internal modulation of pitch by MOD1 and/or MOD2) to a wide range of scales - see the table in the documentation. I pinched the tables for the scale quantisation from the source code for MIDIpal… Note that all these scales are still only based on 12-tone equal temperament tuning, thus they are only an approximation to the correct scales for the Hindustani ragas, Japanese, folk and Indonesian gamelan scales.
  • the same sets of scales are now also supported by the built-in Turing Machine.
  • unfortunately, the PRTC (particle noise) oscillator mode had to be removed to make space for the scale quantisation. The good news is that there also is now enough space to implement the stored presets feature planned for version 4. If you really miss the PRTC model, let me know. I thought it was interesting, but not very useful in practice.
  • the menu settings have been re-ordered, to bring the meta-sequencer and Turing Machine settings together.

Version 3.7 really is the last of the Version 3 series (have I said that before?). If there are no bug reports by the end of this weekend (that is, by Monday evening 30th March 2015 here in Oz), then I will release compiled versions of v3.7 to the big wide world.


Oh dear! I woke up in the wee small hours last night with an idea to improve the Turing Machine implementation in Bees-in-the-Trees, and thus we now have version 3.8.

Not much has changed:

  • previously, the WIND setting for the Turing Machine allowed the width of the read “window” for the Turing shift register to be set, in bits. This constrained the number of note values available to be selected from, to 2, 4, 8, 16 or 32 notes. But what if you wanted the Turing machine to choose notes from a palette of, say, 24 notes? You couldn’t do it. But now in version 3.8, you can! The WIND setting has been renamed SPAN, referring to the span of notes from which the Turing Machine can select. SPAN is continuously variable from 2 to 36. At low values of SPAN, the Turing sequence sounds restrained and quite sombre, but at higher settings, it sounds brighter and bubbly and more cheerful (and at very high settings, it sounds silly). The actual notes in the palette are determined by the SCAL setting, as previously.
  • plus, SPAN can also be placed under external voltage control, by setting FMCV to SPAN. A voltage range of about 0 to 5V will sweep SPAN from 2 to 36. This is added to the setting for SPAN in the menu, so a floor can be established, and the FM CV voltage used to increase it above that floor. Thus a slow LFO will move the mood of the sequence from sombre to happy and back again, sort of.
  • the menu order of settings for the Turing Machine has been adjusted to bring the main settings together for easier tweaking.

That’s all! No other changes.

Release of version 3.8 to the big wide world is imminent, in the forthcoming week, if no bugs are reported.


Here’s a quick-n-dirty track to demonstrate the new continuously variable note palette spans for the built-in Turing Machine in Bees-in-the-Trees v3.8. Three Braids are used, all in DRUM mode, all running Bees-in-the-Trees v3.8. The SPAN setting is slowly advanced from 2 to 10 on each Braids, and back again, over the course of the track. GAML (gamelan) scale used. Rhythmic triggers by a Mutable Grids. No other modules used, no filters, no post-processing other than light reverb, all one take, all melodies self-composed on-the-fly in real time by each Braids.


Beautiful stuff! Really have to dig into v3.8 later this week after getting a small gig out of the way tomorrow. Thanks for all the work.


I’m interested in trying this out :slight_smile:



very nice!


OK, compiled WAV audio bootloader files for Bees-in-the-Trees v3.9 is now publicly available - please see its project page.

Please read all the warnings on that page, but if you following the installation instructions there, you are unlikely to have any problems installing it, nor any problems re-installing Braids v1.7 or later, if you so wish. About 25 testers have installed it so far, all without mishap or incident.

Many thanks to all the testers who have helped immeasurably with its development by trying it out, providing valuable feedback, suggestions and bug reports, and recording demonstrations of its features and capabilities.

Many thanks also to Olivier Gillet for providing extremely helpful tips and suggestions for improving the Bees-in-the-Trees code, and for providing early access to the new version of the Braids hardware so that Bees-in-the-Trees could be tested on it (it works fine!).


Are there any specific differences between 3.8 and 3.9 now?

Or is 3.9 just considered the public version of 3.8?


Sorry, I forgot to post a changelog for testers: TINT renamed to SEED, minor change to order of menu items, but no new features over v3.8.


Cool. Will update accordingly for sake of accuracy.

Thanks again for this great work. It’s opened up an entirely new and improved workflow for me.


@bakemono posting to a superseded thread> I’m currently enjoying v3.9, and making the most of the Turing Machine. Thank you so much BennelongBicyclist!

Thanks, I’ve had fun working on this, and my C++ coding skills have improved dramatically, from utterly abysmal to merely appalling.

Try combining the Turing Machine with the meta-sequencer, but with the meta-sequencer clock divider (MDIV) set to some multiple of the Turing Machine shift register length (TRNG), so that the oscillator model changes every few “bars” (where “bar” is the TRNG length). You can also transpose with the meta-sequencer, of course. Or turn it around the other way, so the Meta-sequencer provides an 8-step note/oscillator model/parameter sequence, and with TDIV set to some multiple of the meta-sequencer length (MSEQ), the Turing Machine will then semi-randomly transpose the meta-sequencer notes every “bar”.


I have jotted down some patch notes and suggestions for using Bees-in-the-Trees, more to come, contributions welcome.


I’ve just posted firmware files for a beta release of Bees-in-the-Trees v4.0. This release doesn’t contain code for storing settings as presets - that is still being worked on and will appear in v4.1 or v4.2. In the meantime, this beta for v4.0 adds two new oscillator models: BYT0 and BYT1.

Yes, ByteBeats has come to Braids! For background information on ByteBeats, see

More information and downloadable firmware files at


Here’s a demo of the byte beat oscillator models in Bees-in-the-Trees v4.0-beta. Recorded live using two Braids running Bees-in-the-Trees, each filtered through a Ripples filter (LP4 mode), with filter cut-offs modulated by channels of a Mutable Instruments Frames running in LFO quadrature mode. Reverb only, no other post-processing. The first part of the track uses the BYT0 model on both Braids, with the timbre, colour and pitch potentiometers slowly modulated by hand (no internal or external modulation sources were used). The second part is similar, but using the BYT1 model.


silkynight> Can we report bugs here? (my fine tune knob doesn’t seem to have any effect at all right now) . Did do a default reset after posting this and the fine tune knob definitely doesn’t work anymore.

The fine-tune knob only works if FMCV=FREQ, because the fine-tune knob shares an ADC input channel with the FM CV input (except in the revised Braids, which addresses this issue by using a separate ADC channel for fine tune). However, I have incorporated a work-around for this hardware limitation - the FTUN setting. Here’s what it says in the documentation:

There is a new menu item called FTUN (oscillator fine-tune). This allows very fine tuning of the oscillator frequency (pitch). Why is this needed, since Braids already has a fine-tune knob, you may ask? The fine-tune knob on Braids acts through the FM CV input. Because Bees-in-the-Trees re-purposes (some would say abuses) the FM CV input for several other purposes, there is no way to fine tune your oscillator using the fine-tune knob when these alternative uses of the FM CV input are enabled. The FTUN setting provides a work-around for this. FTUN defaults to 0, which represents zero pitch offset. Negative values flatten the pitch, positive values sharpen the pitch. Note that it is very fine-grained: each increment is less than one cent, and the range is only about one quarter of a semitone in each direction.

Note that this is an issue wit the official Braids firmware as well. For example, in META mode, there is no way to fine-tune the oscillator pitch. That’s why Olivier modified the way fine-tune works in the revised Braids. It would be possible to add something like FTUN to the official Braids firmware to address the issue in existing Braids as well. Obviously fine-tune via the encoder is just a work-around, though, and the hardware solution which Olivier has implemented is much better.


Great answer! Thanks, Indeed the FmCv was set to DCY1 hence why it wasn’t working.



@Bennelong wow![](, Bees just keeps getting better and better, not content with putting a Turing machine in there, we’ve now got part of an Equation Composer as well) Been having so much fun with the last few versions I can’t wait to try this when I get some spare time in the next few days.