Съдържание:

Превърнете X-box Rock Band Drums в Midi самостоятелни електронни барабани .: 4 стъпки (със снимки)
Превърнете X-box Rock Band Drums в Midi самостоятелни електронни барабани .: 4 стъпки (със снимки)

Видео: Превърнете X-box Rock Band Drums в Midi самостоятелни електронни барабани .: 4 стъпки (със снимки)

Видео: Превърнете X-box Rock Band Drums в Midi самостоятелни електронни барабани .: 4 стъпки (със снимки)
Видео: ЗАПРЕЩЁННЫЕ ТОВАРЫ с ALIEXPRESS 2023 ШТРАФ и ТЮРЬМА ЛЕГКО! 2024, Юли
Anonim

Имах късмет, че получих използван комплект барабани x-box, той е в малко груба форма и без гребло, но нищо, което не може да се поправи. Превръщам го в самостоятелен комплект електрически барабани. Четене на аналоговата стойност от пиезо сензора и превръщането му в MIDI команди.

Текущият хардуер се състои от RPI-Zero, mcp3008, който е свързан с оригиналните пиезо сензори на зададените барабани.

Консумативи

MCP3008 + IC гнездо x-box барабанен комплект или 5 пиезо монтирани на някаква повърхност. rpi zerousb звукова карта за rpisimple усилващи високоговорители някои проводници и pcb.6 10M ома резистори и някои мъжки заглавки за съединителната платка piez

Стъпка 1: Подгответе пиезо сензора

Image
Image

Първо взех част и намерих всички пиезо сензори, окабеляване и създадох платка с 1M резистор между 2 проводника на всяко пиезо.

Цимбалът имаше интересна допълнителна схема в тях. Взех му част, оставяйки само сензора. Искам един ден да разбера какъв е изходът на тази схема, Тази част от тестването и работата беше извършена на arduino uno.

Стъпка 2: Напишете някакъв код

Поправих малко x-box-а, като оправих всички счупени части. Премахнаха разпадащите се подложки.

И накрая получих код, който работи достатъчно добре за моето дете - все още не е перфектен.

Оригиналният код, който исках да използвам, и този, който ми помогна да изработя моя, е следният:

но когато работя върху него, разбрах, че той спира midi бележката веднага след изпращането й. което е добре, ако играете игра на компютъра, за което е предназначен този код, но не е толкова страхотно, когато всъщност искате да свирите миди нота.

Можете да изтеглите кода в прикачения файл - имайте предвид, че има 4.

Добавих и истинска готина функция, която ви позволява да изберете бележката за всяка клавиатура, дори запазва настройките в EEPROM.

и 3 -те софтуера, които споменавам във видеото, са loopbe1, midi сериен мост без коса и VMPK

Следващата голяма стъпка е да го преместите да работи върху малиново пи.

Стъпка 3: Накарайте го да работи на Raspberry Pi

Image
Image

След като почти се отказах от проекта, отново попитах на няколко места и бях насочен към статия, която ме насочи към правилния път, който е плавен.

Прекарвам няколко добри часа, за да го накарам да работи и накрая го направих. Основният проблем беше да накарам midi да работи върху Rpi. За това инсталирах fluidsynth с помощта на този страхотен урок

sandsoftwaresound.net/qsynth-fluidsynth-ras…

Настройвам Arduino да изпраща серийни команди, след което ги слушам с python сериал на малината и го изпращам на midi чрез fluidsynth.

Дори успях да изтегля подходящ sf2 файл за барабани.

Както виждате, Kesem го обича. Arduino използваше същия код и за rpi пиша прикачения код, не успях да прикача sf2 файловете - но те могат лесно да бъдат намерени с помощта на google.

Стъпка 4: Направете го самостоятелен

Направете го самостоятелен
Направете го самостоятелен
Направете го самостоятелен
Направете го самостоятелен

Най -голямата стъпка в това да работи самостоятелно беше да премахнете arduino и да се опитате да го накарате да работи малко по -бързо. имаше забележими пропуски между "хита" и звука, който се възпроизвеждаше в midi. Така че, за да се отърва от arduino, имах нужда от аналогова алтернатива и ето къде mcp3008 дойде на помощ. можете да видите в изображенията, че съм създал пробивна дъска за него, а във видеото можете да намерите всички подробности по стъпките. Mcp3008 използва spi за комуникация и свързах 2 -те и проведох няколко теста, adafruit има страхотна библиотека за mcp3008 за python. отново инструкции във видеото. Използвах rpi нула поради неговия размер и добавих външна USB звукова карта, за изхода на звука. Използвах обикновен говорител с вграден усилвател за възпроизвеждане на звука. Текущият код също е прикачен и работи на rpi себе си и е зададен като услуга, така че той може да работи, когато се зареди. Истинска готина функция, която добавих, беше да свържа малкия бутон за нулиране, който беше на кутията, и да го използвам за изключване на системата, тъй като работя без екран. Настоящият код все още не е перфектен и продължавам да се опитвам да го подобря и ставам все по -добър, така че ако имате идеи да го накарате да работи още по -добре, когато става въпрос за midi - ще се радвам да чуя.

Препоръчано: