Я уже некоторое время использую Enttec DMX OpenUSB:
https://www.enttec.com/product/controls/dmx-usb-interfaces/open-dmx-usb/
Пример C #, который у них есть, работает надежно, отлично. Я даже портировал его на VB .NET. Одна вещь, которая мне не ясна, это то, можно ли считывать данные с устройства после того, как вы отправили на него данные, или, если возможно, даже перечислить имеющиеся у вас устройства. Одно дело знать, существует ли устройство Enttec DMX OpenUSB, но как насчет всех подключенных устройств?
Для этого есть две причины;Один из них - проверить, действительно ли вы установили значения, а второй - узнать, присутствуют ли все ваши устройства (или получить список имеющихся устройств). В FTD2XX.dll есть часть FT_Read, но я не совсем уверен, как ее можно использовать.
Я мог бы это выяснить, посмотрев на другой пример с открытым исходным кодом, который это делает (читает, а не пишет) какие-то предложения есть?