calculator or accumulator module

I am trying to build something inspired by Misha (I realize @ZhouJing already has a lovely Misha inspired rack) but I am struggling with my current plan for implementation. I want to be able to use math to move up and down intervals.

Ideally there would be a module that functions like a calculator - you run an initial operation, but then that value is held and is a part of the next operation. Currently I cannot figure out how to do this without the built-in feedback of running a math module's output back into its input.

Could a calculator module be a future module?

Comments

  • edited June 2023

    This has been discussed before (to be more precise, a "formula" module) and I guess if enough people ask for it, it might happen.

    Here's a simple up/down counter without feedback.

    If you need arbitrary step values (like inside a scale) then adding a Graphic Shaper with quantized pitches could help.

  • A fórmula module would be great, I’m not sure it would be useful for many as its kinda niche.

    And we would need more than simple arithmetic. I don’t see Giku seeing this as much of a challenge, I rather he keeps doing combustor type things.

    But sure, a math module where we could write formulas (even if it was like bitwiz type of 8bit processing) would be crazy

  • edited June 2023

    One thing I would really like would be the ability to feed a number directly to a parameter. Like have a number module with “100” and connect it directly to an env decay, fe. Only way I know to affect knob values is with modulation (and morph)

    why can’t you feed a number to a module’s parameter directly? For audio it would be a DC offsett, but for CV it would be useful

  • Have you tried the math\ integrator module?

  • @ZhouJing I might need to give the integrator a try. I don’t fully understand what it does - I never took calculus.

    @rs2000 does your solution account for different values up/down instead of just single increments?

  • You don't really need to have knowledge of calculus to use the integrator. Every time a gate signal enters the integrator, the integrator accumulates the value of the cv signal, and I think it should work for your needs.

  • You can always scale the output of each Counter module to have at least a constant increment.

    @ZhouJing is correct. I've always complained about the legacy Integrator module not really working like an ideal integrator, rather like a simple analog circuit and thankfully, @giku listened and acted! 😊

    When using the new Integrator, make sure to set its range wide enough as to avoid clipping values inside your intended range.

    It's "Wrap" mode, jumping to the opposite end of the scale when the range limit is reached (works in both directions), could be quite useful when walking along intervals within a limited range. Kind of like a mathematical arp function with pre-adjustable fixed limits 😉

  • Thanks guys! I think integrator is the right module. I was missing the gate input.

  • edited June 2023

    hm, so explain to me please what the new integrator does? @rs2000

    I understand what the old integrator does to noise and cv ...

    but the math side of things is a mystery to me ^^

  • edited June 2023

    Explained simply, whatever you drain from or put into the bucket, stays there. Like an adder that always remembers its last result and goes from there.

    The Gate input tells it when to add to or remove from it, and the Signal input determines the amount (positive=add, negative=remove).

    The old integrator had a lossy "Loch Im Eimer" (no, this is not a barrier lake in Scotland) while the new integrator is perfectly sealed.

  • 🙏🏻

  • edited July 2023

    A formula module would be very useful! Analogkit, a great but sadly abandoned modular app has an expression module which makes math stuff way faster than adding mathematical and number modules in Drambo. So if you want to add two signals together, multiply them by a third and subtract 2.5 from the result, just type ((A+B)*C)-2.5 and it dynamically adds the inputs. You can even add complex functions and do math with the sample rate and one sample delays, which allows all kinds of programming that goes over my head.

  • Maybe just a subset of arithmetic operators, some sines and exps, without breaking the feed forward philosophy of Drambo.

    I mentioned lua, not because I know anything about it, just because it seems to be embedded everywhere these days. I assumed it was like python, not just for scripting, you can surely do dsp in python.

    If I would vote for things, this wouldn’t be a priority though

  • I remember an FFT algo with display coded in AnalogKit. What an amazing piece of software! Looks simple but is surprisingly deep.

    Unfortunately, the flawed online library/project database made me stop using it.

  • edited July 2023

    @pedro I think that a dedicated DSP-focused language would make the most sense. Never liked Lua by the way, Python always felt much more convenient to me.

  • Yep, someone even put together a crude version of the Flappy Bird game haha. Shame it wasn’t developed further, really was a joy to patch with. Still runs but only sounds right if you connect it to an audio interface and the online stuff is broken.

  • An expressions module where you could configure inputs and outputs and do all sorts of math within would be great.

  • edited July 2023

    Like I said I don’t know lua, although I read a bit about it lately. The guys on the vividshapper thread on the ABF seem to be having fun.

    I did a fair bit of programming on python for fun (as I don’t program in python for a living). I love the language.

    But ok, let’s bring a supercollider module to Drambo. Or csound (which I used to be into 2 decades ago) 😅👍

  • Or you know, we could skip to the chase and…. DramboGPT

  • edited July 2023

    +1 on both parts. Lua is fine but python is my goto.

Sign In or Register to comment.