How to install Sagitar IQ.Light tail lights on a MK7 Jetta

Fitting a EuroCustomAutos Sagitar IQ.Light four-piece set to a North American VW Jetta MK7.

Read this first. This guide is specific to a EuroCustomAutos Sagitar IQ.Light set fitted to a North American VW Jetta MK7, 2019 to 2023. The harness is made for those cars — other tail lights use different harnesses and different coding, so don't mix their instructions with this one. 2024 and newer Jettas are not compatible: VW locked diagnostics behind SFD2, and without coding the lights physically fit but cannot be enabled. Turn the ignition off before you touch the rear wiring, and don't drive with lighting faults active. Prefer to have it done? We'll wire and code it for you. Provided for information only — you work on your own vehicle at your own risk.
FitsNorth American VW Jetta MK7, 2019–2023, including S, SE, SEL, Sport and GLI
TimeAbout 2 hours — most of it trim, plus 20–30 minutes of coding
DifficultyIntermediate — no cutting or repinning, but every function has to be coded
CodingRequired. VCDS or OBDeleven, full channel list below.
Key toolsVCDS or OBDeleven, trim removal tools, and basic automotive electrical knowledge
Parts to buy firstJust our Sagitar IQ.Light set — all four pieces, both harnesses and the 3-pin connectors are included. Nothing to source, nothing to splice.
Working in the driveway? Download this guide as a PDF — every coding table, printable, no signal needed.

Why this one is different

The Sagitar is Volkswagen's Chinese-market Jetta, and the facelift got the IQ.Light treatment North America never received — an X-shaped illuminated signature, amber sequential signals and a startup animation. This is that exact conversion, and it's a four-piece job: the two outer lights plus two inner trunk-lid pieces that replace the blank filler panels your Jetta came with. That second pair is what turns the rear into one wide connected signature instead of two lamps at either end.

Mechanically it's one of the easier retrofits we do. The harness is plug-and-play — no de-pinning, no repinning, no cut wires. What the job really asks of you is the coding. Every rear lamp position has to be told what it now is, what load type it draws, and which fault byte belongs to it, and then the sweep has to be switched on in six separate parameters. Get the coding right and every function works; get one channel wrong and you'll be chasing a bulb-out warning or a signal that flashes on both sides at once. The tables below are the complete list.

Tools you'll need

What's in the box

Count everything against this list before you start. A missing connector is much easier to deal with before the trunk is in pieces.

Step 1 — Preparation

  1. Turn the vehicle ignition off.
  2. Open the trunk and carefully remove the interior panels to access the tail light harnesses. Work the clips with a trim tool rather than levering on the panel edge.

Step 2 — Route and connect the harness

Both the inner and outer harness wires come de-pinned and wrapped in protective tape. That's deliberate: the taped bundle slides through the grommets far more easily than loose terminals, and the tape keeps the pins from catching and bending on the way through.

  1. Route the outer harness wires carefully through the existing rubber grommets.
  2. Do not remove the tape until the harness is fully routed. This is the step people rush, and a bent terminal means a lamp that reads as failed later.
  3. Once routed, remove the protective tape from both the inner and outer harness ends.
  4. Colour match the wires from the inner and outer harnesses using the supplied 3-pin connector, pushing each terminal into the slot that matches its wire colour. Push until it clicks.
  5. Check sides before you go any further: left harness to the left tail light, right harness to the right tail light.
Everything gets done twice. Unless a step says otherwise, do it on the driver's side and then the passenger's side. Crossed sides are the single most common cause of both signals flashing together after coding.

Step 3 — Final assembly

  1. Confirm all connectors and pins are properly seated. A terminal that is 90% home will work on the bench and fail over a speed bump.
  2. Reinstall all removed trunk panels and interior trim, checking that no harness is pinched under a clip or trapped where the trunk lid closes.

Leave the coding until the car is back together — you'll want to open and close the trunk and cycle the lights while testing, and it's easier with the panels in.

Step 4 — Code the car (VCDS or OBDeleven)

Each rear lamp position in the car is a Leuchte channel, and each one needs four things set: the load type it should expect (Lasttyp), the bit position it reports failures on (Lampendefektbitposition), the middle DTC byte (Fehlerort mittleres Byte DTC-DFCC), and the light function it performs (Lichtfunktion A, and on the running lights, B as well). Here's what each channel becomes:

ChannelBecomes
Leuchte 20 / 21Brake light, left / right
Leuchte 17 / 16Turn signal, left / right
Leuchte 23 / 24Running (tail and park) light, left / right
Leuchte 28 / 27Dynamic power feed, left / right — the permanent 12 V (Klemme 30G) that drives the animations
Leuchte 29Reverse light
Leuchte 18 / 192019 cars only — old left / right turn channels, switched off. 2020 and newer are already off by default.

Brake lights and turn signals

#Property L20 · Brake LL21 · Brake RL17 · Turn LL16 · Turn R
1Lasttyp34 – LED Blinkleuchten34 – LED Blinkleuchten38 – LED Blinkleuchten38 – LED Blinkleuchten
2Lampendefektbitposition0925824
3Fehlerort mittleres Byte DTC-DFCC43452224
4Lichtfunktion ABrake lampBrake lampBlinken links HellphaseBlinken rechts Hellphase
5Lichtfunktion Bnot activenot activenot activenot active
6Dimmwert AB127127127127
7Lichtansteuerung HD ABAlwaysAlwaysalwaysalways
8Lichtfunktion Cnot activenot activenot activenot active
9Lichtfunktion Dnot activenot activenot activenot active
10Dimmwert CD0000
11Dimming Direction CDmaximizemaximizemaximizemaximize
12Lichtfunktion Enot activenot activenot activenot active
13Lichtfunktion Fnot activenot activenot activenot active
14Dimmwert EF0000
15Dimming Direction EFmaximizemaximizemaximizemaximize
16Lichtfunktion Gnot activenot activenot activenot active
17Lichtfunktion Hnot activenot activenot activenot active
18Dimmwert GH0000
19Dimming Direction GHmaximizemaximizemaximizemaximize

Note the brake and turn channels use different Lasttyp numbers — 34 on the brake lamps, 38 on the turn signals — even though both read as "LED Blinkleuchten" in the tool.

Running lights, dynamic power and reverse

#Property L23 · Running LL24 · Running RL28 · Dyn power LL27 · Dyn power RL29 · Reverse
1Lasttyp37 – allgemeine LED bis 12W37 – allgemeine LED bis 12W32 – Allgemeine_Gluehlampe12W32 – Allgemeine_Gluehlampe12W32 – allgemeine LED bis 12W
2Lampendefektbitposition1026001B
3Fehlerort mittleres Byte DTC-DFCC41421132
4Lichtfunktion AStandlicht allgemein (schlusslicht; Positionslicht, begrenzungslicht)Standlicht allgemein (schlusslicht; Positionslicht, begrenzungslicht)Klemme 30GKlemme 30GRueckfahrlicht
5Lichtfunktion BParklicht links (beidseitiges parklicht aktiviert li & re)Parklicht rechtsnot activenot activenot active
6Dimmwert AB127127127127127
7Lichtansteuerung HD ABalwaysalwaysalwaysalwaysalways
8Lichtfunktion Cnot activenot activenot activenot activenot active
9Lichtfunktion Dnot activenot activenot activenot activenot active
10Dimmwert CD00000
11Dimming Direction CDmaximizemaximizemaximizemaximizemaximize
12Lichtfunktion Enot activenot activenot activenot activenot active
13Lichtfunktion Fnot activenot activenot activenot activenot active
14Dimmwert EF00000
15Dimming Direction EFmaximizemaximizemaximizemaximizemaximize
16Lichtfunktion Gnot activenot activenot activenot activenot active
17Lichtfunktion Hnot activenot activenot activenot activenot active
18Dimmwert GH00000
19Dimming Direction GHmaximizemaximizemaximizemaximizemaximize

Leuchte 28 and 27 aren't lights. They're the permanent 12 V feed (Klemme 30G) the lights need to run their animations, which is why they're set as a plain 12 W bulb load rather than an LED. Leave them at Lampendefektbitposition 0 and DTC byte 1 so the car never expects a lamp there. On Leuchte 29 the Lasttyp entry your tool offers may read slightly differently between software versions — pick the general-LED-to-12 W entry.

2019 cars only — switch off Leuchte 18 and 19

On a 2019 Jetta the old left and right turn channels are still live and will fight the new ones. Set both to inactive. On 2020 and newer cars these channels are already off by default — check them, but you shouldn't need to change anything.

#PropertyL18 · Left turn (2019 only)L19 · Right turn (2019 only)
1Lasttypnot activenot active
2Lampendefektbitposition00
3Fehlerort mittleres Byte DTC-DFCC00
4Lichtfunktion Anot activenot active
5Lichtfunktion Bnot activenot active
6Dimmwert AB00
7Lichtansteuerung HD ABalwaysalways
8Lichtfunktion Cnot activenot active
9Lichtfunktion Dnot activenot active
10Dimmwert CD00
11Dimming Direction CDmaximizemaximize
12Lichtfunktion Enot activenot active
13Lichtfunktion Fnot activenot active
14Dimmwert EF00
15Dimming Direction EFmaximizemaximize
16Lichtfunktion Gnot activenot active
17Lichtfunktion Hnot activenot active
18Dimmwert GH00
19Dimming Direction GHmaximizemaximize

Step 5 — Turn on the sweeping signals

The sweep is enabled in six separate parameters, each covering a different trigger. Active means that trigger sweeps; not active means it just blinks. Set all six for the full effect, or pick and choose — plenty of people run the turn signals sweeping and leave the lock and unlock animations off.

ParameterTriggerValue
Außenlicht_Blinker-Richtungs_blinken_linksTurn signal, leftActive
Außenlicht_Blinker-Richtungs_blinken_rechtsTurn signal, rightActive
Außenlicht_Blinker-Warnblinken_Zuendung_AUSHazards, ignition offActive
Außenlicht_Blinker-Warnblinken_Zuendung_EINHazards, ignition onActive
Außenlicht_Blinker-ZV_Blinken_aufUnlockActive
Außenlicht_Blinker-ZV_Blinken_zuLockActive
Searching for these in the tool. When you search Außenlicht in VCDS or OBDeleven, note that ß is a German character equal to "ss", not a B. Type Aussenlicht or search on Blinker if the search comes back empty.

Final checks

Tips & common problems

Almost everything that goes wrong on this install is either a connector or one coding value — the lights themselves are rarely at fault.

Rather not DIY it? We install and code Sagitar IQ.Light sets in-house in Mississauga — local install is $140, and coding is included when we fit the lights. Grab a set of our Sagitar IQ.Light tail lights, add our coding service, or send us your car for a quote. We ship across Canada and the US.

Other guides

On a Golf instead? See MK7.5 tail lights on a MK7, MK8 Euro tail lights, or the MK8.5 tail light guide. Not sure which generation your car is? Start with MK7 vs MK7.5 vs MK8. Or browse all our DIY guides.