สารบัญ:

เปลี่ยน X-box Rock Band Drums ให้เป็น Midi Stand Alone Electronic Drums.: 4 ขั้นตอน (พร้อมรูปภาพ)
เปลี่ยน X-box Rock Band Drums ให้เป็น Midi Stand Alone Electronic Drums.: 4 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: เปลี่ยน X-box Rock Band Drums ให้เป็น Midi Stand Alone Electronic Drums.: 4 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: เปลี่ยน X-box Rock Band Drums ให้เป็น Midi Stand Alone Electronic Drums.: 4 ขั้นตอน (พร้อมรูปภาพ)
วีดีโอ: Turn x-box Rock Band drum set into a midi playing electronic drum set. 2024, กรกฎาคม
Anonim

ฉันโชคดีที่ได้กลองชุด x-box มือสองมา มันค่อนข้างหยาบและไม่มีไม้พาย แต่ไม่มีอะไรที่ซ่อมไม่ได้ ฉันเปลี่ยนเป็นกลองไฟฟ้าแบบสแตนด์อโลน อ่านค่าแอนะล็อกจากเซ็นเซอร์เพียโซแล้วเปลี่ยนค่านั้นเป็นคำสั่ง MIDI

ฮาร์ดแวร์ปัจจุบันประกอบด้วย RPI-Zero, mcp3008 ซึ่งเชื่อมต่อกับเซ็นเซอร์ piezo ดั้งเดิมบนดรัมชุด

เสบียง

MCP3008 + ชุดดรัม x-box ซ็อกเก็ต IC หรือ 5 piezo ติดตั้งบนพื้นผิวบางส่วน การ์ดเสียง rpi zerousb สำหรับลำโพงขยาย rpisimple สายไฟบางตัวและตัวต้านทานโอห์ม 10M pcb.6 และส่วนหัวชายบางตัวสำหรับบอร์ดเชื่อมต่อ piez

ขั้นตอนที่ 1: เตรียม Piezo Sensor ให้พร้อม

Image
Image

ครั้งแรกที่ฉันมีส่วนร่วมและพบเซ็นเซอร์ piezo ทั้งหมด การเดินสาย และสร้างบอร์ดที่มีตัวต้านทาน 1M ระหว่าง 2 สายของ piezo แต่ละอัน

ฉิ่งมีวงจรพิเศษที่น่าสนใจอยู่ในตัว เอามาเป็นส่วนๆ เหลือแต่เซ็นเซอร์ ฉันต้องการสักวันหนึ่งที่จะรู้ว่าผลลัพธ์ของวงจรนั้นคืออะไร

การทดสอบและการทำงานส่วนนี้ทำบน Arduino uno

ขั้นตอนที่ 2: เขียนโค้ดบางส่วน

ฉันแก้ไข x-box ขึ้นเล็กน้อย ซ่อมแซมส่วนที่หักทั้งหมด ถอดแผ่นรองที่หลุดออกมา

และในที่สุดก็มีโค้ดที่ใช้ได้ดีพอสำหรับลูกของฉัน ซึ่งยังไม่สมบูรณ์แบบ

รหัสดั้งเดิมที่ฉันต้องการใช้และรหัสที่ช่วยฉันทำงานของฉันคือ thishttps://github.com/evankale/ArduinoMidiDrums

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

คุณสามารถดาวน์โหลดรหัสในไฟล์แนบ - โปรดทราบว่ามี 4

ฉันยังเพิ่มคุณสมบัติเจ๋ง ๆ ที่ให้คุณเลือกโน้ตสำหรับปุ่มกดแต่ละอัน มันยังบันทึกการตั้งค่าใน EEPROM อีกด้วย

และซอฟต์แวร์ 3 ตัวที่ฉันพูดถึงในวิดีโอคือ loopbe1, hairless midi serial bridge และ VMPK

ขั้นตอนต่อไปคือการย้ายไปทำงานกับราสเบอร์รี่ pi

ขั้นตอนที่ 3: ทำให้มันทำงานบน Raspberry Pi

Image
Image

หลังจากเกือบจะล้มเลิกโครงการนี้ ฉันถามอีกครั้งในบางที่และถูกนำไปยังบทความที่นำฉันไปสู่เส้นทางที่ถูกต้องซึ่งก็คือการสังเคราะห์ของเหลว

ฉันใช้เวลาดีๆ หลายชั่วโมงเพื่อให้มันทำงานและในที่สุดก็ทำได้ ปัญหาหลักคือการทำให้ midi ทำงานบน Rpi ได้ ฉันจึงติดตั้ง fluidsynth โดยใช้บทช่วยสอนที่ยอดเยี่ยมนี้

sandsoftwaresound.net/qsynth-fluidsynth-ras…

ฉันตั้งค่า Arduino เพื่อส่งคำสั่งซีเรียลแล้วฟังด้วย python serial บนราสเบอร์รี่แล้วส่งไปยัง midi ผ่าน fluidsynth

ฉันยังสามารถดาวน์โหลดไฟล์ sf2 ที่เหมาะสมสำหรับกลองได้อีกด้วย

อย่างที่คุณเห็น Kesem ชอบมันมาก Arduino ใช้รหัสเดียวกันและสำหรับ rpi ฉันเขียนรหัสที่แนบมา ฉันไม่สามารถแนบไฟล์ sf2 ได้ - แต่สามารถหาได้ง่ายโดยใช้ google

ขั้นตอนที่ 4: ทำให้มันยืนอยู่คนเดียว

ทำให้มันยืนอยู่คนเดียว
ทำให้มันยืนอยู่คนเดียว
ทำให้มันยืนอยู่คนเดียว
ทำให้มันยืนอยู่คนเดียว

ขั้นตอนที่ใหญ่ที่สุดในการทำงานแบบสแตนด์อะโลนคือการถอด Arduino และพยายามทำให้มันทำงานเร็วขึ้นเล็กน้อย มีช่องว่างที่เห็นได้ชัดเจนระหว่าง "การตี" และเสียงที่เล่นบน midi ดังนั้นเพื่อกำจัด Arduino ฉันต้องการทางเลือกแบบอะนาล็อกและนี่คือที่ที่ mcp3008 เข้ามาช่วยเหลือ คุณสามารถเห็นได้จากรูปภาพที่ฉันสร้างบอร์ดแยก และในวิดีโอ คุณจะพบรายละเอียดทั้งหมดเกี่ยวกับขั้นตอนต่างๆ mcp3008 ใช้ spi เพื่อสื่อสาร และฉันเชื่อมต่อ 2 ตัวและทำการทดสอบไม่กี่ครั้ง adafruit มีห้องสมุดที่ยอดเยี่ยมสำหรับ mcp3008 สำหรับ python คำแนะนำอีกครั้งในวิดีโอ ฉันใช้ศูนย์ rpi เนื่องจากขนาดของมันและฉันเพิ่มการ์ดเสียง usb ภายนอกจากเอาต์พุตเสียง ฉันใช้ลำโพงธรรมดาที่มีแอมพลิฟายเออร์ในตัวเพื่อเล่นเสียง มีการแนบรหัสปัจจุบันด้วยและทำงานบน rpi ด้วยตนเองและตั้งค่าเป็นบริการ ดังนั้นจึงสามารถทำงานเมื่อโหลด ฟีเจอร์เจ๋งๆ ที่ฉันเพิ่มเข้าไปคือการเชื่อมต่อปุ่มรีเซ็ตเล็กๆ ที่อยู่บนกล่อง และใช้ปุ่มนั้นเพื่อปิดระบบ เนื่องจากฉันทำงานโดยไม่มีหน้าจอ โค้ดปัจจุบันยังไม่สมบูรณ์แบบ และฉันพยายามปรับปรุงอย่างต่อเนื่องและพัฒนาให้ดีขึ้น ดังนั้นหากคุณมีแนวคิดที่จะทำให้มันทำงานได้ดียิ่งขึ้นเมื่อพูดถึง midi ฉันก็อยากฟัง

แนะนำ: