added PWM to hal