Embedded Software Assignment
Background: In the vehicle ecosystem, indicators play a very important role by nudging the other
riders/drivers. Left and Right indicators are represented concerning the User.
➢ The left indicator represents the User shall take the left turn/line.
➢ The right indicator represents the User shall take the right turn/line.
➢ In hazard light, both left and right indicators toggle simultaneously. The Hazard Light represents that the user
is facing some problems in the commute.
Task:
1. Develop the software for the indicator module according to the requirements below and test it on the
evaluation board.
2. Base Software development shall be developed over the C programming language
3. Application software shall be developed over MATLAB Simulink and then use the code generator to
generate automatic C code and merge with Base Software to generate binary files.
Required Materials :
● MicroController Kit to execute the code
● UART TTL which is used to log the UART data
● Two Push Buttons which are used as left & right indicator buttons
● Two LEDs which are used as left and right indicators
● Flasher tools for the controller
● Jumper wires may be required to connect the Buttons / LEDs
Technical Requirements:
● If the left indicator LED is OFF, then pressing the left indicator push button for 1 sec will turn ON the
Left indicator LED. The same is the requirement for the right indicator.
● If the left indicator LED is ON, then pressing the left indicator push button for 1 sec will turn OFF the
Left indicator LED. The same is the requirement for the right indicator.
● If the right indicator LED is already ON, then pressing the left indicator push button for 1 sec turn OFF
the right indicator LED, and turn ON the left indicator LED.
● If the left indicator LED is already ON, then pressing the right indicator push button for 1 sec turn OFF
the left indicator LED, and turn ON the right indicator LED.
● Switch ON any of the indicators will toggle the LED (s) ON-OFF-ON for every 300 msec
● Button press events shall be captured over GPIO and LED shall be driven over PWM
● Button press events, LED power status, Left / Right Indicator engagement status shall be published
over UART
● 100 msec Scheduler shall be used to call the tasks in Base and Application software/
● If both left and right indicator buttons are pressed simultaneously for 1 sec then hazard light activation
shall take place.
● Deactivation of the hazard light shall be performed by pressing the left/right indicator button press for 1
sec.
● UART, GPIO, PWM, and timer driver development shall be implemented under the base software
category. It shall be modular, scalable, and developed in C Programming Language.
● Indicator engagement, disengagement, and toggle functionality shall be implemented in the Application
category and it shall be modular, scalable, and Developed in MATLAB Simulink. MATLAB-generated
code shall be integrated with Base software.
● Button press signal/pulse should be generated only once for each button press event. Multiple signals
shall not be triggered if the button is pressed and held for a longer duration.
Submission Requirement: Create the software document for “indicators control over mobile phones(using
BLE Protocol)” covering below
1. High-level Architecture and Software Requirement Specification
2. Your Github link of the code that you generated and checked-in.
3. Google link of the Video Recording of the working module in the zipped format to be added in the
document
4. Link of UART Log