As a systems designer, you have the choice of supporting one or more comercial off-the-shelf USB interfaces, or designing your own. The latter approach is often used by manufacturers as a software protection dongle to stop software piracy, if the software only works with your interface, then you dont need to worry about software distribution.
If you have no fixed ideas about which interface to support, then the first choice has to be the
Entec USB pro, which has the advantages of being reasonably priced, widely used, has API programming information available for it, and the API is non-demanding.
There is a cheaper version, the non-pro, but that requires a lot more effort on the part of the developer.
The fact it is widely used means that if you come up with a great piece of software, then people can convert to using it without needing to buy more hardware.
And "reasonably priced" is relative; Chamsys can deliver a USB dongle direct to your door anywhere in the world for £10.
It might pay to look at the Chamsys MagicQ software anyway, as it supports a wide range of interfaces, and by looking at their list perhaps you could see if you too want to support any of those.
Also there are a number of DMX over ethernet protocols you may wish to support, possibly ArtNet (hatefull protocol, especially in the V1 implementation), or the much more modern ANSI E1.31 - 2009 Entertainment Technology – Lightweight streaming protocol for transport of DMX512 using ACN.
Big fan of show control; shall send you a PM.