애들이 어려서 버튼을 누르면 동물소리, 노래, 멜로디 등이 나오는 사운드북(멜로디북)을 많이 사용하고 있습니다.
그런데 구입하고 얼마 지나지 않으면 항상 고장이 나더군요.. 배터리를 교체해봐도 안되는 걸 보면 대부분 버튼이나 내부에 뭔가 고장이 나는 것 같습니다.
그래서 책은 아니지만 버튼을 누르면 각종 소리가 나는 사운드박스(SoundBox)를 만들기로 했습니다. 각 버튼에 따른 소리는 수시로 업데이트가 가능하게 만들 예정입니다.
대략적인 구성은 아래와 같습니다.
알리에서 주문한 부품 중 가장 중요한 부품이 도착해서 바로 개발을 시작했습니다.
하드웨어
아래는 ESP8266 기반의 보드로 wifi 모듈과 충전회로가 포함되어 있습니다. 저처럼 하드웨어를 잘 모르는 사람이 사용하기 딱 좋습니다.
NodeMCU 펌웨어를 올리고 LUA 언어로 개발할 수 있습니다.
펌웨어
현재 펌웨어는 거의 개발을 완료하였습니다. 버튼이 아직 도착 전이라서 실제 버튼 기능은 테스트하지 못했네요.
아무런 설정이 되지 않은 상태에서 전원이 켜지면 AP 모드로 동작되게 하였습니다. 아래 그림에서처럼 “SoundBox-172.16.0.1″로 표시됩니다.
AP에 연결한 후 AP의 SSID에 표시된 아이피 주소(172.16.0.1)로 웹브라우저를 사용하여 접속(http://172.16.0.1)하면 관리 UI가 표시됩니다.
– 다른 AP에 연결할 수 있도록 WiFi 설정 지원
– Home Assistant 연결 설정 (버튼 클릭 시 연결할 스위치 또는 스크립트 설정 및 HA 연결 암호 설정)
– SoundBox 설정 (배터리를 오래 사용하기 위한 슬립모드 진입 시간 설정)
동작
일단 WiFi, HA 설정이 되고 나면 시작 시 자동으로 해당 AP에 연결되고, HA에 시작 명령을 보내고 HA는 구글홈으로 TTS로 “SoundBox”라는 음성을 출력합니다.
이후 SoundBox에서 버튼을 누르면 해당 버튼에 대한 명령이 HA로 보내지고, HA에서 구글홈으로 MP3 파일을 재생시킵니다.
SoundBox가 일정 시간 이상 사용되지 않으면 자동으로 슬립모드에 들어가게 되고, 버튼 중 전원 버튼을 누르면 다시 동작을 시작합니다.
18650 배터리로 한 번 충전 후 몇 개월 사용하는 것이 목표입니다. SoundBox 외부에 충전 단자를 준비해서 마이크로 USB 포트로 충전할 수 있게 처리할 예정입니다.
일단 애가 두 명이라서 두 대를 만들고, 나중에 WiFi Smart Button으로 하나 더 만들어서 이거저것 연결해서 사용해볼까 합니다.
어마어마하시네요. 무슨 일을 하면 이런 능력을 갖게 되나요?
나중에 기회가 되면 저도 이런 자작 기구를 만들어 봤으면 좋겠네요.
그냥 software 개발하는 일을 합니다. 전자 관련된 부분은 이것저것 생각한 거 만들려고 하다보니 필요해서 조금씩 공부한 정도라서 간단한 것만 만드는 수준입니다. 요즘은 각종 보드가 잘 나와서 조금만 공부하면 할 수 있더라구요.
오늘 블로그 우연히 왔습니다.
관심분야가 저와 아주 흡사하시지만 저와 다르게 코딩 능력이 있으시네요.
전 코딩 능력이 없어 언제나 구글 검색후 저생각 비슷한 프로그램 사용하는 수준인데 부럽습니다.
시놀, 주식 자동거래, 홈오토메이션, 메이커, 모든게 기본이 코딩능력이 필수더군요.
나이가 좀 있어 책을 봐도 실력이 늘지 않네요.
할줄아는게 프로그램 만드는 일이라서 필요한 것이 있으면 재미삼아.. 공부도 할겸해서 이것저것 해보고 있습니다. 요즘엔 툴과 기기들이 잘 만들어져 있고 코딩을 쉽게 할 수 있는 것들도 많이 나와 있더군요.