E5885 커스텀 펌웨어 올리기
E5885 커스텀 펌웨어 글을 찾아보면 많은 듯 많지 않다.
대략 정리를 해보면,
한국 커뮤니티 안에서는 클리앙의 따끈따끈 님이 가장 활발하신 것 같다. 이런저런 시도도 많이 해보시고, 그걸 또 공유까지 열심히..
자잘한 글도 많이 남기셨지만,
화웨이 모바일 LTE 라우터 E5885의 펌웨어 교체하기 1편 - S/W 준비
화웨이 모바일 LTE 라우터 E5885의 펌웨어 교체하기 2편 - H/W 준비
화웨이 모바일 LTE 라우터 E5885의 펌웨어 교체하기 3편 - 펌웨어 올리기
요 3개 글에 정말 많은 내용이 있다.
영문 자료로는 화웨이 LTE 라우터의 커스텀 펌웨어 관련된 전반적인 내용이 있는 git
- https://github.com/Huawei-LTE-routers-mods
하지만 너무 불친절해..ㅠㅠ 결과적으로 얻을 수 있는 정보가 거의 없음..
그 외엔 영문 자료 조차도 거의 없다. 대부분 러시아 사이트의 한 포럼에 대부분의 내용이 있는 것 같다.
https://4pda.ru/forum/index.php?showtopic=842340
구글 번역기의 힘을 빌리면 얼추 읽을만 하다.
파일을 다운받으려면 회원가입을 해야하는데, 회원가입/로그인/비밀번호 찾기 시마다 러시아어로 숫자를 써두고 맞추라는 무시무시한 캡챠가 있다... 숫자는 4자리 숫자인데, 운 좋으면 그림 맞추기로 성공할 수 있지만, 날림체에다가 줄바꿈이 엉망이라 러시아어를 아는 친구도 읽기가 어렵다고...ㅠㅠ
펌웨어 작업을 시도하기 전 사전조사 차원에서 여러번 검색해봤는데, 검색 할때마다 필요한 내용을 바로바로 찾기가 어려워서 다시 정리를 해봄.
1. 부트모드 진입 작업
가장 진입 장벽이 높은 작업인 것 같다.
부트모드로 진입하기 위해 케이스에 가려진 부분을 쇼트시켜야하는데, 분해가 만만치 않다...
분해를 하지 않고 구멍을 뚫는 방법이 있으며 이 역시 클리앙의 따끈따끈님이 잘 정리해서 올려주셨다
전원이 꺼진 상태에서 usb 연결을 하면 자동으로 전원이 켜지는데, 제대로 쇼트된 상태라면 켜지지만 화면에 아무것도 뜨지 않는다.
너무 오래 하고 있으면 또 다른 모드로 진입한다고 본 것 같으니 5~10초 후에 떼도록.
2. 펌웨어 다운로드 환경 구축
Mac 에선 드라이버가 없어서 인식이 안되는 것 같고, Windows 에서는 드라이버를 깔아주면 되는 것 같지만..
그냥 속편하게 가상머신을 쓰는게 나은 것 같다.
위 따끈따끈 님의 강좌에서는 VMWare를 썼지만, 난 VirtualBox 를 사용하였음.
VirtualBox 를 설치하고, Extension Pack 까지 추가해준다.
우분투는 알아서 설치하자. desktop image 말고 gui가 없는 server install image 를 설치해도 됨.
이 후 vm 설정에서 usb 관련 옵션을 수정해준다.
클리앙 강좌에서는 레지스트리 추가에 해당하는 내용일 것 같은데, 특정 USB를 바로 가상머신에 연결하게 하는 설정이다.
이름을 비롯한 나머지 값은 중요하지 않고 제조사 ID(VID), 제품 ID(PID) 가 중요함. 혹시 모르니 리비전(REV) 정도는 넣어둬도 되고.
첫번째 부트 모드에 들어갔을때는 VID: 12d1 PID: 1443 REV: 0001
펌웨어 플래싱 전 부트로더를 올린 후에 생기는 건 VID: 12d1 PID: 1c05 REV: 0102
아무 이름으로 둘 다 추가해주도록 하자.
이 설정을 하지 않고 일단 연결한 다음 가상머신 설정에서 물려줘도 된다. 클리앙 글에서는 문제가 생길 수도 있다는 것 같던데.. 난 괜찮은 것 같았음.
우분투 내에서는 필요한 프로그램을 빌드하는 정도만 하면 끝
sudo apt install git make gcc zlib1g-dev
git clone https://github.com/forth32/balong-usbdload
cd balong-usbdload; make;
git clone https://github.com/forth32/balongflash
cd balongflash; make;
3. NVRAM 백업
펌웨어와 NVRAM을 백업할 수 있다.
NVRAM의 경우 IMEI나 시리얼 같은 정보와 함께 기기마다 다 다른 radio calibration 값이 들어 있으니 꼭 백업을 권장하였음.
혹시나 날려먹으면 다른 사람의 값을 덮어 씌울 순 있지만, 기기마다 다르기 때문에 이전과 같은 퍼포먼스가 안나올 수 있다고 한다.
Huawei E5885 current firmware backup manual. 이 gist 를 참고하면 된다.
busybox 를 넣어주는 usb로더를 한번 로드해주면, E5885에 telnet으로 접속이 가능해져서 sdcard에 관련 자료를 백업하는 방식.
4. 커스텀 펌웨어 구하기
직접 커펌을 만들어보고 싶어서 한참을 뒤져봤는데.... 잘 모르겠다... 왠지 자존심 상해...
애초에 "커스텀 펌웨어"가 왜 필요한지도 잘 모르겠다..
위 백업에 사용했던 방법처럼 라우터 쉘에서 이것저것 수정하는 방법으로도 이것저것 가능한 것 같은데...
뭐는 할려면 커스텀 펌웨어를 올려야된다는 말도 있고, 이미 너무 많은 시간을 투자해서 그냥 커펌을 올리기로 결정.
포럼을 다 읽어보니, 문제가 되는 펌웨어도 있고.. 커펌도 새로운 버전들이 계속 나오는 것 같다.
몇개 되지도 않지만, 내가 고른건 bay3255 란 사용자가 배포한 펌웨어.
현 시점(20년 6월 30일)에서는 20년 5월 22일에 배포한
E5885Ls-93a_UPDATE_21.191.69.00.00.baymod.v8.fw 펌웨어가 최신이다.
위에서 말했듯이 파일을 다운받기 위해선 러시아 숫자를 뚫고 회원가입이 필요함...
5. 펌웨어 플래싱
여기까지 왔다면 어려울게 없다. NVRAM 백업 했던 것에 이어 한발짝 더 나아갈 뿐...
cd balong-usbdload
sudo ./balong-usbdload -p /dev/ttyUSB0 -c usblsafe-e5885.bin
잠시 기다리면 화면에 다운로드 표시가 나오고 /dev/ttyUSB1 장치가 잡힌다.
cd ..
sudo ./balongflash/balong_flash -p /dev/ttyUSB1 ./E5885Ls-93a_UPDATE_21.182.63.00.148_WEBUI_21.100.37.00.148_NE5.ZIP
이 커펌이 부팅화면을 바꿔버려서 화웨이 로고 대신 'Wake up, Neo...' 라고 나온다.
그냥 강좌대로 잠시 기다렸다가 재부팅!
WPS 버튼을 3초정도? 눌렀다 떼면 히든 메뉴가 나온다.
신기하게 원래 나오던 한글들도 여전히 잘 나옴...
Fix TTL 을 설정한 후 패킷 캡쳐해보니 잘 된다. ㅎㅎㅎ
내일은 OpenVPN 연결 해봐야지...