ด้วยเจ้าเกมคอนโทรลเลอร์ตัวนี้ น้องจะบังคับเกม PC ทุกเกมที่ใช้แป้นคีย์บอร์ดประมาณ 7 ปุ่มได้เลย ตัวอย่างเช่น Frogratto & Friends, Super Tux 2, Limbo หรือ Undertale อันนี้ก็เหมาะมากกับเกมแนวคลาสสิคอย่าง Pac-Man, Tetris หรือ Donkey Kong ด้วยนะ ตัวคอนโทรลเลอร์นี้มันจำลองการทำงานเป็นคีย์บอร์ด ถ้าอยากเปลี่ยนปุ่มอะไร ก็ไปปรับโค้ด หรือไม่ก็ไปรีแมปปุ่มในเมนูเกมได้เลย
การพิมพ์ 3D
ขั้นแรก พิมพ์ชิ้นส่วน 3D ออกมา แล้วก็อัดน็อตเกลียว (thread inserts) เข้าไป อาจจะต้องใช้กระดาษทรายขัดปรับความสูงของปุ่มนิดหน่อย ให้มันเข้ากับช่องติดตั้งปุ่มกด (pushbutton) ได้พอดี
การบัดกรี
พี่ใช้แผงวงจรที่มีรูต่อสามรู เพื่อจ่ายไฟให้ปุ่มกด และต่อสายจากปุ่มกดเข้ากับขา Digital กับขา GND ของ Arduino


การเซ็ตอัพ
พออัปโหลดโค้ดเสร็จ ตัวคอนโทรลเลอร์ก็ควรจะทำงานแบบ Plug and Play บน PC ทุกเครื่องเลย สบายๆ
รายละเอียดเทคนิคเพิ่มเติม (จัดเต็ม!)
เจ้า Arduino Game Controller เนี่ย มันพัฒนาไปได้ไกลกว่าแค่จำลองคีย์บอร์ดธรรมดาๆ นะ! ถ้าใช้ไลบรารีซอฟต์แวร์ขั้นสูงหน่อย เราสามารถบังคับให้ Arduino ของเราทำตัวเป๊ะๆ เหมือน คอนโทรลเลอร์ Xbox 360 หรือ PlayStation เลย!
มาตรฐาน "XInput"
เกม PC สมัยใหม่ส่วนใหญ่มักต้องการโปรโตคอล "XInput" และอาจจะไม่รับอินพุตจากคีย์บอร์ดธรรมดา ถ้าอยากได้ฟีเจอร์นี้:
- ไลบรารี: ใช้ไลบรารีทรงพลังอย่าง
ArduinoJoystickLibraryหรือไลบรารีเฉพาะทางสำหรับXInputที่ออกแบบมาสำหรับ Arduino Micro - การแมปโดยตรง: ไลบรารีพวกนี้จะทำให้เราส่งคำสั่งไปที่ Windows โดยตรงในฐานะเกมแพด ตัวอย่างเช่น:
Joystick.setButton(0, digitalRead(buttonA));จะแมปปุ่มกดจริงๆ กับปุ่ม 'A' บนคอนโทรลเลอร์Joystick.setXAxis(analogRead(joyX));จะแมปจอยสติ๊กแบบอนาล็อกกับแกน X ของ Left Thumbstick
อุปกรณ์ที่ต้องใช้สำหรับการสร้างขั้นสูง
- Arduino Micro (ชิป ATmega32U4): บอร์ดนี้จำเป็นมาก เพราะมันรองรับ USB HID แบบ Native ทำให้คอมพิวเตอร์มองเห็นมันเป็นเกมแพดได้เลย
- จอยสติ๊กแบบ PS2 (2 อัน) สำหรับควบคุมแบบอนาล็อกคู่
- ปุ่มกดหลายๆ ปุ่ม สำหรับ A/B/X/Y, Start, Select, Bumpers และ Triggers
- โครงพิมพ์ 3D หรือกล่องสำหรับบรรจุ เพื่อเก็บอุปกรณ์ทั้งหมดให้เป็นระเบียบ
พัฒนาต่อไปอีก (Force Feedback)
โปรโตคอล XInput มันสื่อสารสองทางนะ นั่นหมายความว่า PC สามารถส่งสัญญาณ "สั่น (Rumble)" กลับมาที่คอนโทรลเลอร์ผ่าน USB ได้ เมื่อมีเหตุการณ์ในเกม (เช่น ตัวละครโดนโจมตี) เราสามารถต่อทรานซิสเตอร์ NPN เข้ากับขา Digital ของ Arduino เพื่อขับ มอเตอร์สั่น ที่ติดไว้ในด้ามจับคอนโทรลเลอร์ได้เลย จะได้ฟีดแบ็กแบบสั่นสะเทือนเหมือนคอนโทรลเลอร์คอนโซลของจริง! สุดยอดไปเลยมั้ยล่ะ วัยรุ่น!