
아이들에게 화면 대신 소리로 이야기를 들려주고 싶었던 한 개발자가 스토리 박스를 직접 만들어 오픈소스로 공개했어요. 이름은 Marelleo, 두뇌 역할은 저렴한 마이크로컨트롤러인 ESP32가 맡았어요.
스토리 박스가 뭐냐면, 아이가 혼자서도 동화나 노래를 골라 들을 수 있게 만든 작은 오디오 플레이어예요. 유럽에서는 피규어를 올리면 이야기가 나오는 독일의 Toniebox, 카드를 꽂으면 재생되는 영국의 Yoto 같은 제품이 꽤 대중적이에요. 그런데 이런 상용 제품은 콘텐츠가 제조사 생태계와 계정에 묶여 있고, 새 이야기를 들으려면 피규어나 카드를 계속 사야 하죠. '우리 집에 있는 동화 파일을 그냥 틀어주고 싶은데?' 하는 부모 개발자의 마음이 이런 DIY 프로젝트의 출발점이 되는 경우가 많아요.
Marelleo의 정확한 부품 구성, 케이스 설계, 코드는 프로젝트 블로그에 자세히 나와 있으니 꼭 원문을 확인해 보세요. 여기서는 이런 스토리 박스가 어떤 원리로 동작하는지, 직접 만들려면 무엇을 알아야 하는지 풀어볼게요.
스토리 박스는 어떻게 동작할까
구조는 생각보다 단순해요. 아이가 고른다 → 기기가 알아챈다 → 소리가 나온다, 이 세 단계거든요.
1. 고르기: NFC/RFID 태그 대부분의 스토리 박스는 NFC나 RFID 태그로 '무엇을 틀지'를 정해요. 이게 뭐냐면 교통카드랑 같은 원리예요. 카드를 리더기에 가까이 대면 카드 속 작은 칩이 고유 번호(UID)를 알려주죠. 이 태그를 피규어 바닥이나 카드에 붙여두면, 글을 못 읽는 아이도 '토끼 인형을 올리면 토끼 이야기'처럼 직관적으로 고를 수 있어요. DIY 쪽에서는 MFRC522나 PN532 같은 저렴한 리더 모듈이 자주 쓰여요.
2. 판단하기: ESP32 ESP32는 Espressif가 만든 마이크로컨트롤러예요. 아주 싼 칩에 와이파이, 블루투스, 듀얼코어 CPU가 들어 있어서 IoT 취미 개발의 표준처럼 쓰여요. 아두이노 우노보다 훨씬 강력하고, 라즈베리파이처럼 운영체제를 부팅할 필요가 없어서 전원을 켜면 바로 동작하고 전기도 적게 먹어요. 아이용 기기에는 이 '즉시 켜짐'이 정말 중요하거든요.
3. 들려주기: I2S 오디오 ESP32에는 I2S라는 디지털 오디오 전송 인터페이스가 있어요. 쉽게 말해 칩끼리 소리 데이터를 주고받는 전용 통로예요. 여기에 MAX98357A 같은 작은 I2S 앰프 모듈을 연결하면 스피커를 바로 울릴 수 있어요. 오디오 파일은 microSD 카드에 넣어두고 MP3 디코딩은 소프트웨어 라이브러리로 처리하는 방식이 흔하고, 더 간단하게 가려면 DFPlayer Mini처럼 디코딩까지 알아서 해주는 MP3 모듈을 붙이기도 해요.
전체 흐름을 정리하면 이래요.
- 태그가 감지되면 UID를 읽는다
- 미리 정해둔 매핑 표에서 그 UID에 연결된 폴더를 찾는다
- SD 카드의 파일을 읽어 I2S로 스트리밍한다
- 태그를 떼면 일시정지하고, 다시 올리면 이어서 재생한다
업계 맥락: 상용 제품 vs 오픈소스 선배들
사실 이 분야에는 꽤 오래된 오픈소스 커뮤니티가 있어요. 아두이노와 DFPlayer로 만드는 TonUINO는 독일 부모들 사이에서 유명하고, ESP32 기반에 웹 설정 화면까지 갖춘 ESPuino, 라즈베리파이로 만드는 Phoniebox 같은 프로젝트도 있어요. Marelleo도 이런 흐름 위에서 한 부모가 자기 아이에게 맞춰 다시 설계한 결과물이라고 볼 수 있어요.
DIY가 특히 의미 있는 이유는 클라우드 의존 리스크 때문이에요. 제조사 서버에 기대는 기기는 회사가 서비스를 접으면 그대로 쓸모없어질 수 있거든요. 실제로 Spotify가 차량용 기기 Car Thing 지원을 끝내면서 기기가 동작하지 않게 된 사례가 있었죠. 반면 SD 카드와 로컬 매핑만으로 동작하는 스토리 박스는 인터넷이 끊겨도, 만든 회사가 없어져도 계속 돌아가요. 아이가 몇 년씩 쓸 물건이라면 이 차이는 꽤 커요.
한국 개발자에게 주는 시사점
임베디드 입문 프로젝트로 정말 좋아요. 결과물이 눈에 보이고 가족이 실제로 써주니까 동기부여가 확실하거든요. 부품값도 ESP32 보드, RFID 리더, 앰프, 스피커, 배터리를 다 합쳐 대략 몇만 원 수준이에요. 개발 환경은 익숙한 Arduino IDE부터 PlatformIO, 공식 프레임워크인 ESP-IDF까지 고를 수 있고, 웹 개발자라면 MicroPython으로 가볍게 시작해 볼 수도 있어요.
한국에도 비슷한 수요는 이미 있어요. 책에 펜을 대면 소리가 나오는 세이펜처럼 '화면 없는 오디오 학습'은 익숙한 개념이거든요. 여기서 한 발 더 나가 할머니가 직접 읽어준 동화를 녹음해 태그에 연결하거나, 우리말 동요를 테마별 카드로 묶으면 시중 제품으로는 못 하는 우리 집만의 기기가 돼요.
다만 몇 가지는 꼭 챙기세요. 시판 오디오북 파일을 복제해 공유하면 저작권 문제가 될 수 있고, 리튬 배터리는 보호 회로가 있는 제품을 써야 해요. 작은 부품이 빠지지 않게 케이스를 튼튼하게 만드는 것도 중요하고요. 판매까지 생각한다면 KC 같은 인증 절차도 고려해야 해요.
마무리
화면 없는 장난감 하나를 만드는 데 필요한 건 몇만 원어치 부품과 주말 몇 번, 그리고 아이를 위한 마음이면 충분해요.
여러분이라면 아이나 조카, 혹은 부모님을 위해 어떤 기기를 직접 만들어 보고 싶으세요? 편리한 상용 제품과 손이 많이 가지만 온전히 내 것인 DIY, 어느 쪽에 더 끌리시나요?
🔗 출처: Hacker News