User Tools

Site Tools


MotoKomp: A Diy speedometer + gauge driver

The MotoKomp is a project to create a DIY “speedohealer” style device. In my case, I grafted a GSXR front fork onto a 1993 Honda CBR 600. The CBR's original front end was junk, and the gauges were smashed as well. A popular mod for these bikes has been to install the gauges from a CBR F4i - they're digital, look good, are light weight - and they have a clock.

Note: I'll draw up a good schematic for the entire build when I have time. For now, all the info you need to succeed is actually here.

The Gauges

The gauges from the F4i are completely digital - and are designed to work as a single unit. No external hardware (aside from sensors) is needed to make them work. They're ideal for transplanting onto almost any bike (or other vehicle with 12 volts to drive them.) They are available on ebay for anywhere from $100+. I'd pay maybe $150 Max for a pristine set.

Gauge Wiring, originally from Updated with a couple of my notes.

F2 colors ==== F4i colors

  • Tachometer
    • Yellow / green ==== Yellow/Green
  • Temp
    • Black/ Brown ==== Green Blue
  • Left turn
    • Orange ==== Orange
  • High Beams
    • Blue ==== Blue
  • Neutral
    • Light Green / Red ==== Light Green / Red
  • Oil Pressure
    • Blue / Red ==== Blue / Red
  • Side Stand
    • Yellow/ Black ==== Green / White
  • Right Turn
    • Light Blue ==== Light blue
  • More gauge power - there are two buses inside the gauge (IIRC)
    • Black/Brown ==== Black/Brown
  • Memory Power
    • Red/Green goes to battery
  • Speedometer Sensor
    • black wires goes to black/brown,
    • pink wires to pink/green
    • green goes to to green/black.

Wires that you dont use (from tach) Brown/Black - fuel reserve sensor -*not used
* White/Blue - fi indicator - not used.

Speed Sensor

The speed sensor is rather important. For the CBR, there are a few bolt on options. I purchased one listed as a “98 99 00 01 Honda VFR800 Speed Sensor”. It cost $22 shipped on ebay. (The CBR 900 is nearly the same, but is harder to find and cost more!) To mount it, I bought a sprocket cover from a 95-97 900RR - the speed sensor bolts right to it. The entire thing then goes over the front sprocket nut.

The sensor itself is a hall effect sensor. It has three wires and is a 12 volt unit. One wire is ground, one is power (12v) and one is signal output - which is a square wave at 5 volts. (making it ideal for the motokomp) I used extra connectors from another harness to keep the plug intact.

  • Speedometer Sensor Wiring (repeated)
    • black wires goes to black/brown,
    • pink wires to pink/green
    • green goes to to green/black.

Hardware - Circuits

The MotoKomp is really just an Arduino with a custom shield on it. Each of the 12 volt inputs gets a voltage divider on it. For the Motokomp, R1 = 20k ohm and R2 is 10kohm. Since Vout = Vin*R2/(R1+R2), 12v = 4v to the Arduino.

It has the following inputs:

  • Pin 4 - used for a DS180 Temperature Sensor. I used this for ambient temp reading. It's optional. It's described here. The circuit is simple.
  • Pin 2 (interrupt 0) is the Speedometer Sensor input from the pink wire on the sensor. (double check with a meter before using or you could blow your arduino if yours outputs 12v for some odd reason!
  • Pin 0 Battery voltage pin

Optional pins!

The fully tested part is the speedo stuff, these are completely optional inputs

  • Pin 3 tachometer pin (optional, I ended up not using this much)
  • Pin 1 neutral sensor


This is really handy. It is optional if you don't want one. I used a Blue 16×2 text display from Adafruit. It is a Standard HD44780 LCD. You can get them at most good electronics shops. There's a tutorial here. For the bike, I picked a good resistor for the contrast and set it permanently. I also used some cat5 stranded wire to make a small wiring harness.

The Code! Finally

You can download the code here:

This was written specifically for my CBR. It may (probably) need to be tuned for your bike!

Configuring it

Sprocket counts - you MUST set these to match your bike or the speedo will be wrong:

#define frontsprocket 15 front sprocket tooth count
#define rearsprocket 43
rear sprocket tooth count
#define sprocketpulses 4 # of pulses generated by the sensor for one revolution of the front sprocket! Important!!

The pulses setting is also important. VERIFY your count with a meter on the speed sensor! They can vary.
Make these match your bike. If you only have 5 gears, you only need 5 ratios. #define numgears 6
number of gears in transmission
now define the actual ratios in the transmission.
float validratios[]={
2.93,2.06,1.59,1.37,1.2,1.09 };
adjust in setup by chainratio.

motokomp.txt · Last modified: 2012/10/06 12:55 (external edit)