A turn signal system for a vehicle, comprising: at least one controller; and at least one communications line coupled to the at least one controller, wherein the at least one controller is configured to: receive, via the at least one communications line, information indicative of a turn signal (110, 112) of the vehicle having been turned on and information regarding a direction associated with the turn signal; receive, via the at least one communications line, compass information indicative of which direction the vehicle was heading at a time associated with when the turn signal was turned on; receive, via the at least one communications line, compass information indicative of the vehicle having changed direction from the direction the vehicle was heading at the time associated with when the turn signal was turned on; determine whether a current direction in which the vehicle is heading is toward the direction associated with the turn signal (100, 112); determine a difference between the current direction in which the vehicle is heading and the direction the vehicle was heading at the time associated with when the turn signal was turned on; determine whether the difference is greater than a threshold difference value; when the difference is greater than the threshold difference value and the current direction in which the vehicle is heading is toward the direction indicated by the turn signal (110, 112), starting a timer to measure the time the vehicle is traveling at a current heading, wherein the timer resets each time the heading of the vehicle changes over a particular number of degrees that is different from the current heading; and when the timer reaches a particular time threshold for the current heading, make a determination to send a signal to turn off the turn signal (110,112) and send the signal to turn off the turn signal (110, 112) in response to the determination made to send the signal. at least one controller; and at least one communications line coupled to the at least one controller, wherein the at least one controller is configured to: receive, via the at least one communications line, information indicative of a turn signal (110, 112) of the vehicle having been turned on and information regarding a direction associated with the turn signal; receive, via the at least one communications line, compass information indicative of which direction the vehicle was heading at a time associated with when the turn signal was turned on; receive, via the at least one communications line, compass information indicative of the vehicle having changed direction from the direction the vehicle was heading at the time associated with when the turn signal was turned on; determine whether a current direction in which the vehicle is heading is toward the direction associated with the turn signal (100, 112); determine a difference between the current direction in which the vehicle is heading and the direction the vehicle was heading at the time associated with when the turn signal was turned on; determine whether the difference is greater than a threshold difference value; when the difference is greater than the threshold difference value and the current direction in which the vehicle is heading is toward the direction indicated by the turn signal (110, 112), starting a timer to measure the time the vehicle is traveling at a current heading, wherein the timer resets each time the heading of the vehicle changes over a particular number of degrees that is different from the current heading; and when the timer reaches a particular time threshold for the current heading, make a determination to send a signal to turn off the turn signal (110,112) and send the signal to turn off the turn signal (110, 112) in response to the determination made to send the signal. receive, via the at least one communications line, information indicative of a turn signal (110, 112) of the vehicle having been turned on and information regarding a direction associated with the turn signal; receive, via the at least one communications line, compass information indicative of which direction the vehicle was heading at a time associated with when the turn signal was turned on; receive, via the at least one communications line, compass information indicative of the vehicle having changed direction from the direction the vehicle was heading at the time associated with when the turn signal was turned on; determine whether a current direction in which the vehicle is heading is toward the direction associated with the turn signal (100, 112); determine a difference between the current direction in which the vehicle is heading and the direction the vehicle was heading at the time associated with when the turn signal was turned on; determine whether the difference is greater than a threshold difference value; when the difference is greater than the threshold difference value and the current direction in which the vehicle is heading is toward the direction indicated by the turn signal (110, 112), starting a timer to measure the time the vehicle is traveling at a current heading, wherein the timer resets each time the heading of the vehicle changes over a particular number of degrees that is different from the current heading; and when the timer reaches a particular time threshold for the current heading, make a determination to send a signal to turn off the turn signal (110,112) and send the signal to turn off the turn signal (110, 112) in response to the determination made to send the signal.