MUFF WIGGLER Forum Index
 FAQ & Terms of UseFAQ & Terms Of Use   Wiggler RadioMW Radio   Muff Wiggler TwitterTwitter   Support the site @ PatreonPatreon 
 SearchSearch   RegisterSign up   Log inLog in 
WIGGLING 'LITE' IN GUEST MODE

4ms SMR Firmware Mod - contemplation mode
MUFF WIGGLER Forum Index -> Eurorack Modules  
Author 4ms SMR Firmware Mod - contemplation mode
jonbutler88
Hi Folks,

Seeing as muffs seems to have survived another year, I wanted to share something I've been working on over the holidays. It's a mod for the 4ms SMR based on the latest v5 firmware, and adds a new mode called "contemplation mode". It's accessed by holding the rotate knob and flipping the envelope following mode switch to "slow" (similar to how you enter v/oct mode). Once in contemplation mode, each of the 6 channels generate a randomly triggered exponential envelope that controls the output level for the channel, effectively pinging each channel at random intervals. This makes a nice extension to the default patch, as it makes a generative melody in the currently selected scale without needing 6x envelope generators + random triggers.

Contemplation mode is itself split into 2 sub-modes, controlled by the pre/post switch. When set to pre, the sliders control the likelihood of the current channel pinging after the previous note has ended. At 0%, the channel will not ping again, between 0% and 75% the channel will be more likely to ping, and above 75% allows a channel to re-trigger and ping before the previous note has ended. In post mode, the likelihood of a channel triggering is fixed, and the sliders control the volume of each channel. In both pre and post modes, the exponential decay of triggered notes is randomly varied which causes a more random feel in pre mode, and a slow phasing of note order in post mode.

The level CV input controls the volume of each channel, attenuated by the slider position (exactly as it is in the regular SMR operation) - it does not currently affect the likelihood of pinging the channel in pre mode (although I am considering adding this). The 6 envelope outputs follow the curve of the exponential envelopes used to ping the channels, and can be self patched back into the SMR or elsewhere. The mods I have made are reasonably self contained, so when not in contemplation mode, things should work exactly as they do in the stock firmware. When in contemplation mode, most other features of the SMR (locking, morph, spread, etc) should still work as expected, although I've not tested everything and the usual warnings apply if you rely on the SMR working fully as expected.

I've attached my latest version of the firmware to this post - please try it out and let me know if there are any serious bugs. The firmware can be flashed as described in the manual and should be fairly risk free as you can always go back to stock. I'll keep this post (or thread) updated with the latest version if I make any other changes or refinements to my patch.

Enjoy!
Jon
srogers
This is awesome, thanks for posting! Will definitely give this a spin soon.
mOBiTh
cool! will def try this out cool
blakeq
Sweet this sounds great!
4mspedals
Great work! This is super fun!
Innerself2007
Awesome! Psyched to try this!
Thanks for the update
Pailo
yea this adds a whole new world to the SMR
karmadelic
wow, thanks for doing this and sharing it. it sounds like a lot of fun. will definitely try it out over the weekend. we're not worthy we're not worthy we're not worthy
adh82
Oh cool! This sounds great. Might have to try this out right now!
novim
This is a great idea. Thanks for your work, Jon. Would it be possible to hear a short audio demo?
magneteyez
Thanks for the effort! Anybody tried this out already?
jonbutler88
Thanks all for the kind words - I've been chatting with Dan at 4ms and it looks like we might even get this merged into the official firmware! It would probably need me to refactor a good chunk of it to iron out any issues, so any feedback from folks on here before I do that would be really helpful.

Regarding an audio demo, I'm away with work this week and I don't have the SMR with me, I might be able to get something recorded next week when I'm back though.
taylor12k
this is very cool.. my favorite oscillator just got better.... is there a way, or could there be, to slow down the rate of the pinging?
Phase47
Somebody post some audio examples! smile
jonbutler88
taylor12k wrote:
this is very cool.. my favorite oscillator just got better.... is there a way, or could there be, to slow down the rate of the pinging?


Yeah that's something I'd like to sort out. To be honest, I didn't really get my head around the random weighting algorithm I was using, so that's something I want to polish before releasing. In the looping mode where the sliders affect the volume, loop time is basically how long the envelope runs for. At the moment that's fixed with a small amount of variance added in, I don't know how to make that adjustable in that mode. In the mode where sliders affect trigger likelihood, I can definitely put more variance in the weightings to make triggers more sparse at the low end of the slider.
aerozepp
Cool!
donrock
jonbutler88 wrote:
taylor12k wrote:
this is very cool.. my favorite oscillator just got better.... is there a way, or could there be, to slow down the rate of the pinging?


Yeah that's something I'd like to sort out. To be honest, I didn't really get my head around the random weighting algorithm I was using, so that's something I want to polish before releasing. In the looping mode where the sliders affect the volume, loop time is basically how long the envelope runs for. At the moment that's fixed with a small amount of variance added in, I don't know how to make that adjustable in that mode. In the mode where sliders affect trigger likelihood, I can definitely put more variance in the weightings to make triggers more sparse at the low end of the slider.


In your mode, are any of the other two switches (CV Slew, Fast | Slow) used for anything? I have no idea how the code works, but maybe it would be possible to utilize one of those two to change what the channel sliders control? For example, flick the switch to fast to set likelihood, | to set volume, slow to set rate. Or any other set of parameters, that would benefit from having per-channel control.

Great work, by the way!
jonbutler88
Fast | Slow is used to select contemplation mode, and Pre Post is used to switch between the 2 contemplation modes as detailed in my original post. I don't use the CV slew switch for anything specific, so it can still be used as it does in the normal operation of the SMR - I didn't want to overcomplicate the mode selection.

The only thing I thought about changing was hardcoding the resonance to 100% and using the res pot to change the envelope decay rate instead, but I decided against it.
jonbutler88
Just updating this thread - I re-wrote the entire contemplation mode more cleanly and I've submitted it to Dan at 4ms for inclusion in the official SMR firmware. I've edited my original post so that it includes the re-written version, and I've recorded some really basic demos for those too reluctant to try it without them thumbs up

https://www.youtube.com/watch?v=Gzy336BRH_8

https://www.youtube.com/watch?v=FzEPy-EoCUc

https://www.youtube.com/watch?v=l1z90qL5oJc

Enjoy!

Jon
donrock
Just tried it out - this is awesome, thanks!
versipellis
This is awesome! Gonna try it this week.

Any thoughts on quantizing the pitch of each channel without needing 6x quantizers?
donrock
versipellis wrote:
This is awesome! Gonna try it this week.

Any thoughts on quantizing the pitch of each channel without needing 6x quantizers?


I'm not sure what you mean, it's already quantized to scales, which you can choose as in the main mode
episod
Updated the firmware on my SMR with this last night. You named the mode perfectly. With enough contemplation I might even reach a kind of comprehension with this module yet.
versipellis
donrock wrote:
versipellis wrote:
This is awesome! Gonna try it this week.

Any thoughts on quantizing the pitch of each channel without needing 6x quantizers?


I'm not sure what you mean, it's already quantized to scales, which you can choose as in the main mode


Ah, gotcha, I thought it replaced the main mode too. Thanks!
MUFF WIGGLER Forum Index -> Eurorack Modules  
Page 1 of 1
Powered by phpBB © phpBB Group