I have an issue where digital pins are pulled to HIGH when powering up the Photon.
This causes a servo to jump from 0 degrees to almost 50 degrees until Setup attaches servo and sets it to 0 degrees.
If powering up again(example on-off, then again on-off) it will jump from 0 to 50 degrees then 50 to 100 degrees before it enters void setup.
Any idea why digital pin has a voltage other than 0v upon power up?
I believe your question may be answered in the following thread. As @Ric and @rickkas7 explained, if you are using pins D3-D7, they are used by JTAG and are briefly pulled high (D6 low and D4 floats) at startup.
3 Likes
@eLumaLite, to add to what @ninjatill pointed out, unless you change GPIO pins, the only other way to get around this issue is to add tri-state buffers between the pins and your servos which will only be enabled via a separate GPIO (non JTAG) once your code is running. The ENable pin on the buffers could be pulled (HIGH or LOW depending on buffers) so they default to tri-state on power up.
2 Likes
Thank you. I will give it a shot on other pins to see if I can correct the issue.
I am using D0 for the servo and D3 and D7 for 2 relays.