DIY : petit pedalier midi
Bonjour,
J'ai commencé à travailler sur un petit pédalier midi à base d'arduino il y a quelques mois afin de déclencher des parties de batteries qui s'intègrent dans nos morceaux, déclenchement soit en début soi en cours de morceau.
J'ai imaginé quelque chose d'assez simple mais qui fait le job dans mon cas :
- 1 boite
- 1 switch pour changer de morceau (banque)
- 2 switchs pour déclencher les sons
- 1 switch panic / stop qui arrête tous les sons
- 1 petit écran permettant de connaître la banque active
- 1 connecteur jack permettant de déporter / ajouter au besoin un boîtier supplémentaire de 2 boutons.
Après un premier prototype en carton basé sur un arduino Uno, je suis passé à la réalisation de la version 1, basée sur un arduino Pro Micro sur lequel il est possible d'utiliser directement la lib MIDIUSB (merci yruama).
- Écran OLED : https://www.aliexpress.com/item/0-91-Inch-128x32-IIC-I2C-Blue-OLED-LCD-Display-DIY-Oled-Module-SSD1306-Driver-IC/32792474110.html
- Switchs : Interrupteurs momentanés normalement ouverts https://www.musikding.de/Footswitch-momentary ou https://www.banggood.com/5Pcs-Electric-Guitar-Effect-Momentary-Push-Button-Stomp-Foot-Pedal-Switch-p-1134006.html?rmmds=myorder
- Jack 3.5 : https://www.amazon.fr/gp/product/B00U88T2IA/ref=oh_aui_detailpage_o09_s00?ie=UTF8&psc=1
- Anet A8 pour l'impression du boîtier
- la masse des interrupteurs est commune
- chaque interrupteur est câblé sur une entrée de l'arduino
- câblage écran sur : SDA, SCL, VCC et GND
Câblage des boutons :
D5 : bouton changement de morceau / banque
D6 : déclenchement son 1
D7 : déclenchement son 2
D8 : Panic / note off
D9 : extension 1 sur mini-jack
D10 : extension 1 sur mini-jack
Câblage de l'écran :
SDA, SCL, VCC et GND
- l'appui sur le bouton de changement de banque incrémente un compteur qui est utilisé pour récupérer le nom et les événements midi associés au morceau
=> l'événement midi est figé, il faut modifier le code pour modifier un nom ou une note
- les boutons de déclenchement 1 et 2 jouent la note définie dans le tableau des notes notes
- le bouton stop envoi toujours le même événement
- ce code est largement perfectible
La plus grosse difficulté a été de faire fonctionner correctement l'écran et de trouver son adresse, 0x03C dans mon cas.
Afin de trouver cette adresse, j'ai utilisé la lib suivante : https://github.com/duinoWitchery/hd44780
Il suffit de charger le fichier I2CexpDiag situé dans exemples/hd44780/ioclass/hd44780_I2CExp/ afin de récupérer l'adresse.
J'utilise actuellement cette boite avec linux-show-player, sans jack, sans être dérangé par une quelconque latence, nous n'avons en tous pas constaté de différence par rapport à l'utilisation de Giada avec jack.
Dans les 2 cas, j'ai configuré 2 événement midi sur chaque sample, un start et un stop.
Tout se petit monde tourne sous Archlinux avec le kernel par défaut.
J'ai commencé à travailler sur un petit pédalier midi à base d'arduino il y a quelques mois afin de déclencher des parties de batteries qui s'intègrent dans nos morceaux, déclenchement soit en début soi en cours de morceau.
J'ai imaginé quelque chose d'assez simple mais qui fait le job dans mon cas :
- 1 boite
- 1 switch pour changer de morceau (banque)
- 2 switchs pour déclencher les sons
- 1 switch panic / stop qui arrête tous les sons
- 1 petit écran permettant de connaître la banque active
- 1 connecteur jack permettant de déporter / ajouter au besoin un boîtier supplémentaire de 2 boutons.
Après un premier prototype en carton basé sur un arduino Uno, je suis passé à la réalisation de la version 1, basée sur un arduino Pro Micro sur lequel il est possible d'utiliser directement la lib MIDIUSB (merci yruama).
- Matériel utilisé :
- Écran OLED : https://www.aliexpress.com/item/0-91-Inch-128x32-IIC-I2C-Blue-OLED-LCD-Display-DIY-Oled-Module-SSD1306-Driver-IC/32792474110.html
- Switchs : Interrupteurs momentanés normalement ouverts https://www.musikding.de/Footswitch-momentary ou https://www.banggood.com/5Pcs-Electric-Guitar-Effect-Momentary-Push-Button-Stomp-Foot-Pedal-Switch-p-1134006.html?rmmds=myorder
- Jack 3.5 : https://www.amazon.fr/gp/product/B00U88T2IA/ref=oh_aui_detailpage_o09_s00?ie=UTF8&psc=1
- Anet A8 pour l'impression du boîtier
- Câblage
- la masse des interrupteurs est commune
- chaque interrupteur est câblé sur une entrée de l'arduino
- câblage écran sur : SDA, SCL, VCC et GND
arduino Pro Micro vu du dessus USB vide vide vide GND écran vide vide GND VCC SDA vide SCL vide vide vide D5 vide D6 vide D7 vide D8 vide D9 D10
Câblage des boutons :
D5 : bouton changement de morceau / banque
D6 : déclenchement son 1
D7 : déclenchement son 2
D8 : Panic / note off
D9 : extension 1 sur mini-jack
D10 : extension 1 sur mini-jack
Câblage de l'écran :
SDA, SCL, VCC et GND
- Code Arduino :
- l'appui sur le bouton de changement de banque incrémente un compteur qui est utilisé pour récupérer le nom et les événements midi associés au morceau
=> l'événement midi est figé, il faut modifier le code pour modifier un nom ou une note
- les boutons de déclenchement 1 et 2 jouent la note définie dans le tableau des notes notes
- le bouton stop envoi toujours le même événement
- ce code est largement perfectible
La plus grosse difficulté a été de faire fonctionner correctement l'écran et de trouver son adresse, 0x03C dans mon cas.
Afin de trouver cette adresse, j'ai utilisé la lib suivante : https://github.com/duinoWitchery/hd44780
Il suffit de charger le fichier I2CexpDiag situé dans exemples/hd44780/ioclass/hd44780_I2CExp/ afin de récupérer l'adresse.
- Logiciels :
J'utilise actuellement cette boite avec linux-show-player, sans jack, sans être dérangé par une quelconque latence, nous n'avons en tous pas constaté de différence par rapport à l'utilisation de Giada avec jack.
Dans les 2 cas, j'ai configuré 2 événement midi sur chaque sample, un start et un stop.
Tout se petit monde tourne sous Archlinux avec le kernel par défaut.
- Sources
Mégaphone
calixtus06, 14:33, jeu. 28 mars 2024:
Bonjour et bienvenue à b.vl
calixtus06, 09:30, mer. 27 mars 2024:
Bonjour et bienvenue à Noar
olinuxx, 18:50, lun. 25 mars 2024:
Bonjour et bienvenue à Ted Demore
olinuxx, 17:52, dim. 24 mars 2024:
Bonjour et bienvenue à Noitavon
calixtus06, 11:07, jeu. 21 mars 2024:
Bonjour et bienvenue à obds, ceric
obds, 16:12, mar. 19 mars 2024:
Cet édito est juste parfait. Trop beau !
olinuxx, 11:48, ven. 15 mars 2024:
Bonjour et bienvenue à Jerry
calixtus06, 18:03, mer. 13 mars 2024:
Bonjour et bienvenue à tanguero
olinuxx, 11:01, dim. 10 mars 2024:
Bonjour et bienvenue à lolo
bda, 16:59, sam. 09 mars 2024:
Chapeau pour l'édito. Vous êtes au top les gars
olinuxx, 19:52, mer. 06 mars 2024:
Bonjour et bienvenue à TrkNrk