Galaxy Watch5 Research — 센서 허브 리버싱부터 JIG·Odin까지

이 시리즈는 결과만 정리하지 않습니다. 당시의 가설, 막힌 이유, 다음 경로를 선택한 근거를 원래 연구 기록의 흐름대로 배치합니다.

이 연구가 다루는 것

목표는 Galaxy Watch5 가속도계의 sampling rate를 바꾸는 것이었다. 처음에는 kernel driver 한 곳을 수정하면 되는 문제라고 생각했지만, 실제 경로는 boot chain과 hardware까지 이어졌다.

연구 흐름

구간글당시 질문다음 단계로 넘어간 이유
Testbed01–02brick을 두려워하지 않고 반복 실험하려면 무엇이 필요한가firmware·partition·flashing tool을 먼저 고정해야 했다
Boot image03boot.img를 풀었다 다시 만들면 왜 같지 않은가repack 차이 뒤에 AVB가 있었다
AVB04–06vbmeta와 digest를 다시 만들 수 있는가AOSP 도구와 Samsung image가 맞지 않았고 netOdin도 막혔다
Kernel07–08같은 build를 확보하고 ODR driver를 찾을 수 있는가공개 IIO driver가 실제 Watch5 경로가 아니었다
Sensor Hub09–10sysfs 명령은 CHUB까지 어떻게 전달되는가SSP, CIPC, shared SRAM, mailbox와 Device Tree가 연결됐다
Hardware11–13regular Odin에 필요한 내부 USB 연결을 어떻게 안전하게 만들 것인가schematic·구리선 검증·1차 실패가 2차 조건이 됐다
Firmware14CHUB 안에서 LSM6DSO ODR는 어디서 설정되는가raw firmware에서 register write 함수를 찾았다
Conclusion15분석한 firmware를 실제 장치에 넣을 수 있는가JIG와 Odin은 성공했지만 수정 image가 boot 검증에 막혔다
Mermaid
flowchart LR
    A[Testbed] --> B[boot.img]
    B --> C[AVB / vbmeta]
    C --> D[regular Odin]
    B --> E[Kernel / IIO]
    E --> F[SSP / CIPC]
    F --> G[CHUB firmware]
    D --> H[Schematic]
    H --> I[Soldering / JIG]
    G --> J[Modified firmware]
    I --> J
    J --> K[Boot failure]

글을 나눈 기준

원본 Notion 페이지 하나를 글 하나로 옮기지 않았다. 회의록, 개인 보고서, 긴 분석글, 발표 슬라이드, 작업 사진을 질문이 바뀌는 시점에서 잘랐다. 그래서 한 글 안에 여러 날짜의 기록이 들어가기도 하고, 아주 긴 원문은 서로 다른 판단 단계로 나뉜다.

문장은 2024–2025년에 작성한 원문을 중심으로 유지했다. 표와 diagram은 흩어진 기록을 연결하기 위해 추가했지만, 성공하지 못한 결과를 성공한 것처럼 바꾸지는 않았다.

읽는 순서

아래 Galaxy Watch5 Research Log는 database 전체 화면 링크이고, 이어지는 table은 같은 database의 inline view다. 둘 다 순서 오름차순으로 정렬되어 있다. 처음부터 읽으면 시간과 판단의 흐름이 이어지고, 특정 주제만 볼 때는 단계를 기준으로 보면 된다.

프로젝트 전체 보기

2024년 당시 작성한 원문과 발표자료를 중심으로 구성합니다. 문장을 새로 다시 쓰기보다 원문의 순서를 재배치하고, 서로 다른 기록이 이어지는 부분에만 짧은 설명을 덧붙입니다.

Galaxy Watch5 Research Log · Notion