Автор Тема: Полноценный MIDI контроллер для Axe Fx 2  (Прочитано 7319 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн xankpkp Автор темы

  • Новичок
  • *
  • Сообщений: 57
  • Репутация: +10/-0
Вместо предисловия:

По понятным причинам покупку MFC 101 потянут далеко не все,во-первых после покупки самого Акса кошелёк изрядно пострадал,ну а во-вторых отдавать чуть ли ни пол цены процессора за коробку которая ничего кроме как отправки пары дюжин команд в процессор не делает - жаба душит)
(хотя когда нибудь я его и куплю...если проект не получится таким каким хочется)

Итак,у меня есть за плечами кое какой опыт программирования, но т.к. это не мой хлеб, то в плане выбора платформы для проекта выбор пал на самое простое : Arduino. 101% моего времени занимает учёба,поэтому проект будет продвигаться весьма медленно.Тут уж ничего не поделаешь.
Для чего этот топик? Поделиться своим опытом,помочь нуждающимся.

Цель:

Футконтроллер с двустрочным(2 ряда по 16 символов) LCD  дисплеем с подсветкой на базе Arduino Mega 2560, копирующий большую часть функций MFC

3 ряда кнопок:
2 ряда по 8 свичей
и третий (верхний) ряд из 3.
Итого 19 клавиш, из них 14 программируемых 5 клавиш управления которые имеют альтернативные функции

Двуцветные светодиоды над каждой кнопкой - как у MFC для сигнализации задействованого\активного stomp box-а

2-4 (пока не определился) входа для педалей экспрессии, врядли я буду юзать больше 2х, хотя сделать можно хоть 16 штук)

Двусторонняя связь с аксом : названия и номера пресетов,тюнер - всё должно отображаться на контроллере.



Цена вопроса:
ардуино 20$
провода, макетки,резисторы,диоды,разьёмы и т.п. итоговая стоимость выльется в 20$  (считается что макетки для моделирования и т.п. уже есть)
20 футсвичей(для ровного счёта) - 30$
дисплей 5$

Так печально, что самая дорогая часть - корпус,его я пока не считаю.
Нервы и время - бесценны :D


Итак Arduino Mega потому что он имеет 4 серийных пар входа и выхода, (1для MIDI , и 1 для дисплея), у большинства Ардуино всего 1 серийный порт.

Работа будет вестись в нескольких направлениях:
1- Работа со светодиодами
2- Работа с кнопками
3- MiDi Out
4- MiDi In
5- Работа с дисплеем,возможно с русским языком :D
6- Объединение всего вышеперечисленного в одну систему +работа с памятью и работа над управлением непосредственно с устройства
7- Работа с входами для педалей экспрессии.

Прогресс на данный момент:
1- Светодиоды реагируют на действия(пока это нажатия кнопок), в идеале они реагировать должны только на Midi IN
2- Прекрасно работают кнопки.
3- Midi out РАБОТАЕТ! Акс принимает команды и разумеется следует им  :crazy:
4- Не брался ещё,предположительно это будет самая большая проблема)
5- Работает как надо
6- рано
7- рано

Для затравки, фото тестовый вариант светодиоды + кнопки 3 ряда по 5 кнопок:






Оффлайн BJ Devices

  • Опытный
  • ****
  • Сообщений: 679
  • Репутация: +70/-0
    • BJ Devices
Re: Полноценный MIDI контроллер для Axe Fx 2
« Ответ #1 : Ноября 08, 2013, 17:48:48 »
Если будешь реализовывать как можно ближе к оригиналу, то вот почитай, пригодится http://wiki.fractalaudio.com/index.php?title=Axe-Fx_SysEx_Documentation
Вообще проектов миди контролеров на ардуино очень много в сети, думаю с реализацией MIDI IN проблем не возникнет

Оффлайн xankpkp Автор темы

  • Новичок
  • *
  • Сообщений: 57
  • Репутация: +10/-0
Re: Полноценный MIDI контроллер для Axe Fx 2
« Ответ #2 : Ноября 09, 2013, 01:09:11 »
Уже изучаю, просто у Акса Midi In использует свои собственные команды через SysEx,  большинство контроллеров в сети работают просто по стандартам миди и такими изощрениями не пользуются)

Оффлайн BJ Devices

  • Опытный
  • ****
  • Сообщений: 679
  • Репутация: +70/-0
    • BJ Devices
Re: Полноценный MIDI контроллер для Axe Fx 2
« Ответ #3 : Ноября 09, 2013, 01:12:27 »
SysEx это часть миди стандарта

Оффлайн xankpkp Автор темы

  • Новичок
  • *
  • Сообщений: 57
  • Репутация: +10/-0
Re: Полноценный MIDI контроллер для Axe Fx 2
« Ответ #4 : Ноября 12, 2013, 16:04:55 »
Маленькое обновление
Решил для чётности сделать 20 кнопок(8+8+4) и соответственно 20 двуцветных LED





поставлю экранчик ,закуплю кнопки для футсвича и буду строить корпус)

... и добавил:

Как и планировалось - прикрутил дисплейчик)


« Последнее редактирование: Ноября 13, 2013, 13:54:47 от xankpkp »

Оффлайн xankpkp Автор темы

  • Новичок
  • *
  • Сообщений: 57
  • Репутация: +10/-0
Re: Полноценный MIDI контроллер для Axe Fx 2
« Ответ #5 : Ноября 20, 2013, 17:07:20 »
Обновление:

Полностью написал интерфейс управления и настройки:программируются клавиши, добавил калибровку потенциометров и педалей экспрессии, решил что будет 2 входа для педалей экспрессии и 8 потенциометров(не знаю зачем мне столько)  на панельке у дисплея для быстрого контроля.

Осталось "прикрутить" только Midi In и Midi Out, и аппарат будет полностью готов к работе.  Заказал 20 футсвичей с ebay за 29,5$ Возможно к рождеству меня ждёт подарок :D


Видок конечно не ахти,но упор пока на функциональность)



Калибровка потенциометров:

Оффлайн xankpkp Автор темы

  • Новичок
  • *
  • Сообщений: 57
  • Репутация: +10/-0
Re: Полноценный MIDI контроллер для Axe Fx 2
« Ответ #6 : Ноября 26, 2013, 15:48:17 »
Скучно писать пост в котором нету картинок, но...  разобрался с приемом Midi Sysex сообщений (мир не без добрых людей,но об этом пожже;) ).

Обрабатывается тюнер,темп, названия пресетов,их номера и состояния эффектов.

Хотя финишная прямая уже недалеко,предстоит тяжелая неделя и ближайшее время дописать всё не получится.

Хотя и начал проект на Ардуино Мега - планирую перенести это всё на отдельный микроконтроллер. Всвязи с чем меня ждёт масса рефакторинга чтобы уместить конечный результат в 30кб, ибо незаконченая версия весит уже 27 =\

Оффлайн DeMoN_AzzY

  • Новичок
  • *
  • Сообщений: 92
  • Репутация: +3/-0
Re: Полноценный MIDI контроллер для Axe Fx 2
« Ответ #7 : Ноября 26, 2013, 16:15:57 »
А если взять чего-нибудь из АРМов?  У них даже в недорогих линейках есть 64-128 кб флеши и 4-8 кб оперативы

Оффлайн xankpkp Автор темы

  • Новичок
  • *
  • Сообщений: 57
  • Репутация: +10/-0
Re: Полноценный MIDI контроллер для Axe Fx 2
« Ответ #8 : Ноября 29, 2013, 00:08:10 »
Я думал над альтернативами, с Atmega328p всё предельно просто - после прошивки bootloader-а,можно заливать скетч ардуино, что предельно просто,а потом контроллер можно вытащить и вставить куда угодно....эдакая удобная среда для разработки, есть масса информации, стоимость в 2$ за штуку тоже подкупает.  Как я говорил - IT, и уж тем более програмирование микроконтроллеров - не мой хлеб,поэтому запариваться с поисками не хочется(я на медицинском учусь :D )

А с другой стороны это своеобразный вызов : чтобы вложить максимум в эти 30кб кода.... тут такое лирическое отступление - я конечно времена эти не застал,но раньше люди ценили ресурсы системы и шедевры умещали в килобайты, а теперь всё решается дополнительными гигарерцами и гигабайтами :D

Да и если я что то мелкое буду мастерить в будущем то оно уж точно будет на 328....так что опыт работы с ним пригодится)

Оффлайн BJ Devices

  • Опытный
  • ****
  • Сообщений: 679
  • Репутация: +70/-0
    • BJ Devices
Re: Полноценный MIDI контроллер для Axe Fx 2
« Ответ #9 : Ноября 29, 2013, 00:52:16 »
xankpkp, Когда на нативном си перепишешь, удивишься сколько еще памяти останется)

Оффлайн AlKoR

  • Частый посетитель
  • **
  • Сообщений: 114
  • Репутация: +90/-0
  • Диван наше все
Re: Полноценный MIDI контроллер для Axe Fx 2
« Ответ #10 : Ноября 29, 2013, 01:06:30 »
xankpkp, Когда на нативном си перепишешь, удивишься сколько еще памяти останется)

Может я чего не знаю, но какие еще есть варианты кроме С/С++ для AVR? Скетчи в ардуино самый обычный си, если память не изменяет :rolleyes:

Оффлайн BJ Devices

  • Опытный
  • ****
  • Сообщений: 679
  • Репутация: +70/-0
    • BJ Devices
Re: Полноценный MIDI контроллер для Axe Fx 2
« Ответ #11 : Ноября 29, 2013, 01:23:00 »
еще асм есть)
Сами ардуиновцы называют язык  Arduino language, это обычный си со встроенной библиотекой методов.
Я имел ввиду не использовать встроенных методов типа digitalWrite(ledPin, HIGH); которые есть тупой свитч и сжирает память почем зря

Оффлайн Dying Fetus

  • Moderator
  • *****
  • Сообщений: 10260
  • Репутация: +1318/-24
  • DIYng Fetus
    • http://cathar.ru
Re: Полноценный MIDI контроллер для Axe Fx 2
« Ответ #12 : Ноября 29, 2013, 01:42:17 »
BJ Devices, нет, ну на асме интересно писать, но имхо не всегда целесообразно

Оффлайн Алексей Корчевский

  • Новичок
  • *
  • Сообщений: 1
  • Репутация: +0/-0
  • GuitarPlayer.Ru fan!
Re: Полноценный MIDI контроллер для Axe Fx 2
« Ответ #13 : Ноября 29, 2013, 09:09:28 »
BJ Devices, теперь понятно. Еще стоит посмотреть в сторону различных опенсурс библиотек, коих в интернетах полно :) Например, при помощи гитхаба удалось собрать mp3 плеер с ethernet, sd карточками и дисплеем на самом обычном arduino uno. По моим наблюдениям, больше всего места жрут строки, которые вечно разбросаны по коду по всяких printf , Serial.write и т.п.

xankpkp, может быть стоит залить проект на github.com? Потыкал бы из интереса :)

Оффлайн xankpkp Автор темы

  • Новичок
  • *
  • Сообщений: 57
  • Репутация: +10/-0
Re: Полноценный MIDI контроллер для Axe Fx 2
« Ответ #14 : Ноября 29, 2013, 10:51:07 »
Алексей Корчевский, скорее всего выложу,но не раньше чем доведу всё это дело до ума, в конце то концов главное чтобы это работало так,как нужно)