Published: May 28, 2026
Quick Answer
To program a BMW CAS4 key via OBD using the Launch X431 and X-Prog3, read the CAS module data through the OBD port with the X-Prog3, generate a new key file, write it to a blank transponder, then use the Launch X431 to learn the key into the vehicle. You need a working original key, a stable 12V power supply, and the correct transponder (46 or 4D). The whole procedure takes 15–30 minutes.
Introduction
BMW’s CAS4 (Car Access System) immobilizer controls key authentication, starting, and comfort access. Two main variants exist: CAS4 (common in E-series cars from 2005–2012) and CAS4+ (found in early F-series). Programming a replacement key doesn’t have to involve pulling the module apart. OBD programming keeps everything under the dash, reducing risk and saving time.
The Launch X431 diagnostic tablet handles the key‑learning step, while the X-Prog3 programmer reads the CAS4 EEPROM and generates the transponder data. Together they form a powerful, cost‑effective solution for locksmiths and DIY enthusiasts. But success depends on matching the right hardware version and following each step carefully.
Why OBD over Bench Methods?
- No disassembly – you don’t touch the CAS module itself.
- Lower risk – no bent pins or damaged solder joints.
- Faster – typical session under 30 minutes.
- Multiple keys – add up to four keys in a single session.
That said, not every CAS4 variant plays nice with OBD. CAS4+ with a locked MCU often requires bench work. We’ll cover that in the troubleshooting section.
Prerequisites
Required Tools
| Tool | Purpose |
|---|---|
| Launch X431 (V+, Pro3, or newer) | Diagnostic tablet for key learning and software updates |
| X-Prog3 programmer | Reads CAS4 EEPROM and writes transponder data |
| CAS4 adapter for X-Prog3 | Connects to the 20‑pin under‑hood diagnostic port (or OBD under dash) |
| Original working key | Needed for authentication during the learning phase |
| Blank transponder | Typically 46 or 4D crypto type – confirm with your X-Prog3 software |
| Battery maintainer (12V, 10A minimum) | Prevents voltage drop during the procedure |
| Laptop or PC (optional) | Runs X-Prog3 software if your X431 doesn’t support it natively |
Safety Precautions
- Keep battery voltage above 12V. A dying battery can corrupt the CAS module during a write operation.
- Don’t interrupt power or communication. Unexpected disconnection may brick the module.
- Work in a well‑ventilated area. If you’re keeping the ignition on for long periods, carbon monoxide can build up.
Step-by-Step Guide: Programming a BMW CAS4 Key via OBD
1. Preparations
First, identify your CAS4 variant. Connect the Launch X431 to the car’s OBD port and navigate to BMW > Immobilizer > CAS4 > Version Info. The tool will tell you whether it’s CAS4, CAS4+, or a hybrid. Write this down.
Now set up the X-Prog3. Connect it to your laptop via USB and launch the X-Prog3 software. If your Launch X431 has a USB host port, you can run the X-Prog3 software directly on the tablet – check the manual.
Tip: Update both the X-Prog3 firmware and the Launch X431’s BMW software to the latest versions before you start. Outdated software is the number one cause of “No Communication” errors.
2. Reading CAS4 Data Using X-Prog3 (OBD)
Step 1 – Connect the X-Prog3 to the car using the appropriate adapter. For most E-series BMWs, you’ll use the 20‑pin diagnostic connector under the hood. If your car has only the OBD‑II port under the dash, use the OBD adapter cable.
Step 2 – In the X-Prog3 software, select BMW > CAS4 from the vehicle menu. The software may ask for the specific CAS4 variant – choose the one you identified earlier.
Step 3 – Click Read EEPROM. The X-Prog3 will communicate with the CAS module via the OBD lines. This usually takes 2–5 minutes.
Step 4 – Once reading finishes, save the backup file to a safe location. Name it with the date and VIN so you can restore it if something goes wrong later.
Step 5 – If the software offers a Flash Read option, use it as well. Some CAS4 modules store key data in both EEPROM and flash areas. A full backup covers all bases.
3. Generating a New Key
Step 1 – In the X-Prog3 software, open the EEPROM file you just saved. Look for the Key Generator or Add Key tool.
Step 2 – Choose a key position. The original key usually occupies position 1. Select position 2, 3, or 4 – avoid position 1 unless you intend to replace the original.
Step 3 – Insert the blank transponder into the X-Prog3’s programming socket. The software will detect it and show the transponder type.
Step 4 – Click Write Key. The X-Prog3 programs the transponder with the correct crypto data for that vehicle. A success message will appear.
Step 5 – Remove the programmed transponder and place it into your new key fob shell. Make sure the transponder sits correctly – some shells have specific slots.
4. Learning the New Key Using Launch X431
Step 1 – Disconnect the X-Prog3 from the vehicle. Connect the Launch X431 to the OBD port.
Step 2 – Turn the ignition ON using the original working key.
Step 3 – On the Launch X431, navigate to BMW > Immobilizer > CAS4 > Key Learning.
If you don’t see this option, go to Special Functions > Key Programming – the menu structure varies by software version.
Step 4 – Follow the on‑screen prompts. Typically, the tool will ask you to:
- Insert the original key (already in the ignition)
- Turn ignition OFF
- Remove the original key
- Insert the new key and turn ignition ON
- Wait for confirmation
Step 5 – The Launch X431 will sync the new key with the CAS module. When the process completes, the tool will say “Key Learned Successfully.”
5. Verification
Test both keys thoroughly:
- Engine start – Turn the ignition to crank. The engine should fire up without delay.
- Lock/Unlock – Press the remote buttons. All doors should respond.
- Comfort access – If your car has keyless entry, walk up to the door and touch the handle. The car should unlock.
If the new key works but the original stops functioning, repeat the learning procedure. This sometimes happens when the system overwrites the original key slot. Use a different position next time.
Troubleshooting Common Issues
“No Communication with CAS” Error
- Check cable connections. The 20‑pin adapter may have loose pins. Wiggle the connector gently while retrying.
- Verify vehicle support. Some CAS4+ modules with locked MCU do not allow OBD reading. You may need to remove the module and perform bench programming.
- Update firmware. Both the X-Prog3 and Launch X431 need the latest software. Connect to the internet and run the updater.
“Key Not Learned” or “Invalid Key” After Procedure
- Wrong transponder type. Use only 46 or 4D crypto transponders. Non‑crypto blanks will not work.
- Key position conflict. If you programmed the new key in position 1, it may clash with the original. Try position 3 or 4.
- Corrupted EEPROM. Restore the backup file you saved earlier and repeat from step 2.
Vehicle Battery Drops During Process
- Use a battery maintainer. A 12V, 10A charger connected to the battery terminals will keep voltage stable.
- Turn off unnecessary loads. Close the doors, dim the interior lights, and remove any USB accessories.
X-Prog3 Fails to Read CAS4 Flash
- CAS4+ locked MCU. These modules require an additional unlock step using JTAG or bench harness. The X-Prog3 alone cannot read locked flash via OBD.
- K‑line signal missing. Early CAS4 modules use a dedicated K‑line for communication. Ensure your adapter includes the K‑line wire. If not, get a proper CAS4 cable.
Launch X431 Software Not Finding Key Learning Option
- Update the BMW software. Go to Software Update in the Launch tablet and download the latest BMW package.
- Navigate differently. Try Special Functions > Immobilizer > Key Programming instead of the direct Immobilizer menu.
Pros and Cons of OBD Key Programming for CAS4
Advantages
- No need to remove the CAS module – less chance of damaging connectors or soldering.
- Faster than bench programming – you can finish in 20 minutes.
- Add up to four keys in one session without touching the module.
Disadvantages
- Limited to unlocked CAS4 variants. CAS4+ often requires bench work.
- Two specialized tools required – Launch X431 and X-Prog3. That’s a significant investment (though still cheaper than some dedicated BMW tools).
- Communication errors happen more frequently on older cars with corroded OBD connectors or low battery voltage.
Frequently Asked Questions (FAQ)
Can I program a key for BMW CAS4+ using only OBD?
CAS4+ normally requires bench programming because the MCU is locked. Some aftermarket tools claim OBD support, but success is inconsistent. Use the X-Prog3 with a CAS4+ adapter and bench harness.
Do I need the original key to program a new one?
Yes, most procedures require a valid working key for authentication during the learning phase. Without it, you cannot authorize the deletion or addition of keys.
Can I delete lost keys using this method?
Yes, the Launch X431 allows you to delete all keys and then add new ones. However, the original key must be present to authorize the delete.
What transponder type does CAS4 use?
Usually 46 or 4D type (crypto transponder). Confirm with your X-Prog3 software before buying blanks.
Will this work on BMW E-series (E60, E90, etc.)?
Yes, CAS4 is common in E-series (2005–2012). F‑series uses CAS4+ or FEM.
My X-Prog3 doesn’t have a “CAS4” option – what now?
Update the X-Prog3 firmware via its official software. If still missing, check if your unit supports CAS at all – older versions may need a hardware upgrade.
Is it legal to program my own keys?
Yes, for your own vehicle. Programming keys for other people may require locksmith licensing depending on jurisdiction.
Conclusion
Programming a BMW CAS4 key via OBD using the Launch X431 and X-Prog3 is a reliable method when you have the right hardware version and follow the steps carefully. The key takeaways:
- Back up your CAS data before making any changes. That backup is your safety net.
- Use a stable power source – a dying battery can turn a simple job into a nightmare.
- Test both old and new keys before putting everything away.
If you’re unsure about reading or writing flash data, or if your CAS4 variant turns out to be locked, consider working with a professional who has bench programming experience. For most E‑series BMW owners and locksmiths, though, this OBD approach saves time, money, and hassle.
For more details on compatible Launch X431 models, check out our guide: [link to related guide on Launch X431 features and versions].
About the Author: Erwin Salarda is an Automotive Service Equipment Technician based in the Philippines, specializing in computerized automotive diagnostic equipment such as OBD scanners and wheel alignment systems. Since 2012, he has been actively providing technical support, equipment installation, troubleshooting, after-sales service, and hands-on training for automotive service equipment used by workshops and automotive professionals.
He has received specialized training from international suppliers and manufacturers, including Launch X431 in Shenzhen, China, Lawrence Engineering Company in Guangzhou, China, and 3Excel Wheel Alignment Company in Shenzhen, China. Through these trainings, he developed advanced expertise in automotive diagnostics, calibration, wheel alignment systems, and computerized automotive service technologies.
Erwin Salarda provides professional after-sales support and technical training for automotive diagnostic and wheel alignment equipment, helping clients maximize the performance and proper use of their tools and systems. His experience covers equipment setup, software updates, calibration procedures, troubleshooting, and operational guidance for automotive workshops and service centers.
With more than a decade of experience in the automotive equipment industry, Erwin Salarda continues to support automotive businesses by delivering reliable technical expertise and practical training solutions.
For inquiries and equipment purchases, please visit https://carlifterph.com/
Related Posts
- Program BMW CAS3+ ISTAP Key with LAUNCH X431 – No EEPROM Write
- How to Program a BMW CAS3 Key via EEPROM on Bench with LAUNCH X431 IMMO Plus
- Add a New Key to BMW CAS2: LAUNCH X431 & X-PROG3 Guide | CarLifterPH
- How to Program a BMW CAS1 Key with LAUNCH X431 IMMO Elite on Bench
- LAUNCH X431 Smart Mode: Auto-Detect BMW IMMO System | Step-by-Step Guide