Spartans Secure Car Device Firmware
Functionality
The secure car device will perform a startup routine when powered on, then will wait in a loop for a key fob device to begin an unlock attempt.
Upon receiving an unlock attempt, the secure car device will issue a challenge to the key fob device. It will allow for a prompt response, then validate the response. If a valid response to the challenge has been provided, and all features requested in the response are also valid, then the car will successfully unlock and enable the requested features.
Spartans Secure Key Fob Device Firmware
Functionality
The secure key fob device will perform a startup routine when powered on, then will wait in a loop for commands to come either from the Host UART connection or from the SW1 Button on the board.
When a button press is registered, the secure key fob device will perform an unlock attempt on the car device connected over the Board UART. It will receive and sign the challenge issued by the car device, and will send back this response along with the currently held feature packages.
When a host command is registered, the secure key fob device will perform the requested operation if it is deemed appropriate. An unpaired fob will follow commands to become paired, while a paired fob will follow commands to pair an unpaired fob or to enable a feature.
Enabling a feature entails receiving the feature package from the host.
Becoming paired entails receiving and storing the necessary information from an already paired fob.
For a paired fob to pair an unpaired fob entails verifying that the correct pairing PIN is entered by the host, then sending the necessary information to the connected unpaired fob.

Log in or sign up for Devpost to join the conversation.