Jump to content
Българският форум за музиканти

Evtim Djerekarov

Амп симулатори за PC и други устройства

Recommended Posts

Засега успях Arduino UNO R3, с Bootloader-а MocoLUFA, MIDI библиотека и такава за Debounce на бутони, с три бутона да подавам 6 Program Change команди (3 при бързо натискане и още 3 при по-продължително).

Devices.png
smart.jpg

Share this post


Link to post
Share on other sites


Още съм далече от финална идея, но ми изглежда добре така:

  • поне един експрешън педал (аналогов вход)
  •  да кажем, 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. Това можете да проучите и вие.

Edited by Evtim Djerekarov

Share this post


Link to post
Share on other sites

Лека-полека оформям тестовата педалиера в един канал от въздуховод. Трябва да ползвам Arduino MEGA, че има доста повече цифрови I/O портове, както и да купя няколко rotary encoder-а и още няколко незадържащи настъпи-копчета, както и евтин expression педал. Идеята мисля, става ясна.

Edited by Evtim Djerekarov
  • Like 1

Share this post


Link to post
Share on other sites

Блазе им на тия като теб, коитомогат да се оправят с  Arduino- гледам из Нета- какво ли не правят с него.

Share this post


Link to post
Share on other sites

Може да пробвам с един (или два!) такива педала.  Или вградени в устройството, или включени посредством букси.

Ттрябва първо да проуча внимателно всички възможности за програмиране (така че да могат да се управляват различни решения, възможно е дори да може да се избира кой плъгин ще управляваш, за да се "настройва" миди контролера оптимално.

Все още не знам, дали плъгините връщат полезна информация, особено такава за изобразяване на екран. Ще сложа още 2-3 настъпикопчета като купя по-нагоре, за да може човек да си управлява с тях други неща освен да превключва пресети, а освен това мисля, да сложа и някакви rotary енкодери, с които да може да се настройва Gain/Eq/Level. Мисля и за Tap Tempo, а бе - весело ми е.

Ето едно малко видео на малко по-сглобената тестова кутийка на контролера.

 

 

Share this post


Link to post
Share on other sites
Posted (edited)

Евтиме, 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 е уникален номер на устройството, даден от миди асоциацията.

Това са някои основни неща- да знаеш с какво се захващаш. 🎖️

Edited by wiseppman

Share this post


Link to post
Share on other sites
Posted (edited)

Аз MIDI спецификацията я четох преди има-няма 15 години за една курсова работа, но няма да е зле, да си я припомня. Повечето Китарни софтуери имат или фиксирани функции, които са валидни за всички пресети (примерно Preset+, Preset-, Amp Gain, Wah position и т.н.), или имат възможност за MIDI Learn.

Засега пращам само PC команди от настъпикопчетата, и CC от потенциометъра и не чета нищо обратно от компютъра.

Трябва да прочета, дали по-популярните софтуери имат някаква фабрична "схема" или по-специални SYSEX неща, които все пак са документирали някъде или някой успешно е подслушал.

Лошо е, че не всички софтуери имат възможност да връзват изваждане/скриване на тунера или Preset Save към миди команди.

Edited by Evtim Djerekarov

Share this post


Link to post
Share on other sites
Posted (edited)
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 конвертер ?

Edited by emosms

Share this post


Link to post
Share on other sites
Posted (edited)

Може да направи човек двоен bootloader, където да пуска устройството в режим Arduino само като окъси пинове на ICSP хедъра на 16U2.

Edited by Evtim Djerekarov

Share this post


Link to post
Share on other sites
преди 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 за проба.

Share this post


Link to post
Share on other sites

Управлението на ампа си го правих с микроконтолер STM32. Изпраща PC и CC команди... на Arduino така и не му станах фен...

Резултати вътре:
FSW_IN2.thumb.jpg.f755a5e4ea32befb88102cc095828929.jpg

 

и отвън:

FSW_OUT.thumb.jpg.8542e0c9603094880fa6fcdafbdd0600.jpg

 

Дисплейчето е OLED - 128x64... Сметнах, че ми е достатъчно - в крайна сметка освен да показва номера PC, която е избрана, единственото друго нещо като необходимост е настройката на MIDI канала. Другата опция беше да ползвам седем сегментна индикация, но не ми хареса визията...

  • Like 1

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.