adelyte / crescendo-for-crestron

Crescendo Framework for Crestron control systems.
https://www.adelyte.com/crestron/crescendo
Other
77 stars 26 forks source link

Add Volume Sliders for shared and local room. #91

Closed customihs closed 5 years ago

customihs commented 5 years ago

Could we add volume sliders as an option for controlling volume?

adelyte-chris commented 5 years ago

The signal chain for directly setting volume on Room and Area is already present via the [Volume~] input slot. What is missing is the logic for the sliders themselves.

The slider analog output value must be scaled to a number between 0d and 100d. Then it must be converted to a single-byte serial value (for example, 40d would become "\x28" not "40"). This is easy and only requires two symbols per slider (ASCALE and ATOS).

The difficult question is the actual slider behavior, which should be customized for the particular use case and actual hardware capabilities.

The answers to these questions can result in slider logic that requires dozens of signals per slider (or even a SIMPL+ module) and special logic if a mix of hardware is being used in the same system.

Do you have particular hardware in mind?

customihs commented 5 years ago

I am controlling a swamp.

On Thu, Sep 20, 2018 at 9:26 AM Chris Massey notifications@github.com wrote:

The signal chain for directly setting volume on Room and Area is already present via the [Volume~] input slot. What is missing is the logic for the sliders themselves.

The slider analog output value must be scaled to a number between 0d and 100d. Then it must be converted to a single-byte serial value (for example, 40d would become "\x28" not "40"). This is easy and only requires two symbols per slider (ASCALE and ATOS).

The difficult question is the actual slider behavior, which should be customized for the particular use case and actual hardware capabilities.

  • Should the slider send a value every time it moves?
  • Should the slider have "ticks", i.e. fixed increments that it can move?
  • Should the slider output be rate limited?
  • Should the slider output only change when the slider position stabilizes?
  • Should the slider input values be muted while the slider is in use?

The answers to these questions can result in slider logic that requires dozens of signals per slider (or even a SIMPL+ module) and special logic if a mix of hardware is being used in the same system.

Do you have particular hardware in mind?

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/adelyte/crescendo/issues/91#issuecomment-423182413, or mute the thread https://github.com/notifications/unsubscribe-auth/Anw1K25RYjLPn1VDm8hgV5y5xlwwKw-yks5uc5ehgaJpZM4WxRFS .

-- Lou Metz Intelligent Home Systems LLC Monmouth Junction, NJ 08852 Cell (516) 510-0476

adelyte-chris commented 5 years ago

In that case, adding sliders will be easy, though customizing them may still be tricky.

The logic is ready-to-go inside the SWAMP modules. All you need to do is create slider graphics and link them to an ASCALE and ATOS symbols to drive the [Volume~] slot in the touchpanel module.

If you want personal help, we do offer paid support with both hourly and fixed-bid options. Please contact us if you are interested.