updated pin controller