monome / ansible

http://monome.org/docs/ansible
GNU General Public License v2.0
67 stars 26 forks source link

More robust external clocking? #102

Open imminentgloom opened 2 years ago

imminentgloom commented 2 years ago

I wonder if it is possible to allow the module to accept a wider range of external clocks?

From the tests i have been able to do, I think only unipolar signals above 0v consistently trigger a new step.

When I try a bipolar squarewave from a LFO, steps trigger both in bursts and not at all. Holding button 1 on the module to bring up the time page shows it switching between external and internal mode as the voltage drops below 0.

Modules tested: Maths and Contour 1 work Just Friends (both sound and shape) and Erica Black Modulator v2 do not work

ngwese commented 2 years ago

I don't off the top of my head know how much this is a hardware limitation versus a software limitation. In general I assume that modules with clock inputs expect unipolar inputs so I have a WMD SPO, WR COLD MAC, or Maths handy to scale, offset, and sometimes rectify bipolar signals that I'd like to use as a clock.

imminentgloom commented 2 years ago

A comparator also fixes the issue handily. I think I wouldn't have asked if JF worked in shape mode for me.

Part of my reasoning is based on how much of a force multiplier Ansible is in a small system, and that being able to clock from more arbitrary sources helps keep things small. It also, to me, fits well into the sort of post-serge "it's just voltage"/(patch-)programmability vibes that i get from the whimsical/monome world.

Mostly I'm just opportunistically shouting into the void fishing for a quick fix that might, or might not exist.

tehn commented 2 years ago

There's a chance that some signal conditioning could happen in the code, but the hardware itself is likely causing the issues you're seeing. It's a unipolar digital input.

imminentgloom commented 11 months ago

Running the calibration routine in JF's latest firmware (v4.6.0) that zeroes the outputs lets me reliably clock ansible while in shape-mode.