MattIPv4 / MattIPv4/PyDMXControl
Multiple USB to DMX interface support?
Personne n'a encore pris cette issue.
- Langage dominant
- Python
- Étoiles
- 143
- Forks
- 23
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Description
Hi Matt! I‘m currently trying to use this library for a lighting project. I use USB to DMX interface cables with FT232R chip. I used "zadig" to flash the driver of interface to libusb-win32 and successfully dim the light on PC using Python! Thankyou :)
But I found when I plug two dongles in my PC, it seems that it can only control one of them. Luminaires of the other cable won't work.
Does this library support multiple interface to work simultaneously?
I am not a programmer. If I question something wrong please forgive me. And here's my code:
# Create controller
dmx = Controller()
# Load fixture from JSON
dmx.json.load_config('LabLight.json')
# Define a global fade time
fade_time = 5000
# DMA Value Mapping Percentage
def percent_to_dmx_value(percent):
return int((255 * percent) / 100)
# clear
dmx.clear_all_effects()
for brightness_percent in range(5, 101, 5):
dmx_value = percent_to_dmx_value(brightness_percent)
# Dimming
for f in dmx.get_fixtures_by_name_include('DownLight_1Y'): # Y for Yellow light, W for White light
f.dim(dmx_value, fade_time)
for f in dmx.get_fixtures_by_name_include('DownLight_1W'):
f.dim(dmx_value, fade_time)
for f in dmx.get_fixtures_by_name_include('DownLight_2Y'):
f.dim(dmx_value, fade_time)
for f in dmx.get_fixtures_by_name_include('DownLight_2W'):
f.dim(dmx_value, fade_time)
# rest of downlights
time.sleep(3)
# Manual Close
dmx.sleep_till_enter()
dmx.close()
And the json:
{
"type": "Generic.Dimmer",
"args": [],
"name": "DownLight_1Y",
"start_channel": 1
},
{
"type": "Generic.Dimmer",
"args": [],
"name": "DownLight_1W",
"start_channel": 2
},
{
"type": "Generic.Dimmer",
"args": [],
"name": "DownLight_2Y",
"start_channel": 3
},
{
"type": "Generic.Dimmer",
"args": [],
"name": "DownLight_2W",
"start_channel": 4
},
{
"type": "Generic.Dimmer",
"args": [],
"name": "DownLight_3Y",
"start_channel": 5
},
{
"type": "Generic.Dimmer",
"args": [],
"name": "DownLight_3W",
"start_channel": 6
}
]```
There're more but it's just for example.
For instance Downlight1-3 connect dongle_1, and 3_6 connect dongle_2.
Guide de contribution
Aucun guide de contribution indexé pour ce dépôt
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Commencez par le point d’entrée OpenDMXController présenté dans l’exemple et suivez la manière dont les interfaces USB sont sélectionnées et gérées. Reproduisez la configuration avec deux dongles FT232R/libusb-win32 ; la tâche est terminée lorsque les fixtures affectées à chaque dongle peuvent être contrôlées simultanément.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- python
- Domaine
- embedded-iot
- Type d'issue
- Fonctionnalité
- Difficulté
- 5/5
- Temps estimé
- Plus d'une semaine
- Activité
- À l'abandon
- Clarté
- À clarifier
- Accessibilité débutants
- 25/100