분류 전체보기
-
트레이스를 이용한 RBS - 필터simulation 2025. 3. 24. 13:15
시작하기 전에트레이스를 이용한 RBS(Remaining Bus Simulation) :: hsl's tsmaster 사용기 설명에서 트레이스를 이용하여 RBS 하는 방법을 설명하였다. 내가 실험할 당시에는 온라인 재생 기능에 "전송" 메시지 필터 기능이 없었다. (혹은 내가 찾지 못했다.) 최근에 살펴보니 온라인 재생 기능에 전송 메시지 필터 기능이 있다. 방법메인 메뉴/ Analysis/ Bus Replay 버튼을 클릭하여 Bus Playback 창을 연다. Bus Playback 창에서 Online Replay 탭을 클릭한다.트레이스 추가 버튼을 클릭하여 재생할 트레이스 파일을 선택한다.트레이스의 설정 버튼을 클릭하여 설정 창을 연다. 트레이스 설정 창에서 Set As Block Filter 버튼..
-
두 TSMaster 간 CAN 통신tip 2025. 3. 20. 20:00
TSMaster의 TS Virtual Device를 이용하면 하드웨어 없이 송/수신 관련 기능을 연습할 수 있다.TSMaster가 실행된 상태에서 TSMaster를 한 번 더 실행하여 TSMaster를 두 개 실행할 수 있다.TSMaster를 실행한 상태에서 윈도의 TSMaster 아이콘에서 마우스 우클릭을 하면 아래 그림처럼 메뉴가 뜬다. TSMaster를 선택하면 두 번째 TSMaster를 실행할 수 있다. 두 TSMaster의 채널 설정을 동일하게 Virtual Device로 하고 동일한 채널 설정을 하면, 두 TSMaster 사이에 CAN으로 통신이 가능하다. 한쪽 TSMaster에서 CAN 메시지를 전송하면 다른 TSMaster에서 수신한다.
-
Secure Boot카테고리 없음 2025. 3. 15. 02:07
시작하기 전에부트로더와 사이버 보안 기능인 시큐어 부트에 관해서 설명하려고 한다.자동차 제동 제어기인 ESC (Electronic Stability Control. ESC 차체 자세 제어 작동원리 [숏버전/요약] #shorts 유튜브 검색에서 제일 위에 나온 쇼츠다.)를 대상으로 설명한다.소프트웨어는 C로 짠다. 코드의 양은 수백 개 파일에 수십만 라인에 이른다. (요즘은 더 클 수도 있겠다.) 이를 컴파일하면 마이크로콘트롤러에서 실행할 수 있는 형태의 파일로 변환된다. 파일 형식이 몇 가지 있다. elf, hex, bin 등이다. 편의상 헥스라고 부르겠다. 컴파일 결과 헥스 파일이 두 개 생긴다. 하나가 부트로더(bootloader)이고 다른 하나가 어플리케이션(application, 앱)이다.부트로더..
-
Secure Flash - 서명이란?카테고리 없음 2025. 3. 10. 22:02
시작하기 전에 요즘 자동차들은 통신으로 외부와 연결되어 있다. 와이파이, LTE, 5G, 블루투스, UWB, NFC 등 외부 통신의 방법은 다양하다. 외부와 통신으로 "연결"된 덕택에 운전자와 탑승자들은 전에 없던 편안함과 안전을 누린다. 이런 것들을 총칭하여 커넥티비티(connectivity)라고 한다. 커넥티비티가 가져온 자동차 패러다임의 큰 변화가 있다. SDV (Software Defined Vehicle)이다. 소프트웨어 업데이트로 기능이 더 좋아지거나 없던 기능이 생긴다. 소프트웨어로 차가 달라진다. 소프트웨어로 차가 정의된다. 커넥티비티 이전에도 소프트웨어 업데이트는 가능했다. 하지만 시간, 노력이 매우 많이 들었다. 누군가가 일일이 차를 찾아다니며 혹은 차가 누군가에에 가도록 하여 한..
-
UDS 진단 통신으로 하는 소프트웨어 업데이트 6 - 자동 진단diagnostic 2025. 3. 2. 11:55
자동 진단 (Automatic Diagnostic) 앞에서 정의한 서비스 단계들을 하나로 묶어서 작업 그룹을 정의한다. 작업 그룹을 실행시키면 모든 서비스 단계들이 한 번에 순차적으로 "자동" 실행된다. 작업 그룹 정의Diagnostic 창/ Automatic Diagnostic 탭/ 작업 그룹 트리 영역의 "빈 공간"에서 마우스 우클릭하여 "Add a new group"을 선택한다. 폴더 아이콘으로 표시되는 새 작업 그룹이 만들어진다. [주의] "빈 공간"을 선택한 상태가 아니라 항목을 선택된 상태에서 "Add a new group"하면 새 작업 그룹은 선택된 항목 아래에 생성된다. 방금 만든 작업 그룹을 선택하고 마우스 우클릭하여 뜬 팝-업 메뉴에서 "Edit Name"을 선택하고 작업 그룹의..
-
UDS 진단 통신으로 하는 소프트웨어 업데이트 5 - 메타 데이터 업데이트diagnostic 2025. 2. 28. 16:16
소프트웨어 전송 후소프트웨어 전송을 완료한 후 소프트웨어 업데이트를 추적할 수 있는 메타 데이터를 기록한다. 업데이트가 잘 되었는지 확인도 필요하다. 아래 그림의 빨간 테두리 부분이다. 소프트웨어 번호 쓰기논점을 흐리지 않기 위해 업데이트의 이력 관리가 왜 중요한지를 설명하지는 않지만 이는 매우 중요하다. 이력 관리에 필요한 데이터를 제어기에 기록한다. 이력 기록을 위한 루틴이 정의되어 있을 수 있다. 설명을 시작할 때 루틴이 정의되어 있다고 가정했다. 앞에서 0x31 RoutineControl을 설명하였다. 동일한 서비스를 다시 설명하는 것보다 WriteDataByIdentifier와 ReadDataByIdentifier 서비스를 설명하는 것이 더 유용할 것 같아 계획을 수정한다.UDS 표준에 Wr..
-
UDS 진단 통신으로 하는 소프트웨어 업데이트 4 - 소프트웨어 전송 (계속)diagnostic 2025. 2. 28. 12:27
소프트웨어 전송 (계속)아래 그림의 빨간 테두리 부분에 관한 설명이다. 이와 관련한 설정은 Request and Transmit Data 탭에서 한다. 설정 화면은 아래 그림과 같다.설정 항목들은 DataFormat Identifier of Request Transmit Data(0x), Enable User Define MaxNumOfBlockLength(0x), Delay Time after Transfer Request, Delay Time after Transfer Data이다. Data Format IdentifierData Format Identifier of "Request Transmit"을 설명하려면 먼저 "Request Transmit" 서비스의 포맷을 설명해야 한다. 포맷은 아래와 ..
-
UDS 진단 통신으로 하는 소프트웨어 업데이트 3 - 소프트웨어 전송diagnostic 2025. 2. 27. 13:04
소프트웨어 전송소트웨어 전송 과정은 아래 그림과 같다. 소프트웨어가 프로그램될 영역 삭제, 다운로드 요청, 프로그램할 소프트웨어 전송 (데이터 전송), 전송 종료, 소프트웨어 번호 (기타 메타 데이터) 쓰기이다. 영역 삭제와 메타 데이터 쓰기는 자동차사, 협력사 특화된 루틴(기능)이다. UDS에는 RoutineControl 이라는 이름으로 서비스 아이디 0x31이 정의되어 있다. 나는 영역 삭제와 메타 데이터 쓰기를 위한 루틴이 정의되어 있다고 가정하고 설명한다. 다운로드 요청 (서비스 아이디 0x34), 데이터 전송 (서비스 아이디 0x36), 전송 종료 (서비스 아이디 0x37)는 각각의 서비스로 분리되어 있지만 실제로는 합쳐져 실행된다. 그래서 TSMaster에는 Combined Services 라..
-
UDS 진단 통신으로 하는 소프트웨어 업데이트 2 - 보안 접속diagnostic 2025. 2. 26. 16:19
보안 접속(Security Access)시드 & 키 보안 접속으로 설명한다. 아래 순서대로 동작한다. 시드 요청 (Request Seed)Diagnostic 창의 왼쪽에 UDS 표준의 서비스들이 나열된 트리 영역에서 SecurityAccess 항목을 선택하고 마우스 우클릭하여 Add New Service를 선택한다. 그리고 아래 그림과 같이 Request Seed를 입력한다.SecurityAccess의 서비스 아이디는 0x27이다. SecurityAccessType은 입력 칸의 오른쪽 끝 '...' 버튼을 클릭하여 Select Sub Function ID 창을 열고 0x01 RequestSeed를 선택한다. RequestSeed와 SendKey는 둘이 한 쌍을 이룬다. 0x01로 시드를 요청한 경우, ..
-
UDS 진단 통신으로 하는 소프트웨어 업데이트 1 - 작업 개요카테고리 없음 2025. 2. 26. 14:42
시작하기 전에진단 통신은 제어기 소프트웨어 업데이트에도 활용될 수 있다. UDS 표준이 만들어진 시기에는 프로그래밍이라고 불렀다. 요즘은 소프트웨어 업데이트가 더 흔하게 사용된다. 여기서는 문맥에 따라 소프트웨어 업데이트와 프로그래밍을 혼용한다.TSMaster의 UDS Diagnostic 모듈을 이용하여 프로그래밍 하는 방법을 설명한다. 개요제어기 소프트웨어 업데이트는 대략 아래의 절차로 이뤄진다.소프트웨어 업데이트 중에 다른 통신에 방해를 받지 않도록 하기 위해서 모든 제어기들에게 CAN 송신 중지를 요청한다. 모든 제어기에 요청하므로 펑셔널 어드레스로 요청한다. (펑셔널 어드레스는 UDS 진단 통신 (2 / 4) - Transport Protocol 설정 :: hsl's tsmaster 사용기 에서..