I'm currently in the process of developing a self leveling setup pad for racecars and actually have a provisional patent on it. I've gotten the hardware end mostly sorted out (though still early enough to change things) but will definitely need help on the software side of things. Below I've put a description of the project, looking for someone who can help on the software side for sure, and hardware side a plus. Willing to compensate financially as well.
Racing cars are very sensitive pieces of equipment which require a consistent measuring device called a setup pad. A setup pad consists of four pads, one for each wheel, and ramps in between them. Each pad is shaped with a recess, in the recess lies a scale. The scales are used to weigh each corner of a car individually. To make this accurate the four pads must be level relative to gravity and on the same plane as each other (Alignments are also done on the setup pad, as well as other measurements that require the pad to be level). This is currently done manually with a bubble level to get each pad level relative to gravity, and a transit level to get them on the same plane. Each pad has four large screws that are rotated to raise or lower a corner of the pad, if all four are turned it raises the entire pad. This takes time that racing teams often don't really have at the track, and there is the constant issue with human error as many people get lazy with the process.
To understand my method we will look at one pad individually. What I'm envisioning, is an arduino in each pad and an accelerometer in each pad, which will be able to determine whether the pad the level relative to gravity. There will also be two motor shields on each arduino in order to drive 4 stepper motors on each pad, which are turning the bolts to raise or lower the pad, using the feedback from the arduino. There must also be a button on each pad for "zeroing" each pad. Put the pad on a known level surface, press the button and you have an offset for level. All this seems easily within the realm of programming but unfortunately well outside of my expertise. In the next section I'll talk about our current idea of getting all four pads on the same plane.
To get the same pads on the same plane we will use an x shaped brace, with it's own micro controller (perhaps just a second accelerometer and no microcontroller) and accelerometer in it (as well as a push button for zeroing). This can be connected to each individual pad either over bluetooth, or a hardwired connection (haven't decided yet). The tilt the accelerometer measures here can be used to tell each setup pad to raise or lower itself using all four of it's stepper motors at once. At the end the pads needs to undergo a check to make sure it is still level relative to gravity and can then be unplugged.
After a test phase with Arduino based equipment I would likely do a short run of a production unit before doing a large production order. The market for this is quite large and the product should sell well, so I'm trying to keep an eye on how to transition this to full production in the long term. Thanks to the community for your time.