added optocoupler