You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
NB: the discussion is focused on allowed redefinition of the to() to forward the values over the i2c bus. this is likely related to #67 in that it's based on ASLs that do things other than control the CV outputs.
I like the idea of using asllib-style helpers for ii commands. There could be 2 backends: 1) breakpoint style for modules that have ‘slew time’ built in, 2) streaming mode for just setting values continuously with some update interval param.
If anyone has proposals for syntax that’d be a good start. Maybe something like:
a streaming service where the values are calculated on crow and streamed to the follower at a user determined rate.
a breakpoint approach where each to is implemented as a .slew and .volts pair
a combination of the above, using small linear-slewed segments based on actual output voltages
The 2nd option is easiest to start with as it's a direct replacement for to and only requires some method for tracking time (ie an ASL which doesn't calculate slopes, instead just decrements a timer). Sacrifices the ability to do non-linear curves (unless the destination device supports those too).
First option is only real option for devices that don't support 'slew' commands for the destination parameter. User must have control over interval as we want as low as possible for less 'steppiness' , but this is a tradeoff against bus stability (especially if controlling multiple simultaneous channels).
Last option is likely an unnecessary complication. It's limited in scope (only works on devices with slew commands), is worse in terms of time accuracy, and benefit is small compared to option 2.
The text was updated successfully, but these errors were encountered:
This can likely be written using the new norns clock module once it's ported to crow, and then turned into a small library that wraps the same contexts. it could then have ii versions of asl functions, and wouldn't require drastic changes to either ASL or ii handling.
From https://llllllll.co/t/crow-help-general-connectivity-device-qs-ecosystem/25866/475
NB: the discussion is focused on allowed redefinition of the
to()
to forward the values over the i2c bus. this is likely related to #67 in that it's based on ASLs that do things other than control the CV outputs.I like the idea of using asllib-style helpers for ii commands. There could be 2 backends: 1) breakpoint style for modules that have ‘slew time’ built in, 2) streaming mode for just setting values continuously with some update interval param.
If anyone has proposals for syntax that’d be a good start. Maybe something like:
Note how this could be done as:
to
is implemented as a.slew
and.volts
pairThe 2nd option is easiest to start with as it's a direct replacement for
to
and only requires some method for tracking time (ie an ASL which doesn't calculate slopes, instead just decrements a timer). Sacrifices the ability to do non-linear curves (unless the destination device supports those too).First option is only real option for devices that don't support 'slew' commands for the destination parameter. User must have control over interval as we want as low as possible for less 'steppiness' , but this is a tradeoff against bus stability (especially if controlling multiple simultaneous channels).
Last option is likely an unnecessary complication. It's limited in scope (only works on devices with slew commands), is worse in terms of time accuracy, and benefit is small compared to option 2.
The text was updated successfully, but these errors were encountered: