Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

Hardware/Firmware Integration notes given current situation around the virus.

Important Actions Items

  • Schedule Integration meetings (weekly) where members can find leads and talk

  • GPIO expansion board for controller board

    • Off-campus hardware task

    • Check with what we already have (breakout boards, controller boards)

    • Aashmika Mali or Micah Black to further define project and assign member

    • Add isoSPI to it

  • Josh Rong or Aashmika Mali to choose standardized connector for communication test points

  • Assign project managers for each subteam

Every ‘Module’ is a .c, .h, and .test file
A Library is a reusable Module.

Resources Available for Spring 2020

  • Arshan (going onto FYDP) - 'Firmware Supervisor' next term

    • To provide suggestions for unblocking, etc.

    • A couple of hours a week willing to dedicate

      • Code reviews

      • Meetings

  • Jess (2A SYDE) (unsure of coop location yet)

    • Depending on location, leading a team

      • Possibly Arshan will mentor him to

  • Gerald (has FYDP, but will be around to help)

  • Ryan (1B SE) (not around - Toronto)

    • Larger technical portion?

  • Jarvis

  • Avery

  • Mitchell Ostler

A lot of people, but not core members.

Arshan → Micah Bai Firmware Progress Meeting

Firmware will be coded, but low probability that integration testing will happen.

  • Arshan underestimated the work

  • Hit a lot of brick walls when interfacing with hardware

How will we go about this?

  • Assign one task to integrate with hardware

    • Will be a term-long project

    • Requires constant checking in, etc.

    • Arshan Khanifar can provide guidance (what to research, etc)

    • They will learn if they debug themselves, but will be a little slower

Integration Validation Tasks

All tasks could be assigned individually

  • Battery (Critical most complicated tasks)

    • Getting AFEs to talk

      • SPI on LTC6811

        • Voltage Measurements

    • Talking with the MUX

      • Bit-banging

      • Liam Hawkins or Micah Black to look in to communications and help firmware understand it - create a confluence page

      • Isolate the test pins for this part

    • Getting current sense to talk

      • Were having issues with the ADC communication

        • were using the SPI headers, must remove isoSPI IC as it drives the lines

      • We need 2 isoSPI boards that work in order to test this

    • Relays

    • Killswitch

    • Fan Control, Fan Sense

    • State Machine Achitecture (just for Voltage/Temperature)

      • Storage for AFEs

      • Storage for Current Sense

    • Fault Monitor (check predefined limits)

      • Interface with BPS Heartbeat Module

    • Data Broadcast

      • Goes through Fault Monitor

  • Charger Jarvis Weng

    • CAN connection to charger

      • Testing Script to test the CAN messages with Charger Interface board to controller boards

    • J1772 Module Jess Douglas Muir (Deactivated)

      • Control Pilot

        • Set FET to activate Charger

        • Measure PWM (accomplished)

      • Proximity Detect

        • Should work now (hardware issue)

  • MCI

    • Firmware has been tested with MSXII’s MCI board.

      • Except for cruise control

    • New motor controller changes required(WS22) Gerald Aryeetey (Deactivated)

      • Working on changes

      • Hardware to look into better chip for CAN translation for future plans, but no a priority

    • Fans, Relay module similar to BMS Carrier (make this a library)

    • Precharge test script to activate precharge, wait X seconds, then discharge

    • Test Project to talk with motors

  • Front/Rear Power Distribution Ryan Dancy

    • I/O Expanders

    • Muxes

    • Load Switches

      • Enable

      • Diagnostic Enable

      • Diagnostic Select

      • Diagnostic Readback

      • Current Readback

  • Power Selection Kyle Dyck (Deactivated) and we will give to someone else

    • GPIO for Valid Inputs, etc.

    • ADC Measurements for Current, Voltage

    • Monitor Module

      • Aux Battery Voltage, etc

  • Pedal Andrew Guo (Unlicensed) Jarvis Weng

    • Same board as MSXII

    • Has already worked well

    • Test projects

      • Throttle

      • Brake

      • Calibration (Written already, interactive - saves to persistant flash storage)

      • Mock pedal and mock throttle on the electrical mock-up

        • First Year Task for hardware

  • Center Console

    • Main Car State Machine

    • Buttons - PWR, D, R, N, Hazard, DRL button, P, Fault LED, RPI power control, RPI fan control

      • GPIO Inputs/Outputs

    • Software script to make sure that it is sending out the correct CAN messages.

    • Test script to show which buttons are pushed

    • Test script for power outputs to the Pi, etc

  • Steering

    • Digital Inputs for button pushes

    • Test script to show which buttons are pushed

  • Solar

    • MPPTs

      • SPI communication testing

    • Chip Select MUX for 6 MPPTs

    • I2C ADCs for voltage sense

    • ADCs on STM for temperature Sense

    • GPIO Relay Control

  • Telemetry

    • Pei Liang Guo

      • We need to test hardware

    • Application to show data

    • Backend

  • GPS

How can hardware help firmware?

  • Being there as the firmware is being tested

  • As a generalizations (that I know is not always true) there are many beginner mistakes that happen when firmware tries

  • Hardware assignees should be active and helping

How to make hardware validation faster?

  • GPIO Expansion board for controller

  • Hardware people learning basic firmware

    • Basic I/O validation

    • Maybe eventually incorporate this into the tutorial

  • No labels