Із заводу і по VIN коду мультимедіа система APIM йшла із версією Sync 3.0, хоч і все працювало, вирішив оновити до версії 3.4.
Пакети оновлень складають із себе gz (зжимання) + tar (об`єднання в один файл) архів, в якому крім корисних файлів лежить цифровий підпис корисних фалів Version.der (якщо контрольна сума не співпадає, то інсталяція не почнеться), но щоб поставити, наприклад, відеоплеєр від fmods, треба фізичн підключення до eMMC і напряму змінюють файли після монтування файлової системи. Також є різні апаратні версії з різним обсягом оперативки (1 Гб без навігації, 2 Гб з навігацією) і розміром накопичувача (Америка: 8 Гб без навігації, 32 Гб з навігацією; Європа: 16 гб без навігації, 64 гб з навігацією).
Оновлюємо версію
Виймаємо усі флешки із хабів! Форматуємо флешку у формат exFAT. Завантажуємо пакет Reformat. Контент autoinstall.lst
[SYNCGen3.0_ALL] Item1 = 1U5T-14G386-CB - SyncMyRide\1U5T-14G386-CB.tar.gz Open1 = SyncMyRide\1U5T-14G386-CB.tar.gz Options = AutoInstall
Після виконнаня SH скрипта APIM вантажиться із реформата, де IFS ядро ОС, а MLO попередній завантажувач (IPL).
update_boot -t -i /tmp/QNX-IFS-REFORMAT -m /tmp/MLO
Після завантаження із реформата система очікує флешку із новими даними. Файли завантажив з дзеркала від Balmix, но краще напряму з серверів Ford через Syn3 Updater від CyanLabs. При вставленні флешки виконувати команди із файлу reformat.lst, файли для версії 3.4.19200 без навігації (голосовий пакет включає і Європейські мови).
APPS=5U5T-14G381-CD.TAR.GZ VOICE=5U5T-14G391-AB.tar.gz GRACENOTES=4U5T-14G423-AA.tar.gz
На 1 етапі відбувається перерозмітка eMMC, і далі розпакування і виконання файлів. На цьомі етапі відбувається заміна ядра QNX (файл QNX-IFS) і попереднього завантажувача (MLO) – в ньому відбувається ініціалізація HW. А також розпакуання і монтування розділу із основною аплікацією apps.img.
На 2 етапі розпакування і монтування розділу voice_new.img із голосовими підказками.
На 3 етапі розпакування розділу Gracenotes який містить фото обкладинок альбомів. gracenotes_new.img.
І тут нас чекає червоний екран помилки. Детального пояснення немає.
Скоріш за все не вистарчило пам’яті на диску (у US варіанті без навігації тільки 8 Гб флеш памяті, розділ /fs/images/ розмічений тільки 3 Гб, а ці 3 файли займають 4,57 Гб):
Викидаємо з reformat.lst граценоти і починаємо оновленно заново (версія 3.4.19200):
APPS=5U5T-14G381-CD.TAR.GZ VOICE=5U5T-14G391-AB.tar.gz // AK
Для 3.4.21098 (голосові підказки і розпізнавання мов країн Європи):
APPS=5U5T-14G381-ES.tar.gz VOICE=5U5T-14G391-AN.tar.gz
Для 3.4.21194 (EU)
APPS=5U5T-14G381-ET.tar.gz VOICE=5U5T-14G391-AP.tar.gz
Для 3.4.22048
APPS=5U5T-14G381-EX.tar.gz VOICE=5U5T-14G391-AR.tar.gz // EU VOICE=5U5T-14G391-CP.tar.gz // US+CA
Система успішно встановилася і реформатер змінив завантаження на оновлену систему.
Оновлена версія (у версіях новіших 3.4.19200 вимкнули запуск (список блокований пакетів у /etc/Ivsu_Revoke.txt) реворматора, тому для запуску потрібно downgrade через автоінстал до версії 19200, запуск реформатера, інсталяція нової версія).
Багів із відтворенням флешок, роботи кондиціонера не помічено. Блютуз є інколи залипання розмови.
Єдине що у MP3 файлаях якщо у ID3 тегах виконавці не у UTF8 то виводить крякозабри.
Фінальна версія. Нічний режим.
Так виглядала версія 3.0 денна тема.
Файл калібровки: HB5T-14G375-BA, стратегія HB5T-14G374-CA. AS Built через FORScan:
Рекомендовано залити калібровки MY18.5 (!!! уточнити з VIN для Kuga)
GB5T-14G376-AA.VBF - Flash Driver - SBL - Bootloader 1U5T-14G374-DA.VBF - прошивка модуля 1U5T-14G375-AA.VBF - APIM ECU Calibration Data #1 Number (DID F124) GB5T-14G379-AA.VBF - SYNC Calibration File JB5T-14G379-BA.VBF - SYNC Calibration File
Характеристики мого модуля: eMMC 8GB, таблиця монтування для 3.0.19200:
/fs/tmpfs/ total=128M available=126M /fs/Nuance/ total=1.3G available=5.4M /fs/rwdata/ total=1024M available=672M /fs/mp/ total=1024M available=172M /fs/images/ total=4.2G available=2.7G
Для версії 3.4.19200, 3.4.21098:
/fs/Nuance/ total=1.9G available=97M /fs/rwdata/ total=1.2G available=1021M /fs/rwdata/quip/ total=35M available=35M /fs/rwdata/quip/ total=90M available=90M /fs/mp/ total=1.4G available=144M /fs/images/ total=3.0G available=956M
Для входу в сервісне меню затискаємо кнопки “перемотка вперед” і “вийняти диск”.
Трохи реверсу прошивки
Розпаковуємо *.img і конвертуємо у *.vdi
"c:\Program Files\Oracle\VirtualBox\VBoxManage.exe" convertfromraw -format VDI apps.img apps.vdi "c:\Program Files\Oracle\VirtualBox\VBoxManage.exe" convertfromraw -format VDI voice_new.img voice_new.vdi
щоб можна було підмонтувати у VirtualBox (QNX SDP 6.5.0).
mount -r -t qnx6 /dev/hd0 /fs/mp mount -v -t dos /dev/hd10 /fs/ram/flash cp -R -L /fs/mp/* /fs/hd10-dos-1/
Інтерфейс навігації HMI побулований на Qt5, інттерфейс, навігація, вивід відео з камер, робота із CAN шиною, все рознесено у окремі аплікації (переключення відбувається моментально).
Є певний перелік дозволених хабів /etc/allowed_hubs.xml: Версія 3.0.20204
Версія 3.4.22048
vid="0x2996" pid="0x0118" description="MY17MCM" vid="0x2996" pid="0x0119" description="MY17MCM (1+1)" vid="0x2996" pid="0x011A" description="MY17MCM (1+SD)" vid="0x2996" pid="0x0146" description="MY21MCM (1+1)" vid="0x042f" pid="0x0501" description="Molex 2USB Hub" vid="0x042f" pid="0x0502" description="Molex Embedded Hub" vid="0x042f" pid="0x0503" description="Molex 1+1 Hub" vid="0x042f" pid="0x0600" description="Carplay port"
І carplay_allowed_hubs.xml
У бінарнику (ELF формат) /app/VS_CANShadow знаходимо перелік заголовків (повний перелік), які обробляє прошивка, найбільш цікаві:
Vehicle_Status_Msg 0x109 - передача, обороти, швидкість авто EFP_Button_Press 0x2A0 - натиснуті кнопки медіа Tire_Pressure_Status 0x3B4 Tire_Pressure_Data HS3_0x3B5 Tire_Temp_Data_HS3 0x3BB Personality_IPMB_Data_HS3 0x3EE - запит на вивід відео Battery_Mgmt_2 0x42C
На форумі знайдено пакет запиту відео (можна виводити на швидкості до 10 км/год, дані беруться із пекету із ID 109 aa bb cc dd ee ff gg hh [aa bb – RPM, cc – gear, dd ee ff – speed, gg – inginition]): запит виводу відео:
3EE 00 08 08 1B 80 00 00 00
Відміна виводу:
3EE 00 00 08 1B 80 00 00 00
Українізація Sync 3 Ford
Офіційний дилер обіцяє з року в рік український інтерфейс навігаційної системи.
При редагування As-Build при заміні Country Code із US на UP (Ukraine), не RS! Довідник по значенях від CyanLabs.
7D0-02-01: XXXX-####-#### 5550 == UP
Історія оновлення із сайту 3,0
Завантажуємо оновлення 3.0.21 (3.0.19205) JR3T-14G381-AS на сайті https://help.ford.com/update-sync/. v3.0.20204 JR3T-14G381-AX
SYNC3_2320196155_Update.zip SHA1 0E1C547E4AD13C45B81DB8E19FF61FCE380B9D97 MD5 de74dd16d4304a01c12a32552b64c21c - коректний SYNC3_2320196155_Update.zip SHA1 4F60E6F844A90C4A6CB3885848F0BBDD3E865024 - битий JR3T-14G381-AS.zip SHA1 7C3A305A409178903A45C2C737E1BB01C2F34362 - битий
Виявилося що з офіційного сайту приходять биті файли. Не потрібно шукати іншого архіватора, деякі архіватори пропускають файл з битими контрольними сумами, і на місці даних будуть нулі. Відповідно при оновленні система не дасть залити такий файл бо буде невірна контрольна сума.
Архіви бінарно відрізняються.
Файли оновленнь:
autoinstall.lst DONTINDX.MSA SyncMyRide\GB5T-14G386-AB.tar.gz SyncMyRide\GB5T-14G386-AB.tar.gz SyncMyRide\GB5T-14G386-SC.tar.gz SyncMyRide\HB5T-14G386-TBB.tar.gz SyncMyRide\HB5T-14G386-THA.tar.gz SyncMyRide\HB5T-14G387-AAB.tar.gz SyncMyRide\JR3T-14G381-AS.tar.gz SyncMyRide\JR3T-14G391-BF.tar.gz SyncMyRide\JR3T-14G423-BB.tar.gz
Файл autoinstall.lst
; SYNC3 Consumer Assembly Upgrade - Release 3.0.25 - Only for NonNav/NonEU assemblies. [SYNCGen3.0_3.0.20204_PRODUCT] Item1 = HB5T-14G386-THB Open1 = SyncMyRide\HB5T-14G386-THB.tar.gz Item2 = HB5T-14G386-TBC Open2 = SyncMyRide\HB5T-14G386-TBC.tar.gz Item3 = GB5T-14G386-SC Open3 = SyncMyRide\GB5T-14G386-SC.tar.gz Options = AutoInstall [SYNCGen3.0_ALL] Item1 = JR3T-14G381-AX Open1 = SyncMyRide\JR3T-14G381-AX.tar.gz Item2 = JR3T-14G423-BB Open2 = SyncMyRide\JR3T-14G423-BB.tar.gz Item3 = GB5T-14G386-AC Open3 = SyncMyRide\GB5T-14G386-AC.tar.gz Options = Delay,Include,Transaction
По файлах:
HB5T-14G386-THB.tar.gz – перевірка поточної версії
HB5T-14G386-TBC.tar.gz – видалення /fs/images/ivsu_* файлів
GB5T-14G386-SC.tar.gz – видалення gracenotes
umount -f /fs/Nuance/gracenotes rm /fs/images/gracenotes.img rm /fs/rwdata/.Version/*-14G423-*
GB5T-14G386-AC.tar.gz – генерування лога
Контент реформат для версії із навігацією.
APPS=5U5T-14G381-EG.TAR.GZ VOICE=5U5T-14G391-DM.tar.gz VOICE_NAV=4U5T-14G422-BCE.tar.gz GRACENOTES=4U5T-14G423-DA.tar.gz MAP=1U5T-14G421-BAG.tar.gz MAP=1U5T-14G421-BBG.tar.gz MAP=1U5T-14G421-BEG.tar.gz MAP=1U5T-14G421-BFG.tar.gz MAP=1U5T-14G421-BGG.tar.gz MAP=1U5T-14G421-BHG.tar.gz SXM/DAB/FM Application Logo=1U5T-14G658-AF.tar.gz
Детальніше про завантаженя процесора, кастомний завантажувач на https://gist.github.com/bigunclemax/7117d6f506200224156e093f7d5a16be.
Висновок: чи варто оновлюватися – якщо вас все задовольняє ні. Я вирішив оновитися бо у версії 3.4 є транслювання підказок навігатора із Android Auto на екран панелі приладів (IPC), но щоб відображалися потрібно у центральні конфігурації BdyCM змінити тим магнітоли (із Bluetooth адаптером страшно це робити).
Юрій Р. ◯ 0009-0005-3702-9223. (2021). Оновлення Sync 3 – APIM. Блог UA ID. Взято з: https://blog.uaid.net.ua/sync-3-apim-update