HDMI 더미 플러그의 EDID를 Raspberry Pi로 수정하기

6 hours ago 1

  • HDMI 더미 플러그의 EDID를 Raspberry Pi를 활용해 쉽게 변경할 수 있는 방법 소개
  • 더미 플러그는 실제 출력 장치 없이 기기에 모니터가 연결된 것처럼 인식시키는 용도임
  • EDID 정보를 1080p 캡처 장치의 것과 동일하게 복사해, 플러그가 4K 모니터로 표시되지 않도록 설정 가능함
  • Raspberry Pi의 I2C 컨트롤러와 표준 리눅스 도구만으로 플러그의 EEPROM을 읽고 쓸 수 있음
  • 모든 과정에서 장치 손상 예방을 위해 올바른 I2C 버스 선택과 백업 필수임

더미 플러그와 EDID 개요

  • 더미 플러그란 HDMI 또는 DVI 포트에 연결했을 때 실제 영상 처리는 없고, 최소 회로만으로 기기가 모니터 연결을 감지하게 만드는 작은 동글 형태의 장치임
  • 모니터의 EDID(Extended Display Identification Data) 를 모방한 EEPROM 칩과 +5V에 연결된 Pull-up 저항 등 회로가 존재함
  • 헤드리스 서버, 무인 기기 등에서 운영체제(OS)가 디스플레이가 존재한다고 판단하도록 사용하는 데 유용함

목적과 접근 방식

  • 기존의 4K 해상도를 지원하는 HDMI 더미 플러그를 단순한 1080p 장치로 인식되도록 EDID를 바꾸고 싶었던 경험 공유
  • 목표는 더미 플러그 내부 EDID를 HDMI 캡처 장치(1080p 지원)의 EDID 정보와 동일하게 되도록 교체하는 것임
  • 더미 플러그의 EEPROM에 쓰기가 가능한지 확실하지 않았으나 시도 가치가 있었음
  • Raspberry Pi Zero의 HDMI 포트가 I2C 컨트롤러에 연결돼 있어 접근 용이함

안전 주의 및 절차 시작

  • 실제 모니터가 연결된 상태에서 이런 과정을 수행할 경우 EDID 보호가 없는 모니터는 손상 위험 존재함
  • 반드시 더미 플러그와 같이 손상되어도 괜찮은 장치에만 작업 진행 필요
  • 또한, 올바른 I2C 버스 사용, 그리고 쓰기 작업 전에 반드시 EDID가 맞는지 사전 읽기와 검증 필수임

환경 설정 및 준비 작업

  • Raspberry Pi OS Lite 설치 후, sudo raspi-config로 설정 조정
  • sudo apt install i2c-tools로 I2C 도구 설치 (Pi Zero의 경우 네트워크 필요, USB-이더넷 어댑터 또는 SD카드 chroot로 우회 가능)
  • HDMI-to-Mini-HDMI 어댑터 사용 필요함

EDID EEPROM 인식 및 백업

  • Raspberry Pi Zero의 경우 I2C 버스 2 사용 (다른 Pi 모델은 번호 상이)
  • i2cdetect 명령으로 0x50 주소에 장치 인식 확인, 이는 EDID EEPROM의 표준 주소임
  • 특이하게도 0x51~0x57 주소도 응답하며 EDID의 복수가 저장되어 있는 형태임
  • get-edid로 기존 더미 플러그의 원본 EDID 백업 수행, 두 번 읽어 비교해 일치성 검증
  • od -v -An -txC로 EDID를 16진수 배열로 출력, edidreader.com으로 유효성 검사

캡처 장치의 EDID 추출 및 플러그에 기록

  • 더미 플러그 분리 후 HDMI 캡처 장치를 Pi에 연결
  • 동일 방식으로 캡처 장치의 EDID 추출, 유효성 재확인
  • 다시 더미 플러그를 연결하고, 캡처 장치 EDID를 EEPROM에 작성
  • 각 바이트별로 i2cset 명령을 통해 쓰기 작업, 이는 표준 리눅스 툴과 bash만으로 가능

최종 검증 및 결과

  • 작업이 끝난 후 더미 플러그의 EDID를 재추출하고 원본 파일과 diff로 비교해 내용 일치 확인
  • 테스트 컴퓨터에 연결 시, 원래의 4K 모니터가 아니라 HDMI 캡처 장치로 인식
  • 성공적으로 더미 플러그의 EDID 교체 완료

마무리 및 활용 조언

  • 동일한 절차로 구형 1080p 더미 플러그를 4K 지원 장치로 변경 가능함
  • I2C 쓰기 작업은 Raspberry Pi에서만 수행 권장, 일반 PC에서 직접 진행시 하드웨어 손상 위험 있음
  • 관련 기능이 필요한 경우 이 절차가 유용할 수 있음

Read Entire Article