added gpio code