I²S(Inter-IC Sound)는 디지털 오디오 데이터를 칩 사이에서 전달하기 위한 전용 통신 방식이다. CD 플레이어 내부에서 디지털 오디오 신호를 DAC로 전달하기 위해 널리 사용되는 기술이니 꽤 오래된 전통적인 기술이라고 할 수 있다. 위키백과에 의하면 1986년 필립스 세미컨덕터에 도입되어 1996년 마지막으로 개정되었다고 한다. 활용이 시작된지 무려 40년이나 된 기술이다! I²S라고 쓰는 것이 맞지만 여기에서는 편의상 I2C를 혼용하고자 한다.
본래 I2C는 기기 내부 통신을 위한 인터페이스이지만, 최근에는 라즈베리파이와 같은 보드에서 GPIO를 통해 외부 DAC와 연결하는 방식으로도 활용되고 있다. 전원을 제외하면 단 세 가닥의 선(BCK, LCK, DIN)만으로 고품질 오디오를 구현할 수 있어, 자작 기기 내부에서는 USB 방식보다 구조가 단순하고 지연이 적다는 장점이 있다.
| SCK: continuous serial clock, BCK: bit clock, LCK: left/right clock(LRCK 또는 WS-word select로도 표기), DIN: data in. SCK 바로 곁의 패드를 납땜하면 보드 내부의 클럭을 쓰게 되므로 실제로는 BCK, DIN, LCK 세 개의 핀만 연결하면 된다. |
다만 I2S는 신호 무결성에 민감하여 긴 케이블을 사용하기 어렵고, 외부 연결을 위한 표준화된 인터페이스가 없어 범용성은 떨어진다. 반면 USB Audio는 연결성과 안정성 면에서 훨씬 유리하다.
실제 USB DAC 내부에서는 USB로 받은 데이터를 I2S로 변환하여 DAC에 전달하는 구조가 일반적이며, 두 방식은 상호 보완적인 관계로 볼 수 있다.
최근 알리익스프레스에서 단돈 2,900원을 주고 PCM5102A를 사용한 I2S DAC 보드를 두 개 구입하였다. 라즈베리파이의 등장과 더불어 이 칩을 사용한 보드가 이베이나 알리익스프레스에 쏟아져 나오기 시작한 것이 대략 2014년 무렵이라고 하니 뒷북도 이만저만한 뒷북이 아니다. 내가 라즈베리파이 3B를 구입하여 Volumio을 처음 경험한 것이 2021년이었다. 당시에는 오로지 USB DAC만 쓸 생각을 했었다.
보드에 핀 헤더를 납땜하고 연결한 뒤, 라즈베리파이에서 필요한 설정(/boot/firmware/config.txt 수정)을 마치고 OGG 파일을 재생해 보았다.
그런데 소리가 전혀 나지 않았다. 오류 메시지도 나타나지 않는다. 오디오 재생 프로그램을 실행하는 동안에만 아주 작게 ‘웅-’ 하는 잡음이 들릴 뿐이었다. aplay -l 명령을 내리면 장치 인식은 제대로 된 상태였다. ChatGPT와 아무리 상담을 해 보아도 배선 실수 가능성만 제시할 뿐이었다. 구입한 보드 두 개가 모두 같은 상태였다.
|
|
| 해결책을 달란 말이다! |
정답은 구글 검색에서 나왔다. 보드의 몇 군데에 납을 녹여서 이어 붙여야 하는 이른바 ‘solder blob’ 패드가 존재했던 것이다. 다음 사진을 보라. H#L(# = 1, 2, 3, 4)라고 인쇄된 것이 보일 것이다.
이를 다음과 같이 만들어야 한다. 가운데 패드를 왼쪽(H)이나 오른쪽(L)에 납땜으로 이어 붙여야 한다. 아래 사진은 표준적인 사용에 맞는 납땜 사례이다.
추가적으로 SCK는 보드 윗면에서 패드를 서로 이어 그라운드로 연결해야 한다. 그렇게 해야 시스템 클럭을 사용할 수 있다. 이러한 정보는 How to make PCM5102 DAC work on Raspberry Pi ZeroW?라는 글에 상세하게 나온다. 심지어 국내 유튜브 채널인 TinkerBox에서도 이미 6년 전에 PCM5102 I2S DAC 모듈을 래스베리 파이와 사용하기라는 영상을 올려 두었다.
내가 비록 ChatGPT에 의존함으로써 과거에는 불가능했던 수준의 취미 DIY 프로젝트를 진행하고 있지만, 때로는 고전적인 방법인 검색이 여전히 필요함을 깨달은 순간이었다. 다행히도 보드를 받은 뒤 아주 짧은 좌절의 기간(24시간이 채 되지 않았으니)을 거쳐 해결 방법을 알게 되었다.
이 DAC 보드의 설정 방법은 별도의 글인 Raspberry Pi I2S PCM5102A DAC Setup Guide에 정리해 두었다. 본문에 포함된 /etc/asound.conf는 하드웨어 볼륨 조절기가 없는 이 보드를 사용할 때 특히 유용하다. 사실 없어도 되지만, 이를 설정해 두면 alsamixer에서 볼륨을 조절할 수 있게 된다.
어제까지의 노력을 통해 Fluid Ardule의 주변장치 구성을 마무리하게 되었다. 온갖 가능성을 테스트해 본 뒤 가장 무난하고 가벼운 구성을 택하기로 했다.
최종 구성은 다음과 같다.
라즈베리파이(사운드 엔진) - I2S DAC를 통한 오디오 출력과 FluidSynth 실행 담당. USB DAC를 연결하여 사용할 수도 있다. SPI TFT-LCD를 연결하여 상태 정보를 표시한다.
Uno-1(UI 컨트롤) - 1602 LCD 표시 및 버튼/인코더 입력 처리 담당. 라즈베리파이쪽으로 정보를 일방향 전송하는 것이 원칙이다.
Uno-2(MIDI 엔진) - MIDI 입력 처리 및 변환 담당. 필수 구성품은 아니다. 라즈베리파이가 USB로 연결된 MIDI 키보드 컨트롤러의 신호를 처리하기 어려운 경우를 대비한 것이다.
이번에는 시행착오를 줄이기 위해 처음부터 단계적인 개발 절차를 밟고 있다. 우선 아두이노 우노(Uno-1)에서 버튼과 인코더 입력을 처리하는 펌웨어를 안정적으로 완성한 뒤, 라즈베리파이에서 이를 제대로 전달받는지 확인하였다. 이어서 파이썬을 이용해 터미널 창에서 건반 → FluidSynth → DAC으로 이어지는 오디오 경로를 구성하고, 실제로 소리가 나는 상태를 화면에 표시하도록 만들었다. 최종 목표는 TFT-LCD에 각종 정보를 표시하고, 아두이노 우노의 조작을 통해 메뉴를 선택·실행할 수 있는 사용자 인터페이스를 구현하는 것이다.
2026년 4월 9일 업데이트 - 구글 AI 모드의 I2S 기술 설명
최근 DIY 오디오 시장과 하이엔드 오디오에서 I2S가 다시 주목받으며 '재발견'된 데에는 몇 가지 핵심적인 이유가 있습니다.
- 지터(Jitter) 감소: 기존의 외부 연결 표준인 S/PDIF나 광(Optical) 방식은 데이터와 클록 신호를 하나로 합쳐서 보내기 때문에, 나중에 이를 다시 분리하는 과정에서 시간 오차(지터)가 발생하기 쉽습니다. 반면 I2S는 처음부터 데이터와 클록 신호를 분리하여 전송하므로 이론적으로 더 순도 높은 디지털 신호를 유지할 수 있습니다.
- 복잡한 변환 과정 생략: 원래 소스(예: 네트워크 플레이어의 MCU)에서 생성된 오디오 데이터는 이미 I2S 형태입니다. 이를 굳이 S/PDIF로 변환했다가 DAC에서 다시 I2S로 푸는 비효율적인 과정을 생략하고 I2S를 직접 연결하려는 DIYer들의 시도가 늘어났습니다.
- 고음질 음원 지원: S/PDIF는 대역폭의 한계로 아주 높은 샘플링 레이트의 음원 전송에 제약이 있는 경우가 많지만, I2S는 고사양 DAC 칩의 성능을 최대한 끌어낼 수 있는 통로가 됩니다.
- HDMI 단자의 전용: 기판 내부용인 I2S는 전송 거리가 짧아야 한다는 단점이 있었으나, 최근에는 HDMI 단자와 케이블을 이용해 외부 기기 간에도 I2S 신호를 전송할 수 있는 규격이 DIY 및 일부 하이엔드 브랜드(PS Audio 등)를 중심으로 표준처럼 자리 잡았습니다. [1, 2, 3, 4, 5, 6]
결론적으로, 제품 내부에서만 조용히 쓰이던 기술이 "변환 없이 가장 순수한 데이터를 직접 전달하겠다"는 오디오 애호가들과 DIY 제작자들의 요구에 맞춰 외부 인터페이스로 끌어올려진 사례라고 할 수 있습니다.
I2S가 DIY 오디오와 하이엔드 시장에서 본격적으로 '재발견'되며 대중화된 시점은 대략 2010년대 초반으로 볼 수 있습니다. 구체적으로는 다음과 같은 흐름을 거쳤습니다.
1. 2000년대 후반: 하이엔드 브랜드의 도입 [1]
2000년대 후반부터 PS Audio와 같은 하이엔드 제조사들이 기기 간 전송 시 발생하는 지터를 줄이기 위해 I2S 규격을 외부 연결에 도입하기 시작했습니다. 2009년경 PS Audio가 HDMI 케이블을 I2S 전송용 물리 단자로 활용하기 시작하면서, "HDMI 단자를 쓰지만 영상 신호가 아닌 오디오 전용 I2S를 보낸다"는 개념이 오디오 마니아들 사이에 퍼지기 시작했습니다. [1, 2]
2. 2012년~2014년: DIY 및 PC-Fi의 기폭제, 라즈베리 파이
I2S의 대중적 재발견에 가장 큰 공을 세운 것은 라즈베리 파이(Raspberry Pi)와 같은 싱글 보드 컴퓨터(SBC)의 보급입니다. [1]
- 라즈베리 파이(2012년 출시)의 GPIO 핀에는 I2S 출력이 포함되어 있었습니다.
- 2013~2014년경부터 Volumio 같은 오디오 전용 OS가 등장하고, 기판에 바로 꽂는 I2S DAC(HAT 방식)들이 저렴하게 쏟아져 나오면서 일반 사용자들도 "USB나 광출력보다 I2S가 소리가 더 좋다"는 것을 직접 체감하며 DIY 열풍이 불었습니다. [1, 2, 3]
3. 2010년대 중반 이후: 차이파이(China-Fi)와 규격의 고착화
2010년대 중반부터 Denafrips, Gustard, Singxer 등 가성비 좋은 중국 브랜드들이 하이엔드 방식인 'I2S over HDMI' 입력을 기본 사양으로 채택하면서, 이제는 DIY를 넘어 기성품 오디오 시장에서도 하나의 고급 인터페이스 표준으로 자리 잡게 되었습니다. [1]
요약하자면:
- 태동기(2000년대 후반): 하이엔드 브랜드가 HDMI 단자를 빌려 쓰기 시작.
- 확산기(2013년~2014년): 라즈베리 파이 DIY DAC 열풍으로 대중화.
- 안착기(2016년~현재): 수많은 외장 DAC가 I2S 입력을 기본 지원하며 주류가 됨. [1]







