ToyKeeper / anduril

Anduril 2 Flashlight Firmware and FSM UI Toolkit
GNU General Public License v3.0
226 stars 56 forks source link

Bug: wrong channel_mode during animations #64

Open readableness opened 5 months ago

readableness commented 5 months ago

Cycling {strobe -> off -> ramp} doesn't maintain and restore channel_mode (tint mix) during smooth_steps.

Steps to reproduce, for example on a 2-channel light with ramp using default CM_BLEND of both channels and default USE_SMOOTH_STEPS enabled:

  1. Set strobe-mode candle to CM_CH1 only (repeat 3C until set for a single emitter channel)
  2. Enjoy your candle (0C)
  3. Turn off candle (1C). Observe unpleasant activation of second emitter channel during fade animation to off.

Without the additional restoration of ramp's channel_mode during event == EV_tick, the channel_mode can be incorrect during smooth animation to on, jumping to correct at animation end.

Fixed by #63