arrow_back 프로젝트 목록으로

2025-12-1

[HW 개발] WaveRunner: 온디바이스 AI 보청기

소음 속에서도 또렷한 대화를, 온디바이스 AI 음성 증폭기 'WaveRunner' 개발기


프로젝트 개요

WaveRunner는 소음 환경에서 특정 화자의 목소리만 분리해 증폭해주는 AI 보청기입니다. 일반 보청기/음성 증폭기가 주변 소리를 모두 키워버리는 한계를 넘어, 양쪽 귀 마이크의 시차(ITD)와 화자 임베딩, 립리딩 AI 모델 을 활용해 듣고 싶은 사람의 목소리만 골라 들려주는 것을 목표로 삼았습니다.

  • 평균 SNR 7.01dB 향상
  • 잡음 70% 이상 제거
  • 온디바이스 실시간 추론 지연 8ms
  • 배터리 6시간, 최대 출력 125dB

내가 맡은 부분 — 온디바이스 웨어러블 HW

AI 모델이 아무리 좋아도, 귀에 걸리는 작은 디바이스 안에서 실시간으로, 저전력으로, 안정적으로 동작하지 않으면 의미가 없습니다. 저는 AI 모델 추론기와 보청기 간의 무선 알고리즘 및 펌웨어 설계를 통해 보청기 하드웨어를 제작하였습니다.

1. 하드웨어 선정 — EDOM Technology TSE/FAE와의 상담

요구 스펙(저전력 + 듀얼 마이크 + 실시간 오디오 처리 + BLE)을 만족하는 칩셋을 고르는 과정이 만만치 않았습니다. 프로토타입에서 ESP32-S3를 사용하여 상대방의 립리딩을 하는 AI 모델을 탑재해보았지만, 성능 부족으로 휴대폰에 Off-Loading을 진행하였습니다.

EDOM Technology의 TSE(Technical Sales Engineer)와 FAE(Field Application Engineer)와 직접 상담하면서 후보 칩들의 데이터시트를 검토하고, 실제 양산 단계의 공급 안정성, 패키지 옵션, 평가보드 지원을 고려해 칩셋을 결정했습니다. 단, AI 칩 수급 난항으로 인해 빠른 수급을 할 수 없었습니다.

2. ESP32 + FreeRTOS — 실시간성과 Octal RAM 사이의 트레이드오프

초기 프로토타입에서는 ESP32 기반으로 FreeRTOS 태스크를 분리해 오디오/비디오를 WebSocket으로 송신하는 구조를 구현했습니다.

문제는 ESP32의 비효율적인 성능 문제였습니다.

  • 실시간성: 오디오 스트림과 비디오 스트림은 짧은 주기로 빠르게 UDP 송신해야 함. 휴대폰에서 재조립 과정 거침.
  • Octal RAM 오버플로우: 비디오 프레임 버퍼링 때문에 큰 버퍼가 필요한데, malloc 등 동적 스토리지를 잡으면 malloc 과정 오버헤드와 ovf 발생

두 요구가 정반대 방향으로 잡아당기는 상황에서, 태스크 우선순위·버퍼 크기·DMA 청크 단위를 수십 번 갈아엎으며 트레이드오프 지점을 찾아야 했습니다. 결국 오디오는 짧은 링버퍼 + 높은 우선순위 태스크, 비디오는 더블 버퍼 + DMA 기반 비동기 송신으로 분리해서 해결했습니다. Wi-Fi Task는 Core1에 Pin 하고, Core0에서 이미지, 오디오 인코딩 진행.

3. 4-Layer PCB — 랭스 매칭과 스타 그라운딩

귀걸이형 폼팩터에 들어갈 회로를 4레이어로 설계하면서 새로 익힌 것들:

  • 랭스 매칭(Length Matching): 고속 신호 라인(특히 차동 페어)의 길이를 nm 단위로 맞춰서 스큐를 최소화. 듀얼 마이크 입력은 양이 시차(ITD) 알고리즘 성능과 직결되어서, 두 마이크 신호 경로의 길이를 거의 동일하게 맞추는 게 결정적이었습니다.
  • 스타 그라운딩(Star Grounding): 아날로그 그라운드와 디지털 그라운드를 한 점에서 만나게 해서 디지털 노이즈가 아날로그 회로에 섞이는 걸 방지. 마이크 입력단의 SNR이 눈에 띄게 좋아졌습니다.
  • 보청기에 사용하는 Knowles Driver 채택과 출력 임피던스 매칭

스키매틱 설계 → 시뮬레이션 → 1차 PCB 아트워크 → 추가 소형화 기판 설계까지 끝냈습니다.

4. NPU 도입 검토 — Alif Ethos-U55

온디바이스 AI 추론을 8ms 안에 끝내야 하니까, 범용 MCU만으로는 한계가 있을 거라 판단해 Alif Semiconductor의 Ethos-U55 NPU 탑재 칩들(Ensemble 시리즈)을 탐방했습니다.

  • Cortex-M55 + Ethos-U55 조합이 keyword spotting / 음성 분리 같은 워크로드에 어떤 성능을 내는지 벤치마크 자료 검토
  • TFLite Micro 기반 모델을 NPU로 오프로드했을 때의 전력/지연 이득 계산 (Wi-Fi 미사용과 NPU 100% 오프로드 시 약 0.5ms에 처리 가능)
  • 양산 단가, 개발 툴체인 성숙도, 공급망 안정성까지 종합 비교

최종 양산 칩으로 채택하진 않았지만, "범용 MCU vs NPU 내장 칩"의 의사결정 프레임을 직접 세워본 경험은 다음 프로젝트에서 바로 써먹을 수 있는 자산이 됐습니다.

5. 하드웨어 프로토타이핑 — 3D 프린팅 자동화 라인

초기 시제품 단계에서는 외주 사출이 비효율적이라 판단, 자체 3D 프린팅 팜을 구축했습니다.

  • 1차 3D 모델링 → DfAM(Design for Additive Manufacturing) 기준으로 생산성 확보
  • 3D 프린팅 업체 LUGO Labs와 MOU 의사 확인
  • 인체공학적 외부 하우징 설계로 장시간 착용감 개선

6. 3D모델링, 프로토타이핑

7. 펌웨어 & 앱 연동

  • 안드로이드 앱과의 Wi-Fi WebSocket 통신 구현
  • 앱에서 EQ 조절, 화자 등록(Target Speech Hearing), AI 모델 업데이트 제어
  • “대화하고 싶은 상대를 몇 초간 바라본 뒤 버튼 → 그 사람의 음성 임베딩이 등록 → 이후 움직여도 그 사람 목소리만 분리” 라는 UX를 펌웨어 인터럽트 레벨에서 처리

가장 까다로웠던 지점들

  • 레이턴시 vs 모델 성능의 트레이드오프: 8ms 이내로 못 들어오면 사용자가 입모양과 소리의 어긋남을 느꼈습니다. 모델 크기를 줄이면서도 SNR 향상치를 7dB 이상으로 유지하기 위해 양자화 전략을 여러 번 갈아엎었습니다.
  • 귀걸이형 폼팩터 안에 회로·배터리·드라이버·듀얼 마이크를 다 넣기: 양이 마이크 간격은 알고리즘 성능과 직결되어서 함부로 줄일 수 없고, 배터리는 12시간을 버텨야 했습니다.
  • 실시간성과 메모리의 줄다리기: ESP32 단계에서 겪었던 octal RAM 오버플로우 문제는, 결국 “쓰고 싶은 만큼 다 쓰면 안 되는” 임베디드의 본질을 가르쳐줬습니다.
  • DfAM: 사출 금형으로 가기 전까지 모든 외형을 3D 프린팅으로 양산해야 해서, "프린팅 가능한 형상"으로 외관과 내부 구조를 동시에 최적화하는 게 생각보다 큰 작업이었습니다.

이 프로젝트에서 얻은 것

  • 칩셋 벤더와의 실무 커뮤니케이션 (EDOM TSE/FAE 상담)
  • ESP32 + FreeRTOS 기반 멀티태스크 오디오/비디오 송신 구조 설계
  • 4-Layer PCB의 랭스 매칭, 스타 그라운딩, 임피던스 컨트롤
  • NPU 아키텍처 평가 (Alif Ethos-U55 등) 및 칩 선정 의사결정 프레임
  • DfAM 기반 3D 프린팅 양산 설계
  • 온디바이스 AI 통합 파이프라인 (학습 → 양자화 → 실시간 추론 → OTA)

수상 내역

2025

  • ‘인천광역시 제2회 대학 연합 창업아카데미’ 최우수상(2위) 수상
  • ‘제11회 인천광역시 공공데이터 활용 경진대회’ 최우수상(1위) 수상
  • ‘전국 범정부 공공데이터 활용 경진대회’ 출전
  • ‘인천광역시 제2회 대학 연합 창업아카데미’ 우수 아이디어 선정
  • ‘학생 창업유망팀 U300+ 성장트랙(A)’ 선정
  • ‘인천대학교 청년 소셜벤처 창업캠프 데모데이’ 대상
  • ‘하나금융그룹 하나파워온 하나 소셜벤처 유니버시티’ 수료
  • ‘2025 메이커 페어 서울’ 부스 운영

진정 사람들이 필요한 기술을 만들어보기 위해 노력해본 귀중한 경험이었습니다.