Show GN: SideDisplay - 테슬라 화면을 무선 확장 모니터로 만들기
(sidedisplay.co)2023년도에 테슬라를 구입했는데요. 테슬라를 구입하고 가장 좋았던 점이 차에서 맥북으로 작업할 때 전기차 특유의 쾌적함이었습니다. 차에 시동을 걸지 않아도 공조 시스템을 돌릴 수 있으니까요. 하지만 딱 하나 아쉬운 점이 있었습니다.
테슬라 중앙의 큰 화면을 저렇게 놀리는게 맞나? 맥북에 연결해서 모니터로 쓸 수 없을까?
그래서 차를 사고 1년 가량 이것저것 시도해봤습니다.
- 차량을 개조해서 외부 입력 포트 달기 -> 할 줄도 모를 뿐더러 보증 날릴 위험이 있어서 시도도 못 함
- 테슬라 내장 Zoom 앱을 통한 화면 공유 -> 레이턴시도 심하고 화질도 떨어지고 풀스크린을 지원하지 않아서 무쓸모
- OBS + HLS 스트리밍 -> 2초 딜레이로 인해 모니터 용도론 무리 (제가 HLS를 잘 몰라서 그런 것일 수도 있습니다)
- WebRTC -> 당시 테슬라 브라우저가 미지원 (그 당시에 제가 뭔가 세팅을 제대로 못 했을 수도 있습니다)
그렇게 한동안 잊고 지내면서 몇 차례 테슬라 OTA 업데이트가 있었고, 혹시나 하는 마음에 다시 WebRTC로 테스트를 해봤는데 아주 잘 되더군요. 문제는 이를 위한 셋업이 너무 복잡하다는 것이었습니다. 일단 맥북과 테슬라 차량을 연결하기 위한 소형 무선 공유기, 인터넷 연결을 위한 LTE 라우터, 맥북에 실제 모니터를 연결한 것처럼 속이기 위한 더미 HDMI까지 필요했습니다.
그런데 생각해보니 소프트웨어적으로 대체할 수 있겠더라구요.
- LTE 라우터 -> iPhone USB 테더링
- 여행용 소형 무선 공유기 -> macOS 인터넷 공유
- 더미 HDMI -> Apple CGVirtualDisplay API
덕분에 추가로 하드웨어를 구매할 필요 없이 맥북과 아이폰만 있으면 됩니다. USB 케이블은 아이폰을 구매할 때 포함이니까 제외했습니다. :)
이걸 SideDisplay라는 앱으로 만들었고, Mac(Apple Silicon, macOS 15+)과 Windows 11 둘 다 지원합니다. 퍼포먼스의 차이는 있겠지만 테슬라뿐 아니라 WebRTC 되는 브라우저면 태블릿이든 스마트TV든 다 됩니다. 터치도 돼서 테슬라 화면으로 맥을 직접 조작할 수 있고, 최대 3대 동시 연결 가능합니다.
요즘은 집에서 구형 맥북이나 iPad를 나란히 두고 확장 모니터로 쓰면서 매일 dogfooding 하고 있습니다.
실패 과정이랑 기술적 결정들을 정리한 개발 스토리도 있습니다. https://sidedisplay.co/story
피드백 주시면 감사하겠습니다.