14POINT7 Spartan 3 v2 Lambda Controller

Specifications
- Product: Spartan 3 v2
- Package Contents: 1x Spartan 3 v2, 1x USB Converter, 1x Waterproof blade fuse holder, 2x 5 Amp blade fuse
Product Usage Instructions
Exhaust Installation
Insert a 5 amp fuse into the fuse holder, cut the wire at the midpoint, and securely close the lid. Connect one end of the fuse holder to the Spartan 3 red wire and the other end to a switched 12V source, preferably the fuel pump relay.
Wiring
| Wire Color | Name |
|---|---|
| Red | Power |
| Black | Electronics Ground |
USB Communications
The Spartan 3 comes with a USB converter for communication with a computer. The USB converter uses the FTDI chipset, which is typically preinstalled on most operating systems.
Windows 10 Serial Terminal Setup
To communicate with the Spartan 3 via serial commands on Windows 10:
- Ensure Electronics Ground (Black), Heater Ground (White), and Power (Red) are connected and the Spartan 3 is powered.
- Download and install the Termite software from https://www.compuphase.com/software_termite.htm.
- In the Windows search bar, type “Device Manager” and open it.
- Locate the Spartan 3 USB converter listed as “USB Serial Port” (e.g., COM3).
- In Termite, click on Settings, verify the Port is correct (e.g., COM3) and set the Baud rate to 9600.
Serial Commands
To enter serial commands:
- Connect Electronics Ground (Black), Heater Ground (White), and Power (Red).
- Use commands like GETHW, GETFW, SETTYPE, etc., followed by specific values as per the usage note below.
Usage Note
Refer to the provided examples to understand how to format and use the serial commands effectively based on the desired settings.
Warning
- Do not connect or disconnect the Lambda Sensor while Spartan 3 is powered.
- The Lambda Sensor will get very hot during normal operation, please be careful when handling it.
- Do not install the Lambda Sensor in such a manner that the unit is powered before your engine is running. An engine start can move condensation in your exhaust system to the sensor, if the sensor is already heated this can cause thermal shock and cause the ceramic internals inside the sensor to crack and deform.
- While the Lambda Sensor is in an active exhaust stream, it must be controlled by Spartan 3. Carbon from an active exhaust can easily build up on an unpowered sensor and foul it.
- Lambda sensor life when used with leaded fuels is between 100-500 hrs.

Package Contents
1x Spartan 3 v2, 1x USB Converter, 1x Waterproof blade fuse holder, 2x 5 Amp blade fuse
Exhaust Installation
The Lambda sensor should be installed between the 10 o’clock and the 2 o’clock position, less than 60 degrees from vertical, this will allow gravity to remove water condensation from the sensor.
For all Oxygen sensor installations, the sensor must be installed before the catalytic converter.
For normally aspirated engines the sensor should be installed about 2ft from the engine exhaust port. For Turbocharged engines the sensor should be installed after the turbocharger. For Supercharged engines the sensor should be installed 3ft from the engine exhaust port.
Fuse
Insert 5 amp fuse into fuse holder, cut wire at midpoint, and secure lid. One end of the fuse holder connects to Spartan 3 red wire the other end of the fuse holder connects to a switched 12[v] source, fuel pump relay is normally recommended.

Wiring
| Wire Color | Name | Connects to | Note |
| Red | Power | Switched 12[v] | Use fuse holder, 12[v] should be live only when engine is running. Fuel pump relay is the recommended source. |
| Black | Electronics Ground | Ground | Ground where interfacing device is grounded |
| White | Heater Ground | Ground | Ground to chassis or engine block |
| Green | High Performance Analog
Output |
Interfacing device;
ECU/Gauge/datalogger/etc… |
Default output is linear output; 0[v] @ 0.68 [Lambda] Linear to 5[v] @ 1.36 [Lambda], equivalent to 10-20 [AFR] for gasoline fuel |
| Brown | Standard Performance Analog Output | Default output is heater status; 0[v] = waiting for trigger before heating sensor, 1[v] = sensor heatup started, 2[v] = sensor heatup complete and sensor heater is in closed loop control | |
| Blue | CAN High | ||
| Purple | CAN Low | ||
| Orange | UART TX | “Rx-Orange” on USB converter | |
| Yellow | UART RX | “Tx-Yellow” on USB converter | |
| Grey | UART Ground | “Gnd-Grey” on USB converter |
USB Communications
Spartan 3 comes with a USB converter to provide USB communications with your computer. The converter is based on the popular FTDI chipset so most operating systems already have the driver preinstalled.
Windows 10 serial terminal
Electronics Ground (Black), Heater Ground (white), and Power (Red) must be connected and Spartan 3 powered to enter serial commands.
Spartan 3 cannot be powered through USB.
The recommended serial terminal is Termite, https://www.compuphase.com/software_termite.htm, please download and install the complete setup.
![]() |
![]() |
![]() |
![]() |
| In windows 10 search bar, please type “Device Manager” and open it. | Spartan 3 USB converter will show up as “USB Serial Port”, in this example “COM3” is assigned to Spartan 3. | In Termite, click “Settings” | Make sure the Port is correct and that the
Baud rate is “9600”. |
Serial Commands
Electronics Ground (Black), Heater Ground (white), and Power (Red) must be connected and Spartan 3 powered to enter serial commands. Spartan 3 cannot be powered through USB.
| Serial Command | Usage Note | Purpose | Example | Factory Default |
| GETHW | Gets Hardware Version | |||
| GETFW | Gets Firmware version | |||
| SETTYPEx | If x is 0 then Bosch LSU 4.9
If x is 1 then Bosch LSU ADV |
Sets LSU sensor type | SETTYPE1 | x=0, LSU 4.9 |
| GETTYPE | Gets LSU sensor type | |||
| SETCANFORMATx | x is an integer 1 to 3 character long. x=0; default
x=1; Link ECU x=2; Adaptronic ECU x=3; Haltech ECU x=4; % Oxygen*100 x=5; Extended CAN format |
SETCANFORMAT0 | x=0 | |
| GETCANFORMAT | Gets CAN format | |||
| SETCANIDx | x is an integer 1 to 4 characters long | Sets 11 bit CAN id | SETCANID1024
SETCANID128 |
x=1024 |
| GETCANID | Gets 11 bit CAN id | |||
| SETCANBAUDx | x is an integer 1 to 7 characters long | Sets CAN Baud Rate | SETCANBAUD1000000
will set CAN Baud rate to 1Mbit/s |
X=500000,
500kbit/s |
| GETCANBAUD | Gets CAN Baud Rate | |||
| SETCANRx | If x is 1 the resistor is enabled. If x is 0 the
resistor is disabled |
Enable/Disable CAN
Termination Resistor |
SETCANR1
SETCANR0 |
x=1, CAN term Res
Enabled |
| GETCANR | Gets CAN Term Res State;
1=enabled, 0=disabled |
| SETAFRMxx.x | xx.x is a decimal exactly 4 characters long
including decimal point |
Sets AFR Multiplier for Torque
app |
SETAFM14.7
SETAFM1.00 |
xx.x=14.7 |
| GETAFRM | Gets AFR Multiplier for Torque
app |
|||
| SETLAMFIVEVx.xx | x.xx is a decimal exactly 4 characters long including decimal point. Minimum value is 0.60, maximum value is 3.40. This value can be
higher or lower than the SETLAMZEROV value. |
Sets Lambda at 5[v] for the linear output | SETLAMFIVEV1.36 | x.xx=1.36 |
| GETLAMFIVEV | Gets the Lambda at 5[v] | |||
| SETLAMZEROVx.xx | x.xx is a decimal exactly 4 characters long including decimal point. Minimum value is 0.60, maximum value is 3.40. This value can be
higher or lower than the SETLAMFIVEV value. |
Sets Lambda at 0[v] for the linear output | SETLAMZEROV0.68 | x.xx=0.68 |
| GETLAMZEROV | Gets Lambda at 0[v] | |||
| SETPERFx | If x is 0 then standard performance of 20ms. If x is 1 then high performance of 10ms. If x is 2
then optimize for lean operation. |
SETPERF1 | x=1, high performance | |
| GETPERFx | Gets performance | |||
| SETSLOWHEATx | If x is 0 then sensor is heated at normal rate during initial power up.
If x is 1 then sensor is heated at 1/3 the normal rate during initial power up. If x is 2 then wait, a max of 10 min, for MS3 CAN RPM signal before heating. If x is 3 then wait, a max of 10 min, for exhaust gas to heat sensor to 350C before heating. Requires Firmware 1.05 and above |
SETSLOWHEAT1 | x=0, normal sensor heatup rate | |
| GETSLOWHEAT | Gets slowheat setting | |||
| MEMRESET | Reset to factory settings. | |||
| SETLINOUTx.xxx | Where x.xxx is a decimal exactly 5 characters long including decimal point, greater than 0.000 and less than 5.000. Linear Output will resume
normal operation on reboot. |
Allows the user to set the High Perf Linear Output to a specific voltage | SETLINOUT2.500 | |
| DOCAL | Pull sensor out of the exhaust. Power on wideband controller with sensor connected for about 5 minutes then issue the DOCAL command. | Do Free Air Calibration and display the value. A perfect sensor will have a value of 1.00. Recommended for clone
sensors only. |
||
| GETCAL | Requires Firmware 1.04 and above | Gets Free Air Calibration value | ||
| RESETCAL | Requires Firmware 1.04 and above | Resets Free Air Calibration
value to 1.00 |
||
| SETCANDRx | x is an integer 1 to 4 characters long Requires Firmware 1.04 and above | Sets CAN Data Rate in hz | For optimal performance, CAN Data
Rate should be 200hz |
x=50 |
| GETCANDR | Requires Firmware 1.04 and above | Gets CAN Data Rate | ||
| SETNBMODEx | If x is 0 then Standard Performance Analog Output is Simulated Narrowband.
If x is 2 then Standard Performance Analog Output is Heater Status |
Selects the function of the Standard Performance Analog Output between Simulated
Narrowband and Heater Status |
SETNBMODE0 | x=2, Heater Status |
| GETNBMODE | Gets Standard Performance
Analog Output mode |
|||
| SETNBSWLAMx.xxx | x.xxx is a decimal exactly 5 characters long including decimal point. Requires Firmware
1.08 and above |
Sets the Simulated Narrowband Switch Point in Lambda | SETNBSWLAM1.005 | x.xxx=1.000 |
| GETNBSWLAM | Gets the Simulated Narrowband
switch point in Lambda |
*All commands are in ASCII, case does not matter, spaces do not matter.
CAN Bus Protocol Default Format (Lambda)
For %O2 CAN Format please see “Spartan 3 and Spartan 3 Lite for Lean Burn and Oxygen Metering Applications.pdf” Spartan 3’s CAN Bus operates with 11 bit addressing.
- Default CAN Baud rate is 500kbit/s
- Default CAN Termination resistor is enabled, this can be changed by sending “SETCANRx” serial command.
- Default CAN Id is 1024, this can be changed by sending “SETCANIDx” serial command.
- Data Length (DLC) is 4.
- Default Data Rate is 50 hz, data is sent every 20[ms], this can be changed by sending “SETCANDRx” serial command. Big-endian for all data
- Data[0] = Lambda x1000 High Byte
- Data[1] = Lambda x1000 Low Byte
- Data[2] = LSU_Temp/10
Data[3] = Status - Lambda = (Data[0]<<8 + Data[1])/1000
- Sensor Temperature [C] = Data[2]*10
Status
| Status Value (decimal) | Meaning |
| 0 | Reserved |
| 1 | Waiting for trigger before heating up |
| 2 | Sensor is heating up |
| 3 | Sensor in normal operation |
| 4+ | Reserved |
Supported CAN Formats
| CAN Format Name | CAN Format Serial
Command |
CAN Id Serial
Command |
CAN BAUD Rate Serial
Command |
Note |
| Link ECU CAN Format | SETCANFORMAT1 | SETCANID950 | SETCANBAUD1000000 | Read “Link G4+ ECU CAN Bus Configuration
for Spartan 3.pdf” |
| Adaptronic ECU CAN
Format |
SETCANFORMAT2 | SETCANID1024
(Default from factory) |
SETCANBAUD1000000 | |
| MegaSquirt 3 ECU
CAN Format |
SETCANFORMAT0
(Default from factory) |
SETCANID1024
(Default from factory) |
SETCANBAUD500000
(Default from factory) |
Read “Interfacing Spartan 3 to MegaSquirt
3.pdf” |
| Haltech ECU CAN
Format |
SETCANFORMAT3 | Not required | SETCANBAUD1000000 | Spartan 3 Emulates Haltech WBC1
wideband controller |
| YourDyno Dyno
Controller CAN Format |
SETCANFORMAT0
(Default from factory) |
SETCANID1024
(Default from factory) |
SETCANBAUD1000000 | |
| MaxxECU | SETCANFORMAT0
(Default from factory) |
SETCANID1024
(Default from factory) |
SETCANBAUD500000
(Default from factory) |
Read “Interfacing Spartan 3 to
MaxxECU.pdf” |
| Extended CAN Format | SETCANFORMAT5 | Read “Spartan 3 Extend CAN Format.pdf”
Requires Firmware 1.08 and above. |
CAN Termination Resistor:
Suppose we call the ECU; Master, and devices that send/receive data to/from the ECU we call; Slave (Spartan 3, digital dashboard, EGT controller, etc…). In most applications there is one Master (ECU) and one or more Slaves that all share the same CAN Bus. If Spartan 3 is the only Slave on the CAN Bus then the CAN Termination Resistor on Spartan 3 should-be enabled using the serial command “SETCANR1”. By default the CAN Termination Resistor on Spartan 3 is enabled. If There are multiple Slaves, the Slave that is farthest from the Master (based on wire length) should have the CAN Termination Resistor enabled, all other Slaves should have their CAN Termination Resistor
disabled/disconnected. In practice; it often does not matter if the CAN Termination Resistors are properly set, but for highest reliability the CAN Termination Resistors should be properly set.
Bootloader
When Spartan 3 is powered up without the LSU Heater Ground, white wire, connected it will enter bootloader mode. Powering up Spartan 3 with the Heater Ground connected will not trigger the bootloader and Spartan 3 will work as normal.
Warranty
14Point7 warrants Spartan 3 to be free from defects for 2 years.
Disclaimer
14Point7 is liable for damages only up to the purchase price of its products. 14Point7 products should not be used on public roads.
FAQ
What is included in the Spartan 3 v2 package?
The package includes the Spartan 3 v2 unit, a USB converter, a waterproof blade fuse holder, and two 5 Amp blade fuses.
How do I set up USB communications with Spartan 3?
Simply connect the USB converter to your computer. Most operating systems already have the necessary drivers preinstalled for the FTDI chipset used in the converter.
Can I power the Spartan 3 through USB?
No, the Spartan 3 must be powered separately using a switched 12V source.
Documents / Resources
![]() |
14POINT7 Spartan 3 v2 Lambda Controller [pdf] User Manual Spartan 3 v2 Lambda Controller, Spartan 3 v2, Lambda Controller, Controller |




