JLR (Jaguar, LandRover / 재규어 랜드로버) 코딩 #1 – 환경 구축
다른 수입차와 비교해 Jaguar 나 Land Rover의 국내 사용자 층이 두텁지 않기 때문에 정보를 얻기 어렵다. 반면 VW(폭스바겐)이나 BMW의 경우 많은 정보가 인터넷에 공개되어 있기 때문에 오너가 쉽게 자동차를 정비하고 튜닝할 수 있다. 오늘 다뤄 볼 주제는 “자동차 코딩”이다. 일반적으로 코딩은 특정 프로그래밍 언어를 이용해 컴퓨터에서 동작하는 프로그램을 만드는 기술을 의미한다.
반면, “자동차 코딩”이란 자동차 제조사가 특정 조건 (대부분 지역적) 때문에 제한한 기능을 사용 가능하게 활성화하거나, 기능 동작 형태를 바꾸는 행위를 말하는데, 해외에서는 Self Programming이나 이와 유사하게 부른다. (즉, 해외 커뮤니티에서 코딩이라고 하면 잘 못 알아듣는다) 많은 사용자를 확보하고 있는 BMW 나 VW는 이 코딩 문화가 발달되어 있는 덕분에 누구나 쉽게 코딩을 할 수 있다.
반면, Jaguar 나 Land Rover는 전 세계적으로 오너가 많지 않고 (상대적으로) 프로그램으로 제어할 수 있는 기능이 많지 않은 것으로 알려져 있다. 즉, 시장성이 떨어진다는 이유로 애프터마켓용 부품이 적고 이러한 이유에서 ‘코딩’ 할 수 있는 도구가 없고, 코딩할 수 있는 기능이 없다 알려져 있다. 그렇다면 Jaguar/Land Rover는 정말 코딩을 얻을 수 있는 것이 없을까?
결론부터 말하자면 “아니다”. 정말 많은 부분의 제한을 풀 수 있고 제어할 수 있다. Jaguar를 대상으로 코딩 / Self-Programming 할 수 있는 방법을 알아보자.
SDD
Jaguar/Land Rover SDD(Symptom Driven Diagnostics, 이하 SDD)를 반드시 알고 넘어가야 한다. 2010년 이후 생산된 Jaguar/Land Rover 차량을 위한 스캔 도구로, 모듈 프로그래밍, 키 프로그래밍 및 상태 점검등 다양한 기능을 갖고 있다. SDD 는 SDD Software 와 SDD Hardware(=VCI) 로 구성되어 있다. SDD 를 사용하려면 이에 맞는 하드웨어가 필요하다. 다운로드 및 업데이트는 무료로 공식 배포 주소는 아래와 같다.
SDD 는 현재 생산중인 대부분의 Jaguar / Land Rover를 지원하고 있지만, 이후 생산되는 모델은 PathFinder만 지원할거라는 뉴스가 있었다. 최근에 판매 시작한 I-Pace는 SDD를 지원하고 있지 않다.
다운로드 후 설치만 하면 끝. TOPIx 의 권고안에 따르면, 신규 설치 시 가장 최신의 파일을 설치하면 되며, 업데이트 패치는 순차적으로 진행하면 된다고 한다. (즉, 01,02,03 패치가 있다면 순서대로 진행해야지 01 다음에 03을 설치하면 안된다 / 어짜피 오류가 발생하며 설치 절차를 진행할 수 없다)
VCI 구입
VCI는 OBD II 진단 커넥터에 연결할 수 있는 동글로 USB 인터페이스로 노트북과 연결된다. J2534 프로토콜을 사용해 Jaguar/Land Rover와 통신한다. 인터넷을 검색하면 VCI/VCM/Mongoose 등 다수의 제품을 찾을 수 있다. 주의해야 할 것은 Aliexpress 나 eBay 등에서 판매하는 ‘카피’의 구입이다. 단순한 점검이라면 상관없지만, 모듈 프로그래밍은 긴 시간 동안 안정적인 동작을 필요로 한다. (예를 들어 InControl Touch Pro는 앞 모듈만 작업하는데 2시간 30분, 뒤는 3시간 30분이 소요된다) Jaguar Forum을 살펴보면 복제품으로 모듈이 망가지는 일명 “Brick” 되는 문제를 겪은 사례가 꽤 된다. 모듈에 따라 다르지만 수백만 원이 깨질 수 있기 때문에 주의를 요한다.
VCI/VCM 은 $1,000이 넘는 고가 이기 때문에 개인이 구입하기 쉽지 않다. 대안으로 DrewTech사의 “Mongoose Pro”가 있다. $500 수준으로 1/2의 가격으로 기능은 똑같으며, Firmware를 바꾸면 대응 차종이 바뀌기 때문에 범용성이 있다 (특정 차종 한정) 필자는 Ford/Mazda 용 Mongoose Pro를 갖고 있었고, 이를 JLR 용으로 변경해 사용하고 있다.
MongoosePro 도 많은 복제품이 존재한다. 이들은 공통적으로 Online 상태에서 사용하지 말라고 하는데, Firmware를 업데이트할 경우 동글 자체가 문제가 생기기 때문이다. SDD 가 업그레이드될 때마다 기능적 요소가 변화하고 있기 때문에 동글의 상태도 최신의 상태로 유지하는 것이 중요하다. 50만 원을 아끼려다 수백만 원이 날라 갈 수 있다는 점 주의하자.
Laptop(=노트북) 준비
최신 사양보다 안정적인 환경의 노트북이 필요하다. Intel Core I5-2520M 2.5 GHz 프로세스 이상, 4GB의 메모리 그리고 320GB의 저장장치가 필요하다. SDD는 최신 운영체제가 아닌 Windows 7 32Bit에서만 실행할 수 있다. TOPIx에서 판매중인 딜러용 패키지 구성을 살펴봐도 Panasonic의 터프북을 제공하고 있으며, 사양은 별반 차이가 없다.
경험적으로 CPU 및 I/O Controller Hub(ICH)는 ‘반드시’ Intel 제품을 사용하는 것이 좋다. AMD 계열 CPU 또는 USB Controller 가 Intel 이 아닌 경우 호환성 문제가 언급되고 있기 때문이다.
32Bit 운영체제 이기 때문에 4GB를 초과하는 메모리는 필요하지 않으며, 저장 장소는 ‘최소’ 200GB는 확보되어야 한다. 단, Calibration Files를 Online으로 받거나, NGI를 사용하지 않는 경우 30GB만 있어도 무관하다.
이런 사양의 노트북을 구할 수 없다면 VMWare으로 가상화하면 된다. 삼성 노트북에 Windows 7을 직접 설치(=Native)해 사용해 봤지만 모듈 프로그래밍에 실패한 경험이 있는데, 아이러니하게도 VMWare의 Windows 7(=Virtualization)에서는 문제가 없었다.
오히려 최신 노트북으로 사용하고, USB-PD를 지원하는 파워뱅크를 사용한다면 편하고 안정적으로 사용할 수 있을 거라 생각한다. 필자는 CHUWI Minibook에 VMWare를 설치한 형태로 사용하고 있다.
대부분의 모듈 프로그래밍이 긴 시간을 필요로 하기 때문에 보조 전원은 필수라는거! 잊지 말자.
자동차 배터리 충전기
모듈 프로그래밍은 자동차 시동이 꺼진 상태에서 진행된다. TOPIx 메뉴얼에 따르면 전압은 꾸준히 12.5V 이상 유지 할 것을 필수로 하고 있다. 프로그래밍 중 전원이 부족해 멈춘다면 치명적인 손상으로 이어져 복구가 불가능할 수 있는 경우가 있기 때문이다. 기본적으로 상태 좋은 자동차 배터리는 외부 손실이 없는 경우 4시간 가까이 전압 유지가 가능하며 프로그래밍이 가능하다고 한다.
필자도, Cluster의 소프트웨어 업그레이드시 순수 자동차 배터리 만으로 진행해 본 적이 있다. 업데이트에 소요된 시간은 약 2시간 정도 였고, 이후 배터리가 부족하다는 경고를 본 적이 있다. 만약 더 오랜 시간이 필요했다면 중간에 멈추는 문제를 경험 했을거라고 생각한다.
배터리 충전기는 Aliexpress에서 쉽게 구할 수 있으며, 본인은 현재 Foxsur사의 충전기를 사용하고 있다. 암페어가 낮지만(=8A) 자동차 배터리가 충전된 상태에서 4시간 정도 흘러도 문제를 경험해 본 적 없다. 가격도 배송비 포함 2만4천원 정도로 저렴한 편.
대용량 캐패시터
프로그래밍시 수차례 키 ON/OFF를 반복하게 된다. OFF를 ON 상태로 바꿀 경우 내가 원하는 모듈만 켜지는게 아니라, 자동차 구성원들 전체에 전원을 공급하게 된다. 시동이 켜져 있지 않기 때문에 배터리에 의존하게 되는데, 순간적으로 다수의 기기에서 전원을 필요로 하므로, 충전기를 사용하고 있어도 배터리 전압 강하는 막을 방법이 없다. 12.5V 전압 유지는 필수 조건이며, 전압 강하 시 더이상 진행할 수 없는데, 대용량 캐패시터는 순간적인 상황에서 전압 강하를 막아준다. 캐패시터가 갖고 있는 전류를 배터리로 흘려 보내기 때문인데, 캐패시터가 완충된 상태라면 이런 문제를 해결 할 수 있다.
필자는 LS엠트론의 제품을 사용하고 있고 나름 합리적인 가격에 만족스러운 성능을 보여준다. 꼭 모듈 프로그래밍 뿐만 아니라, ISG에서 재시동 할 때도 도움을 주는. 밥값은 충분히 한다. (너무 고가의 제품을 살 필요는 절 대 없음!)
이외 준비물
일부 모듈 프로그래밍은 USB 메모리를 필요로 하는 경우가 있다. 하나 쯤 준비해 두면 좋은데, Kingston DataTraveler 100 G3 시리즈를 추천한다. SDD 의 사전 점검 절차에서 호환성 문제가 없다고 나오기 때문. 용량은 “반드시” 32GB 여야 하고, FAT32 로 포멧 되어 있어야 한다.
같은 규격(USB 3.0 / 32G )의 Sandisk 메모리 스틱등은 호환성에서 오류가 발생하는 경우가 있었기 때문에 주의하자.
캘리브레이션 파일을 받지 않았다면 반드시 인터넷 연결이 필요 한데, Wi-Fi 동글을 사용하거나, 휴대폰 테더링을 하면 된다. 단 용량이 만만치 않으므로, 미리 받아 놓을 것을 권장한다. (이는 #2 SDD 기본 환경 구성에 설명할 예정)
모든 준비가 끝났다. 이제 SDD를 실행해 보자.