분류 전체보기 112

(1단계)OBDII open 소스 코드 분석 위한 준비물 : esp32(1)-2

초기 생산된 Arduino 사용해서 OBDII 동글과 연결 시도시 단점이 있는데, wifi / bluetooth를 별도로 연결해야 한다는 것입니다. 따라서, wifi / bluetooth 모듈이 있는 ESP32 계열 사용하기로 했습니다. 나중에 알게된 사실이지만, wifi / bluetooth가 불안정하다는게 문제가 있어서 고생많이 했습니다. (최근 버전인 ESP-32 S3도 문제가 있더군요.) 일단, Arduino 예제도 돌려볼수 있는 장점이 있어서 ESP-32 바로 구매했습니다. 아마도 별도의 디버깅 모듈 불필요한 ESP-32-S3-WROOM-1(또는 U)가 가장 좋은 대안이라고 생각하고 알리에 주문했고 도착 기다리는 동안, ESP-WROOM-32(구형) 버전을 주로 사용했습니다. 추가로 주문한 ES..

(다시 시작된 허들) OBDII open 소스 코드 분석 위한 준비물(1)-1

가장 빠른 방법이라면, 스마트폰에서 Bluetooth나 wifi로 OBDII 동글에 연결해서 엔진 정보 읽어오는 것입니다. 그러자니, "기본으로 알아야 할것들"이 그야말로 "산더미"입니다. 안드로이드폰으로 할까? 아이폰으로..? JAVA, Android studio, C++, iOS, Xcode,Visual studio(or Visual studio code), .... (그냥 시작하는 않는 것이... ㅠㅜ) 마음을 다잡고..어차피 잘 모르는거... 그냥 하나씩 알아보기로 했습니다. 진행하다가 모르는것은 그때 그때 배우기로 하고.. 우선 남들은 어떻게 구현하고 학습했을까? 궁금해서 조사한 결과 분석 대상 open소스 아래와 같이 3가지으로 압축했습니다. (정보가 많았지만...) (1) (sw)ELMdui..

어떻게 만들어야 할까? ( peugeot 전용 OBD ELM327 app ) (1)

Peugeot 진단용 앱을 만들기 위한 infra는 어느 정도 구성되었고, 어떻게 만들까? 고민하다가 여러가지 시도했던 과정 정리했습니다. 멘땅에 헤딩하는 방식이였지만 Python-OBD와 python-CAN은 이해 했으니, 다음 단계로 C 언어 계열로 작성된 OBD(ELM327칩 명령어 사용) 통신 SW 이해 하는것입니다. ( 지금까지 공부했던 Python으로 앱을 만들수는 없으니 말입니다... ㅠㅜ ) 전반적인 제작 방향은 아래와 같이 정했습니다. 기본 기술 학습 1) C 나 C++로 만들어진 오픈 소스 코드 분석 2) 임베디드 소형 PC에 올려서 동작 확인( Arduino or ESP32 ) 안드로이드, iOS, 윈도우 OS에서 사용 가능한 앱 제작 가능성 확인 1) C++ 또는 da..

<3> FAP OBD2 앱 동작 원리 완벽 분석!!!

오!!!! 드디어 FAP 앱이 어떻게 동작하는지 알게 되었습니다. 그동안 맨땅에 헤딩하면서 익힌 CAN 통신 기술들.... 명령 보내고 data 읽어 보는 방법 총 동원해서 얻은 결과가 있어서 다행입니다. 1. data 의미 분석 하기 FAP앱이 엔진 ECU에게 필요한 data 요구하면 푸조 차량의 엔진은 그룹으로 묶여진 여러 data를 아래와 같이 전송합니다. 아래 data는 흡기 정보를 요청한 경우 엔진 ECU가 응답한 사례입니다. 연두색 : Frame ID 검정색 : 유효 바이트 길이 또는 8 바이트 이상의 data 보낼때 8바이트씩 순차전송 번호( 21,22,23,24) 오랜지색 : 유효 data 2. 가상 ECU 응답 방식 수정후 앱 관찰 이전글에서 만든 가상 ECU 함수 6개중 하나만 동작하도..

<2> FAP OBD2 앱 분석용 peugeot 508 "가상 엔진 ECU 만들다!!!"

FAP앱에 반응 할 수 있는 가상 엔진 ECU 만들었습니다. (Python-can으로 만들었으며, 엔진 ECU와 응답 기능이 완전히 동일한 기능입니다.) 가상 엔진 ECU가 없다면,............... 차량에 가서 장시간 분석해야 하는데, 차량 배터리 방전 문제도 있고 무엇보다 매우 불편해서 작업하기 힘이듭니다. 따라서 대안으로 책상에 작업할 수 있도록 엔진 ECU와 동일하게 작동하는 SW로 만든 ECU 제작했습니다. 동작 원리를 간단하게 설명해보겠습니다. 이전글에서 정리해두었던 추출된 엔진 data 하나를 예를 들어보겠습니다. 아래처럼 6A8(FAP 앱 Frame ID)가 특정 정보를 요청하면 엔진 ECU(688) 그룹 data를 순차적으로 보냅니다. . 1)엔진 ECU에게 요청한 명령 6A8:..

<1> FAP OBD2 앱(android) CAN data 분석 도전!

(이전글)성능이나 기능면에서 푸조 차량에 사용 가능한 최고의 앱은 단연코 "FAP citroen/peugeot elm327 obd2"(이하 FAP앱으로 지칭)입니다. 어쩌면 단 하나 밖에 없는 앱 같습니다. (푸조 차량에서 동작하는 다른 앱을 본 기억이 없군요.) 그동안 어떻게 동작하는 무척 궁금했었는데, CAN 분석기(CANalyst-II)도 있고, Python-CAN 오픈 소스 활용해서 앱 동작 원리를 분석하기로 했습니다. 1. FAP앱 CAN 통신 프로토콜 및 엔진 호출 ID 확인 하기 우선 아래와 같이 알리에서 구매한 (1)"OBD2 wifi 동글"를 (2)"엔진 시뮬레이터"에 장착후 (3)"FAP앱"을 동작 시킵니다. 엔진 호출용 Frame ID 체계가 푸조 엔진에 맞지 않으므로 동작하지 않습..

[[5]] -6 "교환 시도후 중고 엔진 ECU에 어떤 변화가 생겼을까?"

이전글에서 중고 ECU 구매해서 immo off 파일을 K-TAG 사용하여 write후 ECU 교체 시도해 봤습니다. Diagbox로 진행시 7단계 절차 진행 되었는데, 2)번 "매칭" 단계에서 "프로그램 불가능", 5)번 "부품 프로그래밍" 단계에서 "프로그램 실패" 와 "학습 완료" 특히 5)과정에서 두가지 메시지가 동시에 나왔습니다. 위의 결과가 궁금하기도 하고 교체 시도했던 ECU의 EEPROM 내용에 어떤 변화가 있었는지 K-TAG로 Read후에 전/후 비교 절차 진행했습니다. 1.Micro TC1797에 변화가 있는지... 2.EEPROM TC1797에 변화가 있는지… (비교방법) : WinMerge로 파일 비교 -Micro TC1797(EEPROM??) : 1. 결과) 아무런 변화가 없었습니..

[[5]] -5 "푸조 508 1.6에 immo off ECU 장착 시도"

중고 ECU 뚜껑도 만들었고, immo off 파일도 writing 했으니, 이제 실제 차량에 장착해 보기로 했습니다. KTAG로 코드 수정한 중고 엔진 ECU → 차량에 장착후 diagbox와 연결 퓨즈박스 덮개 제거하면 엔진 ECU가 바로 나옵니다. 차량의 두뇌가 이렇게 쉬운 곳(?)에 노출되어 있다는 것이 좀 이상하긴합니다만. 덕분에 작업은 매우 쉽게 진행할 수 있습니다. (ECU 교환 절차 - Diagbox 사용) 1. ECU 분리전에 Diagbox에 연결하여 ECU 교환 작업 진행 절차 위해서 "교환 부품" --> "ECU 교환" 메뉴 선택합니다. 2. 아래 메시지와 함께 우측 하단 "체크"(확인버튼)을 누르면... 진행될 7가지 절차가 나옵니다. 다시 우측 하단 체크박스를 누르면, 1) ~ 7..

[[5]] -4 " 푸조 엔진 ECU 뚜껑 만들기!!!(DIY)"

차량에 중고 ECU 장착하려고 보니, 뚜껑이 없는 상태라 고장 위험도 있고해서 덮개를 직접 만들어 보기로 했습니다.(유튜브에서 본것입니다.) 절차) (1) A4 크기의 플라스틱 준비 (쿠팡에서 구매) (2) 배선 솔더링 완료된 중고 ECU (3) 플라스틱 커터칼 준비 (쿠팡 구매) (4) 엔진 ECU 덮개 크기로 절단: A4 크기의 플라스틱판 위에 ECU를 뒤집어서 놓고 밑그림 그린후 절단 --> (2)+(4)는 절단한 플라스틱 뚜껑을 엔진 ECU에 올려 놓은 것입니다. (5) 플라스틱 뚜껑 모따기 (줄 활용) (6) 솔더링된 배선을 외부로 빼기 위한 구멍 만들기 (7) 위의 (6)번 작업시 만든 구멍으로 배선 빼기 (8) 구멍으로 물이나 이물질이 들어가지 않도록 글루건으로 봉합해줍니다. (배선 고정 역..

푸조 진단기 사용 후기 - FAP citroen/peugeot elm327 obd2 앱

네이버 카페에 올렸던 글인데 후속 글과 연동하기 위해서 본문을 그대로 가져왔습니다 (참조:이전글)https://cafe.naver.com/308gt/329287(앱 명칭) "FAP citroen/peugeot elm327 obd2" --> https://play.google.com/store/apps/details?id=com.fap.c.faplite&hl=ko&gl=US우선, 무료 버전 사용 권고합니다. 오래된(또는 최신형) 차종의 ECU를 인식하지 못할 수도 있다고 합니다.앱 이름이 FAP로 시작해서 찾아 보니, "FAP = DPF" 의미 같습니다.(참조) https://flashcleanermachine.com/fap-how-does-it-work/?doing_wp_cron=1678023086.49..