Published 2026-11-01 · DIYCarPlay Engineering Team · 18 min read
The Year the Factory Added CarPlay: Why a Platform Code Does Not Mean the Car Needs a Module
A platform code on a purchase order answers one question: which module fits. It does not answer the question a distributor has to answer before ordering a pallet of them, which is how much of the covered market still needs the module at all. A decoder that lands on a car whose screen already runs CarPlay is not a retrofit. It is a second, competing way of doing something the car can already do, and it sells on a different argument, at a different price, with a different return rate.
That distinction is not visible anywhere in the fitment sheet, because the fitment sheet is organised by head unit. It carries 39 platform codes over 76 code-and-model-line combinations covering 300+ vehicle models and series from model years 2006 to 2025. Every line answers whether the hardware fits. None of them records when the manufacturer started putting CarPlay into that car, and that date is what decides whether the module is supplying a missing function or replacing a cable.
There is a public record of the date. Apple's CarPlay vehicle list names, per marque and per nameplate, the model years over which CarPlay is supported, and the first year on each entry is the year the marque's CarPlay offering begins for that nameplate. This catalogue already leans on that list for one marque: the Ferrari page reads the factory CarPlay year straight off it for the 488 GTB, the California T, the F12 Berlinetta and the F8. Cross-referencing the same list against every platform code here turns each code's year label into two commercially different populations, and the split falls in a place the model year alone will never show.
What a Platform Code Settles, and What It Leaves Open
The 39 platform codes in this catalogue are purchasing labels. Each one names a hardware generation: the harness termination, the LVDS video timing, the CAN bus wake-up message the module listens for, and the controller protocol the rotary knob speaks. That is what makes a code worth writing on an order line, and it is why one code cannot be swapped for another without the harness failing to reach the connector.
The year label attached to each code answers a second and narrower question. It gives the earliest and latest model year the code covers for a given nameplate. Read as a demand statement, it implies the covered years are equally addressable, and they are not. The same code covers a car that left the factory with no phone integration at all and a car that left the factory with a CarPlay port already populated.
For the second car the module is not adding a missing function. It is replacing a wired link with a wireless one, or adding a camera and 360-degree passthrough to a display that already had CarPlay. Both are legitimate products and both go to the same installer, but the pitch, the margin, the time on the bench and the reason a unit comes back all differ. A buyer stocking on year labels alone stocks one thing and discovers it as two.
The Second List Every Buyer Should Read
Apple publishes the list of vehicles that work with CarPlay, and each entry carries a model-year range against a nameplate. The current edition lists 95 marques and 912 nameplate-and-year entries. Read one entry the right way and it states a boundary. A nameplate listed from 2016 and running to 2025 means the marque supported CarPlay on that nameplate across those model years, and the model years before the first year on the list are the years when that nameplate had no CarPlay route at all.
That boundary is the field missing from the fitment sheet. It turns a year range into two commercial populations on the same line, and the populations do not split at the same place on every line, because the factory date is set by the marque and the model year is set by the platform.
Two properties of the source matter before the numbers are used. The first is that it is a current list rather than a historical ledger. Nameplates drop off it as they age out of a marque's range, which is why the entry count for a marque today is not the count of cars that ever had CarPlay. The Ferrari page already shows this happening: it lists the FF and the F12 tdf, and neither of those entries is on the current list any more. The second is that the list is published per region. The United States edition carries 95 marques, the United Kingdom edition 82, and the Chinese edition 95, and the boundaries are not identical across the three.
For the 19 marques in this catalogue the differences are contained. Of the 294 nameplate entries those marques carry in the United States edition, every one appears in the Chinese edition with the same first model year, and 253 of them appear in the United Kingdom edition, again with the same first model year and none differing. The 41 nameplates that appear only in the United States edition are recent models, none of which this fitment sheet carries as a line of its own.
Cross-Checking the Two Lists Line by Line
The fitment sheet resolves into 192 individual nameplate lines once the grouped entries are split, covering 120 distinct model names. Comparing each line against the CarPlay list by nameplate name leaves 156 lines matched to an entry and 36 unmatched.
The 36 unmatched lines are worth naming, because they are not random. Every McLaren line is among them, because McLaren appears in the marque index but carries no model entries on the vehicle list at all. Also unmatched are the MINI lines, which the list names by the Cooper, Clubman and Countryman bodies; the Mercedes ML and GL lines, which the marque renamed GLE and GLS; the Audi S4 and S5 lines; the Nissan QX70 lines, which the marque's own range now carries under the QX50 and QX80 badges; the Toyota Prado and Alphard lines, the Volkswagen Teramont and Phideon lines and the Honda INSPIRE line, all nameplates the list does not carry for this market; the pre-2017 Porsche Boxster line, where the list starts the nameplate in 2017 with the 718; and a set of discontinued nameplates including the Ferrari 458, the Volvo V40 and S80, the Lexus CT and GS, the Bentley Mulsanne, the Aston Martin DB11 and the Rolls-Royce Spofec conversion line.
Three platform codes therefore cannot be placed on either side of the boundary at all: BE-1, AS-1 and MC-1. The CarPlay list names nothing in those three fitment groups, so no position can be established for them from this source.
Three Kinds of Platform Code
Across the 39 codes the factory date falls into three positions, and putting the matched lines back at code level produces the groups a buyer can act on.
| Position of the factory date | Codes | What the order line actually buys |
|---|---|---|
| Before the date, entirely | 18 codes | Every covered model year is a car with no CarPlay. The module supplies a missing function, which is the strongest version of the sale. |
| Straddling the date | 16 codes | One code covers both populations, so one carton label and one purchase order line carry two different products. |
| On or after the date, entirely | 2 codes | Every covered model year is a car that already had CarPlay. These are upgrade volumes and should not be counted as new demand. |
| No matched line | 3 codes | The CarPlay list names nothing in the fitment group, so no position can be established from this source. |
On the 156 matched lines there are 944 model-year slots in total. 584 of them fall before the marque's CarPlay boundary and 360 fall on or after it, so 38% of the addressable model-years in this catalogue sit on the factory side of the line, where the module is not adding the function that is missing.
The 18 codes that sit entirely before the date are the group a retrofit buyer is actually buying: CIC, NBT, NTG4.0, CDR 3.0, PCM 3.1, JR-1 (Bose), VO-1, LE-1, RO-CIC, RO-NBT, RO-EVO, LP610, LP700, AS-2, NI-2, TO-1, TO-2 and MA-1. Every model year under every one of them is a car that left the factory with no CarPlay route.
The two codes that sit entirely on the factory side are PCM 4.0-5.0 and HO-1. All 40 model-year slots under PCM 4.0-5.0 and all 5 under HO-1 fall on or after the marque's own CarPlay boundary. That is no reason to stop stocking them. It is a reason to sell them as what they are, which is a wireless and camera-passthrough upgrade sold into a parc that already has the function, priced and pitched differently from a retrofit sold into a parc that does not have it.
The Sixteen Codes That Straddle the Factory Date
The straddling codes are where the distinction costs real money, because a single carton label and a single order line cover both populations. Within those 16 codes, 88 fitment lines are matched to the CarPlay list and 53 of them are cut through the middle by the factory date, so the same code covers model years on both sides of the line within one nameplate line.
| Platform code | Marque | Model years before the date | Model years on or after | Lines cut through the date |
|---|---|---|---|---|
| EVO | BMW | 6 | 99 | 5 of 11 |
| HU6 | Mercedes-Benz | 1 | 41 | 1 of 6 |
| MIB2/3 | Audi | 2 | 34 | 1 of 4 |
| NTG4.5/4.7/5.0 | Mercedes-Benz | 34 | 29 | 9 of 9 |
| VO-3 | Volvo | 2 | 28 | 2 of 6 |
| JR-2 (Harman 8") | Land Rover / Jaguar | 18 | 18 | 6 of 6 |
| JR-3 (Harman 10.25") | Land Rover / Jaguar | 18 | 18 | 6 of 6 |
| VW-1 | Volkswagen | 15 | 15 | 5 of 5 |
| FE-1 | Ferrari | 10 | 10 | 4 of 5 |
| MMI 3G | Audi | 65 | 6 | 4 of 10 |
| LE-2 | Lexus | 25 | 5 | 3 of 5 |
| AL-1 | Alfa Romeo | 2 | 4 | 2 of 2 |
| VO-2 | Volvo | 13 | 3 | 2 of 4 |
| BE-2 | Bentley | 1 | 3 | 1 of 1 |
| MMI 2G | Audi | 20 | 1 | 1 of 3 |
| NI-1 | Nissan / Infiniti | 49 | 1 | 1 of 5 |
The two Jaguar and Land Rover codes are the cleanest illustration. JR-2 (Harman 8") and JR-3 (Harman 10.25") both cover Discovery, Range Rover, F-Pace, XF, XJ and F-Type across model years 2016 to 2021, and every one of those 12 lines is cut by the same boundary. On the earlier years the car had no CarPlay and the module is the only route to it. On the later years the car came with CarPlay and the same module is a wireless upgrade or a camera passthrough addition. The two codes are already separated from each other by display size, which is the identification question these guides spend most of their length on. The factory date answers a different question: it separates what the two codes are sold for, not which one fits.
EVO is the extreme case at the other end. Only 6 of its 105 model-year slots sit before the factory date while 99 sit on or after it. NTG4.5/4.7/5.0 runs close to the opposite, with 34 of its 63 slots before the boundary and all 9 of its matched lines cut through the middle. The same brand, the same decade of production, the same hardware family, a completely different commercial profile.
Then there are the codes that look modern but are not. MMI 3G has only 6 of its 71 model-year slots on the factory side, because the A4 and A5 under that code ran from 2009 to 2018 and the marque added CarPlay to them late. NI-1 has a single model-year slot on the factory side out of 50, and MMI 2G has one out of 21. These are the codes carrying the actual retrofit volume, and no year label on a carton would ever reveal it.
Where the Boundary Sits Inside a Single Nameplate Line
At line level the picture is sharper than the code totals suggest, because a line that ends before the factory date and a line that starts after it are both decided, while a line that spans the date is split. Of the 156 matched lines, 79 lie entirely before the boundary and are decided as retrofit candidates, 9 lie entirely on or after it and are decided as upgrade candidates, and 68 are cut through the middle by the boundary itself.
Those 68 split lines are where the argument for the cross-check is strongest, because they are the lines where a single number on the fitment sheet covers two different products. A buyer holding a fitment sheet and a purchase order has no way to see that split, and no amount of reading the menu layout or the version screen will reveal it either, because both cars present the same factory system.
The Factory Date as an Identifier, and Its Limits
The factory date is worth testing as a third identification axis alongside the model year and the menu layout, because it works from a document rather than from a car. The test is whether it settles the code when the model year alone cannot. Across the fitment sheet, 50 model names sit under more than one platform code, and for 28 of them the date falls inside the window of exactly one code and outside the window of the others, so it does rule the others out and leave a single candidate.
The honest measure of that power is smaller than it looks. The factory date turns out to sit very close to the platform handover in most of these cases: for 13 of the 28 it is the handover year itself, and for 19 it is within a year of it. It therefore confirms the handover that the model year already indicated rather than independently resolving a tie the model year left open. Its real value is in the commercial split, not in the code.
And in one class of case it provably cannot help. Across the catalogue there are 10 model names whose year windows are identical under two different codes, so the date falls inside both windows or outside both, and there is no third position for it to occupy. The 10 are MINI, A1, Q3, 911, Discovery, Range Rover, F-Pace, XF, XJ and F-Type. The Jaguar and Land Rover display split and the Porsche screen split stay settled by looking at the car, not by reading a list. The 911 case is worth noting separately, because there the date does isolate the newer platform code while leaving the identical pair unresolved.
None of this replaces reading the head unit. It is a paper-side cross-check on the code, and it applies only where the year windows of two candidate codes differ. The guide to what a platform code covers sets out the generation side of the same question, and the vehicle fitment finder walks the codes in the order they should be checked on a car that is actually in the bay.
What to Write on the Order
Three changes to the paperwork come out of this, and none of them cost anything.
The first is to stop treating a code as a demand statement. A code states which hardware fits. The covered model years still have to be split by the factory date before a quantity can be called a retrofit quantity, because the two populations do not sell on the same argument. For PCM 4.0-5.0 and HO-1 the entire covered range is an upgrade population. For MMI 3G, NI-1 and MMI 2G almost none of it is.
The second is to mark the boundary on the goods-in label for the 16 straddling codes, which is where the ambiguity actually lives. A carton that reads a code and nothing else leaves the workshop to assume every car in it is a retrofit, and a customer with a factory CarPlay port who was expecting the function to be missing is the source of the return. A carton that reads the code and the pre-factory model-year range tells the installer before the dashboard comes apart which of the two conversations is about to happen.
The third is to use the date as a confirmation on the code rather than as the code itself. For the 28 nameplates where the date isolates one code, a model year outside that window is evidence against a candidate before anyone opens a trim panel. It does not replace the physical check, and it cannot be applied at all to the 10 nameplates where the windows are identical.
On the hardware side the module is the same part in both populations, which is what makes the split worth recording rather than a product change. It runs Linux in an embedded configuration on an automotive-grade Sunplus chipset, pairs the phone over dual-band WiFi at 2.4GHz and 5GHz, and terminates into the factory display through the vehicle harness as a plug-and-play connection. The factory screen, the factory host, the steering-wheel buttons and the factory reversing camera all stay in service, and the CAN bus wake-up message the module listens for is the one the head unit already sends. Nothing on the dashboard is replaced or coded, and the difference between the two populations is entirely in what the customer is buying, not in what arrives in the box.
Stock is available from 10 pcs with platform codes mixed in one order, so a distributor can test a code against a real car without committing to a full pallet. A private label programme runs from 500 pcs per model and a Full OEM firmware build from 1000 pcs per model, with the same code list carried through to the carton label. Samples ship in 7 to 15 days by DHL or FedEx, and a private label run of 500 or more pcs takes 15 to 20 days from order to dispatch. Payment is 30% deposit with the 70% balance settled against a copy of the bill of lading, by T/T. A sample fee is credited against the first large-volume order, so the code a sample was built against does not have to be the final code for the sample cost to disappear. The wholesale terms page sets out the tier structure in full, and the BMW module range and the Porsche module range show the same codes with their covered nameplates listed line by line.
Frequently Asked Questions
Does this replace reading the head unit on the car?
No. It is a paper-side cross-check on the code, and it applies only where the year windows of two candidate codes differ. For the 10 nameplates whose windows are identical the date cannot separate the codes, and the head unit still has to be read on the car. The Apple CarPlay support guidance makes the same point from the other side: it tells a driver to confirm the car supports CarPlay and to ask the vehicle manufacturer when it does not, because the fitment question has to be answered for the specific car.
Is every car built after the factory date a car that already has CarPlay?
No. The boundary is a model-year statement about a nameplate, not a statement about a trim. A marque can offer CarPlay from a given year while a given trim in that year ships without the option, and some marques enabled CarPlay on earlier cars through a dealer accessory. The date narrows the population and it says which side of the line the volume sits on. It does not say what a particular car has, which is why the physical check still stands.
Why do three platform codes have no position at all?
Because the CarPlay list names nothing in those fitment groups. Every McLaren line is unmatched because McLaren carries no model entries on the list, and the Mulsanne and DB11 are nameplates the list no longer carries. Reporting them as retrofit codes would be a guess dressed as a finding, so they are reported as unplaced.
Does the factory date settle which platform code a car takes?
Only sometimes. It isolates a single code for 28 of the 50 nameplates that sit under more than one code, but for 13 of those the date is the handover year itself, so it is confirming a boundary the model year already showed. For the 10 nameplates with identical windows it cannot separate the codes at all, because the date lands inside both windows or outside both.
Does the factory date work the same way in every market?
Not identically, and this article says so rather than hiding it. The United States, United Kingdom and Chinese editions do not carry the same set of marques, and nameplates drop off the list as they age out of a marque's range. Across the 19 marques in this catalogue every nameplate appearing in more than one edition carries the same first model year, so the positions used here hold for the European and Australian markets as well. The source should still be re-checked against the local edition before a large order is placed, because the list is revised as nameplates age out.
Next step
Send us your target vehicle list, quantities and target market through the inquiry form. You will receive a quotation within 12 hours, including volume tiers and lead times for the platforms you named.
Need the Module From This Guide?
Wholesale from 10 pcs (mixed models OK), samples in 7–15 days (DHL/FedEx express). Fitment confirmation within 12 hours.
Request Pricing Check FitmentRelated Resources
- CarPlay Collections — browse by marque family (German, British, Italian, Japanese, luxury)
- CarPlay Fitment Checker — find the module for your car
- CarPlay Decoder FAQ — 34 answers on compatibility, install and wholesale
- CarPlay Retrofit Buying Guide — platform identification & selection
- Wholesale, Private Label & OEM Program — MOQ, lead times, payment terms
- All installation & technical guides