A senior project with a goal to produce an in-house BMS using the LTC6813 to support a 600V pack, as well as analysis software to view cell data and configure the BMS.
altium/
: Altium Designer project files for the custom BMS master and slave PCB (schematic & layout)doc/
: Supplementary documentation, mostly hardware-related (like datasheets)examples/
: Firmware examples for the BMS master, various programs.- The primary example that was utilized was
stm32f105_isospi
- The primary example that was utilized was
gui/
: GUI Analysis Software for the host computer , to visualize battery cell data and communicate with the BMS master PCBA.media/
: Various photos and such
- Install git (Windows)
- Clone this repo into any reachable folder using, in a command line of your choice (WSL Ubuntu, PowerShell, Terminal, etc),
git clone https://github.com/spartanracingelectric/SR-BMS.git
- Change your branch if necessary by using
git checkout <BRANCH_NAME>
- Change your branch if necessary by using
Simple, just open either the master or slave .PrjPcb
files in Altium!
- Install STM32CubeIDE and STM32CubeProgrammer.
- In STM32CubeIDE, import the projects from
examples/
. - In STM32CubeIDE, click the "build" hammer on the toolbar to compile/build one of the programs in
examples/
. - In STM32CubeProgrammer, flash the
.elf
binary generated in the specific example project'sDebug/
to the BMS master PCBA over ST-Link or USB. - Note: STM32CubeMX to make any initialization-level configuration changes for the microcontroller.
- cd gui/bms_app
- install necessary react scripts using 'npm install react-scripts'
- Backend and frontend must be run concurrently
- frontend: open terminal in bms_app folder use: 'npm start'
- backend: open terminal in serialcomm folder 'npm run dev'
- backend deals w/ serial communication. Ensure that the correct COM port is defined in server.js!
- to view the backend use the url: "http://localhost:8000/graphdata"
Vincent Saw, Ex-Software Lead for Spartan Racing, Firmware & Hardware & Integration
Vincent Pham, Project Member, Firmware & Hardware
Josh Samoy, Project Member, Firmware & Software
Abegail Palad, Project Member, Firmware & Software
Primary Repo for BMS Senior Project
Old GUI Analysis Software Repo
Spartan Racing Website