If you need Buoy, you can download it HERE

The defaults and tunable options may change depending on firmware version, and not all features are available depending on hardware and firmware versions being used.

There are helpful tool-tips that appear when you hover over a particular parameter. On this page we go a bit deeper into each parameter.




Input Sensor

There are many different input sensors to choose from: Mass AirFlow (MAF) sensors, Throttle Position Sensors (TPS), and Manifold Air Pressure (MAP) sensors. While each unit is shipped pre-programmed for the sensor you chose at checkout, you can always reprogram it for a new sensor later.

You can use one of the available MAF sensors freely without the need for a specific ECU tune. However some sensors, such as TPS and MAP, require you to have a specific ECU tune in order to run properly.

Output Sensor

This is the sensor that your ECU is tuned for. This is almost certainly the stock VAM that your vehicle was equipped with, unless it was changed and your ECU was retuned for another sensor at some point.



Enable to allow the SSSICK to perform software averaging of signal processing. This is enabled by default.

We recommend a setting of somewhere between 20 and 40. A larger value means slower reaction, but perhaps smoother operation. A smaller value means sharper response, but an overly small value will provide the ECU with too much noise and may cause rocky operation.

  • Recommended values based on input sensor used:
    • MAF: 10-20
    • TPS: 5-20
    • MAP: 25-50

What is averaging?

Averaging smooths a signal to allow for better, less choppy reading of a signal. This should offer better operation when tuned correctly. You can see how a raw signal (orange line) is filtered and output (blue line):

Averaging example.png

You can see how various averaging values affect the signal below:

Manual Correction

Enable this to allow the making of manual corrections to output. This scalar is part of a final output equation. Adjusting this directly affects the calculated airflow. (E.G. 100 kg/hr will be converted to 105 kg/hr with a correction scalar of 1.05)

FW 0.20+

Manual correction.png

Beginning with FW 0.20, the manual correction is now a linear 2D map that allows you to set linear interpolated correction based on airflow (manifold pressure for MAP; throttle position for TPS).

The first scalar value is applied statically at all airflow values below the first airflow axis point, and the last value is applied statically at all airflow values above the last airflow axis point. Below is an example of how this correction is applied:

Correction example.png

Both the scalars and the airflow axis are fully tunable.

FW 0.16-0.19

Manual correction fw16-19.png

For FW versions 0.16 through 0.19 the manual scalar was static. This means that the values is applied as a constant scalar throughout all airflow ratings.

Dynamic Correction

Dynamic correction.png

Leave this disabled unless you are having issues with fuel ratios that cannot be fixed with minor manual corrections.

This scalar directly affects output signal directly and not airflow values.

Enable this to allow the SSSICK to automatically make corrections to output based on discrepancies. This scalar cannot be set manually as it is dynamic and the SSSICK will automatically learn different values for different airflow ranges. The SSSICK not only outputs a signal, it also reads that output signal to verify that the board is outputting the correct signal. If there is issue with this signal and the "Error Checking" option is active, the SSSICK will throw an error code. You can enable dynamic correction to correct for these types of issues.

  • Correction Limits
    • The MINIMUM and MAXIMUM scalar values for how far the SSSICK can go to make automatic adjustments.
    • These settings are limited to no less than 0.90 and no more than 1.10 respectively.

Custom LED Color


With our newer firmwares the LED operation has changed. You can now set your own custom LED color for normal operation. The default normal operation LED color is green. Resetting the unit to default values will also reset your custom LED color to green.

Click the large colored box to bring up a color selection window.

Timer Periods

Timer period.png

Adjust these to change how often the SSSICK will perform certain functions and checks.

Timer Period 1

How often custom trigger and idle checks are performed.

Typical values are 80-100.

Timer Period 2

How often internal checking is performed and dynamic correction is updated.

Typical values are 180-220.

IAT Scaling

Iat scaling.png

Beginning with hardware R020 you can manually tune the IAT sensor output so that non-stock sensors can be used. The values for the most common IAT sensor setups are: Low = 10, High = 1020.



When using a TPS you must first calibrate the closed and open values. With the engine off and the unit powered, click on "Calibrate TPS" to start the process. With the throttle fully closed, click "Set Closed Value". Then depress the throttle pedal fully and click "Set Open Value". Once you do this, click "Save" to save the settings. The settings will not be applied until you write the settings to the SSSICK (by clicking "Write").

Learn tps.png


Map generate.png

When using a Manifold Air Pressure (MAP) sensor as input, you will have to generate the MAP curve when programming the kit. To do this you need to fill in two options: "Displacement" and "Rated PSI".

Displacement is the total displacement of your engine in cubic centimeters (cc).

Rated PSI is the highest pressure your MAP sensor can read. We offer 36.3, 58, and 72.5 PSI MAP adapters.

These sensors are rated in absolute pressure, meaning the atmospheric pressure is part of the reading. At sea level you will have an atmospheric pressure around 14.5 PSI (or 1 bar). If you want to run "20 PSI of boost", then your sensor will need to support no less than 20 + 14.5 = 34.5 PSI.

Once these options are filled out, click "Generate Sensor Curve" to generate your particular sensor curve. Then click "Write" at the bottom of the window to write the settings to your SSSICK.

M40/2 Mode


M42 mode.png

If you are running M42-compatible firmware, you will be presented with the M42 Mode table. M42's have a little extra wiring involved -- instructions are included with your kit by request! In the latest software versions this is all set automatically when you choose an M40/42 output sensor, you will not see this section.

The M40/2 VAM has three outputs, one for IAT and two for airflow. Therefore an additional wire is added to units destined for an M40 or M42 engine. M42 mode enables the output of all three of these signals to the ECU.

  • Operation Mode
    • Default: The standard operation mode, what most people will use.
    • Sweep: Used if the "default" option is providing inconsistent results.
    • Inverse: We've found that the E36 M42 models prefer this setting.
  • Threshold kg/hr
    • The airflow rate at which M42 mode is active. Typically this is between 10 and 70.
  • Output rate
    • A scalar for the additional output signal. This is used to adjust for any possible discrepancies.

Custom Triggers

Custom triggers.png

Beginning with hardware version R020 and newer, there are now 2 programmable triggers that can be wired to a relay to trigger a device (such as NOx, sprayers, etc). These triggers are based on input sensor: kg/hr for MAF sensors, throttle position for TPS, and manifold pressure for MAP sensors. When enabled, the trigger will short a connection to ground (make active) when above a set sensor rate. You can also set each of the triggers to be triggered inversely -- this means that the trigger will be active when BELOW the set threshold and inactive when above that threshold.

You will need to use the appropriate adapter kit to take advantage of these triggers. You will wire a RELAY to these triggers, ABSOLUTELY DO NOT attempt to drive the device directly through the triggers. An example of how you can wire these triggers can be seen in the below diagram:

Relay wiring.png

An important thing to note when using 5-pin relays (with 87 and 87a pins): the 87 pin is open (there is no connection) and the 87a pin is closed (there is current flowing) when the trigger is INACTIVE. And when the trigger is active (above the set threshold), the 87 pin closes (becomes active) and the 87a pin opens (breaks connection). When using a 4-pin relay, there is no 87a pin and the 87 pin is only closed (active) while the trigger is active.

Enabled User Variables

Starting with Buoy version 0.19.1795 the Enabled User Variable section is automatically calculated and you will no longer have to worry about this option. We recommend using the latest Buoy version. If you need to use older versions for one reason or another, please email us for information regarding this section!

Reset to default values

If you ever have trouble, you can easily reset everything to default values from within Buoy. Simply click the "Reset" button!