Welcome to Tesla Motors Club
Discuss Tesla's Model S, Model 3, Model X, Model Y, Cybertruck, Roadster and More.
Register

MCU1: Black center screen / mcu failure caused by a faulty navigation MicroSD card

This site may earn commission on affiliate links.
Allright, here is my experience from this adventure. Last week I wanted to use my navigation but it kept loading and finally this error popped up:

View attachment 667561

So because of this topic I knew the time has come to replace the microSD. I never replaced the SD card for the update buffering before so I was going to replace that also (that's why I removed the whole motherboard instead of using just pliers for the microSD.)

View attachment 667570

Picture of the microSD card I used (14.83gb) next to the original card:

View attachment 667564

View attachment 667566

First I tried to bitcopy the old microSD but without zero success, I tried putting it in the freezer and then got stuck on 55% and with no partitions on the new microSD card so no luck for me this time...

Tried to run Loek his script on 'Ubuntu for windows' but not sure if it was my skills or the program but it didn't worked out so I tried a fresh install of Ubuntu on a laptop and after some assistance I got it running:

View attachment 667569

Leftovers are a fresh microSD and 2 Linux partitions so good to go!

Installed everything back and power on.

Tried to use the navigation while connected to wifi and after a few tries it started to download the maps:

View attachment 667572

So I'm happy that it worked out finally. Many thanks @LuckyLuke for sharing this info and creating this script.
Hi Gtech, I am trying to get a 32GB SD card to be formatted using a Raspberry Pi.

The SD card is 29.18 GB FAT32 formatted in windows, I then tried to use the nav-sdcard-format.sh script in the raspberry pi with no luck.

Below is the steps and info, please kindly let me know what I am doing wrong?

1. Downloaded the nav-sdcard-format.sh on an win PC from the link given by lukylcuk. It downloaded as nav-sdcard-format.sh.txt
2. Removed the .txt extension in window and copied it to a USB drive.
3. Inserted the USB drive to the Pi, and copied it to the home/Pi directory
4. On the Pi using the GUI interface found the nav-sdcard-format.sh file and set it to be executable by everyone in the properties menu.
5. Opened the terminal and checked that I am in the home/Pi directory using the pwd command.
6. Using the ls command to check the file is in that directory.
7. Using the ls nav-sdcard-format.sh -l command to check the file is executable.
8. Using the sudo fdisk -l command to find the list of drive on the Pi.
9. the list is showing Disk /dev/sda: 29.8 Gib .... so I take it the SD card's location is /dev/sda

10. Using the ./nav-sdcard-format.sh /dev/sda to run the script, but I get the error bash: ./nav-sdcard-format.sh: /bin/bash^m: bad interpreter: no such file or directory.

11. I also tried ./nav-sdcard-format.sh -f /dev/sda but I still get the same error.

Any pointer would be really appropriated.
 
Hi Gtech, I am trying to get a 32GB SD card to be formatted using a Raspberry Pi.

The SD card is 29.18 GB FAT32 formatted in windows, I then tried to use the nav-sdcard-format.sh script in the raspberry pi with no luck.

Below is the steps and info, please kindly let me know what I am doing wrong?

1. Downloaded the nav-sdcard-format.sh on an win PC from the link given by lukylcuk. It downloaded as nav-sdcard-format.sh.txt
2. Removed the .txt extension in window and copied it to a USB drive.
3. Inserted the USB drive to the Pi, and copied it to the home/Pi directory
4. On the Pi using the GUI interface found the nav-sdcard-format.sh file and set it to be executable by everyone in the properties menu.
5. Opened the terminal and checked that I am in the home/Pi directory using the pwd command.
6. Using the ls command to check the file is in that directory.
7. Using the ls nav-sdcard-format.sh -l command to check the file is executable.
8. Using the sudo fdisk -l command to find the list of drive on the Pi.
9. the list is showing Disk /dev/sda: 29.8 Gib .... so I take it the SD card's location is /dev/sda

10. Using the ./nav-sdcard-format.sh /dev/sda to run the script, but I get the error bash: ./nav-sdcard-format.sh: /bin/bash^m: bad interpreter: no such file or directory.

11. I also tried ./nav-sdcard-format.sh -f /dev/sda but I still get the same error.

Any pointer would be really appropriated.
Basically the script will create new partitions and I'm not sure if it likes existing partitions, try removing all partitions first.
 
Basically the script will create new partitions and I'm not sure if it likes existing partitions, try removing all partitions first.
Thanks man, I managed to formate the SD card. In the end it was the .sh bash file being incorrect formatted. As I downloaded the file on a win machine, it added some formatting to the end of each line.
I cleaned it up with notepad++ and move the file across and it worked.

I’ll write up a detailed step by step once I got it in the car and working.
 
To all those who has swapped out the SD Card, how did you remove the card and put the new one in?

Did you have to disassemble the MCU or just took it out of the slot?

Is the SD Card slot spring loaded like some web cams?

How did you get the yellow tape off?

I wanted to gather more info before taking the car apart. Thanks!
 
Hey guys,


As a lot of people are looking and asking for a working map. I share the one that LuckyLuke sent me.
It's his job. So I even not sure that I can share it.

That will avoid him some work. (I don't know if he still answer people about this issue.)
So please leave this link here don't spread it.

And thanks him LuckyLuke for the job.



Thanks man, really appreciate this!

Also thanks LuckyLuke for his help with our problems!
 
  • Like
Reactions: Telectroboy2
Sorry in advance for bad spelling. =)

The SDcard is springloaded, in that i mean you have to push the card to get it loose and you put the new one in and push and it will secure.

I didnt know this when i took it apart and forgot about the tape. I had some small pliers that i grinded down to fit easier in the slot and i just pulled it out. Luckely nothing broke with the mechanism. The tape was no problem for me, just pull it out.

So you just have to take some panels off and loosen the MCU and take it out a bit and from there you have access to the slot. just make sure you have a good grip on the card because if you loose it inside the slot then it will fall down inside the MCU and then you will have to take the whole MCU apart to recover it. But hey, maybe its not a big deal if the old one get lost in there, just be careful when putting in the new one. =)


Good Luck !
 
I couldn’t get the bash script to work. Is that bin file just the maps or full image which you can dd to sd card? If not could someone send working image?

I was planning on just doing bit copy of old sd card which seemed to work somewhat ok, but then I DROPPED IT and now it lies forever inside the car.
 
I couldn’t get the bash script to work. Is that bin file just the maps or full image which you can dd to sd card? If not could someone send working image?

I was planning on just doing bit copy of old sd card which seemed to work somewhat ok, but then I DROPPED IT and now it lies forever inside the car.
The Bin image is for the whole 16gb card.
You can dd it to an unformatted card.
 
The Bin image is for the whole 16gb card.
You can dd it to an unformatted card.
Excellent! Thank you!

I was already getting pretty hopeless. Sometimes living in the future can be frustrating when one hour job to fix a car turns into an all night event of installing Linux distributions on usb sticks and wondering why the hell some bash script or linux distro doesn’t like my sd card reader 😂
 
Excellent! Thank you!

I was already getting pretty hopeless. Sometimes living in the future can be frustrating when one hour job to fix a car turns into an all night event of installing Linux distributions on usb sticks and wondering why the hell some bash script or linux distro doesn’t like my sd card reader 😂
By the way how did you get ur SD card out and put a new one in? Did u have to dismantle the MCU or did u get it through the tiny slot?
 
By the way how did you get ur SD card out and put a new one in? Did u have to dismantle the MCU or did u get it through the tiny slot?
I got through the tiny slot. It was pretty tricky, but I snapped a picture of it so that I would now the card slot location.

And well, something didn’t work well. Navigation is not working and I have error:
MCU_w007
Navigation unavailable
Navigation maps are not loaded

Tried rebooting already, but didn’t help
 
I got through the tiny slot. It was pretty tricky, but I snapped a picture of it so that I would now the card slot location.

And well, something didn’t work well. Navigation is not working and I have error:
MCU_w007
Navigation unavailable
Navigation maps are not loaded

Tried rebooting already, but didn’t help
So you have dd the bin image to a SD card, and put that card into the MCU and it’s still giving you the same w007 message?

@Telectroboy2 did it that way and it worked, mayby be can give us some pointers on this method?

I haven’t got to the SDcard swap yet, I’ll report back my experience when I get there.
 
Hi Gtech, I am trying to get a 32GB SD card to be formatted using a Raspberry Pi.

The SD card is 29.18 GB FAT32 formatted in windows, I then tried to use the nav-sdcard-format.sh script in the raspberry pi with no luck.

Below is the steps and info, please kindly let me know what I am doing wrong?

1. Downloaded the nav-sdcard-format.sh on an win PC from the link given by lukylcuk. It downloaded as nav-sdcard-format.sh.txt
2. Removed the .txt extension in window and copied it to a USB drive.
3. Inserted the USB drive to the Pi, and copied it to the home/Pi directory
4. On the Pi using the GUI interface found the nav-sdcard-format.sh file and set it to be executable by everyone in the properties menu.
5. Opened the terminal and checked that I am in the home/Pi directory using the pwd command.
6. Using the ls command to check the file is in that directory.
7. Using the ls nav-sdcard-format.sh -l command to check the file is executable.
8. Using the sudo fdisk -l command to find the list of drive on the Pi.
9. the list is showing Disk /dev/sda: 29.8 Gib .... so I take it the SD card's location is /dev/sda

10. Using the ./nav-sdcard-format.sh /dev/sda to run the script, but I get the error bash: ./nav-sdcard-format.sh: /bin/bash^m: bad interpreter: no such file or directory.

11. I also tried ./nav-sdcard-format.sh -f /dev/sda but I still get the same error.

Any pointer would be really appropriated.
This error is caused by a text program on Windows corrupting the file (Windows uses an incompatible format for line endings).

You can fix this with
Code:
sed -i 's/\r//' nav-sdcard-format.sh
or by downloading it again without viewing it on the Windows PC, or downloading it on the Pi instead.

Code:
chmod +x nav-sdcard-format.sh
will make it executable, and
Code:
lsblk
is another command that will list the storage devices on the computer.
 
Last edited:
  • Like
Reactions: unihappytime
So you have dd the bin image to a SD card, and put that card into the MCU and it’s still giving you the same w007 message?

Yep. I'm guessing it's one of these options:
- SD card isn't properly placed. Then again I didn't check if there is different error code for this. Does anyone know?
- SD card got corrupted somehow with failed attempts to partition it with the bash script
- This is something different, which seems unlikely

I sent a request to nearest Service Center to try OTA repartitioning and explained that I have new SD card installed. We'll see how it goes, but I would be surprised if I get answer from there before next weeks weekend.
 
Here is a good copy of the formatting script: nav-sdcard-format.sh
  1. To avoid any issues, right-click on the "Raw" button or this link, and choose "Save link as"
  2. It needs to run as root, typically sudo ./nav-sdcard-format.sh ...
  3. It does not matter how the microSD card is already formatted, it replaces the partition table and partitions.
  4. Interestingly, it has some commands that expect the car's Tegra computer environment so you may see a few harmless error messages. It creates two ext4 partitions but I assume the car will replace one with squashfs when it downloads the maps.

I have not modified the script, but if you are running it on your own (non-car) computer you may want to clean up leftover files with: rmdir /opt/navig{on,off}
 
Last edited:
This error is caused by a text program on Windows corrupting the file (Windows uses an incompatible format for line endings).

You can fix this with
Code:
sed -i 's/\r//' nav-sdcard-format.sh
or by downloading it again without viewing it on the Windows PC, or downloading it on the Pi instead.

Code:
chmod +x nav-sdcard-format.sh
will make it executable, and
Code:
lsblk
is another command that will list the storage devices on the computer.
Thanks for the info. I learnt something new today!
I did open the file in windows to check the content was correct, but i closed it without saving it.
I guess this will also update the formatting to Win style.


For my fix I sued the notepad++ in windows to replace the wrong formatting with the correct one, then I transferred the file over to the Pi without opening it.

I guess if you don't open the file then it should work without problem.
Anyway here is the correct file format I used with success.
I suggest anyone using it they don't open it in a windows environment. or use notepad++ if you really want to read it in Windows.
 

Attachments

  • nav-sdcard-format.zip
    1.8 KB · Views: 91
Yep. I'm guessing it's one of these options:
- SD card isn't properly placed. Then again I didn't check if there is different error code for this. Does anyone know?
- SD card got corrupted somehow with failed attempts to partition it with the bash script
- This is something different, which seems unlikely

I sent a request to nearest Service Center to try OTA repartitioning and explained that I have new SD card installed. We'll see how it goes, but I would be surprised if I get answer from there before next weeks weekend.
If your SD card is formatted, I suggest that you zero out the drive before DD the image to it. This way it will get rid of all info including partition and formatting data.

I sued this free program to zero out my SD card before I did anything:


Good luck with getting help from your local service centre!
 
Here is a good copy of the formatting script: nav-sdcard-format.sh
  1. To avoid any issues, right-click on the "Raw" button or this link, and choose "Save link as"
  2. It needs to run as root, typically sudo ./nav-sdcard-format.sh ...
  3. It does not matter how the microSD card is already formatted, it replaces the partition table and partitions.
  4. Interestingly, it has some commands that expect the car's Tegra computer environment so you may see a few harmless error messages. It creates two ext4 partitions but I assume the car will replace one with squashfs when it downloads the maps.

I have not modified the script, but if you are running it on your own (non-car) computer you may want to clean up leftover files with: rmdir /opt/navig{on,off}
Interesting, I just left the card formatted as is within the Pi environment, I hope it will still work.

By the way, do you know how we can trigger this script to run with the car's MCU (Tegra environment?) If we can do that, maybe we can try rescuing the OEM SD card first, before taking things apart and putting new cards in.

By the way, thanks for the correct file, i hope it will help even more people out!
 
Interesting, I just left the card formatted as is within the Pi environment, I hope it will still work.

By the way, do you know how we can trigger this script to run with the car's MCU (Tegra environment?) If we can do that, maybe we can try rescuing the OEM SD card first, before taking things apart and putting new cards in.

By the way, thanks for the correct file, i hope it will help even more people out!
As far as I know, getting access to run the script from the car itself requires rooting the MCU1 CID which is typically much more physically involved than replacing the SD card.