Issue:
A customer couldn't add a spare key to a BMW 316 (G20, BDC3) using an Autel IM608 II + Autel BMW iKey. He pre-generated an iKey (same FCC ID), disassembled the original key, read the data and tried to learn the key — but the new key didn't work.

He pre-generated the key — that's the mistake.
What to do (quick fix):
Don't generate the BMW key before programming. The Autel will generate the new key automatically during programming.
Just place a blank (new) Autel BMW iKey on the programmer and start the add-key routine — the tool will handle the rest.
If you don't have a blank Autel BMW iKey: take any Autel key you have (even Hyundai/Kia), put it on the programmer during the new key programming to wipe its BMW FCC ID, then proceed. The goal is to clear the BMW FCC ID from the Autel key you use.
Important notes:
1. Autel does not support add-key on every BDC3 model — check supported models first.
2. You must use an Autel BMW iKey (no other aftermarket/OEM keys accepted).
3. Higher success rate for keys marked "Hungary" (model years ~2020–2024).

4. Follow the correct add-key steps and double-check wiring when reading key data.