Pretty much what the title says - traffic signals that you can adjust the cycle rate via POT & request a walk signal via a push button.

This project is fairly easy to assemble - most effort went into scripting rather than laying out the prototype.


  • Variable Light Cycle: Using the pot you can adjust the frequency of how fast the lights change
  • Short Cycle Yellow: Code is also included to adjust the yellow cycle independently of the Red & Green (as a % of cycle rate)
  • Push Button Walk Request: Default operation is for the the Wait Signal to remain lit during a green light. Pressing the push button at any point will trigger a walk light on the NEXT green signal.
  • Flashing Wait on Green: The system will also start to flash the wait light part way through the green. Code is provided to adjust how long it waits (as a % of cycle rate)


  • 5 LEDs (1 each of Red, Yellow, Green, Organge & White)
  • One basic, normally open, switch
  • One potentiometer
  • One 10K Resistor
  • An Arduino board (I used the UNO)

(The POT is optional if you choose to fix the light cycle rate)


Pretty simple - attach the components as indicated in the Fritzing diagrams & load the code up in Arduino. I've commented all of the code so it should be pretty self-explanatory once you're in it to see where to adjust what.

Feedback Welcome!

This is my first 'from scratch' arduino project & first time using Frizting so would appreciate any feedback.