Evtim Djerekarov Отговорено Февруари 26, 2021 Автор Отговорено Февруари 26, 2021 Засега успях Arduino UNO R3, с Bootloader-а MocoLUFA, MIDI библиотека и такава за Debounce на бутони, с три бутона да подавам 6 Program Change команди (3 при бързо натискане и още 3 при по-продължително). Цитирай
Evtim Djerekarov Отговорено Февруари 26, 2021 Автор Отговорено Февруари 26, 2021 (Редактирано) Още съм далече от финална идея, но ми изглежда добре така: поне един експрешън педал (аналогов вход) да кажем, 4 настъпи бутона в редица, за смяна на 4 бленди, като третия вади тунер при задържане, вторият - нещо друго, а първият и четвъртият при задържане са Bank - и Bank +. Може по-нагоре, да има бутон за вкл/изкл на бустер, бутон за вкл/изкл на времеви ефект, както и потенциометри за Amp Gain, Output volume, евентуално EQ. Едно копче за запазване на промените. За да може да подмени bootloader-а с такъв за HID-compliant MIDI устройство, то освен микроконтролера, на платката около USB порта трябва да има и помощен Atmel 16U2 контролер, какъвто има при Arduino UNO или MEGA сериите (малкият чип на снимката), но няма при NANO сериите, например. Разбира се, ако искате да препрограмирате устройството, трябва първо да върнете оригиналният bootloader, така че да се разпознае отново като Arduino, а не като MIDI устройство.НЕ СЪМ СИГУРЕН, ДАЛИ bootloader-а може да се сменя на Arduino-та с USB чип CH340G. Това можете да проучите и вие. Редактирано Февруари 26, 2021 от Evtim Djerekarov Цитирай
Evtim Djerekarov Отговорено Февруари 28, 2021 Автор Отговорено Февруари 28, 2021 (Редактирано) Лека-полека оформям тестовата педалиера в един канал от въздуховод. Трябва да ползвам Arduino MEGA, че има доста повече цифрови I/O портове, както и да купя няколко rotary encoder-а и още няколко незадържащи настъпи-копчета, както и евтин expression педал. Идеята мисля, става ясна. Редактирано Февруари 28, 2021 от Evtim Djerekarov 1 Цитирай
wiseppman Отговорено Февруари 28, 2021 Отговорено Февруари 28, 2021 Блазе им на тия като теб, коитомогат да се оправят с Arduino- гледам из Нета- какво ли не правят с него. Цитирай
wiseppman Отговорено Февруари 28, 2021 Отговорено Февруари 28, 2021 Проверен евтин експешън M-Audio EX-P Expression Pedal – Thomann Bulgaria 1 Цитирай
Evtim Djerekarov Отговорено Февруари 28, 2021 Автор Отговорено Февруари 28, 2021 Може да пробвам с един (или два!) такива педала. Или вградени в устройството, или включени посредством букси. Ттрябва първо да проуча внимателно всички възможности за програмиране (така че да могат да се управляват различни решения, възможно е дори да може да се избира кой плъгин ще управляваш, за да се "настройва" миди контролера оптимално. Все още не знам, дали плъгините връщат полезна информация, особено такава за изобразяване на екран. Ще сложа още 2-3 настъпикопчета като купя по-нагоре, за да може човек да си управлява с тях други неща освен да превключва пресети, а освен това мисля, да сложа и някакви rotary енкодери, с които да може да се настройва Gain/Eq/Level. Мисля и за Tap Tempo, а бе - весело ми е. Ето едно малко видео на малко по-сглобената тестова кутийка на контролера. Цитирай
wiseppman Отговорено Март 1, 2021 Отговорено Март 1, 2021 (Редактирано) Евтиме, MIDI има много възможности, управлява и осветление и домашни уреди... На теб ще ти трябват няколко функции: MIDI Chanel- избиране на един от 16-те миди канала. Смяна на програма PC (Program change). Би трябвало да я има в чипа. Стойности 0-127. Има една особеност- смяна на банка. Ико имаш 2 процесора/ефекта/плугина, е един от тях е с повече от 128 пресета (миди е 7-битово и има 128 адреса 0-127), ще трябва да смениш банка. Нормално това е #CC0->MSB, но при някои устройства трябва да ползаваш #CC32->LSB. От адреси #CC32-64 има и други LSB функции, които ще ти трябват примерно да смениш вида на фейзъра, гейна на дисторжъна и т.н. RPN и NPRN- това са стандартните функции на MIDI-> примерно #CC4-Foot Controller, #CC7-Volume; #CC11-Expression; #CC96-Data Increment(+1); #CC97-Data Decrement (-1) и т.н. NPRN са нерегистрирани съобщения, които производителя е включил и са уникални за дадено устройство. Това значи, че трябва да се чете упътването му за MIDI Implementation. #CC адреси- както горе е посочено, има стандарт (MIDI 1, MIDI 2 беше одобрена на NAMM 2020 и тепърва ще се налага)- пак четеш MIDI Implementation за устрйството. NOTE ON/OFF- това е функцията за номериране на ноти- в чипа може да иама GM (GENERAL MIDI) и да си програмираш накой бутон да ти свири нота. В чипа може да има и ADSR- за управление на атака, профдължителност... SysEx- System Exclusive - носи информация, която е специфична за производителя на устройството получаващо съобщението. Това е начин за програмиране и съобщенията има вида: F0 7F <Device-ID> <Sub-ID#1> [<Sub-ID#2> [<parameters>]] F7 (пример: 0xF0 0x41 0x01 0x34 0xF7 - в шестнадесетични числа). Започват с 0хF0 и завършва с 0хF7. Device-ID е уникален номер на устройството, даден от миди асоциацията. Това са някои основни неща- да знаеш с какво се захващаш. ?️ Редактирано Март 1, 2021 от wiseppman Цитирай
Evtim Djerekarov Отговорено Март 1, 2021 Автор Отговорено Март 1, 2021 (Редактирано) Аз MIDI спецификацията я четох преди има-няма 15 години за една курсова работа, но няма да е зле, да си я припомня. Повечето Китарни софтуери имат или фиксирани функции, които са валидни за всички пресети (примерно Preset+, Preset-, Amp Gain, Wah position и т.н.), или имат възможност за MIDI Learn. Засега пращам само PC команди от настъпикопчетата, и CC от потенциометъра и не чета нищо обратно от компютъра. Трябва да прочета, дали по-популярните софтуери имат някаква фабрична "схема" или по-специални SYSEX неща, които все пак са документирали някъде или някой успешно е подслушал. Лошо е, че не всички софтуери имат възможност да връзват изваждане/скриване на тунера или Preset Save към миди команди. Редактирано Март 1, 2021 от Evtim Djerekarov Цитирай
emosms Отговорено Март 1, 2021 Отговорено Март 1, 2021 (Редактирано) On 2/26/2021 at 6:54 PM, Evtim Djerekarov said: За да може да подмени bootloader-а с такъв за HID-compliant MIDI устройство, то освен микроконтролера, на платката около USB порта трябва да има и помощен Atmel 16U2 контролер, какъвто има при Arduino UNO или MEGA сериите (малкият чип на снимката), но няма при NANO сериите, например. Разбира се, ако искате да препрограмирате устройството, трябва първо да върнете оригиналният bootloader, така че да се разпознае отново като Arduino, а не като MIDI устройство.НЕ СЪМ СИГУРЕН, ДАЛИ bootloader-а може да се сменя на Arduino-та с USB чип CH340G. Това можете да проучите и вие. Това със смяна на буутлоудъра и преобразуване на вграденото USB като midi/usb не ми звучи добре... Всяка корекция кода и ретестване на устройството...... По-скоро, не може ли да стане с midi-rs232 конверсия: - https://www.compuphase.com/electronics/midi_rs232.htm Може да има и по-лесен начин. И после стандартен TTL/RS232 - USB конвертер ? Редактирано Март 1, 2021 от emosms Цитирай
Evtim Djerekarov Отговорено Март 1, 2021 Автор Отговорено Март 1, 2021 (Редактирано) Може да направи човек двоен bootloader, където да пуска устройството в режим Arduino само като окъси пинове на ICSP хедъра на 16U2. Редактирано Март 1, 2021 от Evtim Djerekarov Цитирай
wiseppman Отговорено Март 1, 2021 Отговорено Март 1, 2021 преди 28 минути, Evtim Djerekarov написа: Аз MIDI спецификацията я четох преди има-няма 15 години за една курсова работа, но няма да е зле, да си я припомня. Повечето Китарни софтуери имат или фиксирани функции, които са валидни за всички пресети (примерно Preset+, Preset-, Amp Gain, Wah position и т.н.), или имат възможност за MIDI Learn. Засега пращам само PC команди от настъпикопчетата, и CC от потенциометъра и не чета нищо обратно от компютъра. Трябва да прочета, дали по-популярните софтуери имат някаква фабрична "схема" или по-специални SYSEX неща, които все пак са документирали някъде или някой успешно е подслушал. Лошо е, че не всички софтуери имат възможност да връзват изваждане/скриване на тунера или Preset Save към миди команди. За РС при устройства до 128 пресета си минава през #CC0. #CC96 i 97 можеш да използват за пресет+-/програм+-. Но в спесификациите на устройството трябва да има списък на миди-маппинг (може да са NRPN). Amp Gain Може с експрешън през LSB. A SysEx става и през MIDi/OX за проба. Цитирай
Evtim Djerekarov Отговорено Март 1, 2021 Автор Отговорено Март 1, 2021 Тук има относително пълнофукцтионална MIDI библиотека: https://github.com/FortySevenEffects/arduino_midi_library/blob/master/src/MIDI.h 1 Цитирай
wiseppman Отговорено Март 1, 2021 Отговорено Март 1, 2021 Мисля, че това по ще ти свърши работа. В прозореца има готов код за настройка Build an Arduino powered MIDI Controller - Arduino Project Hub Цитирай
Mefistofel82 Отговорено Март 1, 2021 Отговорено Март 1, 2021 Управлението на ампа си го правих с микроконтолер STM32. Изпраща PC и CC команди... на Arduino така и не му станах фен... Резултати вътре: и отвън: Дисплейчето е OLED - 128x64... Сметнах, че ми е достатъчно - в крайна сметка освен да показва номера PC, която е избрана, единственото друго нещо като необходимост е настройката на MIDI канала. Другата опция беше да ползвам седем сегментна индикация, но не ми хареса визията... 1 Цитирай
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.