Racket Science Modules

A topic for discussion of Racket Science modules, I want to make them as useful as possible so would be grateful if people would suggest features etc here.

I sometimes build ‘cover’ patches so I can jam along with my favourite tunes, sort of. Recently I’ve been building a Doors-o-matic Riders On The Storm patch (or Sliders On The Storm with Boogie Bay thrown in :sunglasses: ) and in order to set a quantizer so I can jam along without hitting sour notes I had to pick through the midi file to work out the scale as my ability to work out such things by ear is virtually non existent. It then occurred to me that a note heat map might be a handy thing to have, had a look through the module browser and there doesn’t appear to be one (please correct me if I’m wrong), so I’ve built a quick prototype:


Here it’s being fed the falling rain phrase and showing the scale. Currently two inputs, V/Oct & Gate. Will probably add a reset button, maybe a control to adjust how quickly the light brightness increases. Is this useful for others? If so what else might you like to see in this module?


I like it!

1 Like

Sorry for my ignorance, but what should the note heat map do? I’ve never heard the term “note heat map”.

1 Like

I think each note gets “hotter” if its V/Oct is received. Could be a helpful module in some cases.

1 Like

This looks really useful, I would definitely use it.

1 Like

Seems like a nice idea, a good way to get feedback into your system. Could we have outputs for the most commonly and least commonly played notes and voltages for each note?


Love this idea!

1 Like

Can you give an example of how you’d use this?

Latest iteration:


Reset button added, heat also fades over time.

For those who can compile from source and would like to test: https://github.com/ContemporaryInsanity/RacketScience

You’ll also get an undocumented work in progress (currently called RSScratch) which is basically Vector Victor with knobs on and graphics, currently a rather large module, probably best ignored for now. Also Module From Hell, which is still subject to change. I can only test on linux, please let me know of any issues.

Finally, this is horrible:

        float octave;
        float note = std::modf(cvIn, &octave);

        int noteIdx = (note + 0.08f) * 12; // Bodge

I know there’s a far more elegant way of doing this which for the moment escapes me, suggestions appreciated.


        int noteIdx = (int(round((cvIn + 10) * 12)) % 12);

One of the problems with using feedback is getting information that you can feedback into your system. In these patches (https://www.youtube.com/watch?v=5qTDRYNDP3A and https://www.youtube.com/watch?v=9c5WbCZylT4) I’m feeding back Nysthi p2v units into oscilators and using the unreliability of the modules to create pitch variation. What I’m thinking about a module that collects the values from a module and delivers an average so that you could either feed that value back into the system or it’s opposite.

TL;DR i am a crazy person and i like making weird noises.


What I’d like more of are probabilistic sequencers and quantisers. (; So your module keeps track of note frequency in a certain time frame to adjust brightness? That means you can compute percentages you could use to draw notes on a trigger which match the incoming signals note distribution. No?

1 Like

Module From Hell now sixteen times worse.



So an output for the ‘heat’ of each semitone, plus a most & least used note cv out?

Other random thoughts:

Controls for heat accumulation & retention / loss rates.

Currently it counts gates, how about a note total duration mode ignoring gates?

is the heat map module available?

If you can compile from source, yes. Hoping to submit it (and a variant) to the library some time this week.

Racket Science Version 1.1.0 has been submitted to the library so should appear soon.

It includes HEAT, the note / octave heat map, REHEAT is in development and will implement heat outputs and least / most used note outputs as requested, heat accumulation and loss controls and most likely the option to count note duration or gates.

Also included is MODULE FROM HELL and an updated BOOGIE BAY H8 with invisible scribble strips (click on an underscore to enter text).

Basic colour choice is also included in all modules apart from Vector Victor (keeping that as is as it was my first module, new version with knobs on coming soon). Click the very top left of any module to change colours.



Reheat beta:


Reheat coming along nicely.

The individual semitone & octave outputs give a ‘heat’ voltage from 0 to 10. I’m not sure how to go about setting the outputs for hottest & coldest notes / octaves. Initially I figured I’d just output note values (so C=0V, C#=0.0833V etc) but what should I output when there’s no heat on any notes? If I output 0V that’s a false positive for C. Open to suggestions.


About your “no heat” question, would it be possible to have a kind of latch mode? So that the last heat note is held untill a new heat note gets activ. But maybe I don’t understand the whole heat concept :wink: or maybe if there is no heat in any Note, would it be maybe possible to quantize the heat to a note scale? Or …

1 Like

i tried out the heat map thing. the lights dont stay on long enough to get a useful reading. they just sort of fade away too quick. also the color scheme really messes with my red green colorblindness.