สวัสดีชาว Maker และเหล่าสาวกคัสตอมคีย์บอร์ดทุกคนครับ! ใครที่เคยเข้าสู่วงการ Mechanical Keyboard คงรู้ดีว่า "วงการนี้เข้าแล้วออกยาก (และเปลืองเงินมาก!)" แต่จะฟินแค่ไหนถ้าเราสามารถสร้างคีย์บอร์ดที่มี Layout เฉพาะตัว สวิตช์ที่ใช่ และเขียนเฟิร์มแวร์เองได้ตั้งแต่ศูนย์?
วันนี้เราจะพาไปเจาะลึกโปรเจกต์ "ClickPico" คัสตอมคีย์บอร์ดแบบ TKL (Tenkeyless) ที่ใช้มันสมองเป็นบอร์ดไมโครคอนโทรลเลอร์ยอดฮิตอย่าง Raspberry Pi Pico ขับเคลื่อนด้วยเฟิร์มแวร์ QMK ที่ทรงพลังสุดๆ เตรียมหัวแร้งบัดกรีให้พร้อม แล้วมาดูสเตปการทำกันเลยครับ!
Step 1: เตรียมของ (Supplies)
การสร้างคีย์บอร์ดเองตั้งแต่ศูนย์ (Hand-wired keyboard) เราจะต้องเตรียมฮาร์ดแวร์หลักๆ ดังนี้ครับ:
-
สมองกล: Raspberry Pi Pico (บอร์ดนี้คุ้มและขางานเยอะ เหมาะกับทำคีย์บอร์ดมาก)
-
สวิตช์ (Mechanical Switches): เลือกสีที่ชอบได้เลย (Blue, Red, Brown ฯลฯ) จำนวน 87 ตัวสำหรับ Layout แบบ TKL
-
ไดโอด (Diodes): เบอร์ 1N4148 (จำนวนเท่ากับสวิตช์) เพื่อป้องกันอาการปุ่มหลอน (Ghosting)
-
คีย์แคป (Keycaps) และ Stabilizers: สำหรับปุ่มยาวๆ เช่น Spacebar, Shift
-
อุปกรณ์เดินสาย: สายไฟแบบแกนแข็ง (Solid core wire) หัวแร้ง และตะกั่วบัดกรี
Step 2: ออกแบบ Layout และเคส (3D Printing)
ความสนุกของการทำ Custom Keyboard คือเรากำหนด Layout เองได้หมดครับ โดยสามารถเข้าไปออกแบบหน้าตาคีย์บอร์ดได้ที่เว็บ Keyboard Layout Editor เมื่อจัดวางปุ่มเสร็จแล้ว ให้นำข้อมูลไปเจนเป็นไฟล์สำหรับตัดแผ่นเพลต (Plate) และทำเคส (Case) ได้ที่เว็บ Swillkb Plate Builder
💡 Maker's Tip: ในการทำคีย์บอร์ดใช้เอง "เคสและแผ่นเพลต (Case & Plate)" คือสิ่งที่จะกำหนดเสียงและสัมผัสการพิมพ์ของคุณครับ ซึ่งเทคโนโลยี 3D Printing ตอบโจทย์งานนี้แบบ 100% เพราะคุณสามารถคัสตอมสีและรูปทรงได้ตามใจชอบ!
หากเพื่อนๆ ออกแบบไฟล์เสร็จแล้ว แต่ไม่มีเครื่องปริ้นท์ 3D หรือต้องการเส้นพลาสติกคุณภาพสูง (เช่น PLA, ABS, PETG) เพื่อนำไปปริ้นท์เคสคีย์บอร์ดสุดเท่ แวะมาใช้บริการ รับปริ้นท์ 3D Printing และช้อปอุปกรณ์อิเล็กทรอนิกส์ได้ที่ Globalbyte เลยครับ งานเนียนเป๊ะ เข้าล็อกสวิตช์พอดีแน่นอน!
Step 3: บัดกรีวงจร Matrix (The Wiring)
คีย์บอร์ดไม่ได้ต่อสาย 1 ปุ่มต่อ 1 ขาเข้าบอร์ด Pico นะครับ (เพราะขามีไม่พอ!) แต่เราจะใช้วิธีต่อวงจรแบบ Matrix (เมทริกซ์) คือการต่อเป็นตาราง "แถว (Rows)" ตัดกับ "คอลัมน์ (Columns)"
การบัดกรีด้วยมือ (Hand-wiring) จะต้องนำไดโอด 1N4148 มาบัดกรีเข้ากับขาสวิตช์ทุกตัวเพื่อบังคับให้กระแสไฟไหลทางเดียว จากนั้นเชื่อมสายไฟแนวนอนเป็น Row และแนวตั้งเป็น Column ไปเข้าที่ขา GPIO ของ Raspberry Pi Pico
🚨 เนื้อหาเชิงลึก (Deep Dive Alert):
เนื่องจากการเดินสายไฟ (Wiring) และผังวงจร Matrix ของคีย์บอร์ด TKL มีความซับซ้อนและมีรายละเอียดเยอะมาก หากใครจะลงมือทำจริง เราขอแนะนำอย่างยิ่งให้ ดาวน์โหลดไฟล์ Schematic PDF และเข้าไปอ่านวิธีเดินสายทีละสเตปจากลิงก์โปรเจกต์ต้นฉบับครับ รับรองว่าละเอียดกว่าและช่วยลดความผิดพลาดได้ชัวร์!
ดาวน์โหลด Schematic PDF อ่านวิธีบัดกรีฉบับเต็ม (Instructables)
Step 4: เสกวิญญาณด้วย QMK Firmware
เมื่อฮาร์ดแวร์เสร็จแล้ว มันจะยังพิมพ์ไม่ได้จนกว่าเราจะลงเฟิร์มแวร์ครับ โปรเจกต์นี้ใช้ QMK Firmware ซึ่งเป็นมาตรฐานทองคำของวงการคัสตอมคีย์บอร์ด คุณจะต้องคอมไพล์โค้ดเพื่อบอกบอร์ด Pico ว่า ขาไหนคือ Row ขาไหนคือ Column และปุ่มไหนคือตัวอักษรใด
โดยสามารถไปดาวน์โหลดและดูโครงสร้างโค้ดสำหรับโปรเจกต์ pico_tkl ของผู้สร้างได้ที่ GitHub Taifur20/pico_tkl และเมื่อแฟลชเฟิร์มแวร์เสร็จ อย่าลืมไปเทสปุ่มกดทั้งหมดที่เว็บ Key-Test นะครับ!
ภาพรวมการออกแบบและการบัดกรี
การออกแบบ Layout และแผ่น Plate
ตัวอย่างการบัดกรีไดโอดเข้ากับสวิตช์ และการเดินสายไฟแบบ Matrix แนวนอน/แนวตั้ง
การเชื่อมต่อสายจากตาราง Matrix เข้าสู่ขา GPIO ของ Raspberry Pi Pico
วิดีโอสาธิต (Videos)
วิดีโอ 1: การประกอบคีย์บอร์ดและบัดกรี (Assembly)
วิดีโอ 2: อธิบาย Schematic ของบอร์ด PicoClick
วิดีโอ 3: พิมพ์ทดสอบการทำงานจริง (Keyboard in Action)
บทสรุป
การสร้าง Custom Keyboard ตั้งแต่ศูนย์อาจจะดูน่าปวดหัวในตอนแรก (โดยเฉพาะตอนนั่งบัดกรีสายไฟ!) แต่เมื่อคุณทำสำเร็จ ความภูมิใจเวลาที่ได้กดปุ่มลงบนคีย์บอร์ดที่มีเพียงชิ้นเดียวในโลก มันคุ้มค่ากับความเหนื่อยแน่นอนครับ ใครอยากลองวิชา Maker ของตัวเอง โปรเจกต์นี้ตอบโจทย์สุดๆ!
*คำเตือน: เนื้อหานี้เป็นการสรุปและเรียบเรียงแนวคิดจากบทความโปรเจกต์ต้นฉบับภาษาอังกฤษ ข้อมูลด้านการต่อสายไฟ (Wiring Matrix) และการคอมไพล์ QMK Firmware เป็นกระบวนการที่ต้องการความแม่นยำสูง เนื้อหาบางส่วนถูกย่อเพื่อให้เข้าใจคอนเซปต์ภาพรวม ผู้สนใจลงมือปฏิบัติควรศึกษารายละเอียดเชิงลึก ดาวน์โหลด Schematic และดูโค้ดที่อัปเดตล่าสุดจาก
เว็บไซต์ต้นฉบับ ก่อนดำเนินการ