Mega RasPi - Raspberry Pi ใน Sega Mega Drive / Genesis: 13 ขั้นตอน (พร้อมรูปภาพ)
Mega RasPi - Raspberry Pi ใน Sega Mega Drive / Genesis: 13 ขั้นตอน (พร้อมรูปภาพ)
Anonim
Mega RasPi - Raspberry Pi ใน Sega Mega Drive / Genesis
Mega RasPi - Raspberry Pi ใน Sega Mega Drive / Genesis

คู่มือนี้จะนำคุณผ่านการแปลง Sega Mega Drive เก่าไปเป็นคอนโซลเกมย้อนยุค โดยใช้ Raspberry Pi

ฉันใช้เวลามากมายในวัยเด็กในการเล่นวิดีโอเกมบน Sega Mega Drive ของฉัน เพื่อนของฉันส่วนใหญ่ก็มีเหมือนกัน ดังนั้นเราจะแบ่งปันเกมและจัดการแข่งขันกันเอง สามสิบปีต่อมา ในที่สุดฉันก็พบวิธีแสดงความเคารพต่อความทรงจำเหล่านั้น โดยการแปลง Sega Mega Drive เป็นคอนโซลเกมย้อนยุคและเซิร์ฟเวอร์สื่อที่ฉันสามารถใช้ได้ทุกวันโดยใช้ Raspberry Pi: Mega RasPi

เป้าหมายของฉันคือการรักษาส่วนและฟังก์ชันดั้งเดิมของคอนโซลให้มากที่สุดเท่าที่จะเป็นไปได้ ในขณะที่ทำให้ RasPi เข้าถึงได้ง่าย

เสบียง

  • 1 Sega Mega Drive ที่ผิดพลาด (หรือ Genesis)
  • ตัวควบคุมการทำงาน 1 หรือ 2 ปุ่ม 3 หรือ 6 ปุ่ม
  • 1 ราสเบอร์รี่ Pi 3B+
  • 1 การ์ด Micro SD ติดตั้ง RetroPie v4.5 ไว้ล่วงหน้า
  • 1 ControlBlock v2.1
  • 1 อะแดปเตอร์แปลงไฟ 5V 3A พร้อมปลั๊ก 5.5 มม. / 2.1 มม.
  • ฮีทซิงค์ Raspberry Pi
  • ไส้ปลา 2.85 มม.
  • สายต่อและสายไฟ:

    • สาย HDMI 30 ซม.
    • สายเคเบิลอีเทอร์เน็ต 30 ซม.
    • 3x สาย USB 20/30 ซม.
    • สายอ่านการ์ด Micro SD 25 ซม.
    • สายสัญญาณเสียงแจ็ค 3.5 มม.
    • สายไฟไมโคร USB
    • สายจัมเปอร์ 25 ซม.
  • สกรู
  • ไม่จำเป็น

    • ไดรฟ์จัดเก็บ 2.5 นิ้ว
    • สาย SATA เป็น USB

เครื่องมือและทรัพยากร

  • เครื่องมือพื้นฐาน: ไขควง คีม เลื่อย ฯลฯ
  • หัวแร้งและวัสดุสิ้นเปลือง
  • เครื่องพิมพ์ 3 มิติ
  • ความรู้พื้นฐานเกี่ยวกับเครื่องมือการพิมพ์ 3 มิติ การบัดกรี และลินุกซ์

ขั้นตอนที่ 1: การถอด Mega Drive

การถอดประกอบ Mega Drive
การถอดประกอบ Mega Drive
การถอดประกอบ Mega Drive
การถอดประกอบ Mega Drive

ไม่จำเป็นต้องใช้เครื่องมือหรูหราในการถอดประกอบ: ไขควงรุ่นเก่าที่ดีก็เพียงพอแล้ว

มีสกรู 6 ตัวสำหรับเปิดเคสด้านนอก และอีก 10 ตัวสำหรับถอดบอร์ด บางส่วนมีความยาวต่างกัน แต่ให้ติดตามว่าอันไหนไปที่ไหน

หมายเหตุเกี่ยวกับรุ่น: มีบางรุ่นที่มีการกำหนดค่าพอร์ตที่แตกต่างกันเล็กน้อย คู่มือนี้ใช้สำหรับคู่มือนี้คือ 1601-18

ขั้นตอนที่ 2: การพิมพ์ 3 มิติชิ้นส่วนใหม่

การพิมพ์ 3 มิติ ชิ้นส่วนใหม่
การพิมพ์ 3 มิติ ชิ้นส่วนใหม่
การพิมพ์ 3 มิติ ชิ้นส่วนใหม่
การพิมพ์ 3 มิติ ชิ้นส่วนใหม่

ฉันต้องการให้ชิ้นส่วนใหม่ดูโดดเด่นจริงๆ ดังนั้นฉันจึงใช้เส้นใยสีแดง โดยมีการกำหนดค่าต่อไปนี้ใน Ultimaker Cura:

  • เครื่องพิมพ์: Ultimaker 3
  • เส้นใย: PLA 2.85 mm
  • ความละเอียด: 0.1 mm
  • เติม: 100%
  • ตรวจสอบทั้งการรองรับและการยึดเกาะ

คุณสามารถค้นหาไฟล์.stl ต้นทางจาก Sega Mega Drive 1 กับ Raspberry Pi 3 ได้

พิมพ์สิ่งต่อไปนี้:

  • พอร์ตด้านหลัง: HDMI และ Ethernet

    • back-1-HDMI-1601-18.stl
    • back-2-HDMI-1601-18.stl
  • ช่องเสียบส่วนขยายด้านข้าง: USB และตัวอ่านการ์ด Micro SD

    • slot-1-D-SUB.stl
    • slot-2-D-SUB.stl
    • slot-3-D-SUB.stl
  • ภายใน

    pi-holder-MULTI.stl

หมายเหตุเกี่ยวกับการพิมพ์ 3 มิติ: PLA เป็นวัสดุที่ใช้กันทั่วไปและใช้งานง่าย อย่างไรก็ตาม คุณอาจพิจารณาวัสดุอื่นๆ สำหรับชิ้นส่วนที่แข็งแรงกว่า เช่น PETG ไฟล์เหล่านี้เป็นส่วนหนึ่งของโปรเจ็กต์การแปลงที่ยอดเยี่ยมนี้ และได้รับการจัดทำเป็นเอกสารไว้อย่างดีพร้อมคำแนะนำโดยละเอียด ผู้เขียนขายชุดอุปกรณ์ทั้งหมดบนเว็บไซต์ของเขา คุณอาจต้องการตรวจสอบเช่นกัน

ขั้นตอนที่ 3: พอร์ตด้านหลัง: HDMI และ Ethernet

พอร์ตด้านหลัง: HDMI และ Ethernet
พอร์ตด้านหลัง: HDMI และ Ethernet
พอร์ตด้านหลัง: HDMI และ Ethernet
พอร์ตด้านหลัง: HDMI และ Ethernet
พอร์ตด้านหลัง: HDMI และ Ethernet
พอร์ตด้านหลัง: HDMI และ Ethernet

หยิบทั้ง back-1-HDMI-1601-18 และ back-2-HDMI-1601-18 พร้อมกับสายต่อ HDMI และอีเธอร์เน็ต คุณจะต้องใช้สกรู 3 ตัว

เมื่อสายเคเบิลทั้งสองเข้าที่แล้ว ให้ขันสกรูเข้ากับเคสด้านล่าง

หมายเหตุเกี่ยวกับการจัดหาสายเคเบิลที่เหมาะสม: ไม่ใช่เรื่องง่ายที่จะหาสายเคเบิลที่พอดีกับส่วนรองรับอย่างสมบูรณ์ คำแนะนำของฉันคือไปที่ร้านขายอุปกรณ์อิเล็กทรอนิกส์สองสามร้านและลองใช้สายเคเบิลจนกว่าคุณจะพบสิ่งที่เข้ากันได้ คุณอาจต้องแกะสลักชิ้นส่วนบางส่วนเพื่อให้พอดีกับส่วนรองรับ นั่นคือสิ่งที่ฉันทำกับสาย HDMI อย่างที่คุณเห็นในรูปภาพ ไม่น่าจะเป็นปัญหา ตราบใดที่คุณยึดติดกับสายเคเบิลพื้นฐานที่มีปลั๊กที่เป็นยาง โดยเฉพาะอย่างยิ่งหากสั่งซื้อทางออนไลน์ ทางเลือกอื่นคือแก้ไขไฟล์.stl และพิมพ์การรองรับแบบกำหนดเองสำหรับสายเคเบิลที่เหมาะสม

ขั้นตอนที่ 4: พอร์ตส่วนขยายด้านข้าง: USB และ MicroSD

พอร์ตส่วนขยายด้านข้าง: USB และ MicroSD
พอร์ตส่วนขยายด้านข้าง: USB และ MicroSD
พอร์ตส่วนขยายด้านข้าง: USB และ MicroSD
พอร์ตส่วนขยายด้านข้าง: USB และ MicroSD
พอร์ตส่วนขยายด้านข้าง: USB และ MicroSD
พอร์ตส่วนขยายด้านข้าง: USB และ MicroSD

หยิบ slot-1-D-SUB, slot-2-D-SUB และ slot-3-D-SUB รวมถึงสายต่อตัวอ่านการ์ด USB และ Micro SD คุณจะต้องใช้สกรู 4 ตัว ติดตั้งสายเคเบิลทั้งหมดเข้ากับส่วนรองรับแล้วต่อเข้ากับเคส

หมายเหตุเกี่ยวกับเวอร์ชัน USB: พอร์ต USB ทั้งสี่พอร์ตใน Pi 3B+ เป็นเวอร์ชัน 2.0 อย่างไรก็ตาม Pi 4 มีพอร์ต USB 3.0 สองพอร์ต พึงระลึกไว้เสมอว่าเพื่อให้ได้สายเคเบิลที่ถูกต้องและรักษาความเข้ากันได้

ขั้นตอนที่ 5: ตัดแต่งและบัดกรีบอร์ด

ตัดแต่งและบัดกรีบอร์ด
ตัดแต่งและบัดกรีบอร์ด
ตัดแต่งและบัดกรีบอร์ด
ตัดแต่งและบัดกรีบอร์ด
ตัดแต่งและบัดกรีบอร์ด
ตัดแต่งและบัดกรีบอร์ด

ตัดแต่งบอร์ดให้พอดีกับเคสด้วยตัวรองรับการพิมพ์ 3 มิติใหม่ ในขณะที่ยังคงปุ่มเดิมและพอร์ตคอนโทรลเลอร์ตามที่แสดงในภาพ เก็บแจ็คเสียงและไฟไว้ด้วย

บัดกรีสายไฟที่จำเป็นทั้งหมดเข้ากับขั้วที่ถูกต้อง (ดูรูป):

  • สวิตซ์ไฟ สายจัมเปอร์ 2 เส้น
  • ปุ่มรีเซ็ต 2 สายจัมเปอร์
  • พอร์ตคอนโทรลเลอร์ 9 สายจัมเปอร์ต่อพอร์ต
  • แจ็คไฟ สายไฟพร้อม Micro USB
  • แจ็คเสียง, สายสัญญาณเสียงพร้อมแจ็ค 3.5 มม.

เมื่อเสร็จแล้วให้ต่อวงจรเข้ากับเคสด้านล่างด้วยสกรู 3 ตัว

หมายเหตุเกี่ยวกับการปรับเปลี่ยนบอร์ด: ฉันชอบแนวคิดในการรวมส่วนประกอบดั้งเดิมและส่วนประกอบใหม่เข้าด้วยกันเพื่อเป็นการแสดงความเคารพต่อคอนโซลดั้งเดิมและทำให้ชิ้นส่วนเก่ามีประโยชน์โดยได้รับแรงบันดาลใจจากโครงการนี้ อย่างไรก็ตาม อย่าทำเช่นนี้กับ Mega Drive ที่ใช้งานได้! เก็บรักษาไว้และหาอันที่หักแทน คุณสามารถหาสินค้าราคาถูกจาก eBay ได้

ขั้นตอนที่ 6: การติดตั้งและระบายความร้อน Raspberry Pi

การติดตั้งและระบายความร้อน Raspberry Pi
การติดตั้งและระบายความร้อน Raspberry Pi
การติดตั้งและระบายความร้อน Raspberry Pi
การติดตั้งและระบายความร้อน Raspberry Pi
การติดตั้งและระบายความร้อน Raspberry Pi
การติดตั้งและระบายความร้อน Raspberry Pi

หยิบ pi-holder-MULTI พร้อมกับ Raspberry Pi และ (เป็นทางเลือก) ไดรฟ์จัดเก็บ 2.5 (รายละเอียดเพิ่มเติมเกี่ยวกับเรื่องนี้ในขั้นตอนต่อไป)

ติดฮีทซิงค์เข้ากับ Pi และติด Pi เข้ากับส่วนรองรับ การติดตั้งทุกอย่างด้วยสายเคเบิลเริ่มยากขึ้น ดังนั้นให้คอยจับตาดูให้ดี

หมายเหตุเกี่ยวกับการทำความเย็น: ฉันมีเพียงการระบายความร้อนแบบพาสซีฟ เพื่อให้ระบบไม่มีเสียง ฉันวางฮีทซิงค์บน CPU, RAM และชิป USB/Ethernet ในการติดตั้งระบบทำความเย็นแบบแอ็คทีฟ คุณจะต้องพิมพ์ตัวยึดพัดลม-MULTI และติดตั้งพัดลมระบายความร้อนซึ่งติดตั้งได้ที่เคสด้านบน อ้างถึงโครงการต้นฉบับสำหรับรายละเอียด

ขั้นตอนที่ 7: (ไม่บังคับ) การเพิ่มไดรฟ์จัดเก็บข้อมูล

(ไม่บังคับ) การเพิ่มไดรฟ์จัดเก็บข้อมูล
(ไม่บังคับ) การเพิ่มไดรฟ์จัดเก็บข้อมูล

หากคุณเลือกที่จะเพิ่มไดรฟ์จัดเก็บ ข้อควรพิจารณาหลักที่ต้องคำนึงถึงคือพลังงาน เป็นไปได้มากที่พอร์ต USB จะไม่สามารถจ่ายไฟได้เพียงพอ

ในการทดลอง ฉันใช้ HDD เก่าที่มีชิ้นส่วนจากเคสภายนอก ซึ่งสามารถจ่ายไฟแยกกันได้ จากนั้น HDD จะเชื่อมต่อขนานกับแจ็คเดียวกันกับ RasPi - ดังที่คุณเห็นในภาพ

ผลที่ได้ค่อนข้างจะเลอะเทอะ และมีส่วนประกอบที่ไม่จำเป็นมากมายที่นี่ ฉันขอแนะนำให้ใช้สาย SATA เป็น USB เฉพาะแทน โดยมีพอร์ต USB คู่สำหรับการจ่ายไฟแบบอิสระ

ขั้นตอนที่ 8: การติดตั้ง ControlBlock: Controllers, Power Switch และ LED

การติดตั้ง ControlBlock: Controllers, Power Switch และ LED
การติดตั้ง ControlBlock: Controllers, Power Switch และ LED
การติดตั้ง ControlBlock: Controllers, Power Switch และ LED
การติดตั้ง ControlBlock: Controllers, Power Switch และ LED

เชื่อมต่อสวิตช์ไฟและตัวควบคุมเข้ากับ ControlBlock สิ่งนี้ค่อนข้างตรงไปตรงมา เนื่องจากพินคอนโทรลเลอร์ 1 ถึง 9 เชื่อมต่อกันตามลำดับ ติดไฟ LED ที่เคสด้านบนด้วยสายจัมเปอร์เพิ่มเติมสองเส้นด้วย เพื่อรักษาขั้วที่ถูกต้อง

ControBlock จะยึดที่ด้านบนของ RasPi แม้ว่าจะต้องติดตั้งไดรเวอร์เพื่อให้ใช้งานได้

ติดตั้งไดรเวอร์

เปิดเมนูการตั้งค่า RetroPie และติดตั้งไดรเวอร์ผ่านเมนู:

RetroPie-Setup > จัดการแพ็คเกจ > จัดการแพ็คเกจไดรเวอร์ > controlblock > Install

กำหนดค่าประเภทตัวควบคุม:

บนเทอร์มินัล พิมพ์:

sudo nano /etc/controlblock.cfg

ค้นหา gamepadtype และเปลี่ยนเป็นกำเนิด

"gamepadtype": "genesis", // ตั้งค่าประเภท gamepad ตัวเลือก: "อาร์เคด", "มาเมะ", "สเนส", "เนส", "กำเนิด", "ไม่มี" …

ตอนนี้คุณควรจะตั้งค่าคอนโทรลเลอร์ใน RetroPie ได้แล้ว

สำหรับคำแนะนำโดยละเอียดและการกำหนดค่าเพิ่มเติม โปรดดูเอกสารประกอบของ ControlBlock2

หมายเหตุเกี่ยวกับ ControlBlock v2.1: ส่วนประกอบนี้เพิ่มการจัดการพลังงานและการรองรับคอนโทรลเลอร์ให้กับ Raspberry Pi การจัดการพลังงานป้องกันข้อมูลเสียหาย และผู้ควบคุมเพิ่มการรองรับตัวควบคุมดั้งเดิม ตัวควบคุมสมัยใหม่ยังสามารถใช้กับพอร์ต USB ด้านใดด้านหนึ่งหรือผ่านทาง Bluetooth ได้ แม้ว่าส่วนประกอบนี้จะสะดวก แต่คุณไม่จำเป็นต้องใช้จริงเพื่อดำเนินโครงการนี้ให้เสร็จสิ้น สวิตช์เปิดปิดสามารถเชื่อมต่อโดยตรงกับ Raspberry Pi และตัวควบคุมที่เสียบเข้ากับ GPIO โดยใช้ db9_gpio_rpi

ขั้นตอนที่ 9: รีเซ็ตปุ่ม

ปุ่มรีเซ็ต
ปุ่มรีเซ็ต
ปุ่มรีเซ็ต
ปุ่มรีเซ็ต

ปุ่มรีเซ็ตได้รับการกำหนดค่าให้ออกจากโปรแกรมจำลองและกลับไปที่เมนูการเลือกเกม

ติดตั้งตัวควบคุม PiGRRL2

บนเทอร์มินัล พิมพ์:

curl -O

sudo bash retrogame.sh

เลือกตัวเลือกที่ 1: ตัวควบคุม PiGRRL 2 และปล่อยให้สคริปต์ทำการติดตั้งให้เสร็จสิ้น

เปลี่ยนการกำหนดค่าพิน ESC

เนื่องจากพินเริ่มต้นที่ใช้สำหรับ ESC ขัดแย้งกับ ControlBlock เราจึงต้องเปลี่ยนเป็นพินอื่น เช่น: GPIO 25 (พิน 22)

sudo nano /boot/retrogame.cfg

ค้นหาบรรทัดคีย์ ESC และเปลี่ยนเป็น 25:

ESC 25 # ออกจาก ROM; ปุ่ม PitFT 1 …

อัพเดท RetroArch

บนเทอร์มินัล พิมพ์:

sudo nano /opt/retropie/configs/all/retroarch.cfg

ค้นหา input_enable_hotkey และ input_exit_emulator และเปลี่ยนเป็น "escape"

input_enable_hotkey = "หลบหนี" … input_exit_emulator = "หลบหนี" …

เชื่อมต่อปุ่มรีเซ็ต

สุดท้ายเชื่อมต่อสายจัมเปอร์ปุ่มรีเซ็ตเข้ากับพิน 22 (GPIO 25) และพิน 25 (กราวด์)

หมายเหตุเกี่ยวกับ PiGRRL 2: นี่เป็นโปรเจ็กต์ที่แตกต่างไปจากเดิมอย่างสิ้นเชิง และเรากำลังใช้ฟีเจอร์เดียวจากที่มีอยู่มากมายในโปรเจ็กต์นี้ ปุ่มรีเซ็ตได้รับการกำหนดค่าเป็นปุ่ม Esc เบื้องหลัง

ขั้นตอนที่ 10: การควบคุมระดับเสียง (ไม่ได้ทดสอบ)

การควบคุมระดับเสียง (ไม่ได้ทดสอบ)
การควบคุมระดับเสียง (ไม่ได้ทดสอบ)

ขั้นตอนนี้ยังไม่เสร็จสมบูรณ์ในคู่มือนี้

ขออภัย โพเทนชิออมิเตอร์ตัวเลื่อนระดับเสียงบน Mega Drive ของฉันเสีย และฉันไม่สามารถเชื่อมต่อกับ RasPi ของฉันได้ อย่างไรก็ตาม สามารถควบคุมระดับเสียงบน Rasperry Pi โดยใช้โพเทนชิออมิเตอร์ได้ แม้ว่าฉันจะให้คำแนะนำโดยละเอียดไม่ได้ แต่ขอแนะนำให้คุณลองใช้ดูสักหน่อย

สัญญาณแอนะล็อกจากโพเทนชิออมิเตอร์จะต้องแปลงเป็นสัญญาณดิจิตอลที่ Raspberry Pi สามารถอ่านได้ ซึ่งสามารถทำได้โดยใช้ชิป MCP3008 ที่เชื่อมต่อกับ GPIO

ดูคำแนะนำต่อไปนี้สำหรับคำแนะนำทีละขั้นตอน:

อินพุตอนาล็อกสำหรับ Raspberry Pi โดยใช้ MCP3008 - แปลงอินพุตแอนะล็อกเป็นดิจิตอลและควบคุมระดับเสียง

ขั้นตอนที่ 11: พาวเวอร์ซัพพลาย

พาวเวอร์ซัพพลาย
พาวเวอร์ซัพพลาย

ฉันยังเก็บแจ็คไฟดั้งเดิมไว้ด้วย อย่างไรก็ตาม คุณจะต้องมีแหล่งพลังงานที่เหมาะสมสำหรับงานนี้ โดยเฉพาะอย่างยิ่งหากคุณเพิ่มไดรฟ์จัดเก็บด้วย

ให้ความสนใจกับขั้วของแหล่งพลังงานใหม่ของคุณ แจ็คไฟ Mega Drive นั้นต่อสายโดยมีขั้วบวกที่ด้านนอกของปลั๊ก อย่างไรก็ตาม การหาแหล่งพลังงานที่มีกราวด์อยู่ด้านนอกนั้นพบได้บ่อยกว่ามาก ตรวจสอบให้แน่ใจว่าคุณต่อสายทุกอย่างถูกต้อง

ขั้นตอนที่ 12: ประกอบเคสอีกครั้ง

ประกอบเคสอีกครั้ง
ประกอบเคสอีกครั้ง
ประกอบเคสอีกครั้ง
ประกอบเคสอีกครั้ง
ประกอบเคสอีกครั้ง
ประกอบเคสอีกครั้ง

งานหนักเสร็จแล้ว ตอนนี้ได้เวลารวบรวมทุกอย่างแล้ว มันยุ่งยากกับสายเคเบิลทั้งหมด แต่ทุกอย่างควรพอดี ขันสกรูด้านบนและด้านล่างเข้ากับสกรูเดิม 6 ตัว

ขั้นตอนที่ 13: เสียบปลั๊กและเพลิดเพลิน

เสียบปลั๊กและเพลิดเพลิน
เสียบปลั๊กและเพลิดเพลิน
เสียบปลั๊กและเพลิดเพลิน
เสียบปลั๊กและเพลิดเพลิน
เสียบปลั๊กและเพลิดเพลิน
เสียบปลั๊กและเพลิดเพลิน

เสียบทุกอย่างเข้าที่: HDMI, Controller และ Power แล้วเปิดสวิตช์ หากคุณยังไม่ได้ทำก่อนหน้านี้ คอนโทรลเลอร์จะต้องได้รับการกำหนดค่าใน RetroPie เพื่อให้สามารถใช้งานได้

หน้าจอ

เป็นโบนัส ฉันได้แนบ splashscreen ที่คุณสามารถใช้กับ Mega Raspi ของคุณเองได้ หากต้องการใช้งาน ให้อัปโหลดภาพไปที่:

/home/pi/RetroPie/หน้าจอกระเด็น/

จากนั้นเปลี่ยนการกำหนดค่า Splashscreen ใต้เมนู RetroPie

ตลับสล็อตไข่อีสเตอร์

หลังจากเปลี่ยนคอนโซลใหม่ ฉันรู้สึกว่าช่องตลับหมึกถูกทิ้งร้าง ดังนั้นฉันจึงจัดทำโลโก้ Mega RasPi ให้พิมพ์ 3 มิติและวางไว้ใต้ช่องตลับหมึก ซึ่งจะแสดงเฉพาะเมื่อคุณเปิดประตูช่องเล็กๆ เท่านั้น

ตอนนี้ได้เวลาสนุกไปกับ Mega RasPi กับเกมย้อนยุคที่คุณชื่นชอบ มีความสุข!