Télécommande IR et Arduino pour changement de patch GR-55
- 9 réponses
- 5 participants
- 2 438 vues
- 6 followers
Danguit
3348
Squatteur·euse d’AF
Membre depuis 18 ans
Sujet de la discussion Posté le 19/09/2014 à 17:10:22Télécommande IR et Arduino pour changement de patch GR-55
Bonjour,
J'avais commencé à explorer la possibilité d'envoyer des commandes MIDI par une télécommande IR (on en a généralement plein les tiroirs) et un Arduino (cf. https://fr.audiofanzine.com/les-mains-dans-le-cambouis/forums/t.525583,diy-telecommande-midi-ir-arduino.html ). Le sujet n'intéressant manifestement pas grand-monde j'avais mis cela de côté. Suite à une question sur un autre forum, je m'y suis remis, d'autant plus que je trouvais pénible d'être obligé de tourner la molette dans tous les sens pour changer de son .
Le GR-55 peut recevoir des Program Change (avec Control Change CC0 pour le choix de la banque) selon deux modes, MAP SELECT FIX et MAP SELECT PRG.
Dans le premier cas les patches sont rangés dans les banques 0, 1 et 2 pour les USER et 16, 17, 18 pour LEAD, RHYTHM et OTHER. Avec un contrôleur qui ne gère pas le CC0 et donc n'envoie que les PC, on ne peut adresser que les 128 premiers USER.
Dans le second on peut créer jusqu'à 64 banques (0 à 63) de 128 patches max, dans lesquelles on met des patches existants. Par exemple x sons clairs en banque 0, y sons saturés en 1, z rythmiques en 3, puis tous les sons pour un morceau ou un concert, etc. Ce mode m'a paru plus intéressant que le premier pour mon utilisation.
Pour l'instant j'ai fait un script Arduino (UNO par exemple) pour le mode MAP SELECT PRG qui me permet avec une télécommande minimale de régler avec un seul appui par commande, le canal, la banque et le programme, chacun de 0 à 11 (on pourrait aller plus haut en utilisant plus de touches). De plus on peut incrémenter/décrémenter par 1 ou 10 les PC pour aller plus haut.
Les entrées analogiques permettent également d'envoyer des CC à utiliser dans ASSIGN sur 6 voies max (UNO), potentiomètres ou pédales (j'ai testé une pédale EV-5). Je vais tester les entrées numériques pour pouvoir utiliser des pédales style FS-6 ou home made.
L'adaptation à une autre télécommande est très simple, il suffit de relever les codes des touches (prévu dans le script) , de remplacer ceux existants dans le code, d'en ajouter éventuellement, et de téléverser dans l'ARDUINO (très facile avec son logiciel). On peut aussi très facilement ajouter des commandes analogiques ou numériques externes.
La réalisation est très simple si l'on utilise un UNO (15-20€) ou autre (alimentation en 5V USB ou 9V par adaptateur) : une embase DIN 5br, une résistance de 220Ω, un récepteur IR (3 pattes, #2€), quelques bouts de fil, des embase 6.35 stéréo avec coupure pour les entrées externes, éventuellement des potentiomètres, et peut-être quelques petites capas sur les entrées.
Donc si quelqu'un est intéressé, je pourrai fournir le code et des explications complémentaires pour l'adaptation.
J'avais commencé à explorer la possibilité d'envoyer des commandes MIDI par une télécommande IR (on en a généralement plein les tiroirs) et un Arduino (cf. https://fr.audiofanzine.com/les-mains-dans-le-cambouis/forums/t.525583,diy-telecommande-midi-ir-arduino.html ). Le sujet n'intéressant manifestement pas grand-monde j'avais mis cela de côté. Suite à une question sur un autre forum, je m'y suis remis, d'autant plus que je trouvais pénible d'être obligé de tourner la molette dans tous les sens pour changer de son .
Le GR-55 peut recevoir des Program Change (avec Control Change CC0 pour le choix de la banque) selon deux modes, MAP SELECT FIX et MAP SELECT PRG.
Dans le premier cas les patches sont rangés dans les banques 0, 1 et 2 pour les USER et 16, 17, 18 pour LEAD, RHYTHM et OTHER. Avec un contrôleur qui ne gère pas le CC0 et donc n'envoie que les PC, on ne peut adresser que les 128 premiers USER.
Dans le second on peut créer jusqu'à 64 banques (0 à 63) de 128 patches max, dans lesquelles on met des patches existants. Par exemple x sons clairs en banque 0, y sons saturés en 1, z rythmiques en 3, puis tous les sons pour un morceau ou un concert, etc. Ce mode m'a paru plus intéressant que le premier pour mon utilisation.
Pour l'instant j'ai fait un script Arduino (UNO par exemple) pour le mode MAP SELECT PRG qui me permet avec une télécommande minimale de régler avec un seul appui par commande, le canal, la banque et le programme, chacun de 0 à 11 (on pourrait aller plus haut en utilisant plus de touches). De plus on peut incrémenter/décrémenter par 1 ou 10 les PC pour aller plus haut.
Les entrées analogiques permettent également d'envoyer des CC à utiliser dans ASSIGN sur 6 voies max (UNO), potentiomètres ou pédales (j'ai testé une pédale EV-5). Je vais tester les entrées numériques pour pouvoir utiliser des pédales style FS-6 ou home made.
L'adaptation à une autre télécommande est très simple, il suffit de relever les codes des touches (prévu dans le script) , de remplacer ceux existants dans le code, d'en ajouter éventuellement, et de téléverser dans l'ARDUINO (très facile avec son logiciel). On peut aussi très facilement ajouter des commandes analogiques ou numériques externes.
La réalisation est très simple si l'on utilise un UNO (15-20€) ou autre (alimentation en 5V USB ou 9V par adaptateur) : une embase DIN 5br, une résistance de 220Ω, un récepteur IR (3 pattes, #2€), quelques bouts de fil, des embase 6.35 stéréo avec coupure pour les entrées externes, éventuellement des potentiomètres, et peut-être quelques petites capas sur les entrées.
Donc si quelqu'un est intéressé, je pourrai fournir le code et des explications complémentaires pour l'adaptation.
fullbazar
1288
AFicionado·a
Membre depuis 19 ans
2 Posté le 21/09/2014 à 20:56:35
Ça me semble bien intéressant ton projet, et pas seulement pour le GR mais pour n'importe quel Multi Midi : pour le moment afin d'avoir les patches bien en ordre, je suis contraint de les ordonner en fonction de mes liste de titre et donc à chaque gros changement , c'est le jeu de la chaise musicale pour les patches, et à la longue ça devient gavant, d'autant que comme les patches changent de place on ne peut compter sur sa mémoire pour se souvenir d'où ils se trouvent.
Parcontre Arduino et l'electronique je suis une vraie buse
je crois avoir pigé le principe et le but visé mais le reste , c'est de l'hébreu
Parcontre Arduino et l'electronique je suis une vraie buse
je crois avoir pigé le principe et le but visé mais le reste , c'est de l'hébreu
Qui réfléchit peu se trompe beaucoup
[ Dernière édition du message le 21/09/2014 à 20:58:00 ]
Danguit
3348
Squatteur·euse d’AF
Membre depuis 18 ans
3 Posté le 21/09/2014 à 22:58:59
J'ai amélioré le logiciel, ce qui permet d'appeler plus de banques et plus de patches (par touches 0-10 et +10) et aussi de choisir la loi de variation (9 valeurs de log à exponentielle en passant par lin) d'une pédale de volume externe type EV-5.
Quant à la réalisation, c'est vraiment à la portée d'un débutant (voire d'une buse, mais pas trop) dans la mesure où elle se limite à relier quelques composants à la platine et où il n'y a pas à développer le logiciel mais simplement à y insérer ses codes de télécommande (je ne fait pas de mode LEARN car je n'ai pas envie de passer ma vie à programmer).
Sur le GR-55, l'intérêt des banques en MAP SELECT PRG est justement de ne pas toucher aux patches (USER ou autres), et de pouvoir se faire rapidement plusieurs banques de relativement petite taille et adaptées aux besoins. Et toute modification d'un patch est répercutée dans toutes les banques qui l'utilisent.
Quant à la réalisation, c'est vraiment à la portée d'un débutant (voire d'une buse, mais pas trop) dans la mesure où elle se limite à relier quelques composants à la platine et où il n'y a pas à développer le logiciel mais simplement à y insérer ses codes de télécommande (je ne fait pas de mode LEARN car je n'ai pas envie de passer ma vie à programmer).
Sur le GR-55, l'intérêt des banques en MAP SELECT PRG est justement de ne pas toucher aux patches (USER ou autres), et de pouvoir se faire rapidement plusieurs banques de relativement petite taille et adaptées aux besoins. Et toute modification d'un patch est répercutée dans toutes les banques qui l'utilisent.
Danguit
3348
Squatteur·euse d’AF
Membre depuis 18 ans
4 Posté le 22/09/2014 à 11:13:24
Pour ceux qui ont peur d'un montage trop complexe, la configuration minimale (télécommande IR sans entrées pour pédales de volume ou autre) et qui fonctionne. Si le boîtier n'est pas transparent, il n'est pas inutile d'ajouter une LED (+ résistance) qui signal la réception de code de télécommande.
L'adaptateur secteur est avec positif au centre (donc l'inverse de Boss), de 9V DC à 12V. J'en ai mis un récupéré je ne sais où.
On pourrait bien sûr utiliser une autre télécommande à condition de modifier les codes (très simple).
L'adaptateur secteur est avec positif au centre (donc l'inverse de Boss), de 9V DC à 12V. J'en ai mis un récupéré je ne sais où.
On pourrait bien sûr utiliser une autre télécommande à condition de modifier les codes (très simple).
[ Dernière édition du message le 22/09/2014 à 11:14:45 ]
Danguit
3348
Squatteur·euse d’AF
Membre depuis 18 ans
5 Posté le 01/10/2014 à 15:51:27
Après moult hésitations, je me suis arrêté sur une configuration basique répondant en partie à mes besoins, sachant qu'avec une télécommande plus complète on pourrait facilement ajouter des commandes, notamment par sysex ce qui permet d'agir sans toucher au patch. Cette configuration est plutôt destinée à une utilisation en MAP SELECT PRG avec relativement peu de patches par banque et des banques dédiées, mais on peut l'utiliser dans le mode nominal ou avec d'autres appareils qui n'utilisent que le CC0.
Pour ne pas gâcher et utiliser les E/S de l'Arduino, je me suis bricolé vite fait un petit pédalier d'intérieur entièrement en matériaux de récupération (sauf les 4 boutons poussoirs à #0.3€). D'ailleurs la prochaine fois je ferai des boutons ronds, plus faciles à réaliser que ces trucs en bois.
J'avais prévu de piloter à partir d'un Arduino standalone (µ-contrôleur, quartz et 2 capas) et d'une alim à réaliser, mais j'ai trouvé un dccduino (a priori = UNO) pour 10.54€ (mais livraison 10 à 20 jours). A ce prix là, inutile de se fatiguer outre mesure.
Je terminerai le tout quand j'aurai reçu la bête.
J'ai implanté les E/S et fonctions suivantes :
sur le boîtier :
- sortie MIDI par prise DIN
- 4 pédales de commande sur le boîtier permettant via la télécommande soit de basculer on/off les PCM1, PCM2, MODELING et NORMAL PU, soit d'envoyer des CC à paramétrer dans les ASSIGN de chaque patch,
- 1 jack 6.35 pour pédale de commutation type FS-6
- 1 jack 6.35 pour pédale d'expression type EV-5 avec potentiomètre permettant de régler la courbe de variation (log à exp en passant par lin) ; peut piloter un paramètre quelconque par CC dans ASSIGN
- 1 jack 6.35 pour pédale d'expression type EV-5 (on pourrait aussi mettre le réglage de la courbe) ; peut piloter un paramètre quelconque par CC dans ASSIGN
- alimentation par USB ou bloc 9-12V (attention, inversé par rapport à Boss)
- sortie USB pour récupérer les codes d'une nouvelle télécommande et télécharger le code modifié.
par la télécommande
- changement de canal par appui sur 0 à 10 et +10 (ad lib)
- changement de banque par appui sur 0 à 10 et +10 (ad lib)
- changement de patch (programme) par appui sur 0 à 10 et +10 et incrément-décrément
- réglage du volume
- au changement de banque, positionnement au premier patch ou attente d'un numéro
- et si j'ai d'autres idées...
- et si quelqu'un en a d'autres...
Pour ne pas gâcher et utiliser les E/S de l'Arduino, je me suis bricolé vite fait un petit pédalier d'intérieur entièrement en matériaux de récupération (sauf les 4 boutons poussoirs à #0.3€). D'ailleurs la prochaine fois je ferai des boutons ronds, plus faciles à réaliser que ces trucs en bois.
J'avais prévu de piloter à partir d'un Arduino standalone (µ-contrôleur, quartz et 2 capas) et d'une alim à réaliser, mais j'ai trouvé un dccduino (a priori = UNO) pour 10.54€ (mais livraison 10 à 20 jours). A ce prix là, inutile de se fatiguer outre mesure.
Je terminerai le tout quand j'aurai reçu la bête.
J'ai implanté les E/S et fonctions suivantes :
sur le boîtier :
- sortie MIDI par prise DIN
- 4 pédales de commande sur le boîtier permettant via la télécommande soit de basculer on/off les PCM1, PCM2, MODELING et NORMAL PU, soit d'envoyer des CC à paramétrer dans les ASSIGN de chaque patch,
- 1 jack 6.35 pour pédale de commutation type FS-6
- 1 jack 6.35 pour pédale d'expression type EV-5 avec potentiomètre permettant de régler la courbe de variation (log à exp en passant par lin) ; peut piloter un paramètre quelconque par CC dans ASSIGN
- 1 jack 6.35 pour pédale d'expression type EV-5 (on pourrait aussi mettre le réglage de la courbe) ; peut piloter un paramètre quelconque par CC dans ASSIGN
- alimentation par USB ou bloc 9-12V (attention, inversé par rapport à Boss)
- sortie USB pour récupérer les codes d'une nouvelle télécommande et télécharger le code modifié.
par la télécommande
- changement de canal par appui sur 0 à 10 et +10 (ad lib)
- changement de banque par appui sur 0 à 10 et +10 (ad lib)
- changement de patch (programme) par appui sur 0 à 10 et +10 et incrément-décrément
- réglage du volume
- au changement de banque, positionnement au premier patch ou attente d'un numéro
- et si j'ai d'autres idées...
- et si quelqu'un en a d'autres...
[ Dernière édition du message le 03/10/2014 à 07:10:11 ]
Rémy M. (chimimic)
14200
Modérateur·trice thématique
Membre depuis 22 ans
6 Posté le 01/10/2014 à 17:08:34
Bien vu, bravo !
Formateur en techniques sonores ; électronicien ; auteur @ sonelec-musique.com
Cpierredon
2380
AFicionado·a
Membre depuis 22 ans
7 Posté le 03/10/2014 à 07:02:29
mon idée était au départ à moi de télécommander un séquenceur avec une de ces télécommandes, en utilisant les boutons prévus pour un magnétoscope ou un lecteur de DVD.Si ça peut te donner une idée...
http://www.pierredon.free.fr
Danguit
3348
Squatteur·euse d’AF
Membre depuis 18 ans
8 Posté le 03/10/2014 à 07:23:42
C'est prévu, et d'ailleurs initialement j'étais plutôt parti vers des commandes pour Cubase avec start-stop au pied. J'ai changé de cap pour la première réalisation, mais rien n'est perdu.
Pour le GR-55, avec ma commande Storex (cf. https://fr.audiofanzine.com/les-mains-dans-le-cambouis/forums/t.525583,diy-telecommande-midi-ir-arduino,post.7298311.html ) qui comporte 4 colonnes, j'ai aussi l'intention de pouvoir régler des paramètres de chaque son (PCM1 et 2, MODELING et NORMAL PU) soit par CC à définir soit par sysex. Et s'il y a assez de place mémoire je l'intègrerai dans mon code actuel.
Une fois que les commandes de base ont été écrites, adapter à telle ou telle utilisation n'est plus quasiment que du copier-coller.
Pour le GR-55, avec ma commande Storex (cf. https://fr.audiofanzine.com/les-mains-dans-le-cambouis/forums/t.525583,diy-telecommande-midi-ir-arduino,post.7298311.html ) qui comporte 4 colonnes, j'ai aussi l'intention de pouvoir régler des paramètres de chaque son (PCM1 et 2, MODELING et NORMAL PU) soit par CC à définir soit par sysex. Et s'il y a assez de place mémoire je l'intègrerai dans mon code actuel.
Une fois que les commandes de base ont été écrites, adapter à telle ou telle utilisation n'est plus quasiment que du copier-coller.
diablomephisto
985
Posteur·euse AFfolé·e
Membre depuis 19 ans
9 Posté le 05/10/2014 à 22:47:13
Danguit
3348
Squatteur·euse d’AF
Membre depuis 18 ans
10 Posté le 21/10/2014 à 16:23:41
J'attends toujours mon dccduino. En attendant j'ai câblé en partie (il manque les contrôleurs externes, EXP et CTL et la plaque arrière) et ça marche (télécommande et 4 switches). Toutefois il va falloir que je modifie un peu l'algo des switches car pour l'instant il ne faut pas rester appuyé, sinon il y a encore changement d'état.
Edit : c'est quasiment terminé, finalement je ne mets qu'une pédale d'expression et j'attends de recevoir le DCcduino pour fixer la plaque arrière.
Edit : c'est quasiment terminé, finalement je ne mets qu'une pédale d'expression et j'attends de recevoir le DCcduino pour fixer la plaque arrière.
[ Dernière édition du message le 23/10/2014 à 16:57:47 ]
- < Liste des sujets
- Charte