다른 명령
Lily58 매크로 키보드
좋습니다. Lily58은 이미 ZMK 공식 저장소에 shield로 포함되어 있어서, **핸드와이어링이라도 devicetree를 새로 짤 필요 없이 공식 핀맵 그대로 배선**하면 기존 `lily58` shield 설정을 그대로 쓸 수 있습니다. 이게 제일 편한 길입니다.
- 1. 매트릭스 구조 확인
- diode-direction: **col2row** (다이오드 캐소드가 row 쪽으로) - Row: 5개, 양쪽 half 공통 핀 사용 (nice!nano pro_micro 넘버링 기준 5, 6, 7, 8, 9번) - Column: 왼쪽 6개 + 오른쪽 6개 (엄지 클러스터 포함해서 총 columns=16으로 offset 처리됨)
정확한 컬럼 핀 번호(왼쪽/오른쪽 각각)는 제가 외워서 알려드리면 오타 위험이 있어서, 공식 핀맵 다이어그램을 보시는 걸 추천합니다:
👉 https://docs.typeractive.xyz/build-guides/lily58-wireless/troubleshooting
이 페이지에 nice!nano의 실제 물리 핀(P0.xx / P1.xx)과 row/column이 정확히 매칭된 다이어그램이 있고, devicetree 소스 링크도 같이 걸려 있습니다.
- 2. 핸드와이어링 순서
1. **키 배치/발판 확정**: 4메인로우(6열) × 2 + 엄지 5개 × 2 구조로 배치 2. **다이오드 먼저 납땜**: 각 스위치 핀 하나에 다이오드 캐소드(줄무늬) 쪽을 row 방향으로 통일해서 납땜 (col2row이므로 col 라인이 다이오드 애노드에 물림) 3. **Row 배선**: 같은 로우에 있는 스위치들의 다이오드 캐소드를 한 줄로 묶어서 nice!nano row 핀에 연결 (5줄) 4. **Column 배선**: 같은 컬럼에 있는 스위치 반대쪽 핀을 한 줄로 묶어서 nice!nano column 핀에 연결 (한쪽당 6~7줄, 위 다이어그램 기준) 5. **half 간 연결**: TRRS 또는 직결 배선 (기존 fn5x5 만드실 때 쓰신 방식과 동일) 6. **테스트**: 전체 조립 전에 ZMK 공식 "tester" shield로 GPIO 핀 하나씩 눌러서 단선/합선 확인 → https://zmk.dev/docs/troubleshooting/hardware-issues 참고
- 3. ZMK 설정 (zmk-config)
핀을 다이어그램 그대로 배선했다면 커스텀 오버레이 필요 없이 **공식 shield 이름만 지정**하면 끝입니다.
`config/west.yml`은 기본 zmk-config 템플릿 그대로 두시고, `build.yaml`만 이렇게:
```yaml include:
- board: nice_nano_v2 shield: lily58_left - board: nice_nano_v2 shield: lily58_right
```
`config/lily58.keymap` 파일 하나 만들어서 원하는 레이어(넘패드, 함수키 등 fn5x5/mynum25에서 쓰시던 구성) 넣으시면 GitHub Actions가 알아서 좌/우 uf2를 빌드해줍니다.
- 4. 만약 배선을 다이어그램과 다르게 하고 싶다면
핀 배치를 본인 편한 대로 바꾸고 싶으시면, 그때는 `lily58_left.overlay` / `lily58_right.overlay`만 복사해서 row-gpios/col-gpios 값을 본인 배선에 맞게 수정하면 됩니다 (matrix-transform, keymap은 그대로 재사용 가능).
핸드와이어링하면서 다이오드 방향이나 로우/컬럼 배선에서 막히는 부분 생기면 사진이나 구체적 배선 상황 알려주세요, 같이 디버깅해드리겠습니다.