crow 1.0.3
It may be out of character, but these crows can now fly in non-linear paths. The output library has been updated with ‘shapes’ to apply over voltage slopes. This means easy ‘sine’ LFOs, plucky ‘log’ envelopes, or many weirder options…
New ii functionality allows for multiples of a single device to be spoken to (eg. Telex-I, ER-301), and some backend improvements have made the system more responsive, giving faster metros & ASLs.
To update crow, follow the instructions on the update page.
- NEW ‘shape’ parameter for outputs
- NEW Kria
ii commands extended @csboling
- NEW multiples of the same
ii device are addressable (eg. ii.txi[1] and ii.txi[2] )
- FIX CPU usage dramatically reduced (improves overall responsiveness)
- FIX
ii messages are now clamped to available range
- CHANGE 6 timers accessible (for
metro(), delay() ). was 7.
Crow’s Max & Max-for-Live patches have also been updated with big stability improvements, as well as some patching refinements. See the new thread!
Quick reference for the new shapes (based off these interpolators):
'linear'
'sine'
'logarithmic' -- or 'log'
'exponential' -- or 'expo'
'now' -- go instantly to the destination then wait
'wait' -- wait at the current level, then go to the destination
'over' -- move toward the destination and overshoot, before landing
'under' -- move away from the destination, then smoothly ramp up
'rebound' -- emulate a bouncing ball toward the destination
Most asllib functions now take a shape parameter
output[1].lfo( 1.0, 5.0, 'sine' ) -- 1Hz, +/-5V sinewave
Whenever you use the .volts output assignment, the .shape will be applied. To slide to 5V over 100ms with a logarithmic shape:
output[1].slew = 0.1
output[1].shape = 'log'
output[1].volts = 5.0
Or if you’re writing ASL directly you can simply tack on the shape at the end of a to call:
to( 5, 0.1 ) -- 'linear' is assumed
to( 5, 0.1, 'linear' ) -- same as above
to( 5, 0.1, 'over' ) -- applies an 'over' shape to this segment
Reference documentation has all the new details called out.