Skip to content

Releases: UBC-Solar/firmware_v3

v2.0.0: 2024 Post Comp Release

08 Aug 06:09
96d53a8
Compare
Choose a tag to compare

What's New

This release marks the final changes on the car when we drove in production at FSGP and ASC during the summer of 2024. The changes reflect necessary adjustments to meet scrutineering requirements as well as to improve driver QoL in relation to accelerating.

Below are the specifics of this release

  • Our previous over temperature thresholds were faults at 45C for charging and 65C for discharging and a trip at 45C. However, the scrutineers require us to fault every time we exceed a manufacturers threshold (so the trip at 45C is a no go and since the manufacturer specifies that 65C is the limit for discharge we need to add a fault state for that as well). Thus, we added logic to first check if we are charging or not and then from there check for the appropriate thresholds. See PR #151 for more details.
  • ADC noise on the pedal spiked just under 4000 at times which meant that the previous MAX_THROTTLE threshold would be passed and resulted in a fault message but more importantly throttle = 0.0 would be sent to the MDI and then to the MC. PR #151 fixes this issue by setting the limit to 4000 (still some room to distinguish a short circuit which would be closer to 4095).
  • PR #153 fixes an issue where the ECU triggered a fault yet no LED or telemetry information indicated this. We discovered that the issue is because noise is generated on the fault GPIO pins from the master board to the ECU (only at high currents with the solar arrays plugged into the battery). To solve this problem we took advice from a Scrutineer to use a spare GPIO (in our case the BAL GPIO) and set its value high initially. Then while the system runs, and there is high irradiance, if we actually get a BMS fault then the FLT pin is set to high and the BAL pin is set to low. If and only if this condition is met do we consider it a fault. Otherwise, if the BAL pin still showed high (due to noise) then we do not consider that a fault occurred. Hence we essentially added simple logic to do a checksum on our FLT data. Note that we do not send COMM or OT FLT info to the ECU because the FLT GPIO already encapsulates these. See PR #153 for more.

What's Changed

Full Changelog: v1.1.0...v2.0.0

v1.1.0: 2024 Brightside Comp Ready Firmware

07 Jul 08:00
78c340a
Compare
Choose a tag to compare

What's New

The goal of this release is to polish our firmware and get lots of on car testing to make sure our system is safe for driving, provides sufficient data, and implements important features such as regenerative braking. Additionally there were fixes made to issues such as the battery faulting due to noise exceeding the set current threshold.

  • We added a new git hash message for the MCB which indicates what commit hash is currently flashed on the board. This information tells us if we need to flash the latest firmware onto the board (because someone's testing branch is on it) or if we can leave the board as is (#130).
  • We added a pull request template to make sure that all aspects of the PR are updated to be compatible with the rest of the firmware and also to enforce testing work before merging (#135).
  • Fixed a bug where CAN messages would not be sent due to the read_CAN_task being starved by the GPS task which had no delay. Additionally this PR fixed extended IDs not being handled correctly (#136)
  • PR #134 fixed bugs with the MDI losing floating point accuracy as well as the fixing the regen logic on both the MCB and MDI code.
  • PR #140 fixed an issue where current spikes from noise go over the threshold for the analog watchdog by checking the number of times the threshold was exceeded in a window. This ensured that we did not fault the battery over noise and actually reported a fault when the issue is persistent.
  • PR #141 fixes a path not found issue when running the DownloadXML.py script. This also updates the memorator README.md.
  • Lastly, PR #138 added cyclic data to the MCB for the vehicle velocity. This will report a fault when the MDI does not report the vehicle velocity in a given time frame.
  • Fix: MCB now toggles BOTH LED 1 and LED 2 on CAN Tx. This is because the opposite LEDs dont work on the main and spare MCBs. (#146).
  • Fix: DID firmware fixed wrap around characters on the display (#137).

Generated Release Notes

Full Changelog: v1.0.0...v1.1.0

v1.0.0

15 Jun 21:17
69b99f6
Compare
Choose a tag to compare

Summary

  • This FW release contains production code for driving Brightside.

What's Changed

Full Changelog: v0.4.0...v1.0.0

v0.4.0

05 Jun 06:14
c7149fe
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v0.3.0...v0.4.0

v0.3.0

23 May 05:47
eaa8a1d
Compare
Choose a tag to compare

What's Changed

Notes

This release corresponds to Sunlink release v2.1

Full Changelog: v0.2.0...v0.3.0

v0.2.0

02 Apr 03:50
Compare
Choose a tag to compare

What's Changed

  • User/boomo12/ecu/ecu_iwdg by @Boomo12 in #85

Full Changelog: v0.1.0...v0.2.0

v0.1.0

02 Apr 02:01
f569460
Compare
Choose a tag to compare

Changelog

Add benchtop-tested DID, MCB, BMS, ECU, MDI firmware
AMB present but not fully validated

Relevant PRs

New Contributors

Full Changelog: https://github.com/UBC-Solar/firmware_v3/commits/v0.1