Software Design
Each service in the framework is shown below with the state machines (if applicable), pseudocode, and code listing PDF. After initially planning to use hierarchical state machines, the team learned that they were overloading their PICs and simplified to their final flat state machine design.