IoTLabs

Nghiên cứu, Sáng tạo và Thử nghiệm

KiCad: Cách dùng Symbol và Footprint trong một project (từ Schematic tới PCB)

1. Mục tiêu của bài này

Sau bài này, bạn sẽ làm được trọn quy trình:

  • Import thư viện symbol và footprint vào KiCad
  • Đặt symbol lên schematic và nối mạch
  • Gán footprint cho từng symbol
  • Đẩy dữ liệu sang PCB layout
  • Kiểm tra mapping pin và pad để tránh lỗi đi dây sai

Mình sẽ hướng dẫn theo cách dễ áp dụng nhất cho dự án IoTLabs, đặc biệt phù hợp khi bạn dùng các module như ESP32, GPS, SIM 4G, NRF24L01.

2. Chuẩn bị trước khi bắt đầu

Bạn cần có:

  • 1 file symbol library: .kicad_sym
  • 1 footprint library: folder .pretty chứa các file .kicad_mod

Gợi ý cấu trúc thư mục (như bài 1):

  • IoTLabs_KiCad_Lib/
    • symbols/IoTLabs_MCU.kicad_sym
    • footprints/IoTLabs_MCU.pretty/IoTLabs_TenstarRobot_ESP32C3_SuperMini.kicad_mod

3. Add thư viện vào project (Global hoặc Project Specific)

3.1 Add symbol library (.kicad_sym)

  1. Mở Schematic Editor (Eeschema)
  2. Preferences → Manage Symbol Libraries
  3. Chọn tab Global Libraries hoặc Project Specific Libraries
  4. Add existing library
  5. Chọn file .kicad_sym của bạn
  6. Đặt nickname ví dụ: IoTLabs_MCU

3.2 Add footprint library (.pretty)

  1. Mở PCB Editor (Pcbnew)
  2. Preferences → Manage Footprint Libraries
  3. Chọn tab Global Libraries hoặc Project Specific Libraries
  4. Add existing library
  5. Chọn folder .pretty (lưu ý chọn folder, không phải file .kicad_mod)
  6. Đặt nickname ví dụ: IoTLabs_MCU

Gợi ý chọn Global vs Project:

  • Project Specific: phù hợp khi bạn gửi project cho team hoặc backup, không sợ thiếu library
  • Global: phù hợp khi bạn làm nhiều dự án trên cùng máy và dùng chung thư viện

4. Đặt symbol lên Schematic và nối mạch

4.1 Đặt symbol

  1. Trong Schematic Editor nhấn A (Add Symbol)
  2. Tìm theo nickname hoặc tên linh kiện
    • Ví dụ: TenstarRobot_ESP32C3_SuperMini
  3. Place lên schematic

4.2 Nối dây và đặt net label

Nguyên tắc:

  • Dùng net label cho các đường quan trọng: 3V3, 5V, GND, UART_TX, UART_RX
  • Dùng power symbols (GND, +3V3, +5V) để schematic dễ đọc
  • Với module ESP32, nên đặt nhóm chân theo chức năng: nguồn, UART, I2C, SPI, GPIO

Mẹo cho IoTLabs:

  • UART: đặt label như GPS_TX, GPS_RX hoặc SIM_TX, SIM_RX tùy luồng
  • I2C: SDA, SCL
  • SPI: SCK, MISO, MOSI, CS

5. Gán footprint cho symbol

Đây là bước bắt buộc để KiCad biết linh kiện đó sẽ có hình dạng gì trên PCB.

Cách 1: Gán footprint ngay trong properties

  1. Click chọn symbol
  2. Nhấn E (Properties)
  3. Tìm trường Footprint
  4. Chọn đúng footprint từ library nickname
    • Ví dụ: IoTLabs_MCU:IoTLabs_TenstarRobot_ESP32C3_SuperMini
  5. OK

Cách 2: Dùng Assign Footprints tool

  1. Tools → Assign Footprints
  2. Ở danh sách linh kiện bên trái, chọn symbol cần gán
  3. Ở danh sách footprint bên phải, chọn footprint tương ứng
  4. Apply và Save

Khi dự án lớn, cách 2 nhanh hơn.

6. Update PCB từ Schematic

Sau khi schematic xong và đã gán footprint, bạn đẩy sang PCB:

  1. Mở PCB Editor
  2. Tools → Update PCB from Schematic
  3. Run update

Kết quả:

  • Tất cả footprint sẽ xuất hiện (thường nằm chồng lên nhau)
  • Tất cả netlist đã được nối logic (ratsnest)

7. Place footprint và route mạch

7.1 Place (sắp xếp linh kiện)

Nguyên tắc dễ nhớ:

  • Đặt module chính trước: ESP32
  • Đặt các module giao tiếp gần nhau: GPS gần UART, OLED gần I2C, NRF gần SPI
  • Đặt nguồn gần điểm vào 5V/battery
  • Chừa khoảng trống cho anten (GPS, 4G, 2.4G) tránh che chắn

7.2 Route (đi dây)

  • Route GND trước bằng copper pour (plane)
  • Dây nguồn đi to hơn dây tín hiệu
  • Các bus như I2C, SPI đi gọn, hạn chế vòng lặp lớn
  • Với RF, hạn chế chạy trace ngay dưới anten

8. Kiểm tra mapping pin và pad (rất quan trọng)

Lỗi nguy hiểm nhất là:

  • Schematic đúng nhưng footprint bị đảo pad number
  • Kết quả PCB đi dây đúng theo netlist, nhưng thực tế cắm module bị sai chân

Cách kiểm nhanh:

  1. Trong PCB Editor, click vào một pad trên footprint
  2. Dùng Highlight net để xem nó đang nối với net nào
  3. So sánh với pin name trên schematic

Checklist nhanh:

  • 5V đúng pad 5V
  • 3V3 đúng pad 3V3
  • GND đúng pad GND
  • UART TX/RX không bị đảo
  • Các chân BOOT/strapping không bị kéo sai mức

Nếu bạn phát hiện mismatch:

  • Sửa symbol pin number hoặc footprint pad number
  • Sau đó Update PCB from schematic lại

9. DRC và xuất file sản xuất

Trước khi xuất Gerber, bạn nên:

  • Chạy DRC (Design Rule Check)
  • Kiểm tra clearance và width theo nhà gia công
  • Đặt text silkscreen rõ: Pin1, USB direction, power labels

Sau đó:

  • File → Plot → Gerber
  • Generate Drill Files

10. Kết bài

Khi bạn làm đúng quy trình symbol → gán footprint → update PCB, dự án KiCad sẽ rất sạch và dễ mở rộng.

Nếu bạn đang làm dự án IoT hoặc các module ESP32 khác, mình khuyên bạn luôn chuẩn hoá thư viện ngay từ đầu để tránh lỗi nối dây sai chân về sau.

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *