Ich bin der Typ der den oben verlinkten Fred aus dem xda Forum gemacht hat.
Hab inzwischen ein Android-8 Fon, da lies sich das so leider nicht mehr realisieren und hab mich jetzt um Hardwarelösung gekümmert und will die Infos dazu gern für die Nachwelt da lassen.
Es gibt mehrere Generationen von den ULFis.
--- alter sch*** ----
84 21 6 934 552 end of life 06/03 1st generation
84 21 6 938 610 end of life 10/03 2nd generation
84 21 6 934 961 end of life 03/04 3rd generation
84 21 6 950 089 end of life 06/04 4th generation
84 21 6 945 387 end of life 01/05 5th generation
---- ab hier geht Android 4.3 und später ----
84 10 6 955 522 end of life 10/05 6th generation
84 10 6 969 268 end of life 04/06 7th generation
84 21 6 958 358 end of life 05/06 8th generation
84 10 6 987 546 end of life 9/06 9th generation
84 10 6 980 130 end of life 11/06 10th generation
84 10 9 133 329 end of life 01/07 11th generation
84 10 9 145 007 end of life 05/07 12th generation
84 10 9 154 358 current production 13th generation
Bei mir selbst funzt es nun mit 6969268, (Hw-Rev.10, Sw-Rev.72) in einem Facelift E46 von 2004 mit Navi-Pro (verbaut war da ein 6945387, das von Android 4/5/6/7/8) nicht ohne Modifikation lief. Umbau ca. 20 Min. wenn man erstmal rausgefunden hat, wie man die Stöpsel von der Kofferraumverkleidung löst 
Für die 6955522 (HW-Rev.10, SW-Rev.71) gibt es in nem anderen Forum jemand der schreibt, dass bei dem das läuft, das klingt mir glaubhaft weil bei der BMW-internen Zählung ist das nur einen Softwaresprung von meiner entfernt.
Die Dinger gibts bei Ebay deutlich billiger als die 450 Euronen die die freundlichen für das letzte Modell wollen.
Nur für den Fall dass jemand noch so altes Zeug fährt und mit neuen Handy telefonieren will.
Ab 7.Gen gibts in nem anderen Forum ne Diskussion, dass da auch Spracheingabe gehen soll.
EDIT (12/2018):
Nur der Vollständigkeit halber: Teilenr 6 955 522 (SW Rev. 71) hab ich inzwischen auch getestet und geht.
Beim Pairen der aktuellen Androids muß man beim Pairing am Handy drauf achten, dass man dabei den Haken setzt, dass Zugriff auf die Kontakte erlaubt ist.
Sprachsteuerung kann man tatsächlich mit NCS-Expert und Konsorten im ULF kodieren, ist aber ziemlich nutzlos.