Gems of Wisdom



Design the state machine together!

Nail down how each state machine communicates with others, and develop a common list of events and event parameters that everyone adheres to.

Clarify shared terminology before starting.

Start very early so you have time to ask questions during office hours.

Getting the hardware set up is harder than actually coding it to do what you want.

Sometimes while writing the code, you will realize that you need extra timers or that you need to revise your state machine that you didn’t realize while working on the pseudocode.

Have the pinout/schematic done first so that everyone is on the same page about where input and output pins are.

If you're stuck with debugging, ask your teammates for help earlier rather than later!