MY24 Dash

MY24 Dash

  • 3 min read

For the past few months I’ve been working on the dash for our car in motorsports. It’s just a board that controls a large lcd display that shows the general state of the car at the given moment - things like faults that have been triggered, battery capacity / voltage, temperatures, and more. It connects to our car’s “critical bus,” which is a canbus that connects together all the important electrical components that our car needs to run. Since the team is sponsored by altium, it was also the first board which I (unwillingly) designed in it.

As a quick precursor - I procrastinated this board for a few weeks, and ended up designing it (in its entirety, except for some parts of the schematic) in around three nights. The result is that it had a few mistakes, which I’m not too proud of. I’ll make note of them throughout this post.

Board Design

Here’s the schematic. I can’t take total credit for it since some parts were copied from previous years, but it’s not a very complicated board anyway…

The board has:

  • A can transceiver
  • LCD Display backlight driver
  • Really bright indicator lights!
  • Variety of connectors for GPIO

The screen is stuck onto the front of the board with some vhb, and and the screen connects into the PCB with a ribbon cable. Other than the indicator lights, the electronics are on the back.

One of the things I’m really not a fan of is the onboard st link. The idea is that you can program the board with usb, as you would an arduino, and we did this for the other boards on the car. I don’t like this for a few reasons:

  • You save space, money, and soldering time by not having it
  • It’s another point of failure
  • If it breaks, you’re back to using a normal st link anyway!
  • ST Links are cheap ($10)
  • You need to burn the “custom” stlink bootloader yourself, and we were using a sketchy, decade-old hex from somewhere online

Also - there are only leds on the canbus lines for fun! We took these off. It’s not good practice to have high quiescent current on transmission lines.

The layout:

Layout

And 3D:

3D

The KiCad logo was in protest of having to use altium :D.

I soldered up the boards once they came in. I accidentally flipped the footprints for the big LEDs I was using on the front, which led to some creative soldering:

Sketchy soldering

And here’s most of the electronics:

back

After that, we started trying to program this thing. Something we realized pretty quickly was that there was some sort of power integrity issue on the board - whenever it was connected to the car power, the screen would start flickering like crazy. It wouldn’t happen when connected to a bench power supply, so I have a feeling that the car’s LV switching converter was resonating with the switching converter on the dashboard. In retrospect, this probably could’ve been fixed with a big PI input filter, but we just ended up removing the buck converter and using an LDO instead. Here’s when we got the screen working for the first time:

Screen working

Enclosure

In tandem with the electronics, I designed the box to house the dahsboard. Since the car is required to be waterproof (the competition has a rain test to check for this), the box is sealed with a gasket. Pressed up to a plate, which is bolted to the frame. Here’s a screenshot of the early design:

Plate

The screen is protected by a polypropylene sheet, which is epoxied onto the back of the plate and further sealed with some silicone sealing:

Sealing

We also wanted to have buttons on the steering wheel so that the driver could control some of the car’s functionality while driving without having to take their hands off the wheel. This was implemented with a super cool quick release with an integrated connector and a slot at where the steering “neck” (see my steering system post!) connects to the steering rack. One end of the wires is connected to some buttons, while the other end connects to the dash with a waterproof connector. Here’s a video of that working:

… and another of it mounted to the car - this was taken at 5am a day before midterms:

The buttons currently aren’t very reliable (you need to press really hard), but I’m going to fix this before competition.