Before jumping into the electronics part you need to get familiar with the circuit so it holds no surprises.
This isn't too hard. Grab the schematics off github and take a look.
I'll wait while you download and view the diagram....
Ok, got it? Now I'll talk you through it from left to right.
On the left are four squares that represent the MAP sensors. I'll assume you are following my exact build. Anyone doing their own mods should know what they are doing, right?
The sensors are really simple (electrically speaking). They each need a wire to +5V and Ground to do their thing. Then they will constantly output a voltage (the third wire) that is proportional to the pressure sensed. Less voltage is lower pressure down to 0V at 150Mbar above absolute vacuum, and up to almost 5V at atmospheric (sea level, nice weather, no hurricane touring the neighborhood).
The signal wires from the sensors are connected directly to the Arduino inputs A0 through A3 where the software can measure the voltage they give off.
Now comes the Arduino. It too just needs V+ and Ground to work. Actually, you can feed it anything up to 18V (It will make its own 5V if it has to) so you could directly connect it to the vehicle power. If you want to go this route, feed the higher voltage into the Vin pin. Use the +5V for the sensors. You'd fry them with anything even slightly above 5V.
Arduino nano pins and connections.
The link above shows how the pin numbering works on the Arduino. Note that many pins have more than one function. You should be able to match the pin numbers with the schematic using the above. I'll probably add them in a later revision though.
The next thing you may notice is the four switches. These are just plain and simple push buttons that make contact when you press them. One side is connected to an Arduino digital pin and another is wired to ground. This keeps things nice and simple to hook up.
However, if you like to play around with stuff then be very careful you NEVER set the Arduino pins connected to these switches to output HIGH (5V) or the switch will short the pin to ground when pressed! If that happens you may be lucky and find another pin that still works, but don't bet on it.
The lone resistor
R4 is a resistor that is in there as protection for the Arduino. The power used to drive the backlight LED of the display is limited by this transistor so the Arduino doesn't fry. Some LCD modules have this resistor, some don't. I figure a slightly dimmer backlight is better than a Kentucky Fried Arduino.
The dynamic Duo: R3 and C1
These connect to the contrast setting on the LCD display. You often see some sort of adjustable resistor or (POTentiometer) used for this but I thought I'd rather do this in software.
R3 is there to limit the current flowing into C1. C1 is used to smooth the signal coming from the Arduino. This is a pulsating PWM signal that can make these types of LCD flicker horribly and even become unresponsive. Don't ask me how I know. These two together do a great job at the frequency the Arduino software does PWM. This is known as an R/C network and you can forget I said that.
This is a special chip. What it does is make it possible to connect something with lots of wires, like our LCD screen, to something else using less wires. Note that it's perfectly possible to connect the LCD screen directly and its trivial to adjust the software. But I did it this way to save pins for future expansion. There are also I2C adapters for this display but this is a DIY approach that leaves the possibility to run up to 8 MAP sensors on one Arduino.
This particular IC is a serial in / parallel out shift register with latch. You program it by offering up one bit at a time (the MISO pin on the Arduino) and shifting them into the device by signalling on another line (SCK pin). Then when you're ready you signal it to present the data at the 8 outputs all at once (D9 in our schematic). The Arduino has an SPI bus, which was especially designed for this. There's a library that I didn't write to take care of all this in software, so we can just concentrate on wiring it up. It sounds like a lot of work but it's blazingly fast and easy to use in practice. You could even make a chain of these all together and switch tens to hundreds of outputs with one Arduino this way!
Because our thankless 'HC595 does a lot of fast switching it needs a little capacitor to help it compensate for power spikes caused by all the internal and external switching that is going on all the time. That's all C2 is for.
Last but not least is the display. Its a HD44780 compatible 20 characters by 4 lines display. These are easy for the Arduino to drive and can be tricked into displaying nice bar graphs with up to 100 segments. They can also be read in the dark or even in bright sunlight (if you turn off the integrated backlight!)
This has a 4-bit parallel mode of working which we use to connect it to the output of our 'HC595. Using that saves another 4 pins. The other lines we need to connect are signalling lines that tell it t o turn on and accept commands offered up on the four data lines we are using. The other four data lines are happily hooked up to the +5V.
I've got the Power!
Finally there's the issue of power. As I explained above you could just plug vehicle power into the Vin pin of the Aruino (that's +12-14.8v) which should work just fine. In theory its scary as hell, but it works for a lot of folks. The MAP sensors we have are automotive and can handle some abuse. I have run Arduino's on worse (Joule thief anyone?).
In my case I have a stack of old recycled cells from a laptop battery. One cell was busted while the rest were still fine so I saved them for Arduino projects. These are 18650 batteries (18mm thick x 650mm long) and pack 3000 mAh, which is a lot of power for this project. If you use two of these you can just plug that into VIn and use a special charger when the time comes. That's the easyest way I know of but beware of deep discharge!
What I did was buy a special battery management module which outputs a clean 5V and allows the battery to be charged in circuit. The connections are labeled, B+ and B- go to the battery and 0V and 5V to the Arduino ground and 5V respectively. Oh and I put a switch in the plus 5 V line to save battery power. These modules cost less than a dollar and prevent overcharging or deep discharging of the battery. Both overcharging or deep discharging (and especially subsequent attempts to recharge) can lead to burns or explosions in Li-ion batteries, so use them with caution!
The sane person's alternative is just get a 5x or 6x AA battery holder and use the excellent rechargeables from Ikea. Plug the plus into VIn and connect the minus to ground. That's probably the safest option. Oh and run the plus through a simple on-off switch to save power while you're at it.
That's it for our walk-through of the schematic. next steps we take a look at the tools and supplies you are going to need.