아크릴 레이저 커팅해서 키보드 자작했습니다.


keyboard-layout.jpg


이런 레이아웃입니다.

레이아웃이 이런건 "키보드의 중심" == "B 버튼" == "스페이스바 중심"을 모두 일치시키고 싶었습니다. 위 레이아웃으로도 목표 달성은 실패했으나 한 3mm 정도의 오차가 있을 뿐 거의 중심을 맞추긴 했습니다.


저렇게 레이아웃을 그리고 벡터 그래픽 툴로 도면을 그렸습니다. 저는 잉크스케이프를 사용했습니다.


layout.jpg



이렇게 네 장으로 구성했습니다. 맨 아래 작은 사각형은 컨트롤러 보드 들어가는 자리입니다. 컨트롤러 보드는 black pill이라고 불리는 stm32f10c8 cortex-m3 칩을 쓴 아주 싼 보드를 알리익스프레스에서 사서 사용했습니다.


switch_normal_position.jpg


도면을 아크릴 커팅 업체에 보내서 아크릴을 받고요. 이렇게 스위치를 끼웁니다.

체리 MX-갈축 스위치를 알리익스프레스에서 샀습니다.

자세히 보시면 일일이 다이오드를 납땜했습니다.


gluegun.jpg


혹시 스위치 떨어질까봐 글루건으로 스위치를 아크릴하고 붙였습니다. 이렇게 지저분할 줄 알았으면 그냥 본드로 붙일껄 그랬어요.


wiring_done.jpg


PCB는 그릴 줄 몰라서 그냥 아크릴 밑에 점퍼 날려서 배선 납땜했습니다. 이거 하는데 10시간 넘게 걸린것 같네요... 노가다입니다.


socket.jpg


사진 안쪽으로 보드가 보이죠? 컨트롤러 보드입니다. 보드에서 선을 빼서 스위치랑 연결할 소켓을 붙이고 스위치쪽에도 핀헤더를 붙여서 소켓에 꼽아 쓰는 식으로 만들었습니다.

싸구려 보드라서 보드가 언제 죽을지 몰라, 보드가 죽으면 보드에 펌웨어만 새로 올려서 소켓 붙여서 다시 핀헤더에 꼽으면 연결할 수 있으니까요.


gosopeak_01.png


완성입니다.

레이아웃이 확정되기 전에 키캡을 주문해서 키 위치를 알 수 없었기에 무각 키캡입니다. 실제로 오른쪽 시프트는 원래 키패드 0번키 사이즈(2u던가..)입니다.

자판을 다 외우고 있다고 생각했는데 의외로 숫자키와 같이 있는 특수문자는 헷갈리더군요. 그래서 키캡 측면에 작게 적었습니다..ㅎㅎ


펌웨어는 https://github.com/navilera/Gosu 을 사용했습니다. 네.. 제가 만든 펌웨어입니다. ^^


원래는 그냥 qmk 쓸라고 했는데 키보드 펌웨어치고 너무 복잡하여 그냥 간단하게 새로 만들었습니다.

그래도 키 맵 재지정도 되고, 특정 키를 누르고 USB를 꼽으면 대용량 저장장치로 인식되면서 그 상태에서 키 맵과 펌웨어 업데이트가 가능합니다.


블루투스도 만들어야 하는데 현 시점에서 제가 만족하며 쓰고 있어서 필요성을 느끼지 못하여 동기부여가 안되고 있습니다. 언젠가 동기부여되면 블루투스도 만들려고요.