2026년 4월 2일 목요일

[Fluid Ardule] USB 오디오 인터페이스가 초래한 전압 강하 현상

라즈베리파이 3B로 구성한 Fluid Ardule의 USB 포트에 오디오 인터페이스(Mackie Onyx Producer 2-2) 하나만을 꽂은 상태에서도 전압이 떨어지는 현상을 발견하였다. 다음은 'dmesg -w'를 실행해 놓은 뒤 Onyx를 꽂았을 때 나오는 화면 출력이다.


Undervoltage detected는 라즈베리파이의 입력 전압이 기준 이하로 떨어졌을 때(보통 4.63V 이하) 발생하는 것이라 한다. Voltage normalised는 전압이 다시 정상 범위로 돌아왔음을 의미한다. 단 하나의 USB 기기를 꽂았을 때에도 이러한 실정이니 키보드 컨트롤러와 아두이노 우노 등을 전부 꽂으면 어떻게 되겠는가. 가능한 해결 방법 중의 하나는 유전원 USB 허브를 사용하는 것. 또는 다음 사진과 같은 대용량 SMPS를 써서 각 장비에 분배하는 것이다.

Meanwell LRS-50-5 파워 서플라이. 출력은 5V 10A에 이른다. 


이것도 그렇게 간단한 일은 아니다. 우선 이 전원을 라즈베리파이에 공급하려면 마이크로USB male plug를 구해서 납땜을 해야 한다. 이론상 GPIO로 넣어도 되지만 보호회로를 거치지 않기 때문에 매우 조심해야 한다. 

이 전원은 아두이노의 +5V 단자에 연결한 뒤 이를 다시 USB 케이블로 라즈베리파이와 연결할 때에도 주의해야 한다. 두 기기에서 전압차이가 발생하면 USB 케이블로 전류가 역류할 수 있다. 안전하게 사용하려면 USB 케이블에서  VBUS선을 끊는 것이 바람직하다.

구입해야 할 부품 목록이 꼬리에 꼬리를 문다! 아직 여기에 다 쓰지 못한 자질구레한 부품이 곧 비행기를 타고 중국을 떠날 것이다. Fluid Ardule의 modular architecture 철학이 약간 훼손될 위기에 처했다. 예를 들어서 USB 오디오 인터페이스를 포기하고 I2C PCM5012A DAC를 택하는 것. 하지만 어쩌겠는가? 안정성이 더 중요하다. 이외에도 몇 가지의 아이디어가 더 있으나 실험을 해 본 뒤에 기록하려 한다.

 

2026년 4월 1일 수요일

[Fluid Ardule] 라즈베리파이 3B에서 USB DAC가 열심히 일할 때 LAN 작동이 멈춘다

DIY란 원래 고난의 연속이다. 비용을 더 들이지 않기 위해 현재의 조건에서 어떻게 해서든 문제를 풀어 보려고 애를 쓰지만, 결국 지금 쓰는 것보다 상위 기종의 물건(예: 라즈베리파이 3B -> 4B)을 구입하는 것보다 더 많은 것을 정신적으로, 그리고 시간적으로 지불하고 있는지도 모른다.  

문제의 시작은 이렇다. 

라즈베리파이의 부팅 시간을 줄이기 위해 자동으로 시작하는 서비스를 대폭 줄이고 개발을 위한 네트워크 연결도 오직 유선 LAN으로만 하도록 만들어 놓았다. 코딩 작업을 하는 노트북 컴퓨터도 평소에는 유선으로 연결하여 쓰기 때문이다. 그래서 Wi-Fi 연결이 아예 되지 않도록 /boot/firmware/config.txt 파일에 'dtoverlay=disable-wifi'까지 삽입한 상태였다.

그런데 오디오 출력을 위하여 Mackie Onyx Producer 2-2를 연결한 뒤 FluidSynth를 실행하여 조금만 작업을 하다 보면 여지없이 SSH 접속이 끊겼다. 이런 상태에서도 건반을 통한 FluidSynth 연주는 가능한 상태라서 시스템이 완전히 멈추는 것은 아니다. 그러나 IP 주소를 자동으로 다시 할당받아서 SSH 접속이 되기까지 상당한 시간을 기다려야 하니 이만저만 불편한 것이 아니다. rsyslog조차 설치되지 않아서 /var/log/syslog이 없는 상태였기에 문제의 원인을 파악하기가 힘들었다. 

이런 불안정한 상태로 며칠을 보내다가 드디어 syslog 파일에서 단서를 찾았다.

2026-03-31T21:46:40.082929+09:00 Fluidule systemd[1]: Stopped fluid_ardule.service - FluidArdule Main Service. 
2026-03-31T22:00:35.678924+09:00 Fluidule dhcpcd[562]: eth0: carrier lost 
2026-03-31T22:00:35.686337+09:00 Fluidule kernel: smsc95xx 1-1.1:1.0 eth0: Link is Down 
2026-03-31T22:00:35.736808+09:00 Fluidule dhcpcd[562]: eth0: deleting address fe80::6e6e:e891:4b4:14a9

'smsc95xx 1-1.1:1.0 eth0: Link is Down'이라는 메시지에 주목해 보자. smsc95xx는 USB 기반 Ethernet 컨트롤러이다. 하나의 컨트롤러가 LAN과 USB를 동시에 제어하는데, 만약 USB쪽에서 문제가 발생하면 LAN 연결도 끊어지게 된다는 것이다. 이는 라즈베이파이 3B의 설계 구조 한계라고 한다. ChatGPT에게 물어보았다.

🌐 인터넷 사례 많냐?

👉 네, 꽤 많습니다. 특히 다음 키워드로 흔합니다:

  • “raspberry pi 3 usb ethernet disconnect”
  • “pi 3 usb instability”
  • “smsc95xx link down”
  • “urb status -32 raspberry pi”

👉 포럼/깃허브/StackOverflow에 반복적으로 등장

SSH 접속이 끊어지기 직전의 로그에서는 '2026-03-31T21:00:45.230089+09:00 Fluidule kernel: usb 1-1.4: urb status -32'라는 기록이 남았다. 'urb status -32'는 USB 전송 실패를 뜻한다. 종합하자면 USB 버스에서 먼저 문제가 생긴 뒤 그 여파로 LAN까지 끊어지는 흐름과 일치한다.

이 문제를 극복하고자 방향을 바꾸기로 했다. 

유선 LAN은 쓰지 않고, 다시 Wi-Fi로 Fluid Ardule(라즈베리파이)을 연결하였다. Mackie Onyx는 유전원 USB 허브로 연결하니 SSH 접속이 끊어지는 일은 발생하지 않았다. 마지막으로  USB  건반은 라즈베리파이에 직접 연결하지 않고, 이전에 만들어 둔 USB MIDI host를 거쳐서 이를 MIDI 케이블로 Mackie Onyx에 연결하였다. 이렇게 하니 훨씬 안정적으로 작동하였다. 지난 1월에 쓴 USB MIDI host 제작기는 여기('옆길로 샌 Ardule Project - USB MIDI host to DIN MIDI converter 만들기는 좌절과 극복의 연속이었다')에 있다. 이 물건을 Fluid Ardule 생태계에 넣으려면 아두이노 우노를 하나 더 사야 한다! 이번 일을 통해 전통적인 MIDI의 단순함과 견고함을 확실히 알게 되었다. 

만약 일찌감치 라즈베리파이 4B를 사는 것으로 문제를 해결했다면 훨씬 편했을 수는 있다. 그러나 고생 속에서 얻을 수 있었던 값진 경험을 놓쳤을 수도 있다. 그리고 덤으로, 여전히 굳건히 생태계를 지키고 있는 전통 MIDI의 의미까지도. 게다가 라즈베리 파이 4B는 2GB 모델이 10만원이 넘는다(board-only, 아이씨뱅큐, 오늘 기준).

실은 건반을 쳤을 때 마치 서스테인 페달을 계속 누르고 있는 것처럼 note off 신호가 전달되지 않는 현상이 지속적으로 발생하여 골머리를 앓는 중이었다. USB를 안정화한 다음에는 훨씬 줄기는 했으나 아직 해결해야 할 숙제로 남았다.

2026년 3월 29일 일요일

[Fluid Ardule] 최소 기능 구현판의 소개용 숏폼 동영상을 올리다

부팅과 더불어 자동으로 Salamander C5 Lite 피아노 사운드폰드가 로드되게 만든 Fluid Ardule 최소 기능 구현판의 소개용 숏폼 동영상을 만들어 올렸다. 사운드폰트의 변경(Salamander C5 ↔ Lite GeneralUser GS ↔ FluidR3_GM)은 키패드에서 수행할 수 있다.  


유튜브에 올린 동영상은 아래에 소개한다. 오디오 인터페이스를 Fluid Ardule의 사운드 출력용으로 연결해 놓았기 때문에 컴퓨터는 쓰지 않고 대신 헤드폰을 휴대폰에 대고 아주 '무성의하게' 녹음하였다. 편집 후 유튜브에 올리고 나니 아쉬움이 많이 남는다.


오디오 출력에는 USB 오디오 인터페이스를 이용하기 때문에 확장성이 좋고 헤드폰 출력도 거저 얻을 수 있으며, 기타나 마이크 등의 외부의 아날로그 오디오 신호를 믹싱하여 앰프로 출력하는 것도 가능하다. 그러나 USB 기기의 특성상 연결 즉시 인식에 약간의 시간이 걸린다. 

만약 다음과 같은 라즈베리 파이 전용 DAC hat("Raspberry Pi DAC Pro")을 이용한다면 장치 인식, 전원 문제, 부팅 속도 등에서 현저한 개선이 이루어질 수는 있겠다. 그러나 내가 지금 쓰는 Mackie Onyx Producer 2.2 오디오 인터페이스가 라즈베리파이 전용 DAC Hat보다 못할 이유는 전혀 없다. 게다가 DIN 5핀 MIDI 입출력 커넥터까지 붙어 있지 않은가. 이 기능을 Fluid Ardule에서 쓰도록 기능을 추가하려면 아직 한참 더 개발을 이어 나가야 하겠지만. 

라즈베리파이 DAC Pro(출처: 디바이스마트). 예전에는 IQaudio DAC Pro로 알려져 있었다. 이런 물건을 꽂으면 SPI TFT-LCD를 그 위에 꽂기가 어려울지도 모른다. TFT-LCD는 보조적인 정보 디스플레이로서 매우 쓸모가 있기 때문에 포기하고 싶지는 않다.

Fluid Ardule의 가장 취약한 점은 바로 라즈베리 파이 3B의 전원 커넥터이다. 케이스를 만들어서 내부에서 확실하게 고정하기 전까지는 계속 나를 불편하게 만들 것이다. 왜 마이크로 USB 커넥터는 이렇게 잘 빠지게 만든 것일까! 이 물건을 개발한 사람은 지옥에 가야 한다는...(링크) 그러나 개인이 집에서 DIY 하기가 좋다는 것은 함정이다.

마이크로USB 방식의 전원 커넥터가 헐거워져서 케이블을 건드리기만 해도 접촉이 나빠지고 잘 빠진다. 접착제로 붙여 버리고 싶다!

Fluid Ardule에는 무려 3 종류의 USB 주변기기가 쓰인다. 조작부에 해당하는 아두이노 우노(1602 LCD 키패드 실드 장착), 가장 핵심이 되는 오디오 인터페이스, 그리고 MIDI 키보드 컨트롤러. 전력 부족이 늘 걱정이 된다. 이따금씩 SSH 연결이 끊어지는 것도 혹시 전력 부족 때문이 아닌가 의심이 된다. 현재는 부팅과 더불어 systemd 서비스를 통해 자동으로 작동이 되는 상태이고, 개발 및 디버깅 목적으로만 SSH 접속을 요구하기 때문에 큰 문제는 없어 보인다. 그러나 보다 안정적인 작동을 위해 뭔가 대책을 세워야 한다. 유전원 USB 허브를 고려 중이지만 성능과 가격 양 측면을 모두 만족시키는 것은 잘 보이지 않는다. 결국은 전력 소모가 적고 라즈베이파이와 잘 붙는 전용 DAC hat을 선택하게 될지도 모른다.



2026년 3월 26일 목요일

[Fluid Ardule] 주변 부품 붙여 나가기

LED와 로터리 인코더를 아두이노 우노에 연결하였다. LED 점등용 전류 제한 저항은 처음에는 270옴을 사용하였으나 너무 밝아서 1K로 바꾸었다. 주변 기기의 인식 상황에 맞추어 적절하게 작동하도록 코드를 고쳤다. 멋진 케이스를 갖추지는 못했으나 제법 상용 사운드 모듈의 기능에 근접하고 있다.

이 DIY 기기의 장점은 '모듈화(modularity)'와 '확장성(expandability)'이다. 예를 들어 오디오 출력 장치는 고정되어 있지 않으며, 보유하고 있는 USB 오디오 인터페이스 중 리눅스에서 안정적으로 동작하는 class-compliant USB 기기를 적당히 골라서 쓰면 된다. 아직 테스트를 하지는 못했으나 오디오 인터페이스에 DIN MIDI 커넥터가 있으면 작동 가능할 것이다. 이러한 유연성은 리눅스 계열의 OS로 구동되는 라즈베리파이, 즉 작은 소형 범용 컴퓨터를 바탕으로 시스템을 구성했기 때문에 가능해졌다고 믿는다.

Fluid Ardule의 현재 시스템 구성. 주황색 점선으로 둘러싸인 영역이 Fluid Ardule의 코어에 해당한다.

코딩을 하면서 두 기기 간에 시리얼 통신을 하는 요령도 익히는 중이다. 예를 들어 정상적으로 연결되어 동작하는지를 주기적으로 확인하는 생존 신호인 heartbeat를 3초 주기로 보내는 것이다. 그러나 로그 파일에 이것까지 기록되면 너무 길어지므로 예외로 취급해야 한다.

다음 단기 목표는 사운드폰트 파일을 자유롭게 교체하는 기능을 넣는 것이다. 지금은 피아노 소리를 내는 사운드폰트가 자동으로 로드되게 만들어 두었다. 사운드폰트 교체, CC 제어, 사용자 프리셋 저장 및 로드 등 사운드 모듈이라면 당연히 추구해야 할 기능을 하나씩 넣어 나갈 것이다. 아두이노 우노와 라즈베리 파이 두 기기에서 각각 돌아가는 코드를 짜야 하고, 이는 시리얼 통신으로 서로의 상태를 정확히 파악하면서 제어할 수 있어야 한다.

코드를 통해 구현할 기능도 아직 많이 남았고, 케이스 제작에 들어가면 더욱 많은 고민을 해야 한다. 안정적으로 작동하게끔 양질의 전원을 사용하여 공급 계통을 확정하고, 각 주요 부품의 배치 또한 6개월에서 1년 정도의 기간에 걸쳐 점진적으로 달성해 나가게 될 것이다.

새로운 장난감인 Fluid Ardule 때문에 Nano Ardule MIDI Controller의 PCB 설계 마무리가 늦어지고 있다. 어차피 단일한 생태계를 즐기기 위해 만든 것이므로, 여러 강이 바다로 흐르듯 결국 한 곳에서 만나게 될 것이다.

이번 프로젝트는 아직 GitHub에 올리지 않았다. 서로 다른 하드웨어에서 돌아가는 한 짝의 프로그램을 짜야 함에도 불구하고 이제는 요령이 생겨서 파일명과 간단한 기록, 그리고 기억에 의존하여 느슨하게 버전을 관리하고 있는 상태이다. 그러나 진행 과정은 별도의 위키 사이트에 계속 기록하는 중이다.

물론 이런 방식이 지속 가능하지는 않으니, 필수 기능이 어느 정도 구현되면 GitHub에 공개할 생각이다.

2026년 3월 24일 화요일

[Fluid Ardule] 처음으로 건반을 연결하여 소리를 내다

Fluid Ardule 프로젝트 개요

Fluid Ardule은 2026년에 새롭게 시작한 DIY 프로젝트이다. 이 기기는 라즈베리파이 3B(소프트웨어 신시사이저 FluidSynth 설치)와 아두이노 우노를 결합한 음원 모듈에 해당한다. 아두이노 우노는 LCD와 버튼을 통해 상태 디스플레이 및 조작을 겸한다.

USB 기반 통신과 초기 구동

두 기기 사이에서 USB 포트를 통한 직렬 통신을 하면서 서로 정보를 주고받도록 하는 것이 첫 번째 목표였다. 기가비트, 스타링크 인터넷 시대에 9600~115200 bps의 직렬 통신이라니! 봉화대나 모르스 부호를 이용한 통신을 연상시킨다. 굳이 따지자면 봉화대도 광통신이다?

오디오 출력을 책임지는 USB 오디오 인터페이스와 USB MIDI 건반을 라즈베리파이에 연결과 동시에 정확히 인식하고, 준비가 갖추어졌을 때 다음 단계로 넘어가게 하는 코드를 짜느라 하루를 소비하였다. 라즈베리파이에서는 파이썬, 아두이노 우노에서는 C++을 사용한다.

USB 건반과 오디오 인터페이스가 연결된 상태에서 전원을 넣은 뒤 건반을 누르면 소리가 난다. 현재는 피아노 사운드인 Salamander C5 Light 사운드폰트(.sf2)를 기본으로 로드하도록 설정하였다.

아직은 테스트 단계이기 때문에 라즈베리파이에 SSH로 접속한 뒤 파이썬 스크립트를 실행하여 기동한다. 라즈베리파이가 시리얼 포트를 열라는 신호를 보내면, 먼저 전원이 들어와 있던 아두이노 우노에서는 리셋이 이루어진다. 최초 전원 투입에 따른 부팅인지, 또는 라즈베리파이의 요청에 의한 리셋인지를 구별하여 LCD에 적절한 메시지가 표시되도록 만드는 것이 향후 과제이다.

또한 라즈베리파이의 GPIO 단자에 USB-to-UART 케이블을 연결하여 PC에서 접속하면 네트워크 관련 서비스를 비활성화하여 시스템을 더욱 경량화할 수 있다.

Python script execution
파이썬 스크립트 실행 화면

아두이노 입력 구조와 설계 인사이트

아두이노 우노에는 1602 LCD 모듈과 키패드가 일체화된 실드(DFR0009 유사품)가 장착되어 있다. 5개의 버튼 스위치를 아날로그 핀 하나(A0)로 제어할 수 있다는 점은 매우 인상적이었다. 기존에는 각각 디지털 핀이 필요하다고 생각했기 때문이다.

물론 이 방식은 동시에 두 버튼을 누르는 입력을 처리할 수 없다는 한계가 있지만, 모드 전환과 같은 단순한 인터페이스에는 매우 적합하다. 이를 미리 알았더라면 이전에 제작한 Nano Ardule MIDI controller 설계 과정에서 훨씬 간결한 회로 구성이 가능했을 것이다. 현재 해당 회로는 KiCad에서 PCB 설계를 절반 정도 진행한 상태이다.

키패드 외에는 A2 핀에 가변저항을 연결하여 볼륨(MIDI CC #7)을 조절할 수 있도록 구성하였다. 향후에는 로터리 인코더와 여러 개의 LED를 추가할 계획이다.

향후 개발 계획

  • 디버깅 로그 기록 기능
  • 다양한 사운드폰트 로드 (예: FluidR3_GM.sf2)
  • 코러스 및 리버브 제어
  • USB MIDI 인터페이스 자동 인식
  • MIDI 라우팅 기능
  • TFT LCD 상태 표시

하드웨어 확장 및 운용 계획

보유 중인 Roland SoundCanvas SC-D70과 Mackie Onyx Producer 2-2는 리눅스에서 별도의 드라이버 없이 동작하는 class-compliant 장치이며 MIDI 인터페이스 기능도 제공한다. 이 장치를 활용하여 FluidSynth 출력과 함께 DIN MIDI 입출력까지 확장 가능한지 확인할 것이다.

현재는 라즈베리파이에서 파이썬 스크립트를 수동 실행하는 방식이지만, 시스템이 안정화되면 systemd 서비스로 등록하여 부팅 시 자동 실행되도록 구성할 예정이다.

2026년 3월 19일 목요일

자작 진공관 앰프의 전원 스위치 교체하기

자작 43 power pentode SE amplifier의 전원 스위치 고장과 관련한 글은 지난주에 쓴 일이 있다(링크). 납땜이 아닌 커넥터 체결 방식으로 바꾸기로 하고 알리익스프레스에서 부품을 주문하여 어제 받았다. 점심 시간을 이용하여 부품 교체를 완료하였다.


사무실 책상 앞에서 조용히 듣기에 이보다 좋은 소출력 앰프가 없다. 요즘 저렴한 블루투스 앰프가 많지만, 빨갛게 달아오른 진공관의 히터를 눈으로 보는 재미를 무엇이 대신할 수 있을까?


커넥터 작업 전용 크림핑 툴을 살 때에는 '자주 쓰지도 않을 공구를 사는게 옳은가'하고 항상 고민을 한다. 수공구 중에서는 가격이 꽤 나가기 때문이다. 그러나 깔끔하게 마무리된 작업 결과를 보면 만족도는 그 이상이다. 확실히 체결되고, 나중에 수리하기에도 좋고. 이는 아두이노 자작에서도 마찬가지.

부서진 식탁용 의자도 고쳐야 하는데... 여러 DIY 중 제일 하기 싫은 것이 목공과 도색이다. 왜? 잘 못하니까! 잘 하지 못하니까 자주 하지 않게 되고, 몸이 기억하지 못한다. 아주 드물게 냄비밥을 지으면서 꽤 잘 되었다고 만족하지만 결코 기억에 남지 않는 것과 비슷하다. 

2026년 3월 18일 수요일

라즈베리파이 3B에서 3.5인치 TFT 터치 LCD 작동시키기

라즈베리파이(이하 Pi로 표기) 3B에서 Volumio를 구동하던 시절, 3.5인치 TFT LCD(480x320)를 달아서 조작용으로 쓰려고 노력하던 때가 있었다. 휴대폰 앱으로 제어하면 되지만 반응이 늦거나 연결이 잘 되지 않는 문제가 종종 발생하기 때문이다. Pi의 공식 디스플레이는 아마 HDMI로 연결되는 7인치 LCD일 것이다. Pi의 GPIO 소켓에 그대로 꽂아서 쓸 수 있는 SPI(Serial Peripheral Interface) 방식의 3.5인치 중국산 TFT LCD는 구동시키기가 매우 까다로운 것으로 유명하다. 작년 여름에 온갖 시도를 다 해 보았으나 터치 좌표를 도저히 맞출 수가 없어서 포기하고 말았다. 관련 기록은 여기에 있다.

음원 파일 재생기로 쓰던 Pi는 2026년에 접어들면서 사운드폰트를 이용하는 소프트웨어 신시사이저인 FluidSynth 구동용 기기, 곧 ‘Fluid Ardule(= Fluidule)’로 변모하고 있다. 처음에는 사운드 캔버스를 본뜬 Fluid Canvas라는 이름도 고안했으나, 지금은 Fluid Ardule 쪽으로 기울고 있다. 

조작은 USB-serial로 연결한 아두이노(우노)에서 버튼과 인코더를 사용하여 실시할 예정이다. 조작을 위한 디스플레이는 아두이노에 연결된 1602 LCD가 될 것이다. 그러나 여기에서 보이는 정보량은 너무나 적다. 그래서 상태 표시용으로 Pi에 3.5인치 LCD를 다시 달아보기로 하였다. 터치 입력 기능은 일절 사용하지 않고, 단지 1초 정도의 간격으로 작동 상태를 보여주는 것으로 기능을 제한하였다.

이것 역시 쉽지 않았다. Raspberry Pi OS는 계속 발전하는 반면, 중국산 3.5인치 TFT LCD에 대한 드라이버 지원은 예전과 같지 않기 때문이다. LCD-show라는 드라이버 스크립트 모음이 꽤 쓸 만한 것으로 알려져 있고 작년에도 이를 사용했었다. 그러나 시스템에 뭔가 ‘침습적’인 흔적을 남기기 때문에 커널 업데이트 등에 대응하기 어렵다고 한다. 이미지나 동영상을 빠르게 재생할 것이 아니기 때문에 LCD-show를 쓰지 않는 단순한 방법을 알아본 끝에 겨우 성공하였다. 다음은 ChatGPT로 만든 부팅용 스플래시 이미지를 표시해 본 것이다. 전체 과정은 별도 위키 문서인 Raspberry Pi OS Installation and Optimization에 정리하였다.

Fluid Ardule boot splash image
액체 방울 속의 MIDI 커넥터. 원본 이미지 링크.

MIDI 주변기기를 Fluid Ardule에 연결하여 사용하거나 오디오 파일을 재생하는 기본 테스트는 전부 마친 상태이다. 아두이노를 이용한 조작반이 완성되면, Fluid Ardule에서 불필요한 기능을 없애야 한다. 그래야 부팅 시간도 빨라지고 FluidSynth 작동도 원활해질 것이기 때문이다. 목표 부팅 시간은 10초. 불가능하지 않다고 하니 시도할 가치는 충분하다.

아직은 Fluid Ardule에 키보드와 HDMI 모니터를 연결하여 직접 명령어를 입력해야 한다. HDMI 기능을 무력화시키면 Wi-Fi를 통한 SSH 접속을 해야 한다. 만약 네트워킹 기능까지 죽인다면 시리얼-USB 통신을 해야 한다(맞는 케이블 필요; 윈도우측의 드라이버 호환성 때문에 FTDI나 CP210x 칩 사용 제품 추천). 시스템 자원 소모를 극도로 줄인 통신 방법이라고 할 수 있다. 그런데 TFT LCD가 모든 GPIO 핀을 가리고 있어서 통신에 필요한 RX(10)/TX(8) 핀에 접근하기가 너무 나쁘다. 실제로 TFT LCD의 구동에 필요한 핀은 몇 개 되지 않지만, 2x13개의 핀 자리를 차지하고 있는 것이다.

GPIO 1-26 pins blocked by TFT LCD header socket
LCD 모듈의 핀헤더 소켓이 GPIO 1~26번 핀을 가리고 있다. 아래 사진에서 맨 오른쪽 핀이 2번이며, 1번은 안쪽에 있다.

다음 이미지와 같은 아이디어 상품도 있지만 가격이 꽤 비싸다. 케이블로 연결하는 GPIO expansion board라는 것도 존재한다.

GPIO extender product
그림 출처: Geekworm

가장 간단한 방법은 Pi 보드 뒷면에서 납땜을 하여 필요한 선 세 가닥을 따는 것이다. 아두이노 우노에서도 이런 짓을 하더니(관련 글 링크), 드디어 라즈베리 파이까지 손을 대게 되었다.


2026년 3월 19일 업데이트

라즈베리파이 3B에서 사운드를 설정하고 FluidSynth를 활용하는 방법을 별도의 위키 문서인 Raspberry Pi OS Installatio and Optimization에서 작성해 나가고 있다. 앞으로 아두이노 우노를 이용한 조작반 제작과 펌웨어 설계, 그리고 라즈베리파이의 부팅 속도 향상 등 할 일이 많다. 케이스는 또 어떻게 할 것인가?

이 작은 부품 하나가 많은 상상력과 영감을 불러 일으킨다.