Arduino Control for a Classic Car

Hello everyone, new member here!

I think this was the most appropriate section to post this in, if not, please let me know! Not here to cause any trouble.

I'm starting a project that I think I can use an Arduino to help me with, but I haven't touched an arduino in almost 10 years. I am in the design phase of rewiring a classic car (1968 Plymouth Barracuda), and trying to do a couple tricky things without spending thousands on aftermarket ECUs and such. My goal is to use an Arduino as a very basic body control module; I need something sort of smart to control all of the "dumb" things on the car. So far, it seems as though an Arduino Uno R4 is a good starting place, either the Minima or the WiFi.

I am a mechanical engineer who has experience in automotive wiring (both classic cars and higher-level cars), and currently spend most of my time at work handling motorsports wiring and CAN communications. I have built simple circuits in my past but am a novice with Arduino. I am not an electrical engineer or computer scientist, but I know just enough about each to get myself into trouble. I have programmed before, mostly in Matlab.

The primary purpose of the module will be an analoge-to-digital-to-analogue converter for the gauge cluster. Sounds stupid, but I would like the arduino to take inputs from the coolant temperature sender, oil pressure sender, fuel level sender, and voltage of the charging system via ADC inputs, and then use those to control the factory gauges via PWM (Oil pressure, coolant temp, voltage, fuel). This would allow me to set the range and resolution of each gauge, and make it mean something rather than being "good" or "bad." I very much appreciate the look of a factory instrument cluster in a classic car, but man are they bad at delivering useful information.

The aforementioned gauges are all 5v already, and are driven (to my understanding) by the resistance of each sending unit. I am not sure if using PWM to drive their position is the best idea, or if I will need a whole separate board with power supplies and potentiometers for each gauge.

The secondary purpose is as a sensor input module for CAN control. The car will have a rudamentary PDM that is based off of a GEMS PM1. It is a CAN-controlled high-side driver with eight 20-amp outputs. Currently the plan is to use 2 outputs for electric radiator fan control (High and Low), 1 for a rear defrost, and have room for expansion in the future for A/C and fuel injection. The radiator fans would be driven by the ADC converter being used with selected high and low temperature limits that would send a CAN message to turn on the appropriate PDM output.

A tiertiary purpose that is optional (but would be awesome) would be to control the gauge cluster lighting. The idea would be to have LEDs in each gauge as an indication of their status. For example, the coolant and oil pressure gauges would turn red if there is an issue, or the fuel gauge would turn orange when below a certain level.

When the car receives fuel injection down the road, the ECU will be able to handle all of the engine control items such as the fans. Until then though, the Arduino (or whatever is appropriate) will have to stand in. Other PDM outputs like the rear defrost can be driven by digital inputs from physical switches on the car.

Is an Uno R4 up to the task for such a project? From what I have read, it seems like the current demands from the car may be too high for what the Uno can supply. I have no idea what each gauge draws.

Open for any suggestions, including the one that I may be delusional. Thanks!

1 Like

Where are you going to put the shoe box sized enclosure needed to house all the electronics?
No Arduino boards are rated for automotive temperature swings so everything will need to be mounted inside the passenger compartment.

For the CAN side I wouldn't use anything slower than a Due. For the other I/O look at how products such as those from rugged-circuits.com do their over/under voltage protection.

There is plenty of space behind the dash panel for the box, I wouldn't dream of ever placing it in the engine bay. The PDM will be located in the engine bay so it is closer to the rest of the charging system, but that unit is rated for some pretty intense environments.

Thank you for suggesting a better board, I hadn't even looked at the Due! I'll do some more reading on it.

Maybe a most absurd idea you have not considered:

  • clear, polycarbonate, air-tight, housing.
  • conformal coating on the Arduino and associated sensors
  • circulated oil (motor/mineral) as coolant in the box with your Arduino and pulsing NeoPixels
  • mount dead-center in the hell-fire environment of the motor bay

or not.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.