Gavin Vander Veen's Portfolio

close

Hello, Im Gavin, An Electrical and Computer Engineer

I'm currently a freshman attending the Missouri University of Science and Technology, and am using this portfolio to share the projects that I have been working on throughout my Academic career.

Table of Contents

1. Mars Rover Design Team

  • 2026 - Science Electrical Member - Raman Spectrometer Board
    • Raman Spectrometer
    • TOF Sensor
    • CAN Protocol
    • CMOS Linear Sensor

2. Columbia Area Career Center

  • 2025 - Skills USA Robotics Competition
    • Search and Rescue Robot
  • 2024 - C++ Arcade Game Recreation
    • Zaxxon Recreation

I joined the Mars Rover Design Team in the fall semester of last year, my first semester at Missouri S&T. I joined the science-electrical subteam, and work on the Raman Spectrometer System. Even in the relatively short time that I've been on the team, I have gained more experience than I had ever expected to, and has been one of the most enjoyable and rewarding experiences I've ever had.

2026 - Science Electrical Member - Raman Spectrometer Board
Raman Spectrometer

The Raman spectroscopy system is part of the science analysis equipment on the Mars Rover Design Team. The system is used to detect appropriate locations for sampling the soil by analyzing the content of the topsoil. Electrically, the Raman Spectrometer board interfaces with multiple systems allowing the Raman components, the instrument gantry, and the rest of the science systems to work in unison. More specifically, it communicates with the Core board, to receive controls and send telemetry data to and from basestation, it interfaces the CMOS Linear sensor, the TOF sensor, the Gantry Motor, and the Laser driver in order to get Raman light data, positional data, and control the gantry.

I designed and soldered a majority of the Raman Spectrometer board with the main exception being the design of the Laser driver circuit. This board was honestly the easier part of the electronics for the Raman Spectrometer, for my part. But there are still some interesting elements to it, including the ethernet RoveComm communication, CAN protocol motor controller, and many of the other interfacing systems.

Overall though, the experience of designing this board was more beneficial in a sense that it introduced me to general board design and tracing. It also introduced multiple problem solving challenges, with compact and difficult to tackle traces, ethernet and CAN differential pairs, reverse voltage protection, and voltage conversion.

TOF Sensor

The Time of Flight Sensor is a component used to identify the distance of the Raman Spectrometer from the ground so that it is able to get accurate data at the correct distance. This breakout was the first major road block in the design of the Raman Spectrometer system, moreso from an embedded software perspective. MRDT had attempted to implement this component in previous years but had failed to implement the software. Partially because It utilizes a somewhat complicated I2C based library. I was able to identify the solution though. Firstly, the initial connection to the chip was incorrect and assumed that the XSHUT pin should be set to always on, however the TOF sensor has a restart system and needs to be able to shut down to sync I2C communication. There was also an error with the library utilizing incorrect error processing for our particular chip, and so omitting that allowed TOF functionality. This was a fun challenge to tackle and gave me my first taste of hardware and embedded software debugging

CAN Protocol

The utilization of CAN protocol to our motor controllers was a new addition to this year's science system and was used to increase reliability and decrease the connection wires. The localized CAN circuit on the Raman Spectrometer board, included the main CAN transceiver x2 with switching capability between them in the case that one fails and needs to be replaced. The more interesting challenge of this element though was the implementation of the CAN embedded software. This required me to learn about CAN protocol packets and general communication, and had me working with the people designing the motor controller in order to make the CAN protocol communication actually effective. While the CAN protocol was not a massive roadblock in the Raman Spectrometer system, I thought it was an interesting element and implementation.

CMOS Linear Sensor

The CMOS Linear Sensor circuit was probably the most difficult thing I've had to do for this project, but the most experiential and rewarding. This iteration attempted to improve on the previous years Raman Spectrometer which was unused due to its accuracy. This year used a new CMOS based sensor, and implemented an on-board ADC in order to ensure data integrity. This board taught me the most about computer and electrical engineering this year and introduced a plethora of interesting problems to solve.

The first major aspect of designing this board and its system involved analyzing the CMOS and ADC in order to determine how they should interact with each other and how to interact with the Raman Board. Much of this involved analyzing the clock values and clock graphs in order to determine the timings and qualities of the necessary clocks. This took a while to get in order but in the end I developed the interaction system for the components that I implemented, not only in the hardware, but with the embedded software. While i will not go in depth with the solution, it, on base level, involved timing the CMOS clocks and ADC so that the ADC could perform its conversion in the window that the CMOS was outputting analog data, knowing when to retrieve the digital data from the ADC using SPI, and how to manipulate these aspects to perform things like data averaging with the ADC and integration time with the CMOS sensor.

To prove the functionality of the researched CMOS linear sensor I, over weeks of late nights, recreated the entire theoretical circuit on a breadboard setup. This involved a lot of debugging and accuracy issues and did reveal some flaws in the originally intended design. An example of his was the use of a Zener diode for a 1.8v reference voltage, which turned out to be inaccurate and unusable for such precise tech. But overall this was an incredibly successful endeavor and demonstrated the viability of the circuit producing correct data.

The Columbia Area Career Center is a location for high school classes in specialized fields. I took many classes here over my high school career, mainly engineering oriented ones, and got some of my best early experiences here.

2025 - Skills USA Robotics Competition

At CACC, along with my Robotics and Computer Integrated Manufacturing class I participated in the Skills USA Robotics Competition, more specifically the Urban Search and Rescue Competition. In this competition you had to construct a robot that is capable of recovering ordinances from mailboxes, houses, and obstacles in a scaled down environment. While i did not win this competition it was a very fun experience and gave me experience in Robotics, embedded programming, and robotic, mechanical design.

Search and Rescue Robot

The robot I constructed for this competition went through multiple iterations as I recontextualized the requirements and realized new efficiencies. The first edition was a basic four wheeled robot with a stationary arm at a fixed angle. This design obviously wasn’t going to work and was really just a testing iteration to explore the mechanics of the competition. This design was insufficient in many ways, not reaching tall enough for the maximum height and not reaching far enough for the mailboxes. The next design tried to have a stationary arm with double rotating servos to pivot the arm up and down. This design also didn’t really work with the servos not being strong enough to maintain the weight of the arm, and the arm still not reaching far enough. The next edition saw a multitude of changes, firstly it put the arm on a vertical linear actuator moving the arm up and down, it also had a horizontal actuator moving the arm in and out. This design was much better than the last few but still had issues. It still did not have sufficient vertical range, it was incapable of going high enough and was limited by the body of the bot to go any further down. My final solution to fix these issues was to attach the back of the arm to a pivot point which makes it so that when the vertical actuator moves it rotates the arm up and down which greatly increases the range of the arm. With the limited time i had to design this, i think this design turned out pretty well, and while it did have some issues it ultimately achieved what I hoped it would and was relatively successful.

2024 - C++ Arcade Game Recreation
Zaxxon Recreation

In my Junior year of high school I led a group design project in my Advanced C++ class to recreate the video game Zaxxon. To get to this point we had to make a presentation demonstrating our chosen game and why it should be recreated. Mine was one of the games selected and so I led three other students in its recreation. This was a fun task and gave me experience in scheduling and leading a multiperson team to create something. The project definitely taught me about leading something like this. Some core things I learned were to regularly check in with progress so that everyone is on the same page, and recognizing the amount of time that goes into debugging, and reserving built in time for it.

The actual technical details of this project are pretty interesting too. It utilized the 2D C++ graphics engine SFML and github for cross team collaboration. Zaxxon itself is a 2.5D flying game where you invade a larger space ship avoiding turrets and missiles. The 2.5D perspective was an interesting challenge having to simulate hitboxes with a layer based approach, converting the 2.5D coordinates to 3D and retrieving the distance to detect collision. We also had to make a custom animation system, one for translation animations for the flying enemy ships and missiles and another animation system for sprites. This was overall a fun project that gave me a lot of experience and is one I'm fond of looking back on.