Problème de câblage

Bonjour à tous

je me suis trouvé ce pédalier d'orgue (photo et schema ci dessous) que je compte utiliser pour controller des synthé en midi mais aussi en CV pour aller vers mon synthé eurorack.

je m'attendais à ce que le montage soit ultra simple. mais d'entré j'ai un petit soucis que je n'arrive pas à surmonter.
il y a treize touches sur ce clavier pour seulement 8 broches de sorties (voir schema). je ne peux donc pas simplement placer chaque touche entre le GND et les inputs de mon arduino.
Et je ne trouve pas de solution pour utiliser chaque touche indépendamment.

je suis persuadé qu'il y a un moyen simple a coté duquel je passe. mais je ne trouve pas

pouvez vous m'aider ?

merci


Une possibilité serait de relier les pads du bas à des sorties de l'Arduino et celles du haut à des entrées.
Tu boucles sur la lecture des entrées : à chaque entrée tu envoies un signal sur une sortie puis l'autre et tu détectes l'arrivée du signal. Si rien n'apparait, aucune touche (reliée à cette entrée) n'est enfoncée, si un signal apparait, ça indique quelle touche de quel groupe.

Bonjour katarama

Si tu peux modifier le pcb, couper les 2 parallélismes du bas (pt 1 sur contact), chaque pad (16), sur une entrée (PULL_UP) de l'Arduino. Les pads du haut à GND.

Je viens de comprendre la solution de @lesept , c'est nettement plus simple que la mienne :+1:

Cordialement
jpbbricole

Il me semble que l'on doit pouvoir gérer ce clavier avec la librairie keypad en affectant les 2 communs aux rangées et les 8 fils aux colonnes dans la déclaration.
Cela ne doit pas être trop difficile de partir d'un code exemple et de l'adapter.

1 Like

Pour un clavier musical, un entrée par touche n'irait pas à cause des claviers piano qui ont une centaine de touches. Il faut donc un clavier matricé. Comme bien souvent on est en 8 bits, le clavier est fait pour être branché avec autres. On connecté ensembles les 8 fils du haut, et on rajoute autant de fils en bas qu'il y a de paquets de 8 touches. C'est pour cela que l'on a une matrice 8x2 et pas 5x3 qui aurait utilisé deux broches en moins.

La matrice rectangulaire ( on dit plus souvent carrée) avec un diode en série est la seule qui diminue le nombre de broches tout en permettant une lecture individuelle des pédales.

La bibliothèque keypad fonctionne pour ce type de clavier en le déclarant 2x8 ou 8x2 (cela dépend comment est fait la lecture) mais cela ne permet que la lecture d'une seule pédale en même temps, à voir si elle ne retourne pas rien si deux pédales sont enfoncés en même temps.

Le pédalier est câblé correctement plutôt si on a des résistances pullup, ce qui n'est pas le cas avec la nano, mais utilisable avec une ESP32. Sinon, il faut alors envoyer des sélections par le haut et lire en bas.

Algorithme avec des pullup:
Câbler les 8 fils du haut sur 8 broches que j'appelle haut7.. haut0.
Câbler les 2 fils du bas sur 2 broches que j'appelle basa et base.
Mettre toutes les 10 broches en INPUT_PULLUP
Puis pour lire:
Mettre la broche haut7 en OUTPUT à LOW, et lire (digitalRead) les broches bas1 et bas0. Si bas1 est a LOW, c'est que la pédale key0 est appuyée et si bas1 est LOW, c'est que key9 est enfoncée.
Remettre haut en INPUT_PULLUP et mettre haut6 en OUTPUT à LOW. Lire bas1 et bas0 pour avoir l'info sur key1 et keyap
Faire pareil pour haut5 à haut0.

trop bien !
merci tout le monde ! !
ça semble facil et efficace

je teste ça très vite et je vous raconte !

merci encore

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.