Uzix | микроблог

#Otterlymidi

Бывает вот сидишь...

Бывает вот сидишь, потихоньку ковыряешься в заброшенном проекте, правишь в коде свои глупые ошибки. И, ВНЕЗАПНО, в самый неожиданный момент оно начинает работать :o

SPDIF в OtterlyMIDI заиграл. Я успел пожалеть что решил сделать его по хардкору - без специализированного модуля SAI (которого нет в дешёвых попсовых контроллерах), а жонглируя битами в I2S + в последнем свободном SPI. Но каким-то магическим образом биты всё же встали на свои места, сложились в манчестерский код, который сложился в семплы, которые сложились в музыку. Ура!

Пока что работа съедает всё...

Пока что работа съедает всё время, и писать сюда нечего, поэтому заполню образовавшуюся пустоту красивыми фотографиями промежуточных ревизий MIST, UNO и OtterlyMIDI. Эти ревизии я решил не выпускать, но фото успел подготовить.

Подружил Выдру...

Подружил Выдру (ака OtterlyMIDI) с Хароном. У Харона нет миди выхода (точнее, к нему подключен миди чип внутри самого компа), но есть COM-порт, на который с помощью драйвера SoftMPU можно виртуально перенаправить выход миди. Совместимость этого драйвера далеко не 100%, но Monkey Island запускается и поёт :)

А теперь грустная новость: MT32-PI - титанический проект, на чьих плечах стоит OtterlyMIDI - похоже, всё https://t.me/yellow_room_nerdcave/1166 :-(

OtterlyMIDI поёт...

OtterlyMIDI поёт! Реализовал всё что задумывал - миди-поток берётся со входов DIN-5/RS232/USB, идёт в малинку с mt32-pi, звук с малинки смешивается со звуком с линейного входа и выдаётся на джек 3.5 и на USB. Да, Оттерли при подключении к ПК по USB распознаётся как миди-девайс (можно слать на неё данные из плееров/досбокса или получать данные с DIN/RS232) и как звуковая карта - чтобы захватывать звук сразу в цифровом виде.

Наладка USB заняла какое-то совсем неприличное количество времени. Мало того, что китайский аналог STM32 от GD оказался не полностью совместим - пришлось править библиотеку tinyusb под него - так ещё и много времени ушло на возню с USB Audio Class - ранее я с ним не работал, а штука не самая простая и прямая (как и весь USB в общем-то :) ).

По ходу разработки появилось ещё пару идей для новой ревизии платы — заменить микроконтроллер на чуть более доступный, добавить ОУ на линейный выход, а так же добавить SPDIF/TOSLINK - очень уж хочется поработать с каким-нибудь оптическим протоколом :)

Давно хотел себе стационарный MIDI-синтезатор...

Давно хотел себе стационарный MIDI-синтезатор, но их доступность совсем не радует. Потому я, наконец, созрел на новодельный вариант на базе проекта MT32-PI. Работает он не только в режиме MT32, но и в обычном GM с переключаемыми на лету банками в формате SF2, коих в сети великое множество.

Из законченных решений нашлись minisynth32 и BulkyMIDI-32. Последний понравился настолько, что я уже почти отправил платы на производство, но вовремя заметил что никаких стенок - кроме передней - у импровизированного корпуса из печатных плат не предусмотрено. То есть надо что-то придумывать, а если так - почему бы сразу не придумать своё. Заодно добавить линейный вход и активный микшер на ОУ, порт RS232 (с конвертацией скорости в стандартную MIDI), режим USB-девайса (чтобы подключать к современному ПК для проигрывания мидишек и проброса в DOSBox), порт USB-хоста (а вдруг захочется подключить MIDI-клавиатуру по USB?).

Отлаживать старые проекты? Нет, спасибо. Ваять новые? Это всегда пожалуйста 😊