Hello,
It would be really nice if there was a richer interface for the UI controls. Right now they are single directional, I.e. The control is an input to the pattern but the pattern cannot feed back to the UI - E.g. If you want to set a default value somewhere in the middle of the scale.
It would also be nice to be able to set a specific range (Min / max) for the value rather than 0>1 and to display this more meaningful value next to the slider.
For the bi-directional portion, the sliders could simply be changed from a function to an exported variable with a specific name (E.g: export var sliderSpeed = 0.5;
) which would also allow the initial value to be specified. For the minimum / maximum, you could also use specially named variables or perhaps a special comment format. (JSON after a triple slash? export var sliderSpeed = 1000; /// { minimum: 500, maximum: 2000 }
) You could even use this format to add additional UI information such as the units)
The function format can still be used in addition to this change, the function could still be called whenever the slider is changed and could take two parameters - A fractional (0>1) value and the scaled value (min>max).
PS: I appreciate that you’ll want to keep the firmware closed source, in particular around your proprietary scripting language - But have you considered open sourcing the UI portion?