9.03.2020

Top Tools to Register and Code BMW New Battery

Background Information:

BMW Battery Registration vs. Coding

The registration procedure clears the charging history of the old battery and tells your BMW that a new battery with the same specs as the old battery is installed. The Engine Control Unit (DME) can charge the battery properly.
  • Battery Registration 
    • Registration must be performed every time you change the battery on a 2002 and newer BMW. It lets the car know the battery installed is brand new.
    • If the new battery has the same specs or very close to the old battery (CCA, CA, Ah, battery type) no coding will be required. 
  • Battery Coding
    • In addition to the registration procedure, you will need to carry out coding if you change the battery capacity or type. Coding is required if the new battery has different specifications compared to the old battery installed in the car.
    • For example, if you install a battery with a higher or lower cranking Ampere rating, or switch between Lead Acid and an AGM battery, you will need to code (program) the DME. Otherwise, the DME may overcharge or undercharge the new battery, and therefore shorten the life of the battery.
Some FAQs:

Q: Why do I need to register a new battery?
A: The short answer is that BMW designed the charging system with an algorithm that varies the rate of charge by the age and type of the battery installed. Registering a new battery resets the algorithm back to optimal charging voltage for the specified battery.

The long answer: "The negative battery cable has an electronic control unit on the battery end of it called an intelligent battery sensor (IBS). The IBS measures the state of battery charge and sends this information to the ECU. The ECU uses this information to control how much charging voltage is needed from the alternator to support vehicle electricity needs. A battery deteriorates normally over time and depending upon service demands and driving profile. The IBS reads this and the ECU tells the charging system to increase voltage and amperage output incrementally as the battery matures. Therefore, at battery replacement time, if you don't tell the ECU it has a new battery it will overcharge the new battery causing it to wear out faster.

The registration process takes place in the ECU, which is the main player in this system. Also, when the IBS sees that battery voltage is too low for normal vehicle operation it can start shutting down vehicle functions to conserve power while keeping the vehicle operational. This would be accompanied by a check control warning of excessive battery discharge.”

Q: Why do I need to "code" for a new battery?
A: The answer to this varies. You may not have to! That is, so long as you replace your old battery with an exact replacement. However, if you switch from a wet-cell type battery to an AGM type battery, or vice versa, you must code for the change.

AGM and wet-cell batteries require a different rate of charge output from the alternator. Moving between these two types without coding can lead to over-charging or under-charging.
Also, batteries have a discharge rating called amp hours (ah). You must specify to the DME what the “ah” rating of your battery is so the car can run the proper charging algorithm.

Top BMW Battery Registration Scan Tools:

To complete the BMW battery registration process yourself, you will first need an OBD2 scanner that can perform BMW battery registration. Here is a list of popular scanners that you can use to register a new BMW battery.


  • Foxwell NT510/NT520/NT530 for BMW 
    • One of the most popular BMW scanners. The tool can be used to register a new BMW battery with similar specs compared to the previous battery. Installing a new battery with significantly different specs requires coding which is not currently available on Foxwell NT510 at the time of testing. 
  • BMW ISTA Rheingold
    • Require a laptop, ISTA software and hardware interface (ICOM, K+DCAN, ENET cable etc).
  • Autel Scanners (MaxiSys, TS608, MD808 Pro etc)
    • Professional Level Diagnostic Scanner. It can be used to program and code any type of battery including AGM and lead-acid, even if the replacement battery is significantly different than the original.
  • BMW INPA Software (INPA K+CAN)
    • Require a laptop and familiarity with INAP software. One of the cheapest scan tools able to register a BMW battery. 
  • Carly App for BMW

The procedure to register a BMW battery is very similar to most of the scanners out on the market. 

8.04.2020

Possible to work with ISTA+ and openport j2534?

Question: 
May i have a question if somebody test already tactrix Openport 2.0 J2534 interface to make it works with BMW ISTA/D (ISTA+)?



Solution:
Confirm it its works with ISTA/D, install bmw passthru drivers and set ediabas.ini to: STD:psssthruD
You can try this. You first need to get the pass thru drivers from bmw. Install the driver for YOUR pass thru and then follow below
1. Run BMW PassthruD in Administrator(Important!!!)
2. Choose the J2534 device you want and save it
3. COPY all file from  C:\Program files (x86)\BMW AG\PassThruD to C:\EDIABAS\BIN (default) EXCEPT EDIABAS.INI
4. Open EDIABAS.INI in notepad
5. Edit configuration interface = STD:passthrud  and save it!
6. Launch ISTA/D and move to Configuration -> Interface
7. Select EDIABAS.INI and apply it.
it will not work on all models but newer models should work okay. Have tested this and it works. I have a bmw icom now but last time I tried this it worked okay.



read also: 

7.05.2020

BMW Models and CAS FEM IMMO Type List

Question:
Is there a page or does someone have a list where all bmw models with the corresponding ews/cas type are listed?


Answer:
Yes,  here obdii365.com provides 2000 to 2019 year BMW CAS FEM system list:
2000-2019 Year BMW CAS Systems
MODELSCAS1  912DG128(3K91D)CAS2 9S12DG256(2K79X)CAS3 9S12DG256(0L01Y)CAS3+ 9S12XDP512(0L15Y)CAS4   9S12XDP512(1L15Y) 9S12XEP100(5M48H)FEM/BDCBDC2
BMW 1 SeriesNo2004-2006(E87)2007(E87)2008-2011(E87)No2012-2019(F20)No
BMW 2 SeriesNoNoNoNoNo2014-2019(F45)No
BMW 3 SeriesNo2005-2006(E90)2007(E90)2008-2012(E90)No2013-2019(F30/F35)2019.06-(G20)
BMW 5 SeriesNo2004-2006(E60)2007(E60)2008-2010(E60)2010-2018(F07/F10/F11/F18)No2018.06-(G30/G38)
BMW 6 SeriesNo2004-2007(E63/E64)2008(E63/E64)2009-2010(E63/E64)2011-2018(F12/F13)No2018.06-(G32)
BMW 7 Series2001-2004(E65)2004-2008(E66)NoNo2009-2015(F01/F02)No2016-(G12)
BMW X1 SeriesNoNoNo2010-2016(E84)No2016-2019(F49)No
BMW X2 SeriesNoNoNoNoNo2017-2019(F39)No
BMW X3 SeriesNoNoNoNo2011-2018(F25)No2018.06-(G08)
BMW X4 SeriesNoNoNoNo2014-2018(F26)No2018.06-(G02)
BMW X5 SeriesNoNo2007(E70)2008-2013(E70)No2014-2018(F15)2018.06-(G05)
BMW X6 SeriesNoNoNo2008-2014(E71)No2014-2018(F16)No
BMW X7 SeriesNoNoNoNoNoNo2019-(G07)
NoteOdometer correction:Yes, via OBD or BDM, need to remove Dashboard.
Key programming:Yes, via OBD or BDM
Odometer correction:Yes, via BDM, need to remove Dashboard.
Key programming:Yes, via BDM
Odometer correction:Yes, via OBD or BDM, need to remove Dashboard.
Key programming:Yes, via OBD or BDM
Odometer correction:Yes, via OBD or BDM, need to remove Dashboard.
Key programming: via OBD or BCM (CAS3+ via OBD)
Odometer correction:Yes, via BDM, need to remove Dashboard.
Key programming: Yes, via BDM. Support CAS4 till 2012.06. Does not support 2012.06- CAS+ with CPU 5m48h
Odometer Correction:Yes, reset FEM/BDC.  by FEM filter. 2 ways:
1 directly add on FEM module
2. add on the backside of the dashboard. Key programming: Yes
Odometer Correction:
Bosch dash: Add Filter and adjust mileage on chip 32128.
VDO dash: need emulator and filterKey programming: No

CAS1-CAS4, FEM Immo system images:
CAS1 912DG128 (0K05E)
CAS1 912DG128 (0K05E)
CAS2  9s12dg256
CAS2 Version 1 9S12DG256 (2K79X) used on E66
CAS2 Version 2 9S12DG256 (XK79X)
CAS3 9S12DG256 (0L01Y)
CAS3 9S12DG256 (0L01Y)
CAS3+ 9S12XDP512 (0L15Y)
CAS3+ 9S12XDP512 (0L15Y)
CAS4 Version 1 9S12XDP512 (1L15Y)
CAS4 Version 1 9S12XDP512 (1L15Y)
CAS4 Version 2: 9S12XEP100 (5M48H)
CAS4 Version 2: 9S12XEP100 (5M48H)
fem-module
FEM module
2 versions.
X5 is new version. The Filter is connected to backside of the dashboard.


The datasheet can be downloaded here as well:
https://drive.google.com/file/d/13MReDjlg4xdV-5lQ_NbpYKV-YefiJUXm/view?usp=sharing


Top BMW key programming tools:

7.02.2020

How to Setup BMW ICOM Next WiFi Connection?

How to Configure BMW ICOM Next WLAN to enable WiFi connection?
1. Run  ITool Radar to detect ICOM information
configure-bmw-icom-next-wifi-1

2. Open IE browser and enter ICOM configuration address (based on current real ICOM IP )
configure-bmw-icom-next-wifi-2


3. Select WLAN Settings
Enter WiFi settings
Save Changes.
configure-bmw-icom-next-wifi-3


4. Disconnect LAN cable and restart ICOM, then ICOM will auto connect with WiFi .
5. If using our ICOM software and USB-WIFI,  enter configuration as following:
Mode:802.11n,2.4GHz
SSID:ISAP
Security Type: WPA2 Personal
Pre‐shared Key: BmwAp24h

5.22.2020

BMW Lane Change Assist Coding with E-sys

For those who have been waiting, after a year of trying to figure it out, it finally works!! 

It seems that in addition to the codes originally found by simpaty, BMW is using additional codes to block certain features from working in certain countries, based on where you are located. By changing this coding, you can enable the Lane Change Assistant to work regardless of your location.

The 3 codes to be changed are:
HU_NBT or HU_MGU:
Spurwechselassistent - Change this to Aktiv

SAS Module:
C_SWA_Vorhanden - Change this to True
C_SWA_Land_Aktiv - You will have to edit the Werte values to "FF, FF, FF, FF" This is the item that blocks it from working in certain regions.

This worked on my 2020 530e, but the coding was the same when I was trying to get it to work on my 2019 X3, however at the time I was unaware of the C_SWA_Land_Aktiv change that needed to be made. This should work regardless of if you have iDrive6 or iDrive7, and of course this is applicable to cars with Driving Assistant Plus, as the Pro is not yet available on the X3.

The ISA, or intelligent speed assist, isn’t blocked by region, just a few codes to change. I had enabled it on my X3 when I was coding the car to Euro spec to try to get the glare free high beams and the lane change assist to work. I will look over my old backup codes and see if I can remember what specific items changed for that to work. It didn’t automatically change though, it would alert me if the speed limit outside changed, and then I could press the rocker switch on the steering wheel and it would adjust.


You have to have the Steering and Lane Control assist on, and it has to be detecting the lane lines, as well as a physical barrier between you and oncoming traffic, so either a median or a barricade. It also only works at certain speeds, I believe over 40mph.

5.21.2020

BMW E85 Z4 SBSR Airbag Module Coding Guide

I've finally got a used airbag ECU for my 2003 Z4 3.0 and after fitting it the airbag light is still on. A pal used a obd2 scanner to read the fault code and the "Safety and Gateway module" shows the error "93AB Incorrect chassis number. He can clear the fault but it immediately returns.

Is there anyone anywhere near Peterborough that has the necessary equipment to code my VIN number onto the new module please?


Step by Step to edit VIN, Flash, Code to Default, Clear Errors and Start System Time of the Airbag Gateway Module. 

Hopefully it will be useful to someone else if they find themselves in the same position.


INPA: UIF (User Information Field) Report
1-Open INPA>select your car model (E60)>Functional Jobs>F3 UIF
-This is the first change. The E85 profile says "Quasi Functional" and doesn't have the F3 UIF choice on my version, so I did an Information report instead (F2)

2-You'll see a list of all control units with their ZUSB number and VIN
-This is the BMW part number that comes up for the module you are sorting out in the information report. I couldn't see the VIN anywhere on this report so I just wrote it down from the windscreen. 

3-Print to PDF the report.
4-Identify the ZUSB numbers without your VIN and copy from the PDF and close INPA
- I didn't do these steps, I just copied down the part number of the modules I needed (in my case "Airbag ECU or Safety Info Module" and "Satellite B Pillar Left").

WinKFP: Edit VIN and Flash Module
5-Open WinKFP (Load SPDaten files google it)
6-Select comfort mode
7-Then click find ZUSB
8-Paste the number you copied
9-this will go straight to the right ZUSB
-In my case this only worked for one of the two modules. The other one had a ZUSB/part number older than the daten files I was using, so was not recognised when I typed it in. There is another way to do this next bit if you find the same thing (see alternative below). If this step does work correctly, note down the ECU Family the module is in (from the left column), you will need it to start the system time later on.

10-Then enter your full VIN and then click on done
11-Double check that the module your going to flash it's safe to flash with your cable and the battery needs to be connect to another power source
12-Click on update ZUSB (this will flash the module with SPDaten files and re-write the VIN)

Alternative:
A1. You need to find the ECU family that your module is in. For me the main airbag ECU was in SIM85 and the pillar module was in SBL264. To double check this, look for your *.his files on the PC (mine were in C:\EC-APPS\NFS\DATA). They are all named with the ECU family (SIM85.his for example), so if you open these up with notepad and search through you will see all the historic ZUSB/part numbers for that module. When you find the one with your module part number in you will have the ECU family name you are looking for.
A2. Open WinFKP
A3. Select Comfort mode
A4. Select Update ZUSB
A5. Select the correct family for your module
A6. Enter your full VIN and then click done
A7. Double check that the module your going to flash it's safe to flash with your cable and the battery needs to be connect to another power source
A8. Click on Prog. ZB-Update
A9. This will then show you the update that is about to be programmed onto the module, click ok to start programming. This took a few minutes per module in my case, so make sure your car battery and laptop aren't going to run out of juice halfway through. I hooked the car up to a charger just in case.


NCS Expert: Code to Default 
-If you're interested in what you are doing here then I found a really useful introductory guide. It was good to understand a little bit of what I was actually doing, although you don't need it to complete the next steps: https://www.bimmerforums.com/forum/show ... NCS-Expert

13- Open NCExpert
14-Load profile -> Expertmode (I used Expertenmodus (Werkseinstellung), as Expertmode wouldn't load on my version as it was too old) -> F1 -> F3 -> choose E60 (E85) from the list -> choose any module you want from this list -> now click F6 Back -> select F4 Process ECU -> choose Module -> now click ReadECU -> close the notepad window that showed up after the module was read (On mine it came up with another window with three text boxes in, I just closed this).
15-Press F5 for basic functions -> Select "coapiReadSgGetFswPsw" and click Ok -> Select F2 "job" select SG_CODIEREN and press ok -> Press F3 Execute job and wait for the buttons to become active, when active it's all done.

INPA: Identification Report and Clear Errors
16-Open INPA>select your car model (E60)>Functional Jobs>Identification
17-Print the report to PDF.
18-Look in the SGBD column the module you replace
19-Clear (EM, IM and HM) Errors and Close INPA
- I couldn't see the SGBD column on the E85 information report. i just noted it down from earlier when using WinKFP. 

Ediabas Tool32: Start System Time
20-Start Tool32
21-Select File->Load SGBD, Group file
22-Browse to the EDIABAS\ECU folder, and search for the file name based on the listed SGBD column. Can be more than 1 file.
-I actually couldn't find an exact match for the satellite pillar that had come up in WinKFP, but I chose SBSL85 and it seemed to work. The main ECU was SIM85 again so this was more obvious.

23-In the Left of the window select systemzeit_lesen (write) 
24-In the middle of the window Argument (value of) type 1 in the dropdown menu
25-double click systemzeit_lesen and done.
26-double click systemzeit_starten. (no arguments)

I had to go back into INPA and clear the errors on the safety modules again to finish everything off. 

I unplugged the cables, switched the car on properly, and celebrated loudly when the airbag light went off. I also breathed a big sigh of relief as I had approached this with some trepidation to start with, but in the end it wasn't too hard with all the information that others have kindly made available already.

5.20.2020

How to register a BMW battery with Carly App?

Here's step-by-step instructions on how to register a BMW battery with Carly. 
You can also use Carly to code a new battery type (Lead-acid vs AGM) or change the battery capacity.
  • Carly for BMW
  • Carly for BMW App
    • Carly for BMW iPhone
    • Carly for BMW Android

Procedure

If you have already paired your Carly, skip pairing steps. We assume that the battery has already been replaced, and now we just need to complete the registration procedure.
Plugin Carly for BMW into the OBD2 port under the dashboard (driver's side). Press the power button on your Carly if it has one. The red LED light will turn on. 
carly-app-bmw-battery-1
Turn ignition to ON position. Don't start the car. You can't register a new battery if the engine is running.

Download Carly for BMW Pro.  The free version of Carly does not allow you to perform battery registration. You can use the free version of Carly for BMW to see how Carly Battery Registration works but you can't complete the registration. Use the free version to check if battery registration is possible for your BMW model and year.

Besides the Carly for BMW Pro, you will need to purchase the Battery Registration add-on which is another $10. Total cost for the Carly Adapter, Carly Pro and in-app battery registration place this setup in the mid $100-$200 range.

Pair Carly adapter with smartphone
carly-app-bmw-battery-2

  1. Turn on Bluetooth on your Android or iPhone.
  2. Search for a new Bluetooth device.
  3. Select Carly Adapter on your screen.
  4. Enter passcode such as 1234 or 0000
Next, launch Carly for the BMW Pro app. On the bottom of the Carly Dashboard, you need to select the BMW model and then hit connect. 
carly-app-bmw-battery-3
Enter Carly Battery Registration menu
Select Battery from the main menu.
Read through all the warnings and scroll to the bottom. Select Continue to battery registration. If you haven't purchased the add-on, Unlock battery registration will appear on this page.

Next, you will see two options. The first is to perform battery registration and the second to code a new battery. If your new battery has different specs than the old battery, you need to complete both coding and registration. If your new battery has the same exact specs as the old battery, you will only need to perform battery registration by pressing "Register same battery type" 
carly-app-bmw-battery-4
Register same battery type (Registration)
When you install a new battery with the same capacity and type as the old one.
Register another battery type (Coding)
Here you can change battery type and capacity. Change from lead acid to AGM. Change capacity between 60, 70 80 90 100 110 etc Ahr. 
carly-app-bmw-battery-5
Notes:
  • Do not stop the app or remove the Carly adapter when you are performing battery registration with Carly.
  • Do not start the car. Ignition should be on. All dash light on. Position II.
  • Read and clear codes from the CAS module before you perform battery registration with Carly. Clear any stored codes from the CAS module.