Проект MIDI-баяна я опубликовал ранее, а сегодня я туда добавил коротенький видео-обзор. (Лишний раз убедился, что видео-блогер из меня не получится. Для выступлений перед камерой нужна спец-привычка, чтобы с одной стороны не тупить, а с другой стороны всё говорить правильно с первого раза.)
Но тем не менее, из непродолжительной эксплуатации инструмента я уже сделал несколько выводов.
Во-первых, надо добавить режим Portamento (если он нормально поддерживается моим синтезатором). Для этого нужна будет одна дополнительная настройка в списке параметров звука. Это не проблема. Но нужна будет ещё кнопка активации этого самого режима; без кнопки нехорошо. И единственный способ организовать такую кнопку — это сделать программируемые кнопки быстрого доступа к настройкам ещё более многофункциональными: чтобы можно было их переключать в разные режимы работы специальной системной настройкой. Т.е., например, кнопка F4 может быть настроена либо как кнопка быстрого доступа, либо как кнопка активации режима Portamento. Общая идея, как такое можно сделать, у меня уже есть. Но программирования там будет довольно много, больше, чем на 1 вечер.
Во-вторых, режим работы «активного меха» (т.е. датчика давления) надо делать частью данных пресета. Потому что для одних инструментов (аккордеон, орган, и может ещё какие-то) регулировка громкости мехом звучит очень органично, а, например, для фортепиано или гитары — не звучит совсем. Это тоже понятно как делать, и работы там очень немного.
В-третьих, с активным мехом не получается сделать резкий акцент (атаку), как на настоящей пневматике. Тремоло мехом тоже совершенно не звучит. Думаю, дело в том, что измерения с датчика берутся слишком редко. Сейчас там настроено 20 раз в секунду, но похоже, надо снимать показания чаще, т.к. за секунду в режиме тремоло можно мехом дёрнуть туда-сюда 6-8 раз. И если учесть, что данные с датчика фильтруются (фильтр «экспоненциальное бегущее среднее»), то данные с датчика просто не успевают за мехом.
В-четвёртых, хочется сделать «инженерное меню», в котором задавать как частоту опроса датчика давления, так и параметры фильтрации. Если делать «тяп-ляп», то там говно вопрос, можно всё сделать за вечер. Но тот вариант «тяп-ляп», который у меня сейчас в голове, будет некрасив архитектурно. Надо придумать «красивый» вариант.
В-пятых, четырёх кнопок быстрого доступа явно мало. Надо бы расширить их количество. И я уже понимаю, как. Нужно будет научить прошивку различать однократное, двойное, тройное и т.д. нажатия кнопок быстрого доступа. (Думаю, что пока можно будет остановиться на тройном). Это я тоже понимаю, как сделать. Но там работы тоже много, примерно на недельку, если вечерами.
В-шестых, я в первой версии прошивки тупанул, и использовал 32-разрядные счётчики таймеров, хотя вполне хватило бы 16-разрядных. Надо будет переделать. (И тем самым сэкономить примерно 60 байтов ОЗУ).
Продолжаю накапливать идеи для реализации во второй версии прошивки.