When you click on links to various merchants on this site and make a purchase, this can result in this site earning a commission. Affiliate programs and affiliations include, but are not limited to, the eBay Partner Network.
Navigation & AudioBring your GPS and favorite CD or MP3. This is where navigation and audio options for the Cooper (R50), Cabrio (R52), and Cooper S (R53) MINIs are discussed.
Top of the morning lads, long time lurker, first time poster here.
Today I want to share with you my journey in successfully getting a functioning Android/Carplay unit in my R52.
First, a bit of context. Here's how I bought my car. Pretty basic instruments I would say. You can also see here the first step in the journey which was installing a functional Android Carplay capable unit. Turns out 9 inches is a bit too much (giggity). It was covering half of the climate unit and it turns out that when you're driving it's pretty useful to actually see which ***** you're turning.
Spoiler
So the second step in this journey was getting the chrono package. Mostly because of the doppel instrument cluster above the steering wheel.
For this purposes a chinese R270+ was purchased because from what I've read that's a reliable way to remove VIN and mileage data from the cluster which will allow it to be paired to the car. Pretty much all the needed info and files are available here: https://github.com/YulCmr/mini_chrono_pack_BDM
Thanks a lot @YulCmr !
Spoiler
And finally the third step of the journey was getting the actual oem satnav/android unit frankenstein in place. You can probably also see the factory radio installed as well but it's only there for aestethic reasons as it is not connected to anything. I was thinking of wiring in just the GND,ACC,12V and ILLUM so it would match the interior lights but ultimately decided that I don't want a useless module chugging extra pixies.
Spoiler
Now that we got the history out of the way here's the actual DIY.
What you'll need if you wanna tackle the same project:
- R270+ programmer (Here's where I got mine, but if your friend/buddy/neighbour has one then you can just borrow it)
- Toyota Corolla E120 android radio (I got mine here but looks like it's no longer available)
- OEM Satnav center dash unit (Ebay perhaps or a local scrap yard. Had to get mine shipped from UK cause our MINI scene is pretty much unexistent)
- Central dash sat nav ring trim (Probably same place as the satnav)
- 16 pin stereo wiring harness with can bus decoder (Got mine here, seems to be still available)
- Carlinkit wireless carplay adapter (Be careful to get the one for Android stereo units) (Not needed if you don't need carplay or only use it wired)
- This repo since it contains the necessary files for both chrono pack and satnav retrofit
- A soldering iron (Doesn't really matter which one, I used my trusted TS100)
- A dremel (You can probably attempt this with a jigsaw, which I did but still had to finish the job with a dremel)
- Some 22awg/0.5mm2 wires (Might be overkill for this application but it seems to work fine so up to you really which wires to use)
Here's the oem satnav radio and center piece trim which I had shipped from UK in all its glory.
Spoiler
Here's me bench-testing the Toyota Corolla stereo (or should I say couch-testing?). You can already see me testing the carplay here, turns out this radio comes with an integrated wired carplay option. I'm more of a wireless guy but if you have nothing against plugging things in your phone all the time then you can save about 70$ on the wireless carplay adapter.
Spoiler
A quick peek under the skirt reveals that the outer toyota stereo shell is mostly empty. I decided to ditch the dvd for this project (who needs CDs anyways, it's 2022). So we mostly have to worry about 2 pieces here, the motherboard (screwed to the bottom of the shell) and the screen assembly (screwed to the front black plastic assembly).
Spoiler
After further disassembly here's the parts we'll actually use for the new stereo.
Addressing the wiring:
- all the toyota plugs from the android wiring will have to be cut in order to allow us to solder them onto the 16pin adapter.
- the 16pin adapter will have to lose the 16pin connector and the wires need to be soldered to the corresponding toyota android plug.
Spoiler
Here's the final wiring harness before being wrapped in fabric tape. You can also admire my "car simulator", male BM54 plug with GND, ACC, 12V, and a speaker. If you're paying attention you probably also noticed that there's a cooler now on top of the motherboard. The reason for it is that previously the amplifier was cooled passively by the rear side of the toyota radio (which is a solid piece made of machined alluminum), but there's no way I could fit the same part here, so I had to get a laptop cpu cooler from a laptop scrapyard and then drill 2 holes in it to allow it to be bolted to the amplifier. The cooler is powered by a DC step down converter cause it only needs 5v for power. The converter itself draws power directly from the motherboard as I soldered it to the ACC/GND pads.
Spoiler
Another important bit is that the stock toyota android plug did not have the pins for CAN RX/CAN TX so I had to solder 2 wired to the motherboard where those 2 pins would actually go, fortunately the plug wiring diagram was printed on the unit itself.
Spoiler
Here's another angle on my ghetto engineering cooling solution.
Spoiler
Here's the center piece ready to be installed in the vehicle. Pretty much the whole reason why I choose the Toyota Corolla stereo was because the screen is 6.2 inches which when extracted from the old enclosure is almost exactly the same size as the stock screen. The stock screen however is a thicc boi so the new screen has to be raised about 5mm to sit in the same position. Here's when I did the metal frame modifications, the stock screen has the flex cable in a different spot so some remodeling has to be done to accomodate the new screen. I started with a jigsaw but finished the job with a dremel. Seems to still be structurally sane (it's not like it's going to space anyways).
Now when I think about it I probably could get away with not dremeling the metal oem navigation frame cause my concern was that there is not gonna be enough space for the screen flex cable, but 5mm should be plenty for it. I also added wires going from the stock board buttons to the android button board (the one with a button and the **** which is also a button). I was trying to get the **** to work but with no result. I learned that they are both rotary encoders tho but not sure how can I adapt the stock one to translate to the android radio one.
Spoiler
Now that we're pretty much done with the Android part, it's time to address the stock middle instrument board.
The soldering points are pretty easy.
Spoiler
After soldering it's pretty much just upload the "Flash" and the "0km EEPROM" and you're good to go.
If you see this error while flashing then probably your soldering needs more attention (happened to me the first time) or your power supply is not strong enough. I've used 2 power sources during this project, a 12V LED transformer and a Milwaukee M18 5AH battery with a 12V/USB adapter on top of it, both of which seem to be more than enough for the R270+.
Spoiler
I highly suggest testing both parts individually (the stock middle instruments and the center android unit we prepared in the first part) before assembling them together. So ideally when connecting your flashed instruments you should see something like 250km on the cluster, this is a good sign which means now you can read the vehicle info using NCSExpert from EWS module, and then do ZCS_LESEN on EWS module, and ZCS_SCHREIBEN on the KMB module. Then FGNR_LESEN on the EWS module, then FGNR_SCHREIBEN on the KBM module. Ignition off and on and you should see your actual mileage displayed on the dash. The vin will also be coded so you don't have to edit the EEPROM before flashing it, just flash the 0km one and you should be fine. My mistake was flashing the 0km eeprom from the chrono pack (HW30) into the satnav cluster(HW08). It paired to the car successfully and the mileage was transfered however most of the check lights were not working and there was no fuel level indication as you can see in the picture below. In order to fix this I uploaded the HW08 flash an 0km eeprom and everything works fine now.
Spoiler
The last step would be to properly configure the can bus settings in the android radio to allow the steering wheel controls to fully function (vol-, vol+, prev, next). This is located in the "Factory settings", the password was 0000 and then Can Bus settings. You can also see that I managed to lose the goddamn middle **** so if anyone has the stl file or model for it so that I could 3d print it, I would be very grateful if you can share it with me.
Spoiler
That's pretty much it, what I could say is that it was a fun engineering project which took about a week total once all the bits and pieces arrived.
The solution looks fully OEM with no funky business, which I like, and also the steering wheel buttons still work which is convenient since I couldn't get the **** to work so steering wheel is the only way to change the volume.
This is really great work. Very useful for us trying to keep the car in date with tech. Surprised it hasn't gotten more love. Thanks for posting such detailed info!
This is really great work. Very useful for us trying to keep the car in date with tech. Surprised it hasn't gotten more love. Thanks for posting such detailed info!
Does is read obd and have mic input on the unit?
Hey, thanks! It does not have a built in obd reader but a separate one can be purchased and connected through bluetooth. Regarding the mic input there is one and it works if used through the android bluetooth calling. However it is not used when calling through carplay, still figuring this bit out. Either I messed up some settings or I will solder a 3.5mm female socket instead of the built in mic of the old android unit and use it that way. It’s still a work in progress so when I’ll move to next steps I’ll make sure to also document them.
Alright so here's the second and last part of this DIY, and it's gonna be more about what not to do.
Since the whole android system was contained in the screen section of the factory nav, there were clearing issues between the active cooler and the car structure behind it (it would cut out the audio when touching). I solved it originally by sticking a bunch of insulating tape and it would probably work fine but it was still bothering me.
The idea was to reuse the factory radio as a container for the motherboard, however it is attached to the screen with a flex cable and it's not a very reliable connection to use between the oem navi screen and oem navi radio so I decided to create a converter 60 pin flex cable -> 60 pin prototyping board -> 40 pin + 20 pin connectors (the only reason I went with 2 connectors instead of a single 60 pin connector was cause I wasn't able to find one.
Once the adapter was ready it was time to disassembly the factory radio and I've discovered that it's basically made of 4 main components: the CD drive, the motherboard, the front panel with all the controls and the rear panel with the quadlock socker and the amplifier. After throwing the motherboard and CD drive straight into the trash I had an idea of reusing the rear panel so that the quadlock coming from the car would just plug in the factory radio as god intended and then solder the wires on the other side of the connector and route them to the android motherboard. However this idea failed miserable, no matter what I've tried it would always short the positive and negative leads of the connector. It's weird cause I've desoldered all the unneeded components of the rear board so it was essentially a holder for the quad lock socket and I've checked them for continuity like a maniac but as soon as I plugged it to power it would short. As part of this brilliant idea was to also reuse the stock amplifier cause it bolts to the rear of the enclosure which is made of alluminium which would be a more factory cooling solution than my active fan. This idea also failed miserably, however I have pictures [img]data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7[/img]
I had to desolder the android amplifier first and then run wires to the factory amplifier. Funny enough they were from the same company, and had the exact same dimensions and connections so I thought it would be a straight swap. However that was not the case and I was getting no audio.
The second idea was to ditch the rear board altogether and try to reuse the aluminium part for cooling, this also failed cause I've used solid wires. The wires soldered into the motherboard beautifully however when soldering them to the amp legs they would short between each other and sometimes even snap (I had to buy another amp on the local market just to put the thing back together).
Here's how it fits inside the factory enclosure, it's a tight fit but other than the issues I mentioned before seemed viable.
Unfortunately I had to solder the amplifier back onto the android board and put my active cooler on top of it as before. It still fits within the enclosure so should be okay.
So not much has really changed except the fact that now both enclosures fit the factory dimensions and so no shorting occures anywhere, as well as the motherboard has now a bit more space to breathe. Regardless I would recommend this mod to everyone cause it easily shaves a couple years of the mini dashboard.
Amazing work! I wish I was able to do this! I know Porsche is now offering updated electronics for their older 997 911's as a way to keep their owners happy. I wish MINI would do something like this for us!
I came across this post and it motivated me to try and find a different solution to my current setup. While it works, it loses some of the original character and styling of the 1st Gen interior. Your write-up has given me the motivation to retackle this project and challenge myself to have a fully stock-looking setup with modern internals.
Current setup:
Joying 7" Android Single DIN head unit with a custom 3D printed mounting system that replaces the old screen and mounts the head unit/brainbox to the heater core/air plenum. Final install of 7" Joying Android Single DIN headunit
Prototype bracket in place sandwiching the old screen opening to mount with opening for ribbon cable to pass from head unit to screen. The head unit is mounted to the heater core/air plenum behind the dash. There are two dash brackets with M6 screws that are perfectly placed to mount custom brackets to keep the unit from rattling in the dash.
(the screen resolution is a little lower than I would like, but it will be fine for an 18-year-old car). I have already disassembled the entire unit and, just like this write-up, the screen and display driver are combined and then a separate small breakout board connects the screen and button daughter boards to the main back panel where the connectors are located. I am working on a 3D-printed enclosure that will secure the new screen and logic boards to fit within the tight space left by the old nav unit (roughly 7" wide by 4.5" tall by 2" deep). I have not figured out how or if I want to try and make the stock nav buttons work (only two on the car but the new head unit has six), but I am hoping to cobble together a solution for using the stock dial **** to control the volume (thinking going old school and mounting the new daughter board under the screen and then using a tight-fitting rubber hose to connect the modern digital dial to a small piece that holds the old **** in place).