PoBD

푸조/시트로앵 디젤 OBD 스캐너 앱 개발 이야기

전체 글 138

[[4]] -1 푸조 3008 ECU에서 Pin code(이모빌라이저 코드) 확인 성공!!!

이전글에서 엔진 ECU 뚜껑 분리하고 배선 연결후 K-TAG로 내부 EEPROM data 읽어 오는 작업까지 정리했습니다. 읽어온 파일 4개 중 일부에 Pin code(이모빌라이저 코드)가 있다는 것을 구글링을 통해 알게되었습니다. 참조사례) https://www.digital-kaos.co.uk/forums/showthread.php/668817-Pin-Code-PSA-SID807-PLS 해당 사이트에 씨트로앵 C4 엔진 ECU를 K-TAG로 백업 받은 파일 올려 놓으면 전문가 분이 해당 파일을 분석해 주는것 같습니다. (위 사례의 C4 엔진 ECU가 현재 가지고 있는 3008 ECU와 동일한 SID807로 확인) 다운 받아서 확인해 보면 총 4개의 파일이 있고 확장자가 .EPR, .FLS, .MPC,..

[[4]] 푸조 3008 엔진 ECU 덮개는 어떻게 열어야 할까?(메모리 읽기)

이제 엔진 ECU 덮개를 열고, 내부에 장착된 EEPROM(Flash)값을 읽어 올 차례입니다. 덮개 밀봉상태가 엄청 견고하며, 볼트등... 기계적 결합은 없고 순수하게 접착제로 붙여놓은 상태입니다. 측면과 후면에서 보면 두껑의 여분 활용하여 접는 방식으로 아래 부분과 견고하게 고정하는 구조입니다. ECU 뚜껑은 어떻게 벗겨내야 할까? 구글링해서 찾은 자료는 2가지 방식입니다. 볼트로 덮개를 고정하는 경우 아래 1)번 방식으로 열수 있지만, 3008 ECU처럼 접착제로 붙이는 경우는 2)번 방식을 사용것으로 확인됩니다. 1)https://www.youtube.com/watch?v=WJtB1xfSwZ8 (특별한 도구로 열수 있는 ECU도 있지만) 2)https://www.youtube.com/watch?v..

[[3]] 3008 엔진 ECU 중고 구매 (가지고 놀아보자!)

배송비 포함해서 13만원에 연습용 푸조 중고 ECU 구매했습니다. 2011년식 푸조 3008 1.6 hdi MCP E5, VIN : VF30U9HR8BS009098, 원동기 형식 9H05입니다. 제차량과 비슷한것 같아서 일단 구매해 봤는데, VIN 코드로 차량 확인해보니 중고 판매처 차량 정보와 동일하게 1.6 HDI(DV6C)라고 나오는군요 분해하기전에 VIN 코드 체계에 대해서 좀더 알아봤는데,....아래와 같은 의미가 있다고 합니다. 이상한 것은 VIN 코드중에 "9hr"이 있는데 정비 메뉴얼에는 9HZ만 있습니다.(b3참조) 아마도 업데이트가 안된 복제된 ServiceBox 메뉴얼이라서 그런듯합니다. 그밖에 ServiceBox 메뉴얼에 찾아보면 많은 정보가 있고, 엔진 ECU 교체한 경우 초기화하..

[[2]] 푸조 엔진 ECU EEPROM 추출 : KTAG 처음으로 접하다...

구매후 제일 먼저 확인한 것은 제품 분리해서 보드가 붉은색인지 확인했습니다. 구매 후기를 보니, 카피(?)본 이다 보니 오동작하는 제품이 많다는 의견이 있었고, 가장 신뢰할 만한 제품은 사진처럼 붉은색 PCB(파란색 PCB도 있는것 같습니다.)으로 된것이 안정적인 동작한다고 합니다. 제품과 함께 배송된 CD에서 K-TAG 응용 SW 설치하면 아래와 같이 사용 가능한 메뉴와... 1) 승용차 브렌드 2) 차종 3) 엔진 ECU 기준 및 종류에 따라, EEPROM(flash) Read 가능 여부가 표시됩니다. 예를들어, (아래 붉은색 선택 항목 --> 1600 HDI) 여기서 가장 중요한 것은 우측 체크박스에 표기된 부분인데"RD"라고 되어 있는 부분입니다. 여기에 체크가 되어 있으면 추출 및 백업 가능합니..

[[1]] 푸조 엔진 EUC에서 pin code 읽어 오는 방법은 ??

(이전글) 푸조 508 1.6 DIY 스마트키 복사 도전기 에서 Pin code(Immobilizer code, 또는 Confidential code라고도 함)가 없기 때문에 스마트키 복사 작업을 할 수 없었습니다. 혹시나 해서 엔진 ECU에서 직접 Pin Code 읽어 올 수 없을까? 하는 생각에 자료를 찾아 봤는데.. 역시나 엄청난(!) 자료들이 있었습니다. 대부분 생산한지 오래된 2000년대 푸조 차량에 대한 자료였고, 그중에서 가장 흥미로운 방법은 엔진 ECU나 BSI에 기록되어 있는 EEPROM(또는 Flash)의 data 읽어서 Pin code만 추출하는 것이였습니다. https://www.youtube.com/watch?v=CWE-uZEnqHo 오래된 차량의 경우 eeprom 별도로 분리해서..

(12) Python-CAN : 드디어 푸조 엔진 ECU에 명령 보내고 받다..!!!

Python-OBD에 비해 Python-CAN이 훨씬 복잡하고 어려워보입니다. 다행인 것은 Python-OBD로 대략적인 개념도 잡고.. CAN data를 어떻게 주고 받는지 알게 되었으므로 전보다는 접근하기가 쉬워졌습니다. 처음엔 엄두가 안났지만, 지금은 도전해 볼 가치가 있어서 시도했고, 설치시 참조한 내용은 다음과 같습니다. https://python-can.readthedocs.io/en/stable/installation.html https://python-can.readthedocs.io/en/master/_modules/index.html https://python-can.readthedocs.io/en/master/api.html https://github.com/hardbyte/pytho..

(11) Python-OBD로 푸조 엔진 ECU에 연결 실패...(좌절..)

"아무런 반응이 없습니다.! ㅠㅜ" CAN 분석기는 잘 동작하는데, 오픈 소스인 Python-OBD로 명령을 보내거나 수신이 안됩니다. 설명에 앞서 지금까지 준비한 것을 간단하게 정리하면, 1) 오픈 소스 Software와 Hardware에 대해서 조사하고 2) 엔진 ECU 시뮬레이터 구매 및 사용방법 숙지 3) 각종 케이블 구매후 4) CAN 신호 분석기도 구입하고 사용방법도 모두 학습했습니다. 특히, 오픈 소스인 Python-OBD 코드 분석도 다하고, 예제도 많이 돌려보고 엔진 ECU 시뮬레이터에 연결해서 CAN 분석기로 Raw data 수집되는것 까지 확인했습니다. 차량에 연결하고 원하는 CAN 송,수신이 되는지 확인하는 것만 남았는데..... 알리에서 구매한 엔진 ECU 시뮬레이터에서 잘 동작했..

(10)-2 ELM327 사용기(Tera term으로 ECU 명령 보내고 받기 )

잠시 옆길로 빠진김에... ELM327 chip 활용해서 직접 명령을 주고 받는 것에 도전해 봤습니다. 푸조 208에서 작업한 프랑스분이 글 올려 놓아서 참조했습니다. (링크) 결론 부터 말하면, 무료 터미널인 Tera Term이나 Putty 설치해서 둘다 해봤는데 다 잘됩니다. (참고) windows에서만 가능합니다. 맥OS에서 여러 차례 시도했는데, 성공한 적은 없군요.. ㅠㅜ (결과) 즉, 무료 터미널 설치하고... 먼저 알리에서 구매한 엔진 ECU 시뮬레이터에 연결후 AT 명령 입력합니다. 1) atz 명령 : 현재 가지고 있는 ELM327칩에 대한 버전 확인 하는것 부터 시작했습니다.. ELM327 버전 v2.2라고 나옵니다. (터미널 설정 방법은 아래 우측 그림 참조) 2) "atdp" 명령은..

(10)-1 OBD용 ELM327에 대하여...

다음 단계로 넘어가기 전에.... 이전 글에서 계속 언급했던 내용중 다루지 않았던 "ELM327"에 대해서 간단히 정리하려고 합니다. OBD2 wifi / bluetooth 동글, 또는 USB 케이블이든.. 대부분 ELM327이라는 명칭이 붙습니다. 도데체 ELM327은 무엇이기에 모든 OBD 제품에 사용될까? 호기심에 자료를 한번 찾아 봤습니다. OBD가 되었든, ISO-TP(푸조에서 사용하는 J2534 ??), UDS, SAE J1939가 되었든 중요한 것은 CAN 통신이 기본으로 이루어진 기술(이전글)이라는 겁니다. 아래 글은 구글링해서 찾은 자료를 요약해본 것입니다. (정확하지 않을 수 있습니다.) 즉, 승용차든 상용차든 OBD 규정에 맞게 CAN 통신을 다루기 위해서 만들어진 마이크로 콘트롤러 ..

(9) 드디어, 푸조 엔진 ECU에 연결 시도하다!!!

푸조 508 차량의 OBD 콘넥터는 찾기가 쉽습니다. 시거젝 위치에 있는 재떨이(??)를 들어내면 바로 아래에 있습니다. 신기하게도 OBD 콘넥터의 이빨이 여기저기 빠져있습니다.!!! 오류 방지 차원(??)에서 사용하지 않는 핀은(즉 불필요한 핀) 제거해 버린것 같습니다. (원가 절감에도 도움이 될듯 하네요.) 각 핀에 대한 설명을 푸조 Service box에서 찾았고.... 1.특이점) OBD용 CAN 통신과 별개로 진단용 CAN 통신선이 별도로 있습니다. --> (3,8핀) 2.일반적인 OBD 통신의 경우 6, 14번 핀이 CAN 통신선입니다. 3.없는 핀(연결 안됨) --> unused 표기 아래 회로도에서도 없는 핀은 표기 되지 않습니다. 이제 연결을 시도할텐데, 진단기와 CAN 분석기를 동시 연..