updated with named effects and PWM support