Pure Data vs Enttec Pro
Ce wiki a été archivé en 2018.
Le nouveau wiki se trouve à: ressources.labomedia.org Les fonctionnalités sont désactivées: vous pouvez faire une recherche sur Google site:https://wiki.labomedia.org et découvrir La Labomedia. |
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.
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 :
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.