Я тут собрался заказывать платы для 3-й версии баяна. И решил прицениться к отечественному, вот здесь. «Электроконнект».
В общем, см. рис. 1.
Эти цены — из калькулятора. Но я не верю, что после подачи настоящей заявки и общения с тамошним «менеджером» их цена будет уменьшена хотя бы в 2 раза.
Буду продолжать дружить с китайцами. Они на порядок более дружелюбно относятся к штучным заказам от самодельщиков.
Мне тут, по случаю, довелось подержать в руках гармошку Шуйской фабрики (см. рис. 1).
Имею доложить, что был изрядно удивлён тугими кнопками в левой клавиатуре. Не понимаю, как на таком вообще можно играть. Их нужно не нажимать а буквально продавливать. На ум пришли слова «как педали у трактора». Уж не знаю, откуда брали пружины для этой левой. Наверное клапанные пружины от двигателя того же трактора. Ужас.
В общем «Дякую Тобі, господи, що я не гармоніст». 🙂
Во второй (а наверное надо считать, что не во второй, а в третьей) версии MIDI-баяна самыми сложными (схемотехнически) будут платы с клавиатурными датчиками.
Непростая это задача, определять скорость нажатия клавиш. Но, судя по успешно работавшему прототипу, вполне решаемая.
На моей Orange Pi PC Plus у меня крутится сервер сетевой печати, а также локальный DNS сервер (чтобы к устройствам в домашней сети обращаться по именам, а не по IP адресам).
И мне давно хотелось снабдить его бесперебойным питанием. Благо, братья китайцы наладили массовый выпуск UPS модулей на аккумуляторах 18650. И всё бы хорошо, но по старинной радиолюбительской традиции дело застопорилось на изготовлении корпуса.
А тут недавно у меня появился 3D принтер, и я этот самый корпус напечатал (см. рис. 1).
В общем вот. Теперь в случае пропадания электричества в квартире интернет продолжит какое-то время полноценно работать (роутер уже давно питается от «большого» UPS, а теперь и DNS сервер в относительной безопасности).
Для написания программ для микроконтроллера RP2040 я использую среду Arduino IDE. Это возможно, благодаря этому проекту, в котором реализована поддержка всех плат, основанных на RP2040 и RP2350. И частью этого проекта является порт операционной системы FreeRTOS.
Я вчера до глубокой ночи рубился с этим всем, пытаясь понять, почему не получают управление задачи, назначенные на core 0. Все задачи по-умолчанию запускаются на ядре core 1, а если попробовать явно назначит задачу на другое ядро, то она просто не получает управление. И в документации на FreeRTOS, и в исходных кодах написано, что задачи могут работать на обоих ядрах, т.к. в данном случае реализована поддержка FreeRTOS SMP (Symmetric Multi-Processing).
В реальности оказалось, что нужен лёгкий костыль, в виде функции vTaskDelay() или delay(), вызванной из основного «ардуинного» цикла loop() (см. рис. 1). В этом случае всё начинает работать, как заявлено. (Вообще, годится наверное любая функция из состава FreeRTOS API; я на этот эффект наткнулся, отправляя сообщения в очередь прямо из цикла loop()).
Пожалуй, заведу багу на github для этого проекта, чтобы привлечь внимание разработчиков в такой особенности. Оно-же, судя по документации, обязано работать без этого костыля.
Говорил раньше, и продолжаю говорить сейчас: очень многие советские песни 60-70 годов не только не уступают американским джазовым стандартам, но и превосходят многие из них.
Вот ещё один пример.
Верю, что наши джазовые музыканты в какой-то момент всё-таки обратят своё внимание на эти сокровища.
У Гайвера вышел интересный видос (см. ниже). Полезная часть там — принцип работы и конструкция регулятора оборотов для моторчиков постоянного тока.
Думаю, что именно такая схема вполне подойдет как замена моему редуктору для швейной машинки. Главное — взять достаточно мощный и низкооборотистый моторчик.
Беру на заметку. (Хотя менять редуктор на регулятор я, конечно же, не буду.)
Но надо понимать, что это MIDI файл. С интернетовским проигрывателем он звучит плохо, т.к. оптимизирован специально под использованный звуковой модуль. Через Pro.DX этот файл звучит отлично.
Уже давно я посматриваю на FreeRTOS, которая уже присутствует в составе SDK, который я использую для сборки прошивок для RP2040.
И чем дальше, тем усиливается интерес. Интересно, как бы я написал прошивку MIDI-баяна, если бы до начала работ умел программировать под FreeRTOS?
Возможно, пришло время это узнать. Я уже изучил тему поверхностно. Уже сейчас понятно, что архитектура, основанная на очереди событий (есть источники событий, и есть обработчики), для FreeRTOS, можно сказать, родная. Пожалуй, изучу эту шттуку до уровня свободного владения.