r1 이라는 AI 비서가 등장했다해서 궁금하여 24년 4월에 구매를 진행, 6월부터 배송이 시작되어 7월에 전달받게 되었다.
- 해당 디바이스 정보 참고:
해당 디바이스의 AI 기능이 궁금하였지만, 해당 기기도 안드로이드가 설치되지 않을까 궁금하여 안드로이드 설치가 될까 궁금하여 직접 설치하여 진행해보았다.
- r1 내 Android 설치 참고:
하지만 필자 본인이 진행을 잘못했는지 설치를 잘못하는 바람에 벽돌 (...) 상태로 만들어버렸다. fastboot 와 커스텀 부트로더가 설치가 되는데, 이때 제대로 된 설치가 되지 않았으나 본인이 기본모드로 재부팅되는 바람에 벽돌로 만든 것으로 판단하였다. 때문에 기기를 구매했겠다, 그래도 재대로 사용해보기 위해 다시 복구해보기로 하였다.
- 해당 디바이스 시스템 업데이트 프로그램:
해당 글 내 존재하는 system.img 파일이 있어 해당 파일은 안드로이드 파일로 판단되어 본인은 Read me.md 파일을 보고 링크를 다시 찾았다. 본 프로그램의 사용 방법 및 진행 사항은 다음과 같다.
1. OEM Unlocking 활성화 2. Bootloader Unlock - 시스템 내 유저 데이터 모두 삭제됨. 3. AVB 비활성화 4. GMS 와 함께 AOSP-13 시스템으로 초기화됨. (아마 안드로이드 유저디버깅 모드로 설치되는 것으로 보임) 5. Rabbit Hole 탈출 (루팅..? 되는 것으로 보임) 윈도우 설치 법: 1. 해당 기기 접근을 위해 adb 및 fastboot 드라이버가 요구됨. 설치 링크: - **Google**: https://developer.android.com/studio/run/win-usb - **XDA**: https://xdaforums.com/t/official-tool-windows-adb-fastboot-and-drivers-15-seconds-adb-installer-v1-4-3.2588979/ - **Koush**: https://adb.clockworkmod.com 2. 해당 기기의 통신 및 드라이버 로드를 위핸 'MediaTeck Preloader USB VCOM' 드라이버가 요구됨. 설치 링크: - **Hovatek**: https://www.hovatek.com/forum/thread-16640.html - **Teracube**: https://downloads.myteracube.com/Drivers/MediaTek_Preloader_USB_VCOM_Drivers_Setup_Signed.zip - **Some random Mediafire source that worked for me**: https://www.mediafire.com/file/uoko5a2gnn8vwtc/MT65XX-Preloader-drivers.rar 3. 현재 프로세스 진행은 r1의 복구 목적이므로 r1의 system.img, vendor.img, boot.img 파일을 다운로드 진행함. - 원본 URL: (2025년 1월 현재 해당 페이지가 죽어 접근이 불가함.) - 웹 아카이브에 남아있는 데이터: https://web.archive.org/web/20240531231733/https://firmburrow.rabbitu.de/rabbitude/dumps/src/commit/a966826ff9d5236d05f1eeae456dae70e2a4ffbc (본 페이지에서 system.img 파일 다운로드가 가능함.) 3번에 해당하는 파일에 대한 접근이 불가한 경우 다음 링크 참고. - Rabbit r1 All Images rabbit r1 .img files: https://nas.kaiht.kr/share/wtknIvP6 - Rabbit r1 Part Images rabbit r1 system.img: https://nas.kaiht.kr/share/CzAkzNQ9 rabbit r1 vendor.img: https://nas.kaiht.kr/share/NCRj3QZD rabbit r1 boot.img: https://nas.kaiht.kr/share/1UoQDUx5 - Rabbit r1 vbmeta image rabbit vbmeta.img: https://nas.kaiht.kr/share/RPYwAIB4 (vbmeta.img 의 경우, 복구 시에 사용하지 않지만 혹시 모르니 준비할 것.) 3번에서 다운로드된 파일들은 rabbit r1 escape 폴더 내 풀어준다. (하단 이미지 참고) |
위 작성된 내용을 따라갔다면 복구 준비는 모두 끝난 것이다.
우선 터미널 창을 열어 압축 해제한 rabbit r1 escape 디렉토리 내에서 터미널 (PowerShell) 을 실행시켜, 명령어 Set-ExecutionPolicy unrestricted 을 입력한다. (터미널은 관리자 권한으로 열어 실행해야한다.)
명령 입력 이후 윈도우 설정 내 앱 - 고급 앱 설정 - 앱 실행 별칭 에서 앱 설치 관리자 라고 적혀있으며, 부제로 python.exe, python3.exe 라고 적힌 항목을 비활성화 해준다.
안드로이드 설치는 본 상태에서 진행하면 되나, 해당 글은 r1 의 복구 목적으로 작성되었기에 복구기준에 맞춰작성하겠다.
'r1 escape' 툴 내 작성된 코드를 보면 fastboot 를 이용해 'system.img' 파일만 밀어넣는 것에 대한 확인이 가능하다. 떄문에 해당 방법대로만 진행하게 되면 system.img 파일 이전에 밀어넣는 vbmeta.img 파일로 인하여 초기화 이후 rabbit r1 에서 진행하는 QR코드 인증 단계를 위한 카메라 사용이 불가하여 해당 디바이스의 정상 사용이 불가하다. 그렇기에 추가 파일 - vendor.img 파일과 boot.img 파일이 필요하므로 해당 파일 2개를 본 폴더 내 다운로드 받고 난 이후 코드를 다음과 같이 수정해주어야한다.
- fastboot flash system system.img 파일의 경우, 본인은 테스팅을 위해 주석처리를 하였다. 본래는 같이 설치해주는 것이 맞다.
python -m venv venv
.\venv\Scripts\Activate.ps1
$repoUrl = "https://github.com/AgentFabulous/mtkclient"
$repoName = [System.IO.Path]::GetFileNameWithoutExtension($repoUrl)
git clone $repoUrl
Set-Location -Path $repoName
Read-Host "[*] Power off the device, press ENTER, and then plug the device in"
python mtk r frp frp.bin --serialport
#python mtk r frp frp.bin --serialport COM5
$currentDir = Get-Location
$frpBinPath = Join-Path -Path $currentDir -ChildPath "frp.bin"
$frpBinBytes = [System.IO.File]::ReadAllBytes($frpBinPath)
if ($frpBinBytes[-1] -eq 0x00) {
$frpBinBytes[-1] = 0x01
[System.IO.File]::WriteAllBytes($frpBinPath, $frpBinBytes)
}
Read-Host "[*] Unplug the device, press ENTER, and then plug the device in"
python mtk w frp frp.bin --serialport
Set-Location -Path $PSScriptRoot
Read-Host "[*] Unplug the device, press ENTER, and then plug the device in"
Start-Process -Wait -FilePath python -ArgumentList "mtkbootcmd.py FASTBOOT"
Write-Output "[*] Waiting for fastboot..."
do {
Start-Sleep -Seconds 1
$fastbootDevices = fastboot devices
} while (-not $fastbootDevices)
fastboot flashing unlock
fastboot -w
fastboot flash vbmeta vbmeta.img --disable-verity --disable-verification
fastboot reboot-fastboot
fastboot flash vendor vendor.img
fastboot flash boot boot.img
fastboot flash system system.img
fastboot reboot
최하단 2줄 추가 이후, 수정된 파일을 다른 이름 (본인은 r1_recover) 으로 설정하여 저장한 후, 터미널에 접근하여 실행시켜준다.
해당 코드를 실행시키면 choco 패키지 설치 이후 디바이스의 연결 및 엔터를 요구한다. 전원이 종료된 상태의 r1 을 연결하고 엔터를 입력하면 코드가 진행된다. - 중간에 약 3번 정도 더 요구하니 보고 진행해주자.
진행하고 나서 디바이스를 확인하면 복구가 완료된다.
- 본인은 테스트 진행 중 카메라 드라이버 오류 및 벽돌 현상이 발생하여 해결방법을 찾고있다.
2025년 2월 기준, 신규 포스팅 예정 중입니다.