Custom Control Interface

Hello I am trying to carry out a certain project I’ve wanted to do for a very long time but I am struggling to wrap my brain around what I need to do, buy and prepare for to carry out this project.

The project…
I’m going to buy an air suspension set up for me car and don’t want to spend the premium to get it all managed and controlled on a remote or app. So I decided it could be a fun project. With Management System, all the airbag struts are controlled via analogue pneumatic switches on the dash.

So, comprised of the solenoid valves that comes with the kit but to be controlled remotely with relays and a touchscreen or button system interface on the dash all measured in values produced from level height sensors fitted on each corner of the vehicle.

I am struggling to find info and learn about how to code this sort of project as there will be a fair number of actions and variables etc…

A visualisation of the project at hand…
I want to have either a touchscreen or simple lcd button-controlled display where within this system I can select different height pre-sets that can be measured by lowering or lifting the car until the level height sensors read the correct values for that pre-set.

Now, I would want about 4 basic pre-sets but also want a separate button labelled "Custom" where I have the capability to adjust the height of all four corners of the car separately with the additional feature to click a button labelled "Save as pre-set". This new pre-set will be added to the front screen as "Pre-set 1" and if I was to make another pre-set it would go up in order and be labelled "Pre-set 2" etc etc...

So basically, this system would work purely on the values produced from the level height sensors and when a certain pre-set is selected on the control panel interface, the microcontroller would act accordingly by reading the level height sensors and control each relay for each corner airbag strut on the car either trigger the solenoid to release pressure to lower that specific corner or introduce more pressure from the air tank to lift that corner all variable to the level sensor reading the correct value as stated paired to when a specific pre-set has been selected.

Some additional features I would like on this system would be...

  1. A boot up screen so when the car ignition gets switched on, this screen will display either the bmw logo or my own custom logo then after a couple seconds it will go to the main control panel Home Screen.
  2. One thing I really want is for when the car ignition gets switched on and the engine starts running. I want the air suspension system to sense this has happend and bring the car up to your pre-selected "Favorite" height preset so it's ready to drive away, similarly, when the ignition and engine is switched off have it release all pressure from each airbag strut and have the car in locked mode where it is as low as it can go.
  3. Things like beeps when a button is pressed and being able to manually (or it automatically) adjust the brightness of the screen, as in the day it would be fine being bright but at night it would glare in the corner of your eyes, so you would want the brightness turned down
  4. Being able to read the pressure in the storage air tank and each airbag strut would be a luxury as it's always nice to be able to read the vitals of the system your running and would be even better on be front page of my controll system display. Also maybe displaying faults if it realised some parts of the system is loosing air pressure when it shouldn't be, indicating an air leak.

If anyone could point me in the right direction of what to watch or read and what to buy and what sort of code I should write and how it can all work together.
Thank would be great
Cheers

I would start with reading one ride-height sensor. What is the interface?

Next, I'd look at the valves. I expect a single MOSFET for each valve so that would use 8 Arduino pins.

Are you sure about that? That is going to make the start-up much slower. Does the tank hold enough air to raise all of the struts from 0 to full height or will you have to wait while the air pump tries to restore pressure?

thanks for the reply. yeah so im guessing I would need to somehow have a calibration feature coded into the control panel so I when I select that, the arduino will tell the relays to exhaust all the airbags to the bottom and then record that value read from the ride height sensors then tell the relays to raise the car all the way up.
i would then have to program all the height presets into the system by having some sort of set height mode where I can adjust all the air bags until the car is sat where I want it to be. then save that as a preset by recording what the height lever sensors read at this specific height so when I select this preset, the arduino will control the relays up/down until all sensors are reading the correct values.

yes the air tank should hold enough air to raise the vehicle when the ignition switches on

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