# CAFD Injection on Retrofitted ICAM



## Tuerkay (Sep 26, 2020)

Hello all,

i´m in a very special situation right now.
A while ago i retrofitted the ICAM rvc from an X2 F39 (2017) into my F20 (2012) which has an retrofitted NBT Evo System.
Since F20 has no CAN3, i connected the ICAM to CAN2. so far the camera works but isn´t listed in ISTA or ESYS. therefore i can´t code it, calibrate it or check for errors.
The cam works with some downsides. when reversing, the guidelines sometimes don´t show automatically or the line style changes from time to time (thick green lines or thin ones).
I guess this happens because the ICAM isn´t coded properly.

Now with the help of @bill57p9 ´s guide for his F56 and some modifications, i was able the make the ICAM show up in ESYS and ISTA.

when reading svt(ECU) the icam apperas without CAFD









simply pressing "detect caf for swe" only throws this error








i tried modified VOs with different car types. my F20 VO (ofc not working since icam was never planed for this car), VO from donor car x2 f39 and an fictional x3 F25 with zk 0414 (time when ICAM with CAN was installed).

Since autodetect didn´t work, i tried to inject CAFD with an modified TAL. Added CAFD_00001D75_017_000_020. Sadly this didn´t work. Only receiving "finished with error".

```
{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1031{\fonttbl{\f0\fnil\fcharset0 Calibri;}}
{\*\generator Riched20 10.0.19041}\viewkind4\uc1
\pard\sa200\sl276\slmult1\f0\fs22\lang7 <>\par
Read SVT before TAL execution started.\par
Read SVT before TAL execution finished.\par
TAL execution started.\par
VCM Update: VCM-Update is deactivated. VCM will not be updated.\par
<ExecutionID=2020/12/15-17:21:03.307>\par
<[] prepareTALExecution started [PROGRESS]>\par
<MCDDiagService<id=464637, job=com.bmw.psdz.jobs.common.MCD3_PrepareTALExecution, service=RC_TAS_ROUTING - Routine Control for TAS, description=error: negative response : NoResponseFromSubnetComponent, link=TAS_F0_ETHERNET> [DIAGSERVICE]>\par
<MCDDiagService<id=464637, job=com.bmw.psdz.jobs.common.MCD3_PrepareTALExecution, service=RC_TAS_ROUTING - Routine Control for TAS, description=error: negative response : NoResponseFromSubnetComponent, link=TAS_F0_ETHERNET> [DIAGSERVICE]>\par
<MCDDiagService<id=464637, job=com.bmw.psdz.jobs.common.MCD3_PrepareTALExecution, service=RC_TAS_ROUTING - Routine Control for TAS, description=error: negative response : NoResponseFromSubnetComponent, link=TAS_F0_ETHERNET> [DIAGSERVICE]>\par
<[] prepareTALExecution finished [PROGRESS]>\par
<[] prepareVehicleForCoding started [PROGRESS]>\par
<[] prepareVehicleForCoding finished [PROGRESS]>\par
<[ICAM2 - 6] prepareECUforCoding started [PROGRESS]>\par
<[ICAM2 - 6] prepareECUforCoding finished [PROGRESS]>\par
<[ICAM2 - 6] authenticateECUforCoding started [PROGRESS]>\par
<MCDDiagService<id=16900, job=com.bmw.psdz.jobs.uds.MCD3_AuthenticateECUforCoding, service=SA_SK - SecurityAccessSendKey, description=error: timeout, link=ICAM2_06_ETHERNET> [DIAGSERVICE]>\par
<MCDDiagService<id=36900, job=com.bmw.psdz.jobs.uds.MCD3_AuthenticateECUforCoding, service=RDBI_ADS - ReadDataByIdentifier ActiveDiagnosticSession, description=error: timeout, link=ICAM2_06_ETHERNET> [DIAGSERVICE]>\par
<[] null [THROWABLE]>\par
<[ICAM2 - 6] There was an error during TAL execution, please check the log files. [WARN]>\par
<[ICAM2 - 6] finalizeECUCoding started [PROGRESS]>\par
<[ICAM2 - 6] finalizeECUCoding finished [PROGRESS]>\par
<[] finalizeVehicleCoding started [PROGRESS]>\par
<[] finalizeVehicleCoding finished [PROGRESS]>\par
<[] finalizeTALExecution started [PROGRESS]>\par
<MCDDiagService<id=464637, job=com.bmw.psdz.jobs.common.MCD3_FinalizeTALExecution, service=RC_TAS_ROUTING - Routine Control for TAS, description=error: negative response : NoResponseFromSubnetComponent, link=TAS_F0_ETHERNET> [DIAGSERVICE]>\par
<MCDDiagService<id=464637, job=com.bmw.psdz.jobs.common.MCD3_FinalizeTALExecution, service=RC_TAS_ROUTING - Routine Control for TAS, description=error: negative response : NoResponseFromSubnetComponent, link=TAS_F0_ETHERNET> [DIAGSERVICE]>\par
<MCDDiagService<id=464637, job=com.bmw.psdz.jobs.common.MCD3_FinalizeTALExecution, service=RC_TAS_ROUTING - Routine Control for TAS, description=error: negative response : NoResponseFromSubnetComponent, link=TAS_F0_ETHERNET> [DIAGSERVICE]>\par
<[] finalizeTALExecution finished [PROGRESS]>\par
<TAL execution finished [TAL_EXECUTION_FINISHED]>\par
TAL-Execution finished with status: "FinishedWithError".\par
TAL execution finished. Duration: "42s".\par
<>\par
Read SVT after TAL execution started.\par
Read SVT after TAL execution finished.\par
\par
ICAM Log Last\par
}
```
So now i´m stuck and hopefully someone can explain the error above.

btw. I´m using:
PSDZ Full 4.16.13
Launcher Pro 3.7 with Esys 3.34.0
Launcher Pro 2.8.1 with Esys 3.30.1/3.29.0/3.27.1


----------



## phamaker (Dec 8, 2013)

Hey,

i have this setup in F10. This message is related to your car series does not have this ecu. You need to connect with esys as F39 and make a custom FA from a random F39 with option for icam. Read ecu,’s to create SVT. Then select the option inject cafd. This will work, perhaps the fact ZGW expects it on can3 might be a challenge, but not sure. I have an icam from F15 so do the same if need to code. Also with tool32 forcing a recalibration helped to adept the image making it fit more with angle of camera’s.

good luck!


----------



## Tuerkay (Sep 26, 2020)

ICAM expects to be connected to CAN3 but is connected to CAN2 and ZGW expects ECU on CAN1. Therefore i used bill57p9´s CAN-Gateway to redirect messages between CAN1 <-> CAN2. Otherwise i wouldn´t be able to see ICAM in ista or esys.
i already tried to inject by connecting with "Target Series: F25" and X2 F39 VO from donor car. i haven´t tried it with target F56 since F56 has an BDC instead of FEM.
Mayble i´ll try again tomorrow with targets F56 and F15


----------



## Tuerkay (Sep 26, 2020)

I´ve tried with different Targets and modified FAs but still didn´t work
i modified the svt_soll and changed 

```
<ecuBusConnectionInfos>
   <ecuBusConnectionInfo busID="13" busType="B2_CAN"/>
</ecuBusConnectionInfos>
```
to

```
<ecuBusConnectionInfos>
   <ecuBusConnectionInfo busID="0" busType="K_CAN"/>
</ecuBusConnectionInfos>
```
since the icam is connected to the old ZBE2 CAN1 connector and i could get rid of the "TAS no response" error.
Still getting the SA_SK and RDBI_ADS error...

```
SVT-Lesen vor TAL-Abarbeitung gestartet.
SVT-Lesen vor TAL-Abarbeitung beendet.

TAL-Abarbeitung gestartet.
VCM Update: Automatische VCM-Aktualisierung ist deaktiviert. VCM wird nicht aktualisiert. [C197]
ExecutionID=2020/12/16-12:50:20.161
[] "prepareTALExecution" wurde gestartet. [PROGRESS]
[] "prepareTALExecution" wurde beendet. [PROGRESS]
[] null [THROWABLE]
[] "prepareTALExecution" wurde beendet. [PROGRESS]
[] "prepareVehicleForCoding" wurde gestartet. [PROGRESS]
[] "prepareVehicleForCoding" wurde beendet. [PROGRESS]
[ICAM2 - 6] "prepareECUforCoding" wurde gestartet. [PROGRESS]
[ICAM2 - 6] "prepareECUforCoding" wurde beendet. [PROGRESS]
[ICAM2 - 6] "authenticateECUforCoding" wurde gestartet. [PROGRESS]
MCDDiagService<Id: 16900, Jobname: com.bmw.psdz.jobs.uds.MCD3_AuthenticateECUforCoding, Diagnoseservice: SA_SK - SecurityAccessSendKey, Beschreibung: error: timeout, LogicalLink: ICAM2_06_ETHERNET> [DIAGSERVICE]
MCDDiagService<Id: 36900, Jobname: com.bmw.psdz.jobs.uds.MCD3_AuthenticateECUforCoding, Diagnoseservice: RDBI_ADS - ReadDataByIdentifier ActiveDiagnosticSession, Beschreibung: error: timeout, LogicalLink: ICAM2_06_ETHERNET> [DIAGSERVICE]
[] null [THROWABLE]
[ICAM2 - 6] Während der TAL-Abarbeitung ist ein Fehler aufgetreten, bitte überprüfen Sie die Log-Datei. [WARN]
[ICAM2 - 6] "finalizeECUCoding" wurde gestartet. [PROGRESS]
[ICAM2 - 6] "finalizeECUCoding" wurde beendet. [PROGRESS]
[] "finalizeVehicleCoding" wurde gestartet. [PROGRESS]
[] "finalizeVehicleCoding" wurde beendet. [PROGRESS]
[] "finalizeTALExecution" wurde gestartet. [PROGRESS]
[] Bei der TAL-Nachbereitung ist ein Fehler aufgetreten. [WARN]
[] - [Exception] negative response error:
 code: exception in job
 description: MCDException in Job MCD3_FinalizeTALExecution, Context: service ReadDataByIdentifier ActiveDiagnosticSession, Type: com.bmw.prodias.exceptions.mcd.ParameterizationException, Message: Code=49184, CodeDescription='Object with name not found', Severity=2051, VendorCode=3, VendorCodeDescription='provided name ACSM_01_ETHERNET doesn't map to an item', [Severity=2051][ErrorCode=49184][ErrorCodeDescription=Object with name not found][VendorCode=3][VendorCodeDescription=provided name ACSM_01_ETHERNET doesn't map to an item]
 severity: ERROR

[] "finalizeTALExecution" wurde beendet. [PROGRESS]
TAL-Abarbeitung beendet. [TAL_EXECUTION_FINISHED]
TAL-Abarbeitung beendet mit Status: "AbortedByError". [C207]
TAL-Abarbeitung beendet. Dauer: "8s". [C206]

SVT-Lesen nach TAL-Abarbeitung gestartet.
SVT-Lesen nach TAL-Abarbeitung beendet.
```
Any ideas on how to modify the busid for those?


----------



## Tuerkay (Sep 26, 2020)

Got a bit further. With a can filter I was able to read the current CAFD and also finally showing the donor vin.

The Reason "detect CAF for SWE" didn't work is, because I don't have a matching CAFD file.

I need CAFD_00001D75_017_002_000
somehow, my PsdZ 4.16 and 4.23 only contain =≤ 017_001 and => 017_004.
Does someone have the CAFD file I need?

sadly swfl flash doesn't work with the gateway and will only set my whole car into transport mode...


----------



## JPanther (Apr 19, 2021)

Hi Tuerkay,

I would like to get in touch with re regarding your experience with retrofitting an ICAM to your F20.

For the last two weeks I have been reading posts on how to do that and yours have been the most helpful so far. So first things first - thank you for the great work and sharing your knowledge.

I have an EUR spec F20 LCI with a production date 07/2017 ..... what a luck, a? Only three weeks earlier and I would have been able to retrofit the good old TRVSC - but now my options are (i) replacement of FEM from a F20 with camera (one having CAN1) or (ii) retrofitting an ICAM. I decided not to replace FEM - so ICAM it is. The challenge as you pointed out F20 was never fitted with ICAM.

My first challenge is that I can’t find information on whether EntryNav Evo 2 (Enavevo) can work with ICAM camera. What is your take on that?

Another struggle is picking the right camera. I’ve seen that you got an F39 and I have seen others get cameras from F15 (thus K-CAN3 or K-CAN4). I am wondering why you didn’t use a post 2017/07 F30 ICAM? The F30 does not have K-CAN3/4 and according to the wiring diagram in TIS the ICAM connects on K-CAN2 - same as the HU in the F20. The F30 ICAM is also used in 4 series and the F22.

What is your take on these?


----------



## Tuerkay (Sep 26, 2020)

Hey JPanther,

these are a lot of questions i might not be able to answer for sure.

Why did i use the F15/F39 ICAM?
Well, at that time i didn´t know about an ICAM made for the F30. if i knew that earlier, i would have tried that.
i was quiet sure that all cars with FEM use an TRSVC module and therefore didn´t research any further.

Do you need new FEM?
don´t know for sure but don´t think so. Mine is now working without k-can1. The CAN-Gateway method didn´t work in my case, since my ICAM came with factory SWFL/CAFD and these are not included in any PsdZ Data. Therefore i wasn´t able to code it. Got myself an ZGW 8SK to Flash and code the ICAM and then connected it to CAN2. When FEM sends CAN Message on CAN2 to activate PDC Sensors through REM, the same message will also trigger the ICAM to activate.
If you activate Reverse Cam through iDrive, it will also broadcast on CAN2 since HU is only connected to CAN2.

Will this method work with an EntryNav Evo 2?
this i also can´t answer for sure but since according to TIS Enavevo and Evo (NBT2) share the same wiring diagram, i´d say it should work. Just need proper coding after VO Coding with 3AG. VO Coding the HU will most likely set camera type to TRSVC and you´ll need to change that to ICAM_RVC after. But just to be sure, if you have esys with launcher, read coding from Enavevo and look for "CAMERA_SYSTEM". if there is "ICAM_RVC" listet, it might work.

You could try to find one of these very rare F30 cams and connect that to K-CAN2 (i only found two with the corresponding OEM number in Germany and both cost double the amount, an F15/F39 ICAM would be). If these are really standalone ICAM2 that work with K-CAN2, you should see them in Esys after connecting. I can´t tell you if it works.


----------



## JPanther (Apr 19, 2021)

Thanks for your reply!

The way I see it, I will try to sources an I-CAM from the F22/23 coupe or F3x (try some local salvage yards and then e-bay) --> Wire it to the FEM and HU --> and pray for ESys to sees it. 

What I don't quite understand as of today (as I am new at this) is: 


will ESys see the I-CAM (let's assume cam is on the K-CAN2 and that is not the issue) having in mind that there are no VOs for F20/F21 with I-CAM from the factory;
if it does & after VO Coding 3AG, will I be able to auto find CAFD in PsdZ Data for that respective cam (again having in mind F20 never had I-CAM);
assuming not, do I inject CAFD from a donor F3x with same ISTEP but with my VIN (my friend actually has the factory I-CAM in her F30);
and if all that is successful, won't the picture be distorted as the F3x cam is positioned all the way up on the trunk handle and the F20 is on the bumper.

These are some of the things still very unclear to me. I guess one way to find out 
I'll keep you posted.


----------



## Tuerkay (Sep 26, 2020)

JPanther said:


> will ESys see the I-CAM (let's assume cam is on the K-CAN2 and that is not the issue) having in mind that there are no VOs for F20/F21 with I-CAM from the factory;


If your car is on correct iStep and the I-CAM is made to work on K-CAN2, you should see it when pressing read(ECU). VO doesn´t matter at that time. there are different things that could happen. If somehow the I-CAM is made for K-CAN1, your K-CAN2 will stop working while connected. Error messages will Appear in Kombi etc. If it doesn´t appear in Esys and your car doesn´t do anything strange. The I-CAM is possibly not made to work standalone on K-CAN2 or is defective.



JPanther said:


> if it does & after VO Coding 3AG, will I be able to auto find CAFD in PsdZ Data for that respective cam (again having in mind F20 never had I-CAM);


Like i wrote in the post above. it depends on iStep shippment. If ICAM comes in factory state it might happen that "detect caf by swe" won´t find a fitting CAFD or if an CAFD exists on ICAM, you won´t be able to modify it. you´ll have to flash to a higher iStep then. Esys should then be able to detect fitting CAFD for coding/injection then.



JPanther said:


> assuming not, do I inject CAFD from a donor F3x with same ISTEP but with my VIN (my friend actually has the factory I-CAM in her F30);


You will always need a fitting VO to code it. Otherweise esys will throw an error when trying to code it. Read your friends VO and safe it on your computer with your own VIN. When coding ICAM, just load and activate that VO. Don´t write in VCM!



JPanther said:


> and if all that is successful, won't the picture be distorted as the F3x cam is positioned all the way up on the trunk handle and the F20 is on the bumper.


Well that´s the realy tricky part. This ICAM, you will have to VO code with an F3x VO. But then, image correction settings from F3x will be used and this will annoy you.
After first VO coding and VIN Injection. you´ll have to change camera positioning and guiding line settings through FDL coding. You can change EVERYTHING in FDL. Camera hight, left/right offset, angle etc.. same with guiding lines. you´ll also need to adjust car details in ICAM cafd. Things like distance between front/rear tires, left/right tire, distance between rear axle and camera, turning cicle radius etc. There is a s*** load of settings you can/have to modify so that the ICAM can generate fitting guiding lines and distance marker.
I tried for an hour but gave up. I then used an F39 VO to code ICAM. The F39 camera positioning, angle and car size are the one closest to my F20 with the custom camera housing i printed and placed in bumper.


----------



## JPanther (Apr 19, 2021)

Tuerkay said:


> After first VO coding and VIN Injection. you´ll have to change camera positioning and guiding line settings through FDL coding. You can change EVERYTHING in FDL. Camera hight, left/right offset, angle etc.. same with guiding lines. you´ll also need to adjust car details in ICAM cafd. Things like distance between front/rear tires, left/right tire, distance between rear axle and camera, turning cicle radius etc. There is a s*** load of settings you can/have to modify so that the ICAM can generate fitting guiding lines and distance marker.
> I tried for an hour but gave up. I then used an F39 VO to code ICAM. The F39 camera positioning, angle and car size are the one closest to my F20 with the custom camera housing i printed and placed in bumper.


Can you send me your CAFD based on the F39? I will then compare it to the F30 one of my friend and I will also try to find an F20 CAFD for a TRVSC module. Hopefully this will make tracking all size related fields easier.


----------



## Tuerkay (Sep 26, 2020)

i´ve lost my current caf file by an backup failure, but this is the CAFD generated with my Donor F39 VO. Didn´t change anything.


----------



## JPanther (Apr 19, 2021)

Since I am expecting the cam to arrive in couple of weeks I started planning the next steps. So, here is my plan based on my understanding. Please correct me if I am wrong somewhere.

1) Create a FA matching my car, with the VIN of my car, production 07/2017 but for an F30 (so ICAM is expected)
2) Connect to the F20 -> load the FA file (don’t write to VCM) -> Activate and read SVT from ECUs .... ICAM should show up
3) Flash ICAM ECU to the car’s current IStep ... should write the car VIN to the ECU
4) Detect and inject CAFD doe the ICAM
5) FLD code the positioning data for an F39 or ideally whatever I can match from a F20 TSRVC


----------



## Tuerkay (Sep 26, 2020)

JPanther said:


> Since I am expecting the cam to arrive in couple of weeks I started planning the next steps. So, here is my plan based on my understanding. Please correct me if I am wrong somewhere.
> 
> 1) Create a FA matching my car, with the VIN of my car, production 07/2017 but for an F30 (so ICAM is expected)
> 2) Connect to the F20 -> load the FA file (don’t write to VCM) -> Activate and read SVT from ECUs .... ICAM should show up
> ...


3) flashing ICAM to higher iLevel is only necessary, if you cant inject CAFD. Otherwise, if "detect cafd for swfl" works, that´s enough.
5) a) you can take positioning data from F39, since this uses an ICAM
b) or you can try creating an TRSVC cafd with an F20 VO with 3AG. Maybe the TRSVC positioning/coordinations will also work on ICAM.


----------



## JPanther (Apr 19, 2021)

So, finally got the cam and did the install. No luck! 


Connected the camera and it immediately showed up in Esys. The camera already had a cafd in it;
Added 3AG to the FA and coded FEM, REM and HU;
FDL coded HU 3001 -> CAMERA_SYSTEM to icam_rvc; and
put the car in reverse and got the rearranged screen on the HU with working PDC but with a “Camera failure” message”

Loaded Esys again and saw that the CAFD was missing from the icam.


Loaded Esys 3.30 and a custom F30 FA with 3AG based on my F20 with my VIN but with F30 as series and type);
Detected and injected CAFD to the ICAM without problems;
Read car’s FA -> activated and coded the ICAM; and
put in reverse ….. same “Camera failure” message.

Double checked connection to HU and pins with multimeter. Double checked the camera part number - it’s a F30 ICAM. ICAM is visible in Esys when on Read ECUs with a CAFD in it.

Any ideas?


----------



## EdgaBMW (Mar 13, 2015)

Try to change build date. Because icam was available only from 2017.07


Sent from my iPhone using Tapatalk


----------



## JPanther (Apr 19, 2021)

EdgaBMW said:


> Try to change build date. Because icam was available only from 2017.07
> 
> 
> Sent from my iPhone using Tapatalk


All of the steps above were with a build date of 07/2017 (that’s the date of the F20) the camera is from a 2018 F32.

And just to confirm - I have the 07/2017 FEM with the CA. I guess that is why the ICAM was visible when I did a read of ECUs.

The only thing different than the F30 wiring diagram is that I used a twisted pair for the KCAN connection to the FEM instead of a shielded cable.


----------



## EdgaBMW (Mar 13, 2015)

So what exactly fault you get in ista after camera failure pops?


Sent from my iPhone using Tapatalk


----------



## JPanther (Apr 19, 2021)

EdgaBMW said:


> So what exactly fault you get in ista after camera failure pops?
> 
> 
> Sent from my iPhone using Tapatalk


Haven’t checked ISTA as I assumed it will be irrelevant as it is an ICAM and the car is F20.


----------



## Tuerkay (Sep 26, 2020)

KCAN does not need shielding. Twisted-Pair is enough. Seeing it in Esys is a good thing. CAFD will be deleted from ICAM, if the it´s not coded with car VIN.
To make sure it´s not an coding issue, create an VO from ICAM Donor, change VIN to your VIN and code ICAM.
Reading DTC with ISTA might not help. It would show errorcodes but the description will be missing. Try Tool32 instead.

Camera Failure can have different reasons.

Is your trunk properly close? camera wont work with open trunkdoor.
check HU coding:
-- CAMERA_SYSTEM -> ICAM-RVC
-- CAM_ECU -> wert_01
-- VIDEO_WATCHDOG_SIDEVIEW/TOPVIEW -> nicht_aktiv
- check wiring. is FBAS connected properly?


----------



## JPanther (Apr 19, 2021)

Tuerkay said:


> Reading DTC with ISTA might not help. It would show errorcodes but the description will be missing. Try Tool32 instead.
> 
> Camera Failure can have different reasons.
> 
> ...



Trunk is closed (it shows different icon on HU if open)
FDL coding of HU is correct. 
Checked the FBAS cable - Double-checked the pins and tested for short with multimeter - all was fine.
 not sure how to use Tool32 - will read a bit over the next days
 did not check the setting -- VIDEO_WATCHDOG_SIDEVIEW/TOPVIEW … will do so tomorrow 



Tuerkay said:


> To make sure it´s not an coding issue, create an VO from ICAM Donor, change VIN to your VIN and code ICAM.


I don’t have any info on the donor car but did create a VO for a 2017/07 F30 with my VIN and coded the ICAM with it. That’s the VO I used to inject the CAFD when it disappeared the first time.

I try the whole process again tomorrow.


----------



## Tuerkay (Sep 26, 2020)

on which pins on HU Quadlock did you connect FBAS?
Did you check connector pins on ICAM connector cable? i once received an ICAM Retrofit cable, where die pinout wasn´t right and i had to fix it.


----------



## JPanther (Apr 19, 2021)

HU - ICAM
21 - 1 FBAS
23 - 5 Ground
24 - 2 FBAS

Did the harness myself from a BMW TRSVC cable from a scrap yard … checked the cable for connection and shorts with multimeter.


----------



## Tuerkay (Sep 26, 2020)

Found a Thread in an german Forum. Some guy did the same retrofit with the F23 schematic. At first he also had the "camera failure" error but after checking the wiring again, it worked.
Check if the harnes connector to the ICAM is correct. Pinout right and pins properly inserted. Same on the FEM/HU connection. Are any pins/connectors damaged?
If you are 100% sure that everything is wired correctly than to last possible issue could be an faulty ICAM. But since you can see it with esys and code it, it might still be an coding issue or something wrong with the FBAS wiring.


----------



## JPanther (Apr 19, 2021)

Just checked the coding again. It seems OK. The only diff to your coding is that CAM_ECU is 11 in my case as I have the enavevo and not the ntb_evo.

I guess I need to make a new FBAS cable and test with it. The only downside is that I need to find new pins for the ICAM connector. It looks like they are the nanoMSQ standard but I am not sure (I got my connector from AliExpress).

One thing that I noticed is that when I disconnect the cam the error message disappears and I get a blank black screen then when I reconnect it while the car is in reverse and the screen flashes green one time for a millisecond and then the error message pops up.

Another thing I noticed is that the ICAM was pretty warm after two hours.

I’ve coded the FEM, REM and HU with the F20 VO … and the ICAM2 with a F39 (my VIN) VO. Am I missing an ECU that requires coding?


----------



## JPanther (Apr 19, 2021)

Solved the camera issue ))))))

Tuerkay, you were right! Got another camera and it worked with the first coding. Not sure why but on my F20 it worked with 66537951084 (ICAM for X series and Mini). The other one was 66537951083 (3 series and 4 series)

Mate, I can’t express all the gratitude for your help on this retrofit. Thank you!


----------



## Tuerkay (Sep 26, 2020)

You're welcome Buddy ☺


----------



## pRoxxx (Dec 18, 2020)

Hi, *Tuerkay *
I have retrofitted icam from f15(k-can3) to f30 (connected to k-can2). Coded it with ZGW-Proxy. Also coded NBT-Evo (CAMERA_SYSTEM icam_rvc) and REM with FEM with 3AG. But I can't see the image, and I can't set parking display settings and brightness, etc. With ZGW-Proxy I read DTCs from icam, and there are 4 errors, I have found only one description, which says:
Message (PDC distance information, 0x36D) missing, receiver TRSVC, transmitter PDC / REM
So my question is did you use a termination resistor?
What FA did you use?
I used FA of F39 with only 3AG,508,609.
And my REM is on 13 Ilevel can it be the issue?


----------



## Tuerkay (Sep 26, 2020)

pRoxxx said:


> Hi, *Tuerkay *
> I have retrofitted icam from f15(k-can3) to f30 (connected to k-can2). Coded it with ZGW-Proxy. Also coded NBT-Evo (CAMERA_SYSTEM icam_rvc) and REM with FEM with 3AG. But I can't see the image, and I can't set parking display settings and brightness, etc. With ZGW-Proxy I read DTCs from icam, and there are 4 errors, I have found only one description, which says:
> Message (PDC distance information, 0x36D) missing, receiver TRSVC, transmitter PDC / REM
> So my question is did you use a termination resistor?
> ...


Haven´t been working on F-Series BMWs for a while, which is why i´m not that active anymore.
Didn´t need an termation Resistor. FA was a modified one of an F39 since car dimension and camera position were closest to my old F20. For you, it would make more sense to Code ICAM with an FA from an >07/2017 F30 since these already came with an ICAM and therefore camera position and image dimensions will fit .
iLevel shouldn´t be an issue.
Did your f30 come with PDC (507 or 508)? Coding REM/FEM with 3AG without having 507 or 508 won´t do anything. FEM won´t send PDC message on CAN without 507/508 to activate the RVC.


----------



## Ssarbinski (Feb 19, 2021)

Can somebody help me set up ICAM to F10 - I've ICAM from F15. I've tried connecting ICAM to the CAN gateway(with one CAN bus shield) but ESYS still does not see it


----------

