Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Purpose:

The steering board allows the driver to control important features of the vehicle as listed below:  

  • Horn 

  • Lights 

  • Cruise control 

  • Left/right signal 

  • Regen braking (tentative)

  • Radio push-to-talk (tentative)

In the car we have a steering stalk. The steering board needs to detect the stalk movement to a certain position and act accordingly (ie. using the left signal).

...

The steering_digital_task is responsible for the horn, cruise control (cc) on/off, cc increase speed, cc decrease speed, radio push-to-talk (ptt), and regen braking. For each digital signal, the task will send the appropriate CAN message. You will need to edit the steering .yaml file to change the CAN auto generation. After that you can use the setter and getter header files to fill in your CAN messages.

...

data for analog_signal: 8 bytes (4 empty, 4 filled) (note that these are just example values and may not appear in the car itself)

  • 0x00000000FFEEDDCC

  • 4th byte: example of possible light id

  • 3rd byte: example of possible state for on/off

  • 2nd byte: example of another possible light id

  • 1st byte: example of state for right/left signal

digital_signal:

The digital_signal CAN message will send four two bytes: horn, cruise control (toggle on/off, increase speed, decrease speed), radio ptt, and regen braking.

From left to right, first byte will be the state of the horn. Second byte should be the cruise control command. Third byte will be the radio state (not yet finalized). Fourth byte will be the regen braking “is_race_mode.”

  • 0x000000000x000000000000FFEEDDCC

  • 4th 2nd byte: example of horn state

  • 3rd 1st byte: example of cruise control command

  • 2nd byte: example of radio state

  • 1st byte: example of regen braking “is_race_mode”

Info

Disclaimer: Project design is based off old MSXIV steering project (https://github.com/uw-midsun/firmware_xiv/tree/master/projects/steering headed by Avery Chiu) and is subject to change for future cars. Please see firmware leads for most up to date design.