강의

멘토링

로드맵

Inflearn brand logo image

인프런 커뮤니티 질문&답변

97changmin님의 프로필 이미지
97changmin

작성한 질문수

PCB HW설계 실무 : STM32를 활용한 Mixed-signal 보드 설계 프로젝트

[Footprint]

해결된 질문

작성

·

12

·

수정됨

0

📌 질문 제목 예시

KiCad 9.0에서 Footprint 등록/인식 문제 (footprint not found) 해결 방법 문의


📌 질문 내용 (정리본)

안녕하세요, 현재 KiCad 9.0로 전원 회로 PCB 설계를 진행 중인데, Footprint 등록/인식 문제가 해결되지 않아 도움을 요청드립니다.

📍 상황

  • BOM에 따라 부품 Footprint를 추가하려고 함 (SS34, SMBJ5.0A, AMS1117 등)

  • 외부 .kicad_mod 파일들을 D:/PCB_LIB/1 경로에 저장해둠

  • 시도한 방법:

    1. .pretty 폴더 생성 → .kicad_mod 파일 복사 후 Global Library 등록

    2. Project Library로 추가

    3. Footprint 필드에 직접 Nickname:FootprintName 입력

    4. 절대경로(D:/PCB_LIB/1/SS34.kicad_mod) 입력

  • 결과: 여전히 footprint not found 메시지가 뜨거나 Footprint Browser에 보이지 않음

📍 확인한 점

  • Preferences → Configure Paths 에서 기본 KICAD9_FOOTPRINT_DIR는 정상

  • KiCad 설치 폴더 내 기본 라이브러리(예: Capacitor_SMD.pretty)는 정상 동작

  • 외부 폴더(D:/PCB_LIB/1)만 인식이 안 됨

📍 질문

  1. .kicad_mod 파일이 들어 있는 폴더를 등록했는데도 인식이 안 되는 원인이 무엇일까요?

  2. KiCad 9.0에서 외부 Footprint를 쓸 때 가장 안정적인 등록 방식은 무엇인가요?

  3. 혹시 제가 Project Library vs Global Library를 혼동한 걸까요?

  4. 단순히 포트폴리오용 PCB라면, KiCad 기본 Footprint(Diode_SMD:D_SMA, Package_TO_SOT_SMD:SOT-223-3_TabPin2 등)를 사용하는 게 더 안전한지도 궁금합니다.


📌 마무리

현재는 Footprint 매칭이 안 돼서 PCB로 넘기질 못하고 있습니다.
혹시 제가 놓친 부분이나 KiCad 9.0 버전에서 Footprint 등록 시 주의할 점이 있다면 알려주시면 감사하겠습니다 🙏

답변 1

0

안녕하세요, 답변 남겨드립니다.

우선 증상으로 보아 라이브러리 테이블과 폴더 구조, 그리고 Footprint 이름 매칭 세 가지 중 하나가 어긋난 경우가 가장 유력합니다. KiCad 9.0에서는 개별 .kicad_mod 파일을 직접 참조하지 않고, 반드시 .pretty 폴더 단위로 “라이브러리 테이블”에 등록해 사용합니다. 따라서 Footprint 필드에 D:/.../SS34.kicad_mod처럼 절대경로를 적어도 동작하지 않습니다. 반대로, 라이브러리 테이블에서 부여한 닉네임과 .kicad_mod 내부의 Footprint 이름이 정확히 일치해야 Nickname:FootprintName 형식으로 인식됩니다. 예를 들어 MyDiodes.pretty 안에 있는 파일의 첫 줄이 (footprint "D_SMA" ...)라면, 회로도에서 MyDiodes:D_SMA로 써야 합니다. MyDiodes:SS34처럼 임의의 이름을 쓰면 “footprint not found”가 발생합니다.

다음과 같이 재구성하시면 대부분 해결됩니다. 먼저 D:/PCB_LIB/1 아래를 부품 군별 .pretty 폴더로 정리합니다. 예시로 D:/PCB_LIB/1/Diodes_SMA.pretty에 SS34 관련 .kicad_mod, D:/PCB_LIB/1/TVS_SMB.pretty에 SMBJ5.0A 관련 .kicad_mod, D:/PCB_LIB/1/Regulators.pretty에 AMS1117 관련 .kicad_mod를 둡니다. 그런 다음 Preferences → Configure Paths에서 사용자 변수를 하나 정의합니다. 예를 들어 MY_FP_DIR = D:/PCB_LIB/1처럼 등록하면, 경로 기술을 ${MY_FP_DIR}/Diodes_SMA.pretty처럼 표준화할 수 있어 프로젝트 이동 시 경로 깨짐을 줄일 수 있습니다. 팀 협업이나 포트폴리오 공유를 고려하면, 프로젝트 루트 상대경로 ${KIPRJMOD}/lib/footprints/...를 쓰는 편이 더 안전합니다. 실제 업무에서는 Git으로 footprints/*.pretty를 버전 관리하고, 프로젝트 라이브러리 테이블에 ${KIPRJMOD} 기반 경로를 등록해 아카이브 이슈를 원천 차단합니다.

이제 라이브러리 테이블을 점검합니다. PCB Editor 또는 Footprint Editor에서 Preferences → Manage Footprint Libraries를 열고, Global 또는 Project 탭에서 “Add existing library”로 .pretty 폴더를 추가합니다. Plugin Type은 “KiCad”로, Library Path는 ${MY_FP_DIR}/Diodes_SMA.pretty처럼 폴더 경로여야 합니다. 같은 닉네임이 Global과 Project에 중복되면 Project가 우선합니다. 실무에서도 종종 “Global의 정상 경로를 Project의 잘못된 경로가 가려버려서” 브라우저에 안 보이는 사례가 있습니다. 닉네임 중복이 있으면 Project 쪽을 삭제하거나 닉네임을 바꿔 충돌을 제거해 주십시오. 저장 후 Footprint Browser 좌측 패널에 방금 등록한 닉네임이 나타나야 하며, 보이지 않으면 KiCad를 재시작해 캐시를 초기화하는 방법이 가장 빠릅니다.

폴더 구조와 라이브러리 테이블이 올바른데도 인식이 안 된다면 .kicad_mod 파일 자체를 확인해 보십시오. 파일을 열어 첫 줄의 Footprint 이름을 정확히 파악하시고, 그 이름으로 브라우저 검색이 되는지 확인합니다. 예를 들어 SS34 벤더에서 받은 파일 내부 이름이 "SS34_SMA"일 수 있으므로, 회로도 Footprint 필드는 MyDiodes:SS34_SMA로 입력해야 합니다. 반대로, .kicad_mod가 구버전 포맷이거나 파일 헤더가 손상된 경우가 드물게 있습니다. 이때는 Footprint Editor에서 File → Import → Footprint로 파일을 불러온 뒤, 새로운 사용자 라이브러리로 Save As하여 포맷을 최신으로 변환하면 인식률이 크게 올라갑니다.

가장 안정적인 등록 방식은 프로젝트 내부에 lib/footprints 폴더를 만들고 ${KIPRJMOD}/lib/footprints/…/*.pretty로 구성한 다음, Project Library로만 등록하는 것입니다. 이렇게 하면 프로젝트를 다른 PC로 옮겨도 경로가 그대로 유지됩니다. 반면 Global Library는 여러 프로젝트에서 재사용할 표준풋프린트에 적합하지만, 닉네임 충돌이 생기면 문제 원인 파악이 늦어질 수 있습니다. 실무에서는 공용 표준은 Global, 프로젝트 특화는 Project로 분리하고, 모두 Git으로 버전 태깅해 추적 가능성을 확보합니다.

포트폴리오 용도로는 KiCad 기본 Footprint를 쓰는 게 훨씬 안전합니다. SS34는 패키지 규격이 DO-214AC(SMA)이므로 Diode_SMD:D_SMA가 합리적이며, SMBJ5.0A는 DO-214AA(SMB)이므로 Diode_SMD:D_SMB가 대응됩니다. AMS1117은 탭이 Pin2인 SOT-223-3이 일반적이므로 Package_TO_SOT_SMD:SOT-223-3_TabPin2가 적합합니다. 기본 라이브러리는 IPC-7351 가이드를 기반으로 패드 사이즈, 코트야드 여유(일반적으로 0.25~0.5 mm), 솔더마스크 클리어런스(기본값 0.05 mm 수준)가 합리적으로 설정되어 있어 초반에는 이대로 쓰는 편이 오류를 줄입니다. 양산을 전제로 하면 각 벤더의 Recommended Land Pattern 수치와의 차이를 정량 비교해 검증하는 절차가 필요합니다. 예를 들어 패드 길이 산정은 L_pad = L_terminal + toe + heel처럼 계산하며, toe/heel 여유는 리플로우 공정과 부품 공차에 따라 ±0.1~0.2 mm 범위에서 조정됩니다. 실제로 SMA 다이오드에서 부품 단자 도금 길이가 1.3 mm, toe 0.2 mm, heel 0.2 mm라면 패드 길이는 약 1.7 mm로 설정하는 식으로 검토합니다. 기본 라이브러리의 패드가 벤더 권장치 대비 ±0.1~0.2 mm 범위에 들어오면 그대로 사용해도 조립성에 문제없는 경우가 많습니다.

마지막으로 빠르게 진단하는 실무 팁을 정리해 드립니다. Footprint Browser 좌측에서 새 닉네임이 보이지 않으면 라이브러리 테이블 경로 또는 닉네임 충돌 문제입니다. 닉네임은 보이는데 내부 풋프린트만 안 보이면 .kicad_mod 내부 이름이 예상과 달라 매칭 실패일 가능성이 큽니다. Footprint Editor에서 New Library를 같은 폴더에 생성이 된다면 파일시스템 권한과 경로 접근성은 정상이라는 뜻이고, 이 경우 테이블 설정만 바로잡으면 해결됩니다. 반대로 Import 시 오류가 뜨면 파일 포맷 문제이므로 재저장을 통해 최신 포맷으로 변환하십시오. 경로 표기는 가급적 ${변수}/…/*.pretty 형태의 슬래시(/) 구분자를 사용하시면 Windows에서도 안정적으로 동작합니다.

질문 주신 상황에서는 프로젝트 루트에 lib/footprints를 만들고 ${KIPRJMOD}/lib/footprints/Diodes_SMA.pretty${KIPRJMOD}/lib/footprints/Regulators.pretty를 Project Library로만 등록한 뒤, 회로도에서 Diodes_SMA:D_SMA, Diodes_SMA:D_SMB, Regulators:SOT-223-3_TabPin2처럼 기본 풋프린트를 먼저 매칭하시길 권합니다. 이후 필요 시에만 벤더 전용 풋프린트를 추가해 대체하면, 현재의 “footprint not found” 병목을 우회하면서 레이아웃 단계로 안전하게 진입하실 수 있습니다.

97changmin님의 프로필 이미지
97changmin

작성한 질문수

질문하기