ปัญหาหลักที่ Stephen เผชิญคือ จอ CRT ในตู้เกม Arcade ของเขามีความละเอียด 336 x 262 พิกเซล ซึ่งเป็นค่าที่ไม่มาตรฐาน และถึงแม้จะพยายามรันที่ 320 x 240 พิกเซล ก็ยังให้ภาพที่ไม่สวยงามและอะแดปเตอร์ USB-to-VGA ทั่วไปก็มักไม่รองรับ
การเดินทางของ Stephen เต็มไปด้วยการทดลอง เขาเริ่มตั้งแต่การใช้ RP2040 PIOs, วงจร DAC แบบ resistor ladder ไปจนถึงการเขียน Kernel Module ด้วยตัวเองหลายครั้ง ก่อนจะค้นพบโปรโตคอล GUD (Generic USB Display) ซึ่งมีไดรเวอร์ Linux Kernel ที่ได้รับการยอมรับอยู่แล้ว
จากนั้น Stephen ได้นำโปรโตคอล GUD มาพัฒนาต่อบนไมโครคอนโทรลเลอร์ซีรีส์ STM32 ซึ่งมีราคาสูงกว่า แต่ก็สามารถให้ประสิทธิภาพที่ต้องการได้ หลังจากความพยายามหลายครั้งและการออกแบบแผงวงจร (PCB) ที่ซับซ้อน เขาก็ประสบความสำเร็จในการสร้าง USB-to-VGA คอนเวอร์เตอร์แบบ Standalone ที่ใช้โปรโตคอล GUD ซึ่งสามารถแสดงผลสี 34 บิตได้อย่างสมบูรณ์แบบที่ความละเอียดพิเศษนั้น และยังสามารถปรับใช้กับความละเอียดอื่นๆ ได้ตามต้องการอีกด้วย
โครงการนี้ไม่เพียงแต่แก้ปัญหาเฉพาะหน้าของ Stephen เท่านั้น แต่ยังเป็นแนวทางอันมีค่าสำหรับผู้ที่ต้องการขับเคลื่อนจอแสดงผลที่มีข้อกำหนดเฉพาะเจาะจง ไม่ว่าจะเป็นจอ CRT เก่า หรือการใช้งานที่ต้องการความยืดหยุ่นสูง
🏷️ หมวดหมู่: Peripherals Hacks, CRT monitor, usb, USB to VGA, vga
🔗 อ่านบทความฉบับเต็ม: hackaday
