Rất tuyệt! Đến Bài 5, chúng ta sẽ bắt đầu tạo một thư viện ở cấp độ chuyên nghiệp. Đây cũng là lúc mình sẽ hướng dẫn theo đúng quy trình mà các công ty thiết kế PCB thường áp dụng.
Lưu ý quan trọng: Không nên tự vẽ ESP32-WROOM-32 theo hình ảnh trên Internet. Chúng ta sẽ luôn dựa trên datasheet chính thức của Espressif để đảm bảo kích thước và khoảng cách chính xác.
BÀI 5: TẠO THƯ VIỆN CHUYÊN NGHIỆP CHO ESP32-WROOM-32
Mục tiêu
Sau bài này bạn sẽ biết cách:
- Tạo Symbol chuyên nghiệp.
- Tạo Footprint chính xác theo datasheet.
- Đánh dấu Pin 1.
- Tạo vùng cấm đồng (Keep-out) dưới anten.
- Gắn mô hình 3D (nếu có).
- Biên dịch thành thư viện
.IntLib.
Bước 1. Chuẩn bị tài liệu
Trước khi mở Altium, hãy tải:
- Datasheet ESP32-WROOM-32
- Package Dimensions
- PCB Layout Recommendations
Đây là nguồn duy nhất để lấy kích thước.
Bước 2. Tạo Project Library
Ví dụ cấu trúc:
ESP32_LIBRARY
│
├── ESP32.SchLib
├── ESP32.PcbLib
├── ESP32.IntLib
├── Datasheet
└── 3D
Việc tách riêng thư viện như vậy giúp quản lý dễ dàng.
Bước 3. Tạo Symbol
Tạo một Component mới:
ESP32-WROOM-32
Chia nhóm chân
Đừng đặt chân theo thứ tự 1 → 38.
Hãy nhóm theo chức năng:
Power
GPIO
ADC
SPI
UART
EN
BOOT
GND
Một Symbol đẹp sẽ dễ đọc và dễ kiểm tra hơn rất nhiều.
Ví dụ:
+-------------------------+
3V3 ------------------------- GPIO23
EN -------------------------- GPIO22
GPIO36 ---------------------- GPIO21
GPIO39 ---------------------- GPIO19
GPIO34 ---------------------- GPIO18
GPIO35 ---------------------- GPIO5
GPIO32 ---------------------- GPIO17
GPIO33 ---------------------- GPIO16
+-------------------------+
Đây là cách trình bày thường thấy trong các thư viện chuyên nghiệp.
Bước 4. Thuộc tính chân
Mỗi chân cần khai báo:
- Designator (số chân)
- Name (GPIO0, EN, 3V3…)
- Electrical Type:
- Input
- Output
- Bidirectional
- Passive
- Power
Điều này giúp ERC (Electrical Rule Check) phát hiện lỗi tốt hơn.
Bước 5. Tạo Footprint
Tạo Component mới:
ESP32-WROOM-32
Đừng vẽ theo cảm tính.
Mọi kích thước phải lấy từ datasheet.
Bước 6. Đặt Pad
Tất cả pad phải:
- đúng kích thước
- đúng khoảng cách (pitch)
- đúng thứ tự
Sai chỉ 0,1 mm cũng có thể khiến module không hàn được.
Bước 7. Vẽ Outline
Trên lớp Silkscreen:
________________________
| |
| |
| |
|________________________|
Chỉ vẽ ngoài vùng linh kiện, tránh đè lên pad.
Bước 8. Đánh dấu Pin 1
Ví dụ:
●
________________________
| |
| |
|________________________|
Đây là tiêu chuẩn giúp lắp ráp đúng chiều.
Bước 9. Antenna Keep-out
Đây là điểm mà nhiều người mới thường bỏ qua.
ESP32 có anten PCB tích hợp ở một đầu module.
Vùng phía dưới anten cần:
- Không đổ đồng (Copper Pour).
- Không đặt linh kiện.
- Không đi dây tín hiệu.
- Không đặt mặt phẳng GND ngay dưới vùng anten nếu datasheet yêu cầu.
Trong Altium, bạn có thể tạo vùng này bằng Keep-Out hoặc Mechanical Layer và ghi chú rõ ràng để tránh vi phạm trong quá trình thiết kế.
Bước 10. Courtyard
Thêm Courtyard để xác định không gian cần thiết khi lắp ráp.
Điều này đặc biệt hữu ích nếu sau này bạn dùng máy gắp linh kiện (Pick & Place).
Bước 11. Gắn mô hình 3D
Nếu có file STEP (.step hoặc .stp):
Properties
↓
3D Body
↓
Generic STEP Model
Sau đó:
- căn chỉnh vị trí X, Y, Z
- kiểm tra chiều cao
- xoay đúng hướng
Bước 12. Ghép Symbol và Footprint
Trong ESP32.SchLib:
Models
↓
Add
↓
PCB Footprint
Chọn đúng footprint vừa tạo.
Bước 13. Biên dịch
Compile Integrated Library
Thu được:
ESP32.IntLib
Bước 14. Kiểm tra
Đưa ESP32 vào sơ đồ nguyên lý.
Sau đó:
Design
↓
Update PCB
Kiểm tra:
- Pad đúng vị trí.
- Pin 1 đúng.
- Outline đúng.
- Keep-out đúng.
Những lỗi rất thường gặp
1. Chân GPIO sắp xếp lộn xộn
Nhiều người giữ nguyên thứ tự chân vật lý trên Symbol, khiến sơ đồ rất khó đọc.
Khuyến nghị: Sắp xếp theo nhóm chức năng.
2. Không tạo Keep-out
Đây là lỗi có thể làm giảm hiệu suất phát/thu Wi-Fi và Bluetooth.
3. Đi dây dưới anten
Không nên chạy tín hiệu hoặc đặt linh kiện ngay dưới vùng anten.
4. Sai Pitch
Khoảng cách pad sai sẽ khiến module không thể hàn chính xác.
5. Không kiểm tra bằng datasheet
Đây là nguyên nhân phổ biến nhất dẫn đến lỗi footprint.
Quy trình mình áp dụng khi tạo thư viện
Đây là quy trình chuẩn mà mình khuyên bạn nên áp dụng cho mọi linh kiện:
- Đọc datasheet.
- Xác định package.
- Tạo Symbol.
- Tạo Footprint theo kích thước datasheet.
- Thêm Silkscreen và Pin 1.
- Thêm Courtyard.
- Thêm Keep-out (nếu cần).
- Gắn mô hình 3D.
- Ghép Symbol với Footprint.
- Kiểm tra lại từng số chân trước khi sử dụng.
Chúng ta sẽ còn làm gì tiếp theo?
Đến đây, bạn đã biết cách tạo một thư viện chuyên nghiệp. Tuy nhiên, để có thể tự thiết kế những bo mạch chất lượng cao, chúng ta cần học thêm một kỹ năng rất quan trọng.
👉 Bài 6: Thiết kế PCB chuyên nghiệp (PCB Layout)
Trong bài này mình sẽ hướng dẫn:
- Chuyển từ Schematic sang PCB.
- Vẽ đường viền bo mạch (Board Shape).
- Thiết lập Design Rules (Clearance, Track Width, Via…).
- Bố trí linh kiện theo nguyên tắc kỹ thuật.
- Đi dây nguồn và tín hiệu.
- Đổ đồng (Polygon GND).
- Kiểm tra DRC.
- Chuẩn bị bo mạch sẵn sàng để xuất Gerber.
Đây là giai đoạn biến sơ đồ nguyên lý thành một PCB thực tế có thể sản xuất. Nếu nắm vững phần này, bạn sẽ có thể thiết kế những bo mạch như bộ điều khiển DigitalClock Professional, mạch ESP32, STM32 hay các sản phẩm điện tử hoàn chỉnh với chất lượng chuyên nghiệp.