Pure Data vs Enttec Pro

De Centre de Ressources Numériques - Labomedia
Révision de 9 janvier 2015 à 14:20 par Serge (discussion | contributions)

(diff) ← Version précédente | Voir la version actuelle (diff) | Version suivante → (diff)
Aller à : navigation, rechercher

L'Enttec DMX USB Pro est une interface qui permet de réceptionner et d'émettre un flux DMX via un port USB.

Jusqu'à présent, pour que Puredata puisse communiquer avec cette interface nous utilisions un script python avec lequel Puredata communiquait en OSC.

Après lecture de la documentation de l'API, il s'avère tout à fait possible pour Puredata de s'adresser directement à l'Enttec Pro via un port série. On utilise pour cela l'objet [comport], présent dans la bibliothèqe Flatspace de Pd-Extended. Une fois que l'on connait le numéro de port de son périphérique, et sa vitesse de connection, on peut les passer en argument de la sorte: [comport <port> <vitesse en bauds>]. Exemple : [comport 4 57600].

Le schéma ci-dessous présente le patch minimal pour arriver à cela. Après avoir branché le boitier USB, il faut lister les ports disponibles puis ouvrir celui du périphérique. Avec le message proposé, le slider permet d'envoyer une valeur entre 0 et 255 sur l'adresse DMX 1.

Puredata-DMX.png

La décomposition du message est celle-ci :

  • 126 : indique le début d'un message (0x7E)
  • 6 : indique que l'on veut envoyer une trame
  • 2 : LSB du nombre de canaux DMX
  • 0 : MSB du nombre de canaux DMX
  • 0 : valeur de l'adresse DMX 0, non utilisé mais toujours présente dans une trame.
  • $1 : valeur variable à envoyer à l'adresse DMX 1
  • 231 : indique la fin du message (0xE7)

Pour envoyer une trame avec 512 adresses il faut donc composer un message de la sorte :

Puredata-DMX-message.png

L'opération étant pour le moins fastidieuse, nous avons tissé un petit patch qui fait ça très bien. En l'occurrence, il créer une liste avec le bon nombre d'élément qu'il remplace au besoin. Pour l'exemple, nous avons rajouté une petite abstraction de tranches mais ce patch n'est en rien une console de light. Il se veut juste démonstratif.

Puredata-DMX-console-1.png


Puredata-DMX-console-2.png