키보드 자작에 관심을 두기 시작하고 나서, 핸드 와이어링을 해보다가 결국 Kicad 까지 손을 대기 시작 했습니다.
납땜은 익숙하다고 생각하고 있었고, Kicad 의 강력함에 감탄을 하고 있지만 Kicad에서 사용하는 symbol과 footprint를 모두 직접 만들기는 많이 어려웠습니다.
그래서 항상 심볼과 풋프린트를 모두 제공해 주시는 능력자분들에게 감사를 하고 있었는데요, 결국 저의 부주함이 사건이 터지게 만들었습니다.
RP2040 Zero를 사용해서 히트박스를 만드려고했고, 라이브러리를 찾았는데 심볼이 없는 풋프린트만 찾을 수 있었습니다.
그래서 이렇게 심볼을 만들었고, 해당 심볼에 다운받은 풋프린트를 연결하고 부품을 배치 했습니다.
그리고 나서는 라우팅은 능력자들이 만들어둔 FreeRouting을 사용 했습니다. 저는 제가 직접 하는 것보다 FreeRouting의 실력을 더 믿습니다. 저보다 능력자들이 만들어주신 것이니까요.
제가 만든 심볼 + 다른 사람이 만든 풋프린트 + FreeRouting의 힘으로 기판을 주문하고 받았는데요…..
결국 기판은 정상 작동 하지 않았습니다.
+5V 핀을 납땜하지 않아야 했고, GND를 따로 이어줘야 했습니다.
그 원인을 찾아보니 심볼과 풋프린트가 매칭은 되었지만, 풋프린트의 위치가 달랐던 것인데요
PinOut | 내가 만든 심볼 | 다운받은 풋프린트 |
+3V | 21 | 21 |
GND | 22 | 23 |
+5V | 23 | 22 |
저는 일반적인 풋프린트는 시계 방향 아니면 반시계 방향으로 연번으로 해서 할당하는 것으로 생각하고 심볼을 작성 했고, 풋프린트 제작자는 +3/GND/+5 이렇게 되어 있는 부분을 +3/+5/GND 순서로 만든 것입니다. (풋프린트 작성 시 이렇게 해야 하는 규칙이 따로있는건가요??)
결국 GND쪽에 +5V가 걸리는 문제가 발생한 것이고, 주문한 PCB로 제대로 작동되지 않았고, 처음 조립했던 RP2040Zero와 SSD1306 액정도 손상을 입었습니다.
- R02040Zero는 발열과 함께 일정 시간 이후 과부하 걸린것처럼 키 입력이 느려지고, 컴퓨터와 연결이 해제 되었습니다.
- SSD1306은 심한 발열이 계속 발생하였습니다.
결국 FreeRouting은 너무 잘 작동한 것이고, kicad의 DRC체크에서도 문제가 없었지만 기초 자료 자체가 잘못된 것이니 휴먼 에러인 것이죠.
지금까지는 심볼과 풋프린트를 모두 함께 제공해주는 라이브러리를 사용해서 문제가 없었는데요, 결국 심볼 없는 풋프린트 사용 시 주의 사항을 확실하게 체험했네요.
따라서, 심볼 없는 풋프린트를 사용할 때 반드시 실물 핀아웃과 심볼 그리고 풋프린트의 배선을 모두 확인해야 합니다.