A system, comprising: a first control system configured to operate at a first clock speed; a second control system configured to provide an output to the first control system and configured to operate at a second clock speed different from the first clock speed; and a synchronization module operatively connecting the first control system to the second control system and configured to synchronize the first control system and the second control system such that the output of the second control system is timed to synchronize with the first clock speed, and further comprising an electric motor operatively connected to the second control system; wherein the system is configured to: start a loop sample timer to sample the clock speed of the first control system or to track the clock speed of the first control system, and the second control system is configured to; receive speed data regarding the speed of the electric motor; calculate an error of the speed of the motor as compared to a speed command input by the first control system; generate a new duty cycle command for input into the first control system to modify the speed of the electric motor; and input the new duty cycle command into the first control system when the synchronization module indicates that the loop sample timer has completed. a first control system configured to operate at a first clock speed; a second control system configured to provide an output to the first control system and configured to operate at a second clock speed different from the first clock speed; and a synchronization module operatively connecting the first control system to the second control system and configured to synchronize the first control system and the second control system such that the output of the second control system is timed to synchronize with the first clock speed, and further comprising an electric motor operatively connected to the second control system; wherein the system is configured to: start a loop sample timer to sample the clock speed of the first control system or to track the clock speed of the first control system, and the second control system is configured to; receive speed data regarding the speed of the electric motor; calculate an error of the speed of the motor as compared to a speed command input by the first control system; generate a new duty cycle command for input into the first control system to modify the speed of the electric motor; and input the new duty cycle command into the first control system when the synchronization module indicates that the loop sample timer has completed. start a loop sample timer to sample the clock speed of the first control system or to track the clock speed of the first control system, and the second control system is configured to; receive speed data regarding the speed of the electric motor; calculate an error of the speed of the motor as compared to a speed command input by the first control system; generate a new duty cycle command for input into the first control system to modify the speed of the electric motor; and input the new duty cycle command into the first control system when the synchronization module indicates that the loop sample timer has completed.