DIY: S2000 (AP2) Cluster in EM2

Old 10-26-2014
  #1  
Registered!!
Thread Starter
 
Join Date: Jun 2013
Posts: 17
Rep Power: 0
TenToesDown will become famous soon enoughTenToesDown will become famous soon enough
DIY: S2000 (AP2) Cluster in EM2

Here is quick write up to get an S2000 cluster in your EM2.

NOTE: This diy is not complete. I will add things as I go along, but I explain everything I have done to get to where I am.
Also this guide uses information from my own research as well as other write-ups such as xproductions, DiSCLAiMER, georgre type-s, and others.

NOTE#2: For the ECT (Engine Coolant Temp) you need to convert from analog to digital and the VSS (Vehicular Speed Sensor) you will need to convert the signal from a high freq to low freq signal. I will explain to you how to do this manually, or you can buy parts like speedohealer, or modrifys converter.

Also you should remember that you are dealing with electrical wirings. Make sure there is no power running to anything before starting.

Items needed:

Cluster Shroud you dont mind tearing up.
Acrylic/plexiglass/fiberglass (something to cover up the cluster)
Aluminum scrap to make some brackets
Some miscellaneous nuts and bolts with washers
A rotary tool
Soldering Iron/equipment
18-22 gauge wire
Heat shrink
Electrical tape
Wire Cutters
Pen
Masking tape

PART 1: BASIC WIRING

First pull out your cluster. Now, you can either cut your pigtails, or make an adapter. I opted to cut mine and extend the wires with some 18 gauge. This makes it much easier to solder instead of reaching behind the wheel.
For the most part. Wiring in the S2000 cluster is easy peasy lemon squeezy.

Xproduction has a method that I found to be very useful. Get ready to label all the wires according to their corresponding color and either of these diagrams provided by xproductions:





So the number to the left of the wire color is the number that you want to label the wires as. Some wires won't be used but just to be safe I labeled them all.

Once all your wires are labled you will match the numbers to the following diagram from xproductions:



Dont forget to protect your connections with some heatshrink.

NOTE: You will have left over wires! Don't flip out. This is normal.
Also, if you do not have ABS, leave the abs wire unplugged and wire the ABS wire from the S2000 cluster to a 270ohm resister and wire that resistor to a ground wire.

So ABS wire --> resistor -- > ground

This will make sure that the ABS light doesn't come on.

As for the BASIC WIRING, that is pretty much it.


PART 2: ADVANCED WIRING (SPEEDO)
Sooooo you wanna see your EM2 top out at 117 but your new amazing speedo doesn't work.
Well for this you have 4 options:

Option 1: Buy a speedohealer and wire it up. It costs about 80$.
Option 2: By *HAZARD*Club:

(THIS IS IF YOU HAVE A KSWAP WITH A KPRO AND A 05-06 6SPD TRANNY)

Parts needed:

05-06 tranmission with 05-06 senser
Radio shack - +5V Fixed-Voltage Regulator 7805 ( cost $1.80 )
Maybe add S2k cluster


All you have to Repin the plug at the tranny and add the voltage Regulator!
When done it's going to look like this -->
Name:  da40474a.jpg
Views: 1785
Size:  68.6 KB

(02-04 Rsx harness)
Step 1: Remove all the pins out of plug on the tranny. Going to have 3 wires, 1. Black , 2. Black/yellow, 3. White/green.

This where you going to add the voltage regulator

Bend the pins like this
Name:  1d484a48.jpg
Views: 1483
Size:  62.2 KB

With a knife cut a small part of black wire and connect middle pin of voltage Reg. This wire is the ground
Name:  67f7e371.jpg
Views: 1507
Size:  77.6 KB

On the out side of the voltage Reg. Cut Black/yellow wire and solder the wire on each end. It doesn't matter on which pin u use. - what we doing is Control voltage that is on the black/yellow wire. 02-04 harness n ecu send 12v though this wire! 05-06 needs 5v!
Name:  c397818f.jpg
Views: 1479
Size:  103.1 KB

For protection all the wires I use high temp silcone
Name:  883869cf.jpg
Views: 1506
Size:  70.8 KB

(02-04 rsx harness )
Last part
The white/green wire is signal. Repin the 3 wires back the plug. In this order
1.Black -Ground
2.white/Green =Signal
3.Black/yellow +5v

(05-06 si harness )
1.Black/white -Ground
2.black/Green =Signal
3.Black/yellow +5v

( 2005+ up RSX )
Blue = signal
Green -Ground
Yellow +5v

All done, it should look like this!
Name:  da40474a.jpg
Views: 1785
Size:  68.6 KB

Option 3: By DiSCLAiMER:
Why speedometer gauge doesn't work?
First of all we need to understand what is the VSS. VSS stands for Vehicle Speed Sensor, it's a simply axis attached to the gearbox, this axis have a electric-magnetic sensor at the end, so, when the axis spins a rotation we capture 5v during some microseconds, all the rest of the rotation we capture 0v. That 0-5v digitalish signal is faster when the car is going fast and more slower when the car is going slow. The problem why we can't wire our civic vss direct to the s2000 cluster is because s2000 vss is faster than civic one (gears and ratio issues from so different gearboxes) so the cluster is wating for around 37 times faster pulses than expected, for the cluster, that digital pulses that output the civic vss are as slow as 0 mph
We need to capture the output of the civic vss and basically divide the time of the pulse by 37 to get it more faster, so we equal it to same pulse that s2000 vss will output on the same speed, it's like if we were emultaing the s2000 vss using the civic vss.

Ok, the goal is to make that electronic things without using the famous combo of speedohaler and modrifry ect converter, using cheap electronics.
In my case I will use the microcontroller Atmega328P-PU, why? Because it's the brain of the arduino board, a very easy learing open-source electronic platafrom coded in C++ with TONS of info on the net, you can do this with other components like pic's but I don't have/like too much the way are coded this things, you need some level of knowledge on pics and it's infinite more difficult than do this on arduino (at least for me).
Summarizing, the arduino allow us to input/output analog/digital signals and treating them like we want.

PWM
Once we are here we need to meet with Mr. Pulse With Modulation a.k.a PWM.
PWM is a digital way to create a square wave, a signal switched between on and off (0-5v in our case) in most cases is used to simulate a custom steady voltage, but for now forget this last.
The duration of "on time" is called the pulse width.
The period of the PWM is the duration of a full cycle, in the picture the period is 2ms beacuse the time between a pair of green lines are 2ms.
The duty cycle is a unit of measure that measure the duration of the on period in a determinated scale, in arduino case, we have the function analogWrite(x) to get PWM. The x factor needs to be a number between 0 and 255 were 0 is 0% of duty cycle (always off 0v), 255 is 100% of duty cycle (always on 5v) and 127 is 50% duty cycle.



As I said arduino have the analogWrite function to make PWM easier but have a problem, it doesn't let to set a custom period, it's a fixed value and we can't do nothing, that is a big problem because as we will see now the cluster needs a digital signals with diferent duty cycles and different period.
We can do custom PWM signals without the analogWrite function, the key is to know that we can set a pin on arduino outputing 5v, later use the the delay functions with the time we want to hold the 5v and later output 0v. That way is ultra custom but has a big problem, we need to read the vss pulse and later do that stuff, the problem is that when we are reading the pulse we are not outputing nothing to the cluster, so it will load 0 mph during the proces of reading, we can't read the vss and do the code for output the digital signal at the same time (seems that arduino and threads are not friends or atleast I don't find the way). We need to find something that allow to pwm independent (like analogWrite) and with custom period (like last way).

The solution is to use an external library for arduino called TimerOne wich lets to do PWM signals with custom period and duty cyle, so really pleased with the guys that done that because without it I don't know how the **** would done that (http://arduino.cc/playground/Code/Timer1).

Ok, now we can send digital signals to the cluster without any problem, now we need to know what exactly we want to send for the cluster understand us.

Speedometer gauge details
As we commented before, civic vss is 37 times slower than s2000 vss, so using the function pulseIn() of arduino will read the pulse and get the duration of it, we will divide that time by 37 to get it more fast, once we got our new time we calulate the signal period factor and launch the new pulse. This procedure is done as fast as arduino can.

Code
before, I need to said something, we cannot do this with only one arduino, that's why we need to get speedometer refresh as fast as possible, so that means, if in the middle of our process of reading the vss and launching the new pulse to the cluster we do all the stuff to get the engine coolant temperature (ect) too means that speed display will have lag, and trust me because speed goes crazy going to near 0 and returning to the correct value all the time. So, we need 2 arduinos, I mean, 2 Atmega microcontroller to get them do only one task (speed or temp).

//VSS converter from civic eg vss to s2000 cluster
//Version 1.0
//[email protected]

#include <timerone.h> //this library will allow us to use pwm signals with custom period</timerone.h>
<timerone.h> </timerone.h>
<timerone.h> int vssOut = 9;</timerone.h>
<timerone.h> int vssIn = 7;</timerone.h>
<timerone.h> double scale=0;</timerone.h>
<timerone.h> int factor=37; //scaling factor between s2000 pulses and civic pulses (s2000 pulses are around 37 times faster than civic ones)</timerone.h>
<timerone.h> unsigned long durationHigh=0; //duration of the pulse in High zone (5v)</timerone.h>
<timerone.h> unsigned long durationLow=0; //duration of the pulse in Low zone (0v)</timerone.h>
<timerone.h> unsigned long period=0;</timerone.h>
<timerone.h> unsigned long duty=0;</timerone.h>
<timerone.h> </timerone.h>
<timerone.h> void setup(){</timerone.h>
<timerone.h> pinMode(vssOut, OUTPUT); //sets the pin as output</timerone.h>
<timerone.h> pinMode(vssIn, INPUT); //sets the pin as input </timerone.h>
<timerone.h> </timerone.h>
<timerone.h> Timer1.initialize(); //initializing the Timer1, so we can use pwm function</timerone.h>
<timerone.h> }</timerone.h>
<timerone.h> </timerone.h>
<timerone.h> void loop(){ </timerone.h>
<timerone.h> </timerone.h>
<timerone.h> //reading pulse from vss</timerone.h>
<timerone.h> durationHigh = pulseIn(vssIn,HIGH);</timerone.h>
<timerone.h> durationLow = pulseIn(vssIn,LOW);</timerone.h>
<timerone.h> //divide the pulse to get it "factor" times faster (37 in our case)</timerone.h>
<timerone.h> durationHigh = durationHigh/factor;</timerone.h>
<timerone.h> durationLow = durationLow/factor;</timerone.h>
<timerone.h> //calculing period and duty of the new pulse</timerone.h>
<timerone.h> period=durationHigh+durationLow;</timerone.h>
<timerone.h> scale = 1024/period; //10bit duty in Timer1, range [0,1023]</timerone.h>
<timerone.h> if (scale < 1){ //this is because with low speeds we get duty=0,xx... and this make the pulse all time low (0v)</timerone.h>
<timerone.h> scale=1; //fixing this with the minimum reasonable value (1)</timerone.h>
<timerone.h> }</timerone.h>
<timerone.h> duty=scale*durationHigh;</timerone.h>
<timerone.h> Timer1.pwm(vssOut,duty,period); //we set the new custom pwm on vssOut pin</timerone.h>
<timerone.h> }</timerone.h>
<timerone.h> <timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h> Setup</timerone.h></timerone.h>
<timerone.h><timerone.h> I won't be using arduino as they are, arduino is only a platform, we can save our arduinos soldering the atmegas onto a breadboard, the atmegas are around $5 each and the other components are cheap. You only need the arduino to load the code on the atmegas.</timerone.h></timerone.h>
<timerone.h><timerone.h> I setup all in a plastic box.</timerone.h></timerone.h>
<timerone.h><timerone.h> </timerone.h></timerone.h>
<timerone.h><timerone.h> </timerone.h></timerone.h>
<timerone.h><timerone.h> </timerone.h></timerone.h>
<timerone.h><timerone.h> The pinout of the cluster are on the net, it's not difficult.</timerone.h></timerone.h>
<timerone.h><timerone.h> Note: I don't know why but you can't get the ect from the cluster plugs (at least on a civic eg), you need to get it from the ecu wire (red/white wire on a p30).</timerone.h></timerone.h>
<timerone.h><timerone.h> </timerone.h></timerone.h>
<timerone.h><timerone.h> Any questions are welcome.</timerone.h></timerone.h>
<timerone.h><timerone.h> </timerone.h></timerone.h>
<timerone.h><timerone.h> Links:</timerone.h></timerone.h>
<timerone.h><timerone.h> http://www.clubintegra.com/board/arc...17467-p-2.html</timerone.h></timerone.h>
<timerone.h><timerone.h> http://www.clubintegra.com/board/sho...47&postcount=1</timerone.h></timerone.h>
<timerone.h><timerone.h> http://clubcrxqc.com/forum/viewtopic...p=20448#p20448</timerone.h></timerone.h>
<timerone.h><timerone.h> https://www.scantool.net/forum/index.php?topic=5158.0</timerone.h></timerone.h>
<timerone.h><timerone.h> http://ttec4826-vlad.blogspot.com/20...uators-on.html</timerone.h></timerone.h>
<timerone.h><timerone.h> http://www.k20a.org/forum/showthread.php?t=57830</timerone.h></timerone.h>
<timerone.h><timerone.h> S2000 Cluster Swap Wiring Guide</timerone.h></timerone.h>
<timerone.h><timerone.h> </timerone.h></timerone.h>
<timerone.h><timerone.h> Special thanks to Orthello, this guy has posted very nice info in some forums about this stuff, total respect. </timerone.h></timerone.h>
<timerone.h><timerone.h> </timerone.h></timerone.h>
<timerone.h><timerone.h> Option 4: Just deal with it. I was driving without speedo for about 3 months.. You eventually get used to it and you know that 6th gear at 3k RPM is ~60MPH.</timerone.h></timerone.h>
<timerone.h><timerone.h> </timerone.h></timerone.h>
<timerone.h><timerone.h> </timerone.h></timerone.h>
<timerone.h><timerone.h> PART 3: ADVANCED WIRING (ECT)</timerone.h></timerone.h>
<timerone.h><timerone.h> </timerone.h></timerone.h>
<timerone.h><timerone.h> Again you have some options.</timerone.h></timerone.h>
<timerone.h><timerone.h> </timerone.h></timerone.h>
<timerone.h><timerone.h> Option 1. If you have KPRO, set the MIL to illuminate at around 190. This will let you know if your overheating. Its not a very safe method. But it will get you a-b.</timerone.h></timerone.h>
<timerone.h><timerone.h> </timerone.h></timerone.h>
<timerone.h><timerone.h> Option 2: Aftermarket ECT Gauge. These are very cheap and easy to wire in.</timerone.h></timerone.h>
<timerone.h><timerone.h> </timerone.h></timerone.h>
<timerone.h><timerone.h> Option 3: Buy Modrifys ECT converter. About 70$.</timerone.h></timerone.h>
<timerone.h><timerone.h> </timerone.h></timerone.h>
<timerone.h><timerone.h> Option 4: By DiSCLAiMER (Written for a AP1 ECT guage with 7 segments not 19)</timerone.h></timerone.h>
<timerone.h><timerone.h> </timerone.h></timerone.h>
<timerone.h><timerone.h> Why temperature gauge doesn't work?</timerone.h></timerone.h>
<timerone.h><timerone.h> S2000 uses a different temperature sensor, I am not sure about what i'm going to say now but I think that s2000 sensor it's in some way analog like our civics but this sensor is wired straigth to the s2000 ecu, where that ecu convert the analog signal to a 0-5v digital signal that goes to the cluster.</timerone.h></timerone.h>
<timerone.h><timerone.h> So the important part of this is that in our civic we have an analog sensor and the cluster is waiting for a digital signal, here is the problem. How to fix this? Easy, we need to convert a analog reading to a digital pulse knowing it's correspondence.</timerone.h></timerone.h>
<timerone.h><timerone.h> </timerone.h></timerone.h>
<timerone.h><timerone.h> Temperature gauge details</timerone.h></timerone.h>
<timerone.h><timerone.h> This gauge has 7 segments, the first one is always one.</timerone.h></timerone.h>
<timerone.h><timerone.h> AP2 Guage has 19 segments.</timerone.h></timerone.h>
<timerone.h><timerone.h> </timerone.h></timerone.h>
<timerone.h><timerone.h> 1 segment = 150ms low 30ms high (always on in fact)</timerone.h></timerone.h>
<timerone.h><timerone.h> 2 segments = 220ms low 30ms high</timerone.h></timerone.h>
<timerone.h><timerone.h> 3 segments = 300ms low 30ms high</timerone.h></timerone.h>
<timerone.h><timerone.h> 4 segments = 400ms low 30ms high</timerone.h></timerone.h>
<timerone.h><timerone.h> 5 segments = 700ms low 30ms high</timerone.h></timerone.h>
<timerone.h><timerone.h> 6 segments = 1100ms low 30ms high</timerone.h></timerone.h>
<timerone.h><timerone.h> 7 segments = 1500ms low 30ms high</timerone.h></timerone.h>
<timerone.h><timerone.h> </timerone.h></timerone.h>
<timerone.h><timerone.h> civic sensor is analog, we will read the voltage and match this voltage to x segments sending the correct pwm signal. When we want to read a voltage, in electronics that means using an adc (analog to digital converter), arduino UNO has a 10 bit resolution adc, so that means when we use the analogRead() function will return us a vale between 0 and 1023 where 0 is 0v an 1023 is 5v.</timerone.h></timerone.h>
<timerone.h><timerone.h> </timerone.h></timerone.h>
<timerone.h><timerone.h> Matching adc value (10 bits) with temperature:</timerone.h></timerone.h>
<timerone.h><timerone.h> ADC celsius</timerone.h></timerone.h>
<timerone.h><timerone.h> 71 113deg</timerone.h></timerone.h>
<timerone.h><timerone.h> 87 104</timerone.h><timerone.h>deg </timerone.h></timerone.h>
<timerone.h><timerone.h> 106 96deg</timerone.h></timerone.h>
<timerone.h><timerone.h> 131 88deg</timerone.h></timerone.h>
<timerone.h><timerone.h> 200 79deg</timerone.h></timerone.h>
<timerone.h><timerone.h> 1024 71deg</timerone.h></timerone.h>
<timerone.h><timerone.h> </timerone.h></timerone.h>
<timerone.h><timerone.h> In our case we are going to update the ect value reading the sensor only every 5 seconds.</timerone.h></timerone.h>
<timerone.h><timerone.h> </timerone.h></timerone.h>
<timerone.h><timerone.h> Code:</timerone.h></timerone.h>
<timerone.h><timerone.h> </timerone.h></timerone.h>
<timerone.h><timerone.h> //ECT converter from civic eg sensor to s2000 cluster</timerone.h></timerone.h>
<timerone.h><timerone.h> //Version 1.0</timerone.h></timerone.h>
<timerone.h><timerone.h> //[email protected]</timerone.h></timerone.h>
<timerone.h><timerone.h> </timerone.h></timerone.h>
<timerone.h><timerone.h> #include <timerone.h> //this library will allow us to use pwm signals with custom period</timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> </timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> int ectOut = 9;</timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> int ectIn = A1;</timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> int adcValue=0; //ect voltage in range between 0 and 1023</timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> unsigned long ectBars[7]={1500000,1100000,700000,400000,300000,220000,1500 00}; //microseconds from 1 to 7 segments</timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> int ectADC[6]={203,156,122,84,53,19}; //correspondence between bars and temperature (in adc units) (71,82,93,104,115,126 celsius)</timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> </timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> long waitUntil=0; //timer</timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> int update = 5000; //reading ect sensor only every 5 seconds</timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> </timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> void setup(){</timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> pinMode(ectOut, OUTPUT); //sets the pin as output</timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> pinMode(ectIn, INPUT); //sets the pin as input </timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> </timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> Timer1.initialize(); //initializing the Timer1, so we can use pwm function</timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> Timer1.pwm(ectOut,20,1530000); //we set the new custom pwm on vssOut pin</timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> }</timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> </timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> int ectReadandUpdate(){</timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> adcValue = analogRead(ectIn); //read the ect voltage</timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> </timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> //we match the voltage to his microseconds that represents x segments </timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> if (adcValue == 0){</timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> Timer1.pwm(ectOut,20,ectBars[0]+30000); //we set the new custom pwm on ectOut pin</timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> }</timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> else if(adcValue < ectADC[5]){</timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> Timer1.pwm(ectOut,171,ectBars[6]+30000); //we set the new custom pwm on ectOut pin</timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> }</timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> else if(adcValue < ectADC[4]){</timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> Timer1.pwm(ectOut,122,ectBars[5]+30000); //we set the new custom pwm on ectOut pin</timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> } </timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> else if(adcValue < ectADC[3]){</timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> Timer1.pwm(ectOut,93,ectBars[4]+30000); //we set the new custom pwm on ectOut pin</timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> } </timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> else if(adcValue < ectADC[2]){ </timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> Timer1.pwm(ectOut,71,ectBars[3]+30000); //we set the new custom pwm on ectOut pin</timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> }</timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> else if(adcValue < ectADC[1]){</timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> Timer1.pwm(ectOut,42,ectBars[2]+30000); //we set the new custom pwm on ectOut pin</timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> }</timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> else if(adcValue < ectADC[0]){</timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> Timer1.pwm(ectOut,27,ectBars[1]+30000); //we set the new custom pwm on ectOut pin</timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> }</timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> else{</timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> Timer1.pwm(ectOut,20,ectBars[0]+30000); //we set the new custom pwm on ectOut pin</timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> }</timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> }</timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> </timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> void loop(){</timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> </timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> //we read ect sensor every 5 seconds</timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> if (millis() >= waitUntil){ ;</timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> ectReadandUpdate();</timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> waitUntil = millis() + update; </timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> } </timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> }</timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> </timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h> <timerone.h><timerone.h> That should be all for ECT.</timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h> </timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h> </timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h> PART 4: ADVANCED WIRING (MISCELLANEOUS LIGHTS N' ****)</timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h> </timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h> So, if you have followed everything up till this point. You have functioning RPM, VSS, ECT, Fuel.. ect. But you wont have things like door ajar illumination, or seatbelt illumination. For these things you have to wire the cluster directly in to the multiplexor outputs. </timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h> I am still working on a writeup for this section.</timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h> </timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h> But it will look something like this written by george typs-s:</timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h> </timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h> </timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h> </timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h> PART 5: BRACKETS AND MOUNTING</timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h> </timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h> There are multiple ways to mount the cluster into your car.</timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h> If you have oodles of money you can make your own carbon fibre shroud. Or if you are a broke *** college kid like me then you can spend about 5$ at your local homedepot and have something that looks ... decent.</timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h> </timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h> Here is how I did mine.</timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h> </timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h> 1. Cut shroud: </timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h> </timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h> 2. Buy acrylic sheet from homedepot (4$) and cut out your bezel.</timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h> </timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h> </timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h> 3. Use the scrap aluminum to make your brackets. (My brackets come from the back of the cluster, and screw into the acrylic sheet. From there the brackets come forward to screw into the shroud)</timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h> </timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h> </timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h> </timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h> </timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h> 4. Once you are sure it fits. Paint it.</timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h> </timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h> </timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h> 5. Drill holes on the side of the cluster shroud to mount it.</timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h> </timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h> </timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h> </timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h> </timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h> 6. Mount in car and enjoy.</timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h> </timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h> </timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h> This is how xproductions did his, however it is not finished.</timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h>
MAKING THE BRACKETS
These brackets are my way of making the brackets and by no means the only way to make them. This is a guide to help you out a bit get u up and running of course if i had the tools to machine my own version of these brackets i would do so and make everyones life easier. I porbably would do the same thing for EG's and EK's but enough of small talk and down to business.
First your gona want to go to ur local home depot store and walk into the back where the building materials are and look for this section right here.. yes i took a picture of it so u get an idea of what im talking about.
After closer inspection i found what i am looking for. About 20in long roughly.
And only costs about $1.36.... lol.. i bought only 1 but if u think ur gona screw it up might as well by 2
now first thing your gona need to do is measure 4 and 3/4 inches in from each end of the metal stick that you bought from home depot and cut it, bend it about 45 degrees and should have 2 pieces looking like this
to get to this point lets take it a step back... the longer portion is about 4inches in length
and the remaining 3/4 of an inch is like this
and heres a closer look of the 45 degree bend
If u did everything accordingly to how i showed u then place it up against the cluster
Then u will notice why i drilled those holes earlier
These are your best friends. Self Tap Screws
For this particular reason... and the rest of this build
</timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>

<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h></timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>

<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h></timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>

<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h> I WILL BE UPDATING THIS DIY LATER ONCE I HAVE TIME TO WORK ON IT.</timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h> </timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h> I apologise for the quality of this DIY. Its not my best write-up, but I will make it better over time.</timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h> </timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h> THANK YOU AND ENJOY YOUR NEW CLUSTER.</timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h> </timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h> </timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h> VIDEOS:</timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h><timerone.h><timerone.h><t imerone.h> </timerone.h></timerone.h></timerone.h></timerone.h></timerone.h>
<timerone.h><timerone.h> Without bezel:</timerone.h></timerone.h>
<timerone.h><timerone.h>
</timerone.h></timerone.h>
<timerone.h><timerone.h> </timerone.h></timerone.h>
<timerone.h><timerone.h> With Bezel:</timerone.h></timerone.h>
<timerone.h><timerone.h>
</timerone.h></timerone.h>
Attached Images
File Type: jpg
da40474a.jpg (68.6 KB, 11 views)

Last edited by TenToesDown; 10-26-2014 at 09:31 PM.
TenToesDown is offline  
Old 10-26-2014
  #2  
Administrator
Administrator
iTrader: (1)
 
sdaidoji's Avatar
 
Join Date: Dec 2008
Location: TN
Age: 47
Posts: 9,257
Rep Power: 225
sdaidoji has much to be proud ofsdaidoji has much to be proud ofsdaidoji has much to be proud ofsdaidoji has much to be proud ofsdaidoji has much to be proud ofsdaidoji has much to be proud ofsdaidoji has much to be proud ofsdaidoji has much to be proud ofsdaidoji has much to be proud ofsdaidoji has much to be proud ofsdaidoji has much to be proud of
Re: DIY: S2000 (AP2) Cluster in EM2

not a fan of the digital gauges, but good job!
sdaidoji is offline  
Old 10-26-2014
  #3  
Registered!!
Thread Starter
 
Join Date: Jun 2013
Posts: 17
Rep Power: 0
TenToesDown will become famous soon enoughTenToesDown will become famous soon enough
Re: DIY: S2000 (AP2) Cluster in EM2

Originally Posted by sdaidoji View Post
not a fan of the digital gauges, but good job!
Yeah, I am kind of on the fence with this one.
Not sure if I liked my RSX one better that this one yet. It is a lot of work for just a digital guage.

The only reason I do like this one is because my speedo works. It was not working on my RSX one and I had this cluster lying around.
TenToesDown is offline  
Old 10-27-2014
  #4  
Kenny the Ricer
iTrader: (1)
 
Kennykid2002's Avatar
 
Join Date: Oct 2009
Location: In your trunk
Age: 29
Posts: 5,580
Rep Power: 209
Kennykid2002 has a reputation beyond reputeKennykid2002 has a reputation beyond reputeKennykid2002 has a reputation beyond reputeKennykid2002 has a reputation beyond reputeKennykid2002 has a reputation beyond reputeKennykid2002 has a reputation beyond reputeKennykid2002 has a reputation beyond reputeKennykid2002 has a reputation beyond reputeKennykid2002 has a reputation beyond reputeKennykid2002 has a reputation beyond reputeKennykid2002 has a reputation beyond repute
Re: DIY: S2000 (AP2) Cluster in EM2

Not bad.
You'll def have to do some custom fiberglassing to make it look nicer.
Kennykid2002 is offline  
Related Topics
Thread
Thread Starter
Honda Civic Forum
Replies
Last Post
hondacivic0253
7th Generation Civic
7
09-29-2015 08:06 AM
260000milesgoal
I.C.E. (Audio) & Electrical Upgrades
2
09-25-2015 07:41 PM
Zygrene
6th Generation Civic
0
09-23-2015 11:59 PM
rayman009
I.C.E. (Audio) & Electrical Upgrades
3
09-12-2015 08:30 PM
Bricoleur
I.C.E. (Audio) & Electrical Upgrades
4
09-09-2015 12:23 PM


Thread Tools
Search this Thread
Quick Reply: DIY: S2000 (AP2) Cluster in EM2


Contact Us - Archive - Advertising - Cookie Policy - Privacy Statement - Terms of Service

© 2019 MH Sub I, LLC dba Internet Brands

We are a participant in the Amazon Services LLC Associates Program, an affiliate advertising program designed to provide a means for us to earn fees by linking to Amazon.com and affiliated sites.