3HR Announcement Thread: Version 1.2

Hey everyone,

I just released my first set of modules: REPEAT3HR, XTENUAT3HR and FM3HR.

You can find more information about them here: Geekachuqt/3HR: 3HR VCVRack Modules (github.com)

Would love to get some feedback on them.

Plans for the moment:

Rewrite FM3HR to support Polyphony / SIMD (Done, down to <2% per osc core) Rewrite REPEAT3HR to support SIMD Rewrite XTENUAT3HR to support Polyphony? Not sure if there’s a use-case.


Thaks! Looks very interesting, looking forward to having a play with it.

1 Like

Hey so I played around with REPEAT3HR and FM3HR a bit. I put a small example on patch storage showing off what I did.

Not totally sure what kind of feedback your looking for but I’ll give you what comes to mind.

On the graphic design:

  • The red is a nice bold color. I Like it.
  • The black marks on the CV knobs are a little hard to see. I find I have to zoom in to see them and the red ring on the knob blends too much into the panel red, losing some of the definition of the knobs. Some of the knobs are also pretty close to ports on FM3HR and get covered by the cables, you can see this in the example patch I linked.
  • On FM3HR the input ports all have little arrows point at them. Not sure what those are suppose to represent. Maybe that is suppose to indicate they are inputs? At first I thought it ment there was some internal normalization. Also this brings up the VCV panel guild recommends “Use an inverted background for output ports”
  • I like the rest of the diagrams on the panels. I think it makes it pretty clear what is going on.

On the functionality of FM3HR

  • I Like the built in Frequency Modulation. I think they offer a lot of cool options for sounds.
  • My biggest complaint the module clicks for me when I have an LFO hooked up to the FM knobs, you can hear it in the example I posted. That clicking feels not desirable to me.
  • I wasn’t clear what the coarse input does compared to the 1V/Oct
  • Also the FM rows have two CV inputs, I wasn’t clear why there were two.


I really like feedback delays and I think including the decimation in there is a really cool idea. The decimation effect is pretty gnarly and I like it. I did wish there was a way to tone it down, I’m not really sure how to best to that but one idea would be a wet/dry knob for the effect, that way you could use it with the feedback.

I hope my feedback is helpful!

1 Like

If your interested I just published a short video on youtube of a large patch I made with FM3HR


I dig the typeface for some r3ason ^.^

For me the crossfade stands out and will make it into my patches the most. due to the slim size and i/o placement.

keep up the good work bud.

//a reply to Robin Hammer, not Patheros, Sorry clicked the wrong button :stuck_out_tongue:

1 Like

Thank you so much for your testing!

The graphic design is sort of still a bit of a work in progress. It’s not my area of expertise, and I’m still working on refining my style. I will take your input into consideration. :slight_smile:

Regarding the clicking you heard in FM3HR - I looked at your patch, and my conclusion is that the clicking is actually caused by unintended usage. My graphic design doesn’t really communicate this, but the ports you plugged Astro Vibe into are ment for audio signals - not LFOs. They allow you to use an external frequency modulation source to bypass the internal routing. They expect an audio oscillator source of the same note as the one being sent to FM3HR.

I uploaded a small example of this here: FM3HR Example | Patchstorage

The coarse knob actually gets disabled if you connect the 1V/Oct. In a future update, I plan to make it work as an octave knob when 1V/Oct is plugged in.

Regarding REPEAT3HR, I see your point about the mixability of the decimation. I will do some experiments to see how it would turn out.

Again, thanks a ton for your feedback! I think the main take-away for me is that I need to make my audio rate inputs distinct from my cv inputs, and generally put a bit more thought into my design.

Haha, thanks!

Yeah, the crossfader was the module I originally wanted to make. I often found myself reaching for this functionality with a combination of other modules, and wanted to consolidate it. I’m a big fan of modulating modulation to achieve complex cv shapes, and this module does that very well.

1 Like

thanks for the modules, i tested the osc, it s very nice ! it s seems the coarse tune dosen t work , on the knob and modulation.

i find the ui good looking and easy to use and sound is good

Version 1.1 has been released, and submitted to the library for update.

You can find a .vcvplugin file here.



  • Unified the graphics, and added indicators as to which ports expect audio signals and which ports expect CV signals.
  • Optimized all modules for SIMD. CPU load seems nice and low for all plugins, even with high polyphony.


  • Removed clamping on output.
  • Added polyphonic summing.


  • Added full polyphony support for both cv and audio ports.


  • Added full polyphony support for 1V/Oct port, CV ports, and external FM support. With external FM source, it now modulates per-voice.
  • Coarse knob now changes the octave when 1V/Oct is plugged in


  • New module added: NVLOP3HR

NVLOP3HR is a polyphonic dual multifunction envelope generator with curavture control and separate loop switches. In normal mode, it acts as a classic envelope generator sporting linear envelopes that are then exponentialized through the curvature control. The fun stuff lies in the multiplicative outs combined with the loop switches.

In loop mode, the envelopes will loop only while a gate is sustained. This allows you to easily create some really interesting rhythmical envelopes. It also loves to be patched into inself, by having one envelope modulate the sustain of the other, per example. Combined with the multiplicative outs, this can generate some really long, musical, psuedo-random CV sequences. Upon release, a looping envelope will immediately proceed to its release stage, and then end.


  • New module added: FMFILT3HR

FMFILT3HR is a polyphonic lowpass filter designed for FM manipulation. It features two FM ports with different algorithms (Additive and multiplicative) which can be controlled manually or with CV. The FM modulation affects the Cutoff frequency of the filter. At its core, the filter is basically two 18dB butterworth filters in sequence with different resonance values, resulting in just enough dirt to give the input a unique characteristic at high resonance values without having the filter explode in your face. FM modulation is done per-voice.

Enjoy, and let me know what you think!

Small side note: I have now successfully completed my project of creating my own, custom synth voice! Yay!


The updates are now available in the library. :slight_smile:


beauty. keep up the good work!


Wow, that really rounded up the set! Thank you very much :+1:

1 Like

Hey Robin, I just found your modules today and have been enjoying playing around a bit with them.

One issue I discovered with REPEAT3HR is that with the Time knob in default position, when I apply around -1.02v to the Time Control Signal input (with Time CV Control fully open), the module clips for several seconds - something to do with the delay time effectively reaching zero or beyond? Same thing happens for other Time values, with more or less negative cv to reduce delay length to zero.

After restoring the delay time to a positive value, the module passes dry and wet signals intermittently, and initializing it doesn’t restore it.

It looks like the Fine Control Signal input handles too much negative voltage without going into a clip state, but the module stops passing the dry signal while the delay time is too depressed.

Thanks for making such cool tools for us all! Best regards, John

1 Like

I’ll look into it. Thanks for the feedback!

Hi everyone,

Just pushed version 1.2, and submitted to the library for update.

You can find a .vcvplugin file here.



  • Fixed a bug where the time parameter could go to negative values, causing the algorithms to fail.


  • Removed the sinesaw waveform, as it was causing problems.
  • Added minBlep anti-aliasing to all the base waveforms. Note that the FM algorithms can still cause aliasing.
  • Removed the reset input, as it wasn’t actually implemented anyway. :upside_down_face:


  • New module added: GLTCH3HR.

GLTCH3HR is a threshold-controlled looper designed for easy generation of musical stutter and glitch effects. Upon receiving a control signal that exceeds the threshold value, it will record 0.5s of an input signal. After a length of time equal to the start time-point plus the length of the section that will loop, it will begin playback of the recorded signal, and will replay the section of the recorded signal corresponding to the start and end parameters so long as the control signal is higher than the threshold. The section can be manipulated during playback, and can even go in reverse by adjusting the endpoint to be lower than the start point. When the control signal goes below the threshold, the looper will finish the currently playing loop, then stop replay and empty its recording buffer, and is then ready to start recording a new signal. I also included a simple volume interpolation algorithm that allows you to somewhat combat the occurance of clicks at the loop point, but this can also be turned off, if so desired. This parameter is not CV-controlled, as due to the way the module is written, changes to it will not apply during playback.

Here is an example of GLTCH3HR activating, and replaying a small section of a recorded LFO, and then stopping at the end.


Here is the same example with the end-time modulated with a sinewave:


Please note that it does not pass through the input signal. It will only output the generated stutters, and as such is best used with “send”-style patching.

Enjoy, and let me know what you think! <3


would like to try it, but GLTCH3HR does not show up in the browser…(win7)

If you are trying to access it through the library, it hasn’t been updated yet. It’s queued for processing at the moment.

If you want to try it right away, you can download the .vcvplugin file I listed above, and put it in the plugins directory. VCVRack will then decompress it to the right location.

1 Like

Yes i was talking about the new version (2.2.0) but it does not shows up, altough GLTCH3HR.svg file is present in the res directory

I can confirm that it works for me. You are likely a victim of how VCVRack handles user accounts and modules. I’m guessing you have subscribed to specific modules of mine, rather than the whole plugin? If so, you will need to go into your user account settings on the VCVRack website, remove all of my modules from your accounts, and then readd the “whole” plugin instead.

When subscribing to specific modules, VCVRack basically puts the whole plugin on a blacklist, and then sets those individual modules on a whitelist that takes priority. The sideeffect of this is that this exact scenario can occur, as you now have a module in the plugin that your isn’t whitelisted on your account, and as such gets hidden by the plugin-wide blacklist.

1 Like

That worked fine, Thank You

1 Like