안녕하세요.
저는 펌웨어 개발자로 기존에도 기계식 키보드를 사용하고 있었지만 깊이 있게 알지는 못했고 커스텀 키보드라는 것도 들어는 보았는데 실제로 어떻게 구성되어 있는지 알지 못했습니다.
제 블로그 이웃분께서 직접 키보드를 만든다고 하셔서 저도 만들고 싶다는 의견을 드리니 같이 제작해 보면 좋을 것 같다고 하셔서 진행을 해보았습니다.
참고로 저와 블로그 이웃분께서는 커스텀 키보드에 대해서 잘 모르는 상태로 시작을 했기에 완성도면에서 그리 높지는 않습니다. 다만 직접 대부분 제작해서 나만의 키보드가 생긴다는 것에 의미 있을 것 같습니다. 각자 키보드를 만들지만 키보드 배열은 서로 원하는게 달라서 회로도와 아트웍은 각자하고 제가 펌웨어를 담당, 기구 케이스는 블로그 이웃분께서 진행하시기로 했습니다.
키보드 레이아웃
먼저 키보드 레이아웃을 만들어야 하는데 아래 사이트에서 키보드 레이아웃을 만들 수 있습니다. 저는 45키로 구성된 배열로 제작을 했고 40% 배열이라고도 하더군요. 이 사이즈에서는 표준배열이란게 없어서 맞는 키캡 찾기도 어려웠습니다. 저는 나중에 알아서 너무 작게 만들었나 생각이 들었는데 막상 만들고 나니 귀여운 디자인이 되어서 마음에 들었습니다.
http://www.keyboard-layout-editor.com/
보강판 및 PCB 레이아웃
기보드 레이아웃에서 생성한 파일로 아래 링크에서 보강판 레이아웃 데이터를 추출해서 PCB로 변환합니다. 그리고 키 부품들을 이 레이아웃 부품 위치에 배치를 해줍니다. 이부분은 블로그 이웃분께서 작업을 해주셨습니다.
회로설계
보드는 2개로 구성되는데 키들이 있는 메인 보드와 MCU가 있는 MCU 보드입니다. 회로 자체는 단순하게 매트릭스 구조로 되어 있고 네오픽셀도 각 키마다 추가되어 있습니다.
MCU는 RP2040칩을 사용한 보드를 이용했습니다.
MCU 보드는 별도로 판매하는 보드를 결합하는 형태로 만들고 또 이보드를 키보드의 메인보드에 결합하는 형태입니다.
보드 아트웍
회로도 작성과 아트웍은 EasyEDA Pro라는 툴을 사용했고 보드는 4층으로 진행했습니다. 저는 아트웍은 취미로 하는 수준 밖에 안되어서 조금 비싸더라도 라우팅이 용이하게4층으로 했습니다.
보드 제작 및 조립
PCB만 주문했기 때문에 모든 부품을 직접 땜해서 조립을 하였습니다.
키스위치와 보강판까지 결합하였습니다.
키캡까지 결합하니 이제 키보드 처럼 보입니다. 키캡은 MDA 프로파일로 모든 키 높이가 같아서 사용할 수 있는 모든 키가 있어서 알리에서 구매를 하였습니다.
키보드 펌웨어 QMK, Vial
이제 중요한 키보드 펌웨어는 오픈소스 중에 QMK라는 것을 적용하고 실시간 키매핑을 위해서 Vial을 사용했습니다.
QMK공식 사이트 입니다.
Vial은 QMK에 옵션을 추가해서 사용하는 것으로 QMK의 단점인 키매핑을 변경하면 펌웨어를 다시 빌드해서 다운로드해야 하는 점을 개선한 버전입니다. 비슷하게 VIA가 있는데 VIA는 깃허브 저장소에 등록된 키보드만 되기 때문에 불편한 부분이 있습니다. Vial은 펌웨어만 Vial을 지원하도록 하면 브라우저를 통해서 온라인이나 PC 프로그램을 통해서 바로 키매핑을 할 수 있습니다.
제 키보드용으로 만든 Vial 링크입니다.
https://github.com/chcbaram/vial-qmk/tree/baram-45k/keyboards/baram/45k
키보드에 펌웨어 다운로드 후에 웹브라우저나 아래 그림의 PC 프로그램을 통해서 키 매핑을 진행하면 됩니다.
키보드 임시 케이스
블로그 이웃분께서 정식 케이스 나오기 전까지 사용하라고 3D프린터로 임시 케이스를 만들어 주셨습니다.
이제 좀 완성품 처럼 보입니다.
키모드 정식 케이스
블로그 이웃분께서 이제 정식으로 나무로 케이스를 제작해서 보내 주셔서 조립을 완료 하였습니다. 외부는 오일 코팅이 되어 있어서 아직 냄새가 좀 나긴 하는데 시간이 지나면 없어 질 것으로 보입니다.
뒷면에는 케이스 제질이 나무기 때문에 가벼워서 황동추를 추가해 주셨습니다. 그리고 황동추에는 각자의 로고도 추가해 주셨구요.
최종 완성된 모습입니다.
실제 사용할때 모습인데 팜레스트가 기존에 사용하던 것에 맞춰져 있어서 좀 크긴한데 사용하는데 문제는 없습니다. 키배열이 펑션키와 숫자키 그리고 특수키도 일부 없기 때문에 펑션키와의 조합으로 사용해야 해서 기억을 위해 앞에 조합키를 프린트 해서 현재는 기억이 안나는 키들은 보면서 타이핑 하고 있습니다.
최종 케이스 영상을 첨부하니 내부 구조를 확인해 보실 수 있을 것 같습니다.
여기까지 해서 나만의 커스텀 키보드를 제작하는 과정을 공유해 보았습니다. 실제 이것저것 비용을 따져 보면 꽤 많이 소요되었고 들인 비용에 비해서 키감이나 소리등의 느낌은 전문으로 커스텀 키보드를 빌드하시는 것에 비해서는 좋지 않습니다.
다만 내가 구성하고 싶은 배열로 펌웨어도 오픈소스지만 수정하면 내가 필요한 기능도 넣을 수 있는 유일한 키보드가 있다는 점이 장점인 것 같습니다.
출처 :https://www.clien.net/service/board/use/18526785?od=T31&po=0&category=0&groupCd=#comment-point