Originally Posted by Czarniutki
Leighm0 Is there any way that you can share how you add the updated maps to the unit?
I have iGo navigation with latest maps for Middle East (same RJ4 unit) that I could use to extract the maps from it to update the Uconnect.
You need a few things, and technical knowledge is a must:
1. A patched "NaviServer" executable done with IDA Pro to accept licenses from other iGO devices.
2. The latest Update ISO you currently have running on your car.
3. A Patched Update ISO File modified/setup to run a custom LUA script instead of the upgrades. (I used the 14.25.5 RA3 disk, because it is small). Another thread on this site explains how to patch it.
4. Copy of the iGO Navigation Map files and most importantly a working iGO Navigation License file (.LYC) for those maps. Only take a copy of the building, dem, map, phoneme, poi and speedcam folders. DON'T include any vr, skins, car, global_cfg or other folders in the "content" folder.
Method of attack:
1. Patch an update ISO to run only your custom LUA script and then reboot, this info can be found on this forum.. I get mine to mount the filesystem as read/write and then run custom.lua from the USB stick.
2. Using this custom.lua script you should firstly do a bit of copying of files from your uConnect. You need to grab a copy of /bin/NaviServer file to patch it, best to try copy this off while the uConnect is running in Normal Mode not Update Mode so you will need to patch "/fs/mmc0/app/bin/nav.sh" (or boot.sh if it is there still, newer firmware moved this file to /bin instead which is read-only) to run another LUA script from USB on Normal Boot to copy this file off the uConnect to your USB stick (or alternatively hack SSH to run and copy it out that way over Wifi/ethernet USB dongle using WinSCP).
3. Patch the copied off NaviServer to accept licenses from other devices using IDA Pro - I believe the function you look for has some plain text about "license is not valid for this device", you need to modify the check and accept any license for any device. Rename the patched version to NaviServer2 for example and copy it to your USB stick root directory.
4. Open up your current Update ISO that is the version used in your vehicle and copy off the "nav.sh" and "navRestart.sh" files from the "\usr\share\MMC_IFS_EXTENSION\bin" directory to your computer.
5. Modify these two files in Notepad to run your NaviServer2 instead of NaviServer... Just find where it says NaviServer and just change it to say NaviServer2 in each location. Copy these files to your USB stick root directory.
6. Copy your iGO Navigation Maps and Licenses and put them in their respective directories on your USB stick and put the LYC license files on the USB root directory. The iGO Navigation files should be in sub-directories like they are in your iGO MicroSD Card (under "content" folder).
7. Now create a new "custom.lua" LUA script to run during the modified update ISO to copy from your USB root directory the "nav.sh" "navRestart.sh" and "NaviServer2" files to "/fs/mmc0/app/bin" location on the uConnect. You will also need this script to copy your iGO Navigation "content" folder to "/fs/mmc0/nav/NNG/content" location. The License LYC files need to be copied from your USB root directory to "/fs/mmc0/nav/NNG/license/" location on the uConnect.
8. Now on your custom made USB stick you should have all the files:
- Your patched Update ISO (swdl.iso) file to run custom scripts during upgrade mode and reboot.
- Your patched nav.sh, navRestart.sh and NaviServer2 files.
- Your iGO Navigation "content" folder and your .LYC file(s).
- Your custom.lua script configured to copy files during upgrade to the right locations.
9. Double-check you have all files on the USB stick and your custom LUA script is setup to copy these files to their correct locations on the uConnect.
10. Run the update USB stick in your car.
11. Reboot and check it has now got your new maps running - best way to check is look for 3d building objects, fixed speedcams which were not shown in your old maps, POIs, and any roads which may be missing which could/should be in the latest maps you uploaded.