Ножной контроллер Ableton

Источник:

Я люблю делать небольшие живые джемы в Ableton, часто переключаясь с гитары на бас, на ударные и на фортепиано. Давно мне нужен был какой-нибудь ножной контроллер, который мог бы запускать циклическую запись, чтобы я мог создавать петли во время игры, когда мои руки заняты. Итак, обладая серьёзными познаниями в моделировании и электронике на начальном уровне, я попытался сделать это сам! Ну, на самом деле два, так что теперь я могу иметь один возле гитарного педалборда и один во��ле ударной установки :).

Я подумывал о том, чтобы Arduino Micros внутри отправляла MIDI-вызовы, но в итоге вместо этого я стал использовать команды с клавиатуры. Это делает его гораздо более универсальным — теперь я могу загрузить несколько программ, поэтому я могу использовать LC-5 или LC-2 для зацикливания во время воспроизведения музыки, ярлыков при редактировании или запуска макросов во время ежедневного использования компьютера. Он ст��л моим любимым маленьким инструментом повышения производительности. Дизайн на передней панели предназначен для музыки, но его можно использовать для чего угодно.

Маленькие значки на передней панели обозначают, что делает каждый переключатель — на LC-5 он имеет дорожку влево и вправо, запись, отмену и выбор темпа. В LC-2 есть только запись и отмена. Я использовал простые ножные переключатели мгновенного действия и припаял соединительные кабели непосредственно от Arduino к переключателям.

Если кому-то нужен код, вставлю ниже LC-5 (LC-2 тот же, только минус три переключателя). В основном я копировал это из того, что другие люди делали в подобных проектах, поскольку я не разбираюсь в коде Arduino, поэтому комментарии и тому подобное не мои. Я просто модифицировал его под свою конкретную настройку. Затем в Ableton я установил кнопку «Запись сеанса», которая будет запускаться по "]", а для «Tap Tempo» — "[". Дорожка влево и вправо — это просто клавиши со стрелками влево и вправо, а отмена — CMD-Z (это было сделано специально для использования на Mac).

#include
#include «Keyboard.h»
#define BUTTON_DEBOUNCE 50 // 50 = время устранения дребезга 50 мс

Кнопка Bounce2 = Bounce(2, BUTTON_DEBOUNCE);
Кнопка Bounce3 = Bounce(3, BUTTON_DEBOUNCE);
Кнопка Bounce4 = Bounce(4, BUTTON_DEBOUNCE);
Кнопка Bounce5 = Bounce(5, BUTTON_DEBOUNCE);
Кнопка Bounce6 = Bounce(6, BUTTON_DEBOUNCE);

недействительная настройка() {
// Настройте контакты для кнопок ножного переключателя как режим ввода = подтягивающие резисторы.
// Кнопки подключаются к каждому контакту на землю. Когда
// кнопка нажата, на выводе написано LOW, потому что кнопка
// замыкает его на землю. При отпускании на штыре отображается ВЫСОКИЙ уровень.
// потому что подтягивающий резистор подключается к +5 В внутри
// чип.

pinMode (2, INPUT_PULLUP);
pinMode (3, INPUT_PULLUP);
pinMode (4, INPUT_PULLUP);
pinMode (5, INPUT_PULLUP);
pinMode (6, INPUT_PULLUP);

}

недействительный цикл() {
// Получаем показания с кнопки
кнопка2.обновление();
кнопка3.обновление();
кнопка4.обновление();
��нопка5.обновление();
кнопка6.обновление();

// Включаем заметки, если кнопка подключена к земле
если (button2.fallingEdge()) {
Keyboard.press('[');
задержка(50);
Keyboard.releaseAll();
задержка(100);
}
если (button3.fallingEdge()) {
Keyboard.press(KEY_LEFT_GUI);
Keyboard.press('z');
задержка(50);
Keyboard.releaseAll();
задержка(100);
}
если (button4.fallingEdge()) {
Keyboard.press(']');
задержка(50);
Keyboard.releaseAll();
задержка(100);
}
если (button5.fallingEdge()) {
Клавиатура.нажмите(216);
задержка(50);
Keyboard.releaseAll();
задержка(100);
}
если (button6.fallingEdge()) {
Клавиатура.нажмите(215);
за��ержка(50);
Keyboard.releaseAll();
задержка(100);
}

}

05:12
3
Нет комментариев. Ваш будет первым!

Ссылка появится после регистрации

Похожие модели

Одинарная ручка Joy-Con для Nintendo Switch 2 с триггерными
Как и исходную модель, ее можноПодробнее
Универсальный стенд Quest 3
Я хотел напечатать универсальнуюПодробнее
Подставка для контроллера Xbox Elite Series 2
Я разработал это, потому что теперь воПодробнее
Держатель контроллера PlayStation 5
Я решил спроектировать держательПодробнее
Минималистичная подставка для зарядки контроллера Xbox Elite
Это минималистичная подставка дляПодробнее
FlyDiGi Vader 3 и 4 Pro Мод спинного весла
Это простая в установке модификацияПодробнее
Ремень Pico 4 на костяшке
/!\ ЭТО ПРОТОТИП, он может не подойтиПодробнее
Корпус пластины контроллера GameCube, точная копия 1:1
Это копия корпуса контроллера GameCube вПодробнее
Ручка контроллера Playdate - 2 варианта
Это ручка в стиле контроллера дляПодробнее
Подставка для контроллера 8bitdo Ultimate C со слотом для кл
Это подставка для контроллера отПодробнее
Оптимизированная подставка для контроллера Dualshock 4
По сути, переработанная подставка дляПодробнее
Джойстик оси вала контроллера Comand для Mercedes E-Class C-
Найти этот вал сломанным в накладкеПодробнее
Корпус TONEX ONE для сенсорного контроллера ESP32-S3 1.69
Это CAD-файлы корпуса для TONEX OneПодробнее
Корпус контроллера WLED "все в одном" ESP32
Этот корпус используется для моегоПодробнее
Коробка GLEDOPTO ESP32 Wled
Это простая напечатанная на 3D-принтереПодробнее
ИК-контроллер - ESP32
видео------>https://youtu.beПодробнее
Корпус ШИМ-модуля от 5 до 12 В, 10 А HW-070........
очень простой корпус для ШИМ-модуля HWПодробнее
Корпус Arduino MKR GSM 1400
Корпус, состоящий из двух частей, дляПодробнее
Блок контроллера WLED gx12
блок контроллера на пять светодиодныхПодробнее
Hoverboard Hack Panel Board, двухплатная версия........
Взлом из: https://github.com/RoboDurdenПодробнее
RC - Контроллер
Я разработал и напечатал на 3D-принтереПодробнее
Выкопайте модели Octa
Я решил собрать DigOcta Power7 иПодробнее
Контроллер дорожной книги для ралли на мотоциклах........
Этот тип контроллера обеспечиваетПодробнее
Медиа-контроллер iOS BLE
Создайте медиа-контроллер BLE для своегоПодробнее
Лазерная турель с дистанционным управлением........
Блог о том, как его создать, можно найтиПодробнее
Корпус контроллера Micronova
редактирую 08.11.2024: Добавлена версияПодробнее
ESPHome Двухканальный контроллер вентилятора........
Базовый контроллер вентилятора с двойнымПодробнее
Контроллер LoKey
Обзор В этом проекте реализована системаПодробнее
RC - Контроллер (Передатчик) Apex-Link
Название проекта: Apex-LinkПодробнее
CadetYoke v2.0 [Yoke с открытым исходным кодом для авиаси..
Это OpenSource Yoke для использования сПодробнее
Посещая этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.