permalink | title | author_profile |
---|---|---|
/downgrade_fw.html |
Даунгрейд и восстановление прошивки |
true |
{% include toc title="Разделы" %}
Этот гайд для даунгрейда прошивки и для тех, у кого приставка не включается, но цел раздел PRODINFO, либо есть его бекап (атмосфера 0.8.1 и выше бекапит PRODINFO на карту автоматически). Для обновления прошивки воспользуйтесь этой инструкцией!
Это ОЧЕНЬ сложный и комплексный метод. ОБЯЗАТЕЛЬНО сделайте бекап{:target="_blank"} своей текущей прошивки до того, как начнёте выполнение этого метода. ОБЯЗАТЕЛЬНО. {: .notice--danger}
- Включите отображение расширений файлов{:target="_blank"}, если у вас Windows
- Умение запускать пейлоады через Fusée Gelée{:target="_blank"}
- Приставка должна быть полностью заряжена!
- Свежая версия пейлоада {% include inc/hekate.txt %}
- notepad++{:target="_blank"}
- Ключи{:target="_blank"}, одинаковые для всех консолей
- Прошивка 6.1.0:
- Свежая версия ChoiDujour{:target="_blank"}
- Свежая версия memloader{:target="_blank"}
- Свежая версия Etcher{:target="_blank"} качайте версию Portable для вашей платформы (для Windows - exe x86)
- Свежая версия HacDiskMount{:target="_blank"}
Этот пункт нужно делать обязательно! Для продолжения работы нам понадобятся уникальные ключи именно вашей приставки! Без шуток! Вероятность, что что-то пойдёт не так много выше нуля, без бекапа вы ничего не сможете исправить. Ну и обязательно нужен дамп ключей. {: .notice--danger}
- Создайте резервную копию NAND{:target="_blank"} консоли и поместите её в надёжное место
- Установите
.7z
-архив {% include abbr/kefir_addr.txt %}, согласно инструкции в репозитории, если ещё не делали этого
-
Распакуйте
.zip-архив
с ChoiDujour{:target="_blank"} в удобную папку -
Распакуйте
.zip-архив
с ключами в папкуChoiDujour
таким образом, чтобы файлkeys.txt
лежал в той же директории, что иChoiDujour.exe
-
Распакуйте
.zip-архив
с прошивкой 6.1.0 в папкуChoiDujour
таким образом, чтобы папка с прошивкой лежала в той же директории, что иChoiDujour.exe
-
Откройте файлы
keys.txt
иprod.keys
(бекап ваших ключей) с помощью программы notepad++{:target="_blank"}, который у вас получился в ходе выполнения "Части I" -
Скопируйте значение строки "secure_boot_key" из файла
prod.keys
вместоXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
в поле "secure_boot_key" в файлеkeys.txt
-
Скопируйте значение строки "tsec_key" из файла
prod.keys
вместоXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
в поле "tsec_key" в файлеkeys.txt
![]({{ base_path }}/images/screenshots/keys.png) {: .text-center} {: .notice--info}
-
Запустите командную строку в папке
ChoiDujour
(вызовите контекстное меню с зажатой клавишей Shift, нажав на свободное место в папке, и выберите "Открыть Командную строку здесь" или "Открыть окно PowerShell здесь") -
В открывшемся окне наберите:
- Для powershell:
.\ChoiDujour.exe --keyset=keys.txt название_папки-с-прошивкой
- Для командной строки:
ChoiDujour.exe --keyset=keys.txt название-папки_с_прошивкой
- Для powershell:
-
Дождитесь окончания перепаковки. В результате вы получите папку NX-6.1.0
{% capture notice-6 %}
ВНИМАНИЕ!!! Если вы в процессе выполнения руководства увидите диалоговое окно, с предложением отформатировать диск - нажмите отмена!!
![]({{ base_path }}/images/screenshots/format.png) {: .text-center} {% endcapture %}
- Выключите консоль
- Вставьте карту памяти приставки в ПК
- Убедитесь, что включили отображение расширений файлов{:target="_blank"}, если у вас Windows
- Скопируйте содержимое папки
sample
из.zip
-архива с memloader{:target="_blank"} в корень вашей карты памяти - Скопируйте пейлоад
memloader.bin
в папкуbootloader/payloads
- Верните карту памяти обратно в Switch {% include inc/launch-hekate.txt %}
- Перейдите в меню "Payloads"
- Выберите "memloader.bin"
{% include inc/mount_boot.txt
boot="BOOT0"
%}
{% include inc/inject_boot.txt
boot="0"
%}
- Повторите для BOOT1
{% include inc/mount_boot.txt
boot="eMMC"
%}
-
Распакуйте HacDiskMount{:target="_blank"} в удобную папку
-
Запустите
HacDiskMount.exe
от имени администратора -
Выберите "File" -> "Open Physical"
-
Выберите
UMS Linux Disk 0 (29.121GiB)
-
Вы увидите полный список разделов, содержащихся в этом диске
![]({{ base_path }}/images/screenshots/hdm_disk.png) {: .text-center} {: .notice--info}
-
Дважды нажмите на
PRODINFO
-
Откройте файл
prod.keys
, который мы получили при создании дампа ключей в Части I -
В разделе "bis_key_00" есть длинная 64-х символьная последовательность, первые 32 символа - это - "Crypto", последние - "Tweak". В файле с ключами ключи делятся попарно. В каждой паре есть так же ключ с меткой "Crypto" (crypt) и "Tweak" (tweak).
![]({{ base_path }}/images/screenshots/hdm_key_test.png) {: .text-center} {: .notice--info}
-
Скопируйте ключи соответственно их меткам из текстового файла
prod.keys
в окно программы и нажмите кнопку "Test" -
Рядом с кнопкой высветится надпись зелёного цвета (OK! Enthropy: (tested)), то ключ скопирован верно - нажмите кнопку "Save" и закройте окно (не программу!)
- Если после тестирования надпись красная - вы скопировали не верную пару!
-
Повторите ту же самую процедуру для разделов
SAFE
,SYSTEM
иUSER
, прописав им пары "bis_key_01", "bis_key_02" и "bis_key_03" (два последних кюча одинаковые - это нормально) соответственно- Обращайте внимание на результат тестирования и не забывайте нажимать кнопку "Save"
-
Дважды нажмите на
PRODINFO
-
В открывшемся окошке уже будут вбиты ключи. Протестируйте их и удостоверьтесь, что результат зелёный. Закройте окно не сохраняя.
-
Дважды нажмите на
BCPKG2-1-Normal-Main
-
Убедитесь, что поля для ключей пустые. Если это не так, отчистите их
-
В секции "Restore from file" нажмите "Browse"
![]({{ base_path }}/images/screenshots/hdm_bcpkg21-nm.png) {: .text-center} {: .notice--info}
-
Выберите
BCPKG2-1-Normal-Main.bin
, который находится в папкеNX-6.1.0
, которую мы сгенерировали в Части III -
Нажмите кнопку "Start"
-
После окончания загрузки закройте окно (не программу!)
-
Повторите то же самое для
BCPKG2-2-Normal-Sub
,BCPKG2-3-SafeMode-Main
иBCPKG2-4-SafeMode-Sub
- Убедитесь, что прошиваете файлы с названиями, идентичными названиям разделов!
- Не забывайте стирать ключи, если таковые будут
{% include inc/mount.txt
mount="SAFE"
%}
- Если на диске есть файлы - удалите их все!
- После окончания отмонтируйте диск, нажав на кнопку "Unmount" в окне HacDiskMount
{% include inc/mount.txt
mount="SYSTEM"
%}
Пойдя этим путём вы удалите все данные из консоли, включая аккаунты, игры и сохранения. Однако этот путь более безопасный и не приведёт к проблемам в дальнейшем
- Выделите все файлы на диске и удалите их!
Это экспериментальный метод! Он может не сработать при попытке в дальнейшем понизить прошивку!
- Удалите папку "Content"
- Удалите "PRF2SAFE.RCV", если таковой имеется
- Перейдите в папку
save
и удалите файл8000000000000047
- Перейдите в папку
NX-6.1.0
, которую мы сгенерировали в Части III и скопируйте всё содержимое папкиSYSTEM
на смонтированный диск с заменой (объединить на macOS) - После окончания копирования отмонтируйте диск, нажав на кнопку "Unmount" в окне HacDiskMount
{% include inc/mount.txt
mount="USER"
%}
Пойдя этим путём вы удалите все данные из консоли, включая аккаунты, игры и сохранения. Однако этот путь более безопасный и не приведёт к проблемам в дальнейшем
- Выделите все файлы на диске и удалите их!
- Удалите "PRF2SAFE.RCV", если таковой имеется
- Перейдите в папку
NX-6.1.0
, которую мы сгенерировали в Части III и скопируйте всё содержимое папкиUSER
на смонтированный диск с заменой (объединить на macOS) - После окончания копирования отмонтируйте диск, нажав на кнопку "Unmount" в окне HacDiskMount
- Закройте HacDiskMount
- Выключите Switch, зажав кнопку (POWER) на 15 секунд, пока подсветка экрана не отключится
AutoRCM - на консоли специальным образом портится BOOT0, вследствие чего консоль не может загрузиться прямо в систему и загружается автоматически в режим RCM. Достаточно просто включить консоли и она автоматически попадёт в режим восстановления. Не нужно зажимать комбинацию кнопок и использовать замыкатель, но пейлоад для запуска прошивки всё равно передавать нужно! {: .notice--info}
{% include inc/launch-hekate.txt %}
- Перейдите в раздел "Tools" -> "autoRCM" и выберите "Enable AutoRCM", затем нажмите любую кнопку и выберите "Back" для возвращения в главное меню
- Проверьте не сгорели ли после обновления предохранители, выполнив ещё раз Часть III{:target="_blank"}
Теперь приставка всегда при включении будет находится в режиме RCM. Не отключайте AutoRCM, если не хотите сжечь предохранитель. Единственная загрузка консоли вне этого режима гарантированно сожжёт предохранитель!
- Даже один единственный запуск приставки в официальную прошивку не через hekate сожжёт предохранители, которые мы так отчаянно пытались сохранить
- Если после прошивки вам предложат обновить контроллеры - обновляйте
Следующий шаг: Безопасное обновление прошивки
{: .notice--success}