Bonjour a tous !
apres des recherches infructueuses, je me permet de vous presenter mon probleme :
je construit un hardware qui va envoyer des controles midi (CC)
le hardware fonctionne, les test lorsque l'appareil est branché "en direct" sur mon interface MIDI (carte son) fonctionne comme attendu, tout va bien
le probleme intervient lorsque je branche cet appareil sur un merger midi (plus precisement MIDI Solutions Quadra Merge; Four Input MIDI Merger) : le signal devient completement nimporte quoi !!
...SAUF SUR LE PORT 1
au depart j'envoyais les msg "a la mano", cad avec un softwareserial et des serial.write, et autant le canal etait respecté (et le fait que j'envoie un CC 0xB0) mais les data1 et data2 etaient totalement corrompus..., CC_number et CC_value devenaient n'importe quoi...
puis je suis passé a la bibliotheque MIDI (version 4), toujours en softwareserial, et là ca fonctionne grandement mieux, mais j'ai toujours des erreurs dans le CC_number (data1) qui passe par exemple de temps en temps de 12 à 02 (comme s'il perdait un bit, ex: 12DEC=B00010010 et 02DEC=00000010)
...alors que je n'ai toujours aucun probleme lorsque l'appareil est connecté au port 1 du merger (qui entre autre fournit l'alimentation).
Je ne peux compter sur le fait que l'appareil sera toujours connecté au port 1, il faut que je regle le probleme et que je stabilise le signal MIDI..
qu'est-ce qui peut etre suffisamment différent entre le signal midi envoyé par l'arduino, et un signal envoyé par un appareil "de serie" pour le faire merder dans un merger...???!!?
Merci d'avance a vous tous d'etre arrivé a la fin du post, un peu long j'en conviens mais s'il vous plait sauvez moi !
Peut-être que le merger n'a pas la résistance de tirage, qui doit être dans l'interface. Mais ça, y'a que toi qui le sait.
Bonjour,
Comment est alimenté le merger ? Est-ce que tu fournis assez de courant ?
Es-tu sûr que le merger peut fonctionner avec juste 1 IN branché ?
merci pour vos reponses !
@Carolyne : tu veux dire qu'il faut une resistance de tirage sur le signal MIDI ?
pour le branchement j'ai suivi la majorité des exemples trouves sur des tutos, qui branchent en direct le signal midi à un port digital de l'arduino, et une resistance de 220ohm sur l'alim... genre ca : http://www.instructables.com/id/Send-and-Receive-MIDI-with-Arduino/step6/Basic-Note-On-Note-Off-with-Arduino/
ceci dit sur le shematic "officiel" du midi ils parlent d'un optoisolator Specs qui ne fait effectivement pas parti de mon montage.
Par ailleurs la societe qui produit le quadramerge m'a repondu, en me disant que les ports 2-3et4 sont plus sensibles au courant, qui devrait faire autours de 5mA...
Dans tous les cas je ne peux pas rajouter d'optoisolator car j'ai fait imprimer mon pcb, sinon il faudrait que j'en redessine un et que je passe une nouvelle commande, ce que je ferai a l'avenir mais je souhaiterai, si possible, regler le probleme avec le shema actuel, est-il possible d'activer en interne sur le arduino (arduino mini atmega328) un pullup de la sortie digitale que j'utilise ?
@XavierMiller : le merger est alimente directement par le port midi 1, sur lequel il y a un toujours autre peripherique qui vraisemblablement rempli son role.
le merger ne fonctionne donc que s'il y a donc un periph qui fournit le courant sur le port 1, ce qui est toujours le cas, et comme je disais je ne peut brancher mon appareil arduino sur le port 1 pour des raisons pratiques... il faut que j'arrive a le faire fonctionner sur les autres port (ce qui est con parce qu'il fonctionne tres bien sur le port 1 justement)...
donc si je resume peut-etre faut-il activer un pullup sur la sortie digitale (si tant est que ce soit possible avec l'arduino mini)?
j'ai encore la possibilité sur mon pcb de rajouter une resistance entre le 5V general et la sortie midi, ce sera pas beau mais en pratique je peux le faire...