- เรียนรู้ทั้งหมดทั้งวิศวกรรมอิเล็กทรอนิกส์ การทำ PCB การออกแบบเพื่อการผลิต และเทคโนโลยีฮาร์ดแวร์อื่น ๆ เพื่อสร้างคีย์บอร์ดไร้สาย แบบแยกชิ้น และอัลตร้าโลว์โปรไฟล์
- อธิบายอย่างละเอียดตั้งแต่กระบวนการสร้างไปจนถึงผลงานชิ้นสุดท้าย
BAYLEAF Wireless Keyboard
- ประเภท: ไร้สายและแบบแยกชิ้น (Split)
- เลย์เอาต์: 60% · Ortholinear
- สวิตช์: Kailh · PG1316S
- คีย์แคป: MFJ · ออกแบบเฉพาะ
- ภายนอก: CNC machining · อะลูมิเนียม
- ขนาด: W139 · L93 · H5
- น้ำหนัก: 180g
- เฟิร์มแวร์: ZMK Studio
แรงจูงใจ
- หลังจากได้สัมผัสเสน่ห์ของคีย์บอร์ด ergonomic แบบคัสตอม จึงเริ่มงานคัสตอมชิ้นแรกโดยตั้งเป้าหน้าตาและงานจบแบบเชิงพาณิชย์
- เนื่องจากไม่มีประสบการณ์ CAD มาก่อน จึงมองว่านี่เป็นโอกาสดีในการเรียนรู้ทักษะใหม่ ๆ เช่น การออกแบบฮาร์ดแวร์และวิศวกรรมอิเล็กทรอนิกส์
การตัดสินใจด้านการออกแบบ
- ไร้สาย: เป็นสิ่งจำเป็น โดยเฉพาะสำหรับคีย์บอร์ดแบบแยกชิ้น เพื่อหลีกเลี่ยงการใช้สาย การยกฝั่งขวาออกเพื่อให้มีพื้นที่ขยับเมาส์ระหว่างเล่นเกมยังคงให้ความรู้สึกเหมือนเวทมนตร์
- Ortholinear: คีย์บอร์ดสองตัวก่อนหน้านี้เป็น ortholinear ทั้งคู่ จึงคุ้นเคยและใช้งานได้คล่อง
- ไม่มี stagger (Sans stagger): ไม่ได้ต่อต้าน stagger แต่ชอบรูปทรงสี่เหลี่ยมที่สะอาดตากว่า และการไม่มี stagger ยังทำให้งานด้านฮาร์ดแวร์ง่ายขึ้น
- เลย์เอาต์: เนื่องจากสลับระหว่าง MacBook กับเดสก์ท็อปบ่อย จึงเลือกเลย์เอาต์ 60% ที่ใหญ่ขึ้นเพื่อหลีกเลี่ยงการสลับบริบท รวมถึงเลือกระยะห่างสวิตช์ 17×17mm
- สรีรศาสตร์: เป็นงานออกแบบที่ตั้งใจให้รูปทรงมาก่อนฟังก์ชัน
- อะลูมิเนียม: เลือกเพราะความสวยงามและงานจบแบบเชิงพาณิชย์ โดยยอมแลกกับการสูญเสียสัญญาณ RF และปัญหา ESD ที่อาจเกิดขึ้น
บันทึกการสร้าง
- ประทับใจโพสต์คีย์บอร์ดของ Mikefive บน Reddit มาก เขาแสดงให้เห็นว่าสามารถสร้างคีย์บอร์ด ergonomic แบบ low-profile ระดับเชิงพาณิชย์ได้ และทำให้งานอดิเรกนี้ดูเข้าถึงได้ จึงตัดสินใจทุ่มทั้งเวลาและทรัพยากรแล้วเริ่มโปรเจกต์
- โปรเจกต์เริ่มจากสเก็ตช์ โดยนำสเก็ตช์ 2D ที่ทำไว้เมื่อหลายเดือนก่อนมาใช้ทดสอบว่าชิ้นส่วนต่าง ๆ จะเข้ากับ enclosure อย่างไร พร้อมรวมไอเดียใหม่เข้าไป
- จากนั้นลงมือทำ schematic อันน่าหวาดหวั่น ในส่วนนี้ไม่ได้พยายามสร้างอะไรแปลกใหม่ แต่ใช้ keyboard matrix แบบง่ายสำหรับสวิตช์ ซึ่งเป็นแนวปฏิบัติมาตรฐานสำหรับ MCU ขนาดนี้ โดยแต่ละแถวและคอลัมน์เชื่อมกับ pinout ของ MCU เอง รวมใช้ทั้งหมด 11 พิน
- หลังทำ schematic ก็สนุกกับการออกแบบเลย์เอาต์ PCB โดยตัดสินใจแยกด้านข้างด้วย V-cut เพื่อให้สามารถหัก PCB ออกจากกันด้วยมือได้ การรวมด้านข้างเข้าด้วยกันช่วยให้ไฟล์ดูเรียบร้อยและลดต้นทุนการผลิตลงเล็กน้อย
- ลอจิกหลักสร้างขึ้นรอบไมโครคอนโทรลเลอร์ nice!nano ซึ่งมีฟังก์ชันสำคัญต่าง ๆ อย่างการจัดการพลังงานและเสาอากาศรวมมาให้แล้ว จึงสามารถทำให้ระบบเรียบง่ายโดยไม่ต้องมี LED เพิ่มเติม หน้าจอ หรือ rotary encoder ต้องการเพียงการตั้งค่าขั้นต่ำสำหรับพลังงานและการสื่อสารเท่านั้น
- การออกแบบ enclosure อะลูมิเนียมเป็นความท้าทายอีกอย่าง เพราะเป็นครั้งแรกที่ใช้ซอฟต์แวร์ออกแบบเชิงพารามิเตอร์ จึงต้องปรับวิธีคิดพอสมควร ช่วงแรกทิ้งไฟล์ที่เกือบเสร็จไปหลายไฟล์ เนื่องจากเมื่อต้องปรับขนาด ลำดับการแก้ไขผิดทำให้โมเดลพังแบบสุ่ม
- ผ่านเคสไปราว 100 เวอร์ชันกว่าจะมาถึงเวอร์ชันสุดท้าย การได้โมเดลสิ่งที่กำลังจะมีอยู่จริงทางกายภาพเป็นแรงจูงใจอย่างมาก
- ตระหนักว่าต้องปรับให้เหมาะกับการทำ CNC ซึ่งหมายถึงการลบส่วน overhang แบบปิดหรือฟีเจอร์ที่ดอกสว่านเข้าถึงไม่ได้ออกไป และต้องลบมุมคมที่ไม่สามารถตัดได้ด้วยดอกเจาะทรงกลมด้วย
- งานคีย์แคปแบบคัสตอมเริ่มขึ้นทันทีหลังสร้างเสร็จ คีย์แคปพื้นฐานยังไม่ตอบโจทย์ทั้งเรื่อง tolerance แบบเฉพาะและโปรไฟล์เสียงที่จำเป็นสำหรับสวิตช์ PG1316 จากการค้นคว้าพบว่าการพิมพ์ MJF/SLS รองรับ tolerance ขนาดเล็กได้
- ณ เวลาที่เขียน คีย์แคปยังอยู่ระหว่างดำเนินการ และกำลังทดสอบความพอดีรวมถึงขนาดต่าง ๆ เนื่องจากไม่มีเครื่องพิมพ์ 3D ของตัวเอง จึงต้องออกแบบทุกแบบแปรผันให้เสร็จในครั้งเดียวเพื่อลดต้นทุนการผลิต
การประกอบ
- ใช้ห้องครัวเป็นพื้นที่ทำงานสำหรับการประกอบ
- หยุดผลิต carbonaras ตามปกติ แล้วเริ่มผลิต keyboarnaras
- ตอนนี้คุณคงรู้แล้วว่าบทความนี้ไม่ได้เขียนโดย AI
- แนะนำเครื่องมือ
- solder paste อุณหภูมิต่ำแบบไร้สารตะกั่วและใช้บิสมัทเป็นหลัก
- ฟลักซ์ชนิด water-soluble และ no-clean
- hotplate Miniware 50x50mm
- isopropyl alcohol สำหรับทำความสะอาด
- อุปกรณ์บัดกรีมาตรฐาน
- มัลติมิเตอร์
ความท้าทาย
- ระหว่างการสร้าง มีสองความท้าทายที่เด่นชัดที่สุดคือการบัดกรีและการทำความสะอาด
- เมื่อบัดกรีบอร์ด PCB หนา 1mm ด้วย hotplate จะเกิดการโก่งตัว พื้นผิวที่โก่งทำให้ให้ความร้อนอย่างสม่ำเสมอได้ยาก ในแต่ละครั้งที่บัดกรี ต้องคอยเฝ้าดูทั้งการสัมผัสกับพื้นผิว อุณหภูมิรีโฟลว์ โปรไฟล์การไต่ระดับอุณหภูมิ การป้องกันความร้อนเกิน การจัดแนวสวิตช์ การไล่ตามเม็ดบัดกรีด้วยฟลักซ์ และการหลีกเลี่ยงการลวกมือ เรียกได้ว่ามือไม่ว่างเลย
- แม้จะสั่ง stencil SMD ขนาดใหญ่มากแบบใส่กรอบมา แต่กลับพบว่าวิธีที่ดีที่สุดเพื่อให้แน่ใจว่าสวิตช์เชื่อมต่อได้ดี คือการปาด paste ด้วยมือในปริมาณมากกว่าที่ stencil ให้ประมาณ 3 เท่า
- ความท้าทายที่สองคือการทำความสะอาด แม้ฟลักซ์บัดกรีแบบ “no-clean” ก็ยังต้องล้างเพื่อป้องกันการออกซิไดซ์ โดย isopropyl alcohol ใช้ไม่ได้ผล และสุดท้ายต้องใช้น้ำเดือดล้างคราบฟลักซ์ออก ควรอ่านสเปกให้ละเอียดกว่านี้
- บัดกรีบิสมัทใช้งานค่อนข้างยาก และระหว่างบัดกรีมีเม็ดบัดกรีเหลวเล็กมากกระเด็นไปทั่ว แม้จุดบัดกรีที่สมบูรณ์แล้วก็ยังต้องใช้แปรงทำความสะอาดด้วยมือ
- วิธีแก้: บัดกรีสวิตช์ครั้งละ 4 ตัว แล้วทำความสะอาดหลังจบรอบ ก่อนค่อยไปขั้นต่อไป
- การบัดกรีสวิตช์แบบกริด 5×6 ใช้เวลาทั้งวัน และอาจเคยเป็นโรงงานผลิตที่ไร้ประสิทธิภาพที่สุดใน EU ชั่วขณะหนึ่ง
ประเมินผลสุดท้าย
- แม้จะมีโอกาสเกิดปัญหาได้หลายอย่าง แต่โดยรวมก็ผ่านไปอย่างราบรื่น
- ชิ้นส่วนที่ต้องใช้พอดีกันอย่างแม่นยำ และวงจรอิเล็กทรอนิกส์ก็ทำงานปกติ
- tolerance ถูกต้อง และแบตเตอรี่ Li-Po ก็ไม่ได้ระเบิด
- การติดตั้งเฟิร์มแวร์ก็ง่ายมากเช่นกัน thanks to ZMK
- ความผิดพลาดที่เกิดขึ้นระหว่างการสร้างทั้งหมดสามารถแก้ได้ในขั้นตอนการประกอบ
- ประสบการณ์การพิมพ์
- ด้วยความสูงที่ต่ำของคีย์บอร์ด ทำให้ใช้งานสบายเพราะไม่ต้องงอข้อมือ
- สวิตช์ที่มีแรงกดทำงาน 32g ถือว่าค่อนข้างหนักสำหรับคีย์บอร์ดสไตล์แล็ปท็อป และมีสัมผัสคลิกชัดเจน
- สัมผัสการกดดี และคีย์แคปแบบคัสตอมช่วยให้เสียงนุ่มลง
- บทสรุปสุดท้าย: กระบวนการสร้างเป็นประสบการณ์การเรียนรู้ที่ยอดเยี่ยม และผลิตภัณฑ์สุดท้ายก็ดีกว่าที่คาดไว้
- หลังจากได้เรียนรู้ทักษะใหม่มากมาย ก็ยิ่งตั้งตารอการสร้างเวอร์ชันถัดไป
ข้อผิดพลาด (Oopsies)
- ไม่ได้เพิ่ม via ลงบนแผ่นทองแดงของสวิตช์ ทำให้การเชื่อมความร้อนระหว่าง hotplate กับ PCB เย็นกว่าที่ควรเล็กน้อย
- ใช้ solder mask สีขาว ซึ่งจะเปลี่ยนเป็นสีแดงเมื่อร้อนเกินไป
- ไม่ได้เปลี่ยน footprint PCB ของ nice!nano จากแบบ through-hole เป็นชนิด SMD
- วิธีแก้: แปะเทป polyamide แล้วแก้ด้วยการบัดกรีมือ
- จำเป็นต้องมีปุ่มรีเซ็ตแบบกายภาพ
- ตอนนี้มันซ่อนอยู่ใต้เคส จึงรีเซ็ตได้ยากเมื่อแบตเตอรี่อ่อนมาก
- ไม่ได้อุ่น PCB ล่วงหน้าก่อนบัดกรี
- ระหว่างบัดกรีเกิดปุ่มนูนเล็ก ๆ บนผิว PCB (เพราะความชื้น)
- ไม่ได้ใส่ใจเรื่องการลดเสียงและแรงสั่นสะเทือนมากพอ
- หากปรับปรุงการออกแบบ enclosure อีกเล็กน้อย การถ่ายทอดเสียงน่าจะดีขึ้น
- ตอนสั่งเคสไม่ได้ระบุกระบวนการ anodizing ให้ชัดเจน
- ควรทำ anodizing หลัง media blasting เพื่อป้องกันรอยนิ้วมือและการออกซิไดซ์
สิ่งที่จะปรับปรุงในเวอร์ชันถัดไป
- ปรับปรุง thumb cluster
- พิจารณาการออกแบบตามหลักสรีรศาสตร์ที่ดีกว่าเดิม
- ทบทวนการตั้งค่า stagger อีกครั้ง
- เพิ่มปุ่มรีเซ็ตแบบกายภาพ
- เพิ่มตัวเลือกการปรับแต่งให้เคสอะลูมิเนียมมากขึ้น
- ควบคุมการจัดวางเสาอากาศได้มากขึ้นผ่านการรวม PCB
- ออกแบบด้านข้างของ chassis (frame) ให้ยาวขึ้น เพื่อให้ใส่ชั้นโฟมเพิ่มเติมได้
- เพิ่มวัสดุปิดด้านล่างเพื่อป้องกันไม่ให้ PCB โก่งตัวได้อย่างอิสระ
- เพิ่มฟังก์ชันแม่เหล็ก snap เพื่อความสะดวกเวลาเดินทาง
- เพิ่มความโค้งของมุม enclosure เพื่อให้ขอบดูนุ่มนวลขึ้น
- เพิ่มชุด LED แบบ 1x3 เพื่อแสดงเลเยอร์และคำสั่ง
- ทดลองใช้สวิตช์ PG1316M ที่เล็กกว่า เพื่อสำรวจความเป็นไปได้ของเลย์เอาต์ใหม่
- ทดลองเพิ่มอุปกรณ์ชี้ตำแหน่งและ rotary encoder
3 ความคิดเห็น
ช่วงนี้คีย์บอร์ดแบบแยกฝั่งดูเหมือนจะโฟกัสไปทาง home row mod มากกว่าคลัสเตอร์นิ้วโป้งเสียอีก เลยสงสัยว่าแทบจำเป็นไหมที่จะต้องปรับปรุงคลัสเตอร์นิ้วโป้งเพิ่มอีกอยู่ดี อย่างไรก็ดี ถ้าเป็นผู้ใช้ที่คุ้นเคยกับเลย์เอาต์ ortholinear อยู่แล้ว ก็อดคิดไม่ได้ว่าน่าจะใส่ใจกับคีย์แคปแบบ homing bar ให้มากกว่านี้สักหน่อย
มีการพูดถึงว่าเคยใช้คีย์บอร์ด ortholinear แบบสำเร็จรูปมาแล้ว แต่ถ้าได้ลองใช้คีย์บอร์ด split แบบสำเร็จรูปด้วย ก็น่าจะพอทำดีไซน์ที่เป็น ergonomic อย่างแท้จริงได้ไม่ใช่หรือครับ/คะ เพราะหัวใจสำคัญที่สุดของคีย์บอร์ด split ก็คือ thumb cluster..
ความคิดเห็นบน Hacker News