I’ve been experimenting with the new random-waveform generator, and it’s behaving oddly. I have a preset programmed to run a single cycle of the generator at speed 127 with 1x multiplier, and instead I get a perpetual generator at that speed. Other single-cycle generators seem to be working as expected. Using an MC8 with firmware 3.9.1A.
I’ll also take this opportunity to point out something I noticed while experimenting with the waveform generator, which I had not previously noticed. If I set up a single-cycle generator with a speed of 500ms and a 4x multiplier, I would expect to get a single cycle of the LFO lasting 125ms. Instead, what I appear to get is 4 cycles of the LFO lasting 500ms total. This is potentially useful in certain circumstances, but it means that the shortest possible single-cycle generator is 427 ms rather than (427/8 = ) 53 ms. This is relevant to my previous point about the single-cycle random waveform because what I’m trying to do is to generate a new random value with each press of the footswitch, and it’s unclear (under current circumstances, anyway) if a new value is generated at the beginning or the end of that single cycle. If it’s at the end, 427 ms is a rather long time to wait between a footswitch press and a change in device settings.
I think we overlooked something about the random waveform, or maybe there’s no logical answer to this - since there is no shape, when do we expect the cycle to end if it is a single cycle? For a sawtooth up waveform, for example, a single cycle has a definite start and end point, which is the min and max value set in the engine.
Yes, currently, the multiplier multiplies the number of waveform in one cycle and the compresses it to fit one cycle. Yes, it logical to limit it to one waveform shape since it’s called a speed multiplier, not waveform multiplier. We’ll look into changing it in the next update so the speed multiplier just multiplies the cycles per minute setting.
Maybe I’m misunderstanding the way the random-waveform generator works? I expect it to output a single random value between the min and max parameters for each cycle of the engine (preferably at the start of each cycle, for response-time purposes, as I described). Set to “once only,” it should therefore output a single random value when run. At the moment, it seems to run in perpetual mode even when it’s set to once-only. Here’s a screenshot of the preset I’ve been using to test:
(Msg 2 is housekeeping for the other presets in that bank; Msg 3 is so I can turn off the generator if it fails to behave properly.) Using a MIDI monitor with this preset, I get a random value on CC41 about every half-second until I stop the generator manually.
So rather than selecting a fixed CC value for a standard “send CC” message, there would be an option to send a random value instead? That would be perfectly satisfactory for my use case. (The nice thing about the generators is that you can set the min/max values within which they work, and I can see applications where I might want a more limited range of values, but this would certainly do for starters.)