Попытка №2

Запаянная ранее плата — не завелась.

Преобразователи логических уровней чудят неуправляемым образом, хотя я их подключал в соответствии с документацией (ну, я так думаю). Уже опытным путём доказано, что они точно не работают на I2C шине. А из оставшихся 7 цифровых линий через преобразователи нормально проходит только одна. На остальных линиях — сильный мусор.

Товарищ, вместе с которым мы делаем 2-ю версию, запитал всю схему от 3.3 В, и оно заработало. Ну и я запаял 3-вольтовую версию платы (см. рис. 1). Не стал запаивать преобразователи уровней; вместо них запаял перемычки. Убрал делитель со входа датчика давления. Ну и все соединения сделал разъёмными (кроме питания). Чувствую, это далеко не последний вариант платы, так что пусть всё будет на разъёмах. Даже EEPROM память выпаял с предыдущей платы и вставил в панельку; она хоть и дешевая, но просто так выкидывать ее не хочется. Буду перетаскивать с платы на плату. Радиомодуль тоже запаивать не стал, а подключил через панельку.

Рис. 1

Баян от 3.3 В, конечно, заработал, но есть нюанс.

Читать далее «Попытка №2»

По результатам использования — рекомендую

Есть у меня осциллограф FNIRSI-1C15 (см. рис. 1). Он себя достаточно хорошо показал при отладке MIDI баяна. Это не бесполезная игрушка, а нормалььный осциллограф начального уровня. Для нечастого домашнего использования — самое то.

Если кто думает на тему приобретения осциллографа, но при этом ограничен в бюджете — это отличный вариант.

Рис. 1

Перевёл баян на питание от аккумуляторов

Сегодня был сделан еще один шаг по переводу баяна на новую платформу.

Как показано на рис. 1, в качестве источника будут 2 аккумулятора 18650. Модули зарядки (1), стабилизатора на 5 В (2) и стабилизатора на 3.3 В (3) закреплены прямо на держателе аккумуляторов на двусторонний скотч. Сами аккумуляторы закреплены на держателе двумя кабельными стяжками, чтобы случайно они не выпали.

Модель зарядки использован такой. Стабилизаторы питания — такие.

Пока, как видите, задействован только 5-вольтовый стабилизатор. Работает без замечаний.

Неудобно, что пока нет возможности отслеживать степень разряда аккумуляторов. Это предусмотрено в новой версии платы, но пока не реализовано в прошивке. Собственно, баянной прошивки, адаптированной к контроллеру RP2040-Zero, пока нет. Работа в процессе.

Рис. 1

P.S. Оказалось, что модуль зарядки не справляется с зарядкой при работающей схеме баяна. Буду ставить реле, чтобы на время зарядки отключалась нагрузка.

Запаял плату микроконтроллера

И сразу на плату запаял радиомодуль, чтобы потом не возиться. Прошивка его пока не поддерживает, но это временно.

Саму плату RP2040-Zero я как всегда посадил в панельку. Потому что перепрошивать её предстоит много-много раз, и таскать к компьютеру микроконтроллер гораздо проще, чем весь разобранный баян.

Также на фото видны сопли перемычки, сделанные фиолетовым проводом. Это, надеюсь, будет единственный не очень эстетичный элемент здесь.

Следующий шаг — монтаж аккумуляторного блока в сам баян. Там в составе этого блока будут 2 банки 18650, модуль зарядки (с защитой) и два бустера на 5 В и 3.3 В.

Рис. 1

Приехали платы для 2-й версии MIDI-баяна

Одна плата — это плата микроконтроллера, вторая — плата приёмника радиосигнала (будет актуальна, когда я напишу прошивку, поддерживающую радиоканал).

Заказывал на pcbwave.com. Качество отличное.

Заказывал я по 5 штук. Там это минимальный заказ. А прислали 12 плат микроконтроллера, и 11 плат радиоприёмника (см. рис. 1).

В общем, если кому надо готовые платы для 2-й версии миди-баяна — обращайтесь. Уступлю по той же цене, по которой они мне достались (плюс расходы на пересылку). Мой почтовый адрес — в QR-коде на главной странице tesanoff.klah.ru.

Правда, эти платы неидеальны. Выяснился довольно неприятный момент.

Дело в том, что часть компонентов рассчитана на питание от 3.3 В, а другая часть — от 5 В. Поэтому для согласования логических уровней я решил использовать микросхемы TXS0108E. Но на этапе производственных испытаний выяснилось, что эти преобразователи не работают как надо для согласования шины I2C, на которой у меня висят внешняя EEPROM память и OLED экран. Так что придётся SCL/SDA линии тащить к 5-вольтовому экрану от 3-вольтового микроконтроллера. А на плату в соответствующем месте лепить сопли запаивать перемычки.

Так что для согласования I2C шины преобразователи TXS0108E не годятся (надо будет поискать другое решение). На остальных же линиях они отлично работают.

Рис. 1

To whom, как говорится, it may concern

Подтверждена работоспособность схемы второй версии MIDI-баяна, основанного на плате RP2040-Zero.

В данном случае, это параллельный проект MIDI-гармони. Разработка ведётся здесь. При адаптации проекта для гармони были убраны некоторые функции, специфичные именно для баяна, и была добавлена обработка специфики гармони.

Версия, основанная на Arduino Nano дальше развиваться не будет, и будет заморожена.

Текущий функционал прошивки пока не включает в себя работу с радиоканалом и с SD флеш-картами. Пока это просто перенос функционала из Arduino Nano в RP2040-Zero.

Рис. 1

Уже могу сказать, что разница между этими микроконтроллерами колоссальная. Если в Arduino Nano одно полное чтение состояния всех клавиш занимало 2 мс, то в RP2040 это занимает уже 0.11 мс. Т.е. клавиатуры опрашиваются примерно 8700 раз в секунду.

P.S. Забыл добавить, что схема платы микроконтроллера (см. рис. 1) совершенно одинаковая для баяна и гармони. Различия между ними только в прошивке и в платах датчиков клавиатур.

5-я книга из серии «Аркан»

Кстати, недавно была полностью закончена и опубликована 5-я книга из серии «Аркан».

Рекомендую всем, кого уже давно тошнит от «попаданцев», «бояр-аниме», «гаремников» и всего остального, набирающего всё бОльшую популярность на лит-площадках.

Рис. 1

По результатам недельного пребывания…

…имею сказать, что Алма-ата — очень приятный город, если быть здесь в качестве туриста/командировочного.

Архитектура интересная, разнообразная. Город чистый, ухоженный. Водители пешеходов вежливо пропускают на переходах.

Рис. 1
Читать далее «По результатам недельного пребывания…»

Надо же было так затупить

Есть в MIDI команде «note on» параметр «velocity». Используется он в тех клавиатурах, которые умеют различать то, что в народе называют «сила нажатия на клавиши». Это актуально при игре на инструментах типа фортепиано, где звук зависит от того, как нажата клавиша. И придуман этот параметр был в первую очередь применительно к фортепиано.

И в моей голове почему-то закрепилось словосочетание «сила нажатия». И почему-то проигнорировалось само название параметра «velocity». Почему-то я решил, что измерять надо именно силу нажатия. А надо мерять именно скорость.

Ну просто потому, что в случае того же фортепиано именно от скорости зависит громкость. Т.е. энергия, передаваемая молоточком струне, определяется именно скоростью, и больше ничем (см. рис. 1).

Надо же было так затупить.

Рис. 1

Это я к тому, что надо изучать вопрос измерения скорости движения клапана баяна. Может быть, удастся сделать активную клавиатуру.