Breslin Engineering

Current Projects Blog

November 28th 2025Distributed BMS Update

My self and Solar Car team member Jonathon Brown have been making significant progress on software for the distributed BMS project. You can take a look at the code here: https://github.com/Solar-Gators/DistributedBMS.

The Distributed BMS project has three distinct STM32 firmware projects. The first is the daughter board, this is based around the STM32L433, while not needed for a board of this complexity we chose to use a FreeRTOS structure both for uniformity with other solar car projects to allow for the use of the CAN driver which Jonathon already wrote that relies on an RTOS. The second STM32 Project is known as the Secondary MCU, again an STM32L433, this chip sits on the Central BMS PCB and communicates over CAN with all of the daughter boards, aggregating and processing the incoming data, it then sends this data over UART to the central BMS primary MCU. The primary MCU is an SMT32L552 which handles all of the traditional BMS controls (Battery Fans, Battery Contactors) handles current measurement, and CAN communication with the rest of the car.

As we have had the V1 boards for this project for over a month now, far earlier than we traditionally do for Solar Car projects, one of our goals is to make the firmware for this project the most mature and well tested firmware to race on a UF Solar Car. This will also help me raise my embedded firmware skills above what I currently consider to be “passible for board bring up’

October 26th 2025

Why Engineering students should Join Design teams (For ENC2256 professional writing class project)

When most engineering students begin their first internship or full-time engineering position, they quickly learn that success in engineering classes does not necessarily translate to the practical skills and abilities required by many professional engineering positions. In my own experience as an electrical engineering student I have taken a number of circuit analysis classes (Circuits 1&2, Electronic Circuits 1&2), and in most cases these courses are just that, Analysis, you are given a circuit for which you calculate voltages and currents, and you learn the math needed to understand their behavior. What you aren’t usually asked to do is design a circuit from scratch to meet real world requirements, which balance performance, cost and reliability.

Even the laboratory components of the courses, while valuable, tend to be structured and predictable. You follow instructions, measure results, and submit a report, there’s little room for improvement and iteration. In addition, each engineering class treats its specific subject in isolation, analog circuits separate from digital logic, and so on. In the real world engineers are expected to integrate all of these disciplines into a working design. That interdisciplinary collaboration is difficult to simulate in the classroom, and it leaves a gap between what students learn and what industry expects.

Due to these constraints student design teams can be a fantastic complement to traditional engineering education. which allows students to simulate the conditions of real-world engineering projects. These teams replicate the conditions of professional projects: open-ended design problems, limited budgets, hard deadlines, and the need to collaborate across multiple disciplines like Mechanical, Electrical and Software. Rather than analyzing a pre-built circuit, you have to design your own. Rather than being told exactly what to build, you must define your own requirements. Engineering design team also expose engineering students to so many different sub-fields helping them to choose what they would like to pursue in their careers. The learning curve on these teams is steep, very steep, as you are trying to apply your engineering education not after completing it buy as you complete it, but engineering is all about continuous learning and design teams teach you to think like an engineer.

I am currently in my senior year at the university of Florida studying electrical engineering, this is also my fourth year on Solar Gators, the university solar-car racing team. We design build and race a solar powered car, competing with other teams across the country. My time on the team has been the most important aspect of my engineering education. During my time on the team, I have designed everything from a small, printed circuit board responsible for a single function to the electrical architecture of the team’s fourth generation car. These projects aren’t guided exercises; there is no lab manual describing all the steps needed to design and build a solar car. Each step requires initiative: defining requirements, reading datasheets, troubleshooting hardware and making critical design decisions between performance, reliability, cost and complexity.

In addition, I developed hands-on technical skills that few courses could have taught so effectively. I learned skills printed-circuit board design in Altium, embedded programming in C and C++, and use of lab equipment like power supplies, oscilloscopes, and logic analyzers. These skills have already proven essential during my internships and interviews for full-time positions. Just as importantly, I learned how to communicate technical ideas, and collaborate with mechanical and software teammates. In the process, I became not just a better student, but a more capable engineer ready to contribute immediately to a professional environment. I have used stories and projects from my time on Solar Gators over and over again during both technical and behavioral interviews for all types of electrical engineering positions. I believe that my time on Solar Gators was a key factor in getting six different internship offers last year and lots of full-time opportunities for this year.

Last year I had the privilege of leading the solar car electrical team, which adds even more to what I have learned on the team. While leading the team I managed about a dozen electrical sub team members which meant learning how to plan schedules, track progress, and ensure safety in both design and testing. I reviewed other members’ designs, created documentation, and did my best to keep everyone’s efforts aligned on a single goal. Mentoring newer members became one of the most rewarding parts of being on the team. Teaching someone else not only builds their confidence but it deepens your own understanding. Explaining why a circuit failed or how a CAN message structure works forces you to think systematically and communicate clearly.

For students, design teams provide something that no class can: ownership. You build something tangible, see it work (or fail), and know it’s the result of your decisions. You learn to take responsibility, to collaborate effectively, and to push through failure. Those are the same traits employers consistently seek in new engineers. Ultimately, design teams are where students stop being spectators and start becoming engineers. They turn classroom knowledge into practical ability and transform theoretical understanding into real-world problem-solving.

September 26th 2025 – Distributed BMS Update

Finished with the initial Altium design for the central section of my distributed BMS design. While the daughter boards will monitor the voltage and temperature of small groupings of modules, the central component will measure the pack current, control contactors, battery fans and preform a number of additional functions. I still have some small changes to fix as well as adding silk screen stuff, and mounting holes.