Jump to content

PC Based DMX Control development


wodp

Recommended Posts

How have you got a constant frame rate for DMX on a pc?

I think one solution would be to eliminate the PC... if you had a module attached to the serial port which was generating the DMX at a specified refresh rate, you could just feed it the changes. True, crossfades would have to be split into steps at one point and fed to the box, but the actual data transfer rate would remain consistant.

Link to comment
Share on other sites

  • Replies 56
  • Created
  • Last Reply

As far as I see it, and I am probably wrong here!! The module I have sends DMX at a specified rate of xx so the line is always updated with previous values etc.

 

The problem is in sending the DMX to the module outside the PC, at some point if you use a PC you have to send the data at a particular time, if you used your app to make lights dance to music, and you just had one button to press and it would play the music and lights in sync, there is no guarantee that VB would send the data to the outside module at the right times.

 

I think this is the fundamental problem everyone faces, it is the PC as a whole in any program that can't keep time, not the DMX rate, or the rate that signals are sent out of the protocol convertor.

 

I may have misunderstood what my module does, but I am pretty sure it keeps things kosher, in that respect.

 

The infromation is here:

http://www.milinst.com/gemodules/genmods.htm#DMX

And their homepage is here:

http://www.milinst.com/

Link to comment
Share on other sites

As Brian says, producing a consistent DMX refresh rate on a PC is easily possible, even with a large number of universes. I strongly suggest you drop VB (.Net or otherwise) and use a real programing language like C/C++.

 

Martin

Link to comment
Share on other sites

How have you got a constant frame rate for DMX on a pc?

I think one solution would be to eliminate the PC... if you had a module attached to the serial port which was generating the DMX at a specified refresh rate, you could just feed it the changes. True, crossfades would have to be split into steps at one point and fed to the box, but the actual data transfer rate would remain consistant.

or attached to the USB port so the data went over faster.

 

OK, hands up time, as a few of you know I have been designing a USB-DMX 'dongle'. I have avoided mentioning it in this post or generally on the forum because it may, one day, be a commercial product. At the moment it is nothing more than a fully working prototype, of which I have built a few, for people to play with. I developed it after looking around and finding nothing decent out there. The milford unit is OK but, being connected on the serial port and as people are finding, it is difficult to get decent timing that way.

 

The decision I need to make is whether I am going to turn this into a real product to sell to the whole world, keep it as a 'hobby' product to sell to people I know or to publish it as a magazine article.

 

Note to Moderators - If you feel the any of the above is a commercial post then please snip accordingly.

Link to comment
Share on other sites

I would be very intrested in such a device, I would rather buy a made one than a put together kit or plans. I would also not be bothered if it was circuit board as the Milford one is if that saves on the cost.

 

I have noticed a lot of the USB dongles are hellishly expensive and you seem to only be able to get them with £xxxxxxx software to control them.

 

But then it all depends what you want to do with it and how much money you want to make and whether you have the software to go with it!

Link to comment
Share on other sites

OK, hands up time, as a few of you know I have been designing a USB-DMX 'dongle'.

Sounds familiar.

It's something I've been vaguely working out for a while - although the design started as a rigger's remote, adding USB support and a lot of scene memory in MMC format doesn't increase the hardware complexity very much, and if I stick DMX-in and 2 or 3-universe DMX-out it'll do almost anything you might want a gizmo to do. (With the appropriate firmware of course)

 

At the moment mine is just a collection of ideas and block diagrams, but with any luck I'll have a working prototype in two or three months.

 

Incidentally Brian, what USB mode did you use for your dongle? Is it an HID, or something else?

I've been vaguely considering setting mine up as a mass-storage device, but can't figure out where to find out the details of setting up a filesystem on one.

HID seems to be the easiest one to implement but you're limited to 8-byte packets as far as I can tell, which doesn't fit in very well with the 3 bytes per channel level internal memory organisation I've been considering.

Link to comment
Share on other sites

I've been working on a dongle too, mine started as serial, with the plan to move it to usb. Wouldn't happen to use a PIC with an USB endpoint by any chance would it? If so, how easy is it to use?

 

I'm currently concentrating on software though, which subject to negotiating license stuff/dealing with management you could maybe try with the interface. It not at a completed point yet though.

Link to comment
Share on other sites

Ever since I discovered the PIC chips with a built in UART and USB interface I'd had something like that on my eventual to-fiddle with list :D

 

To be honest, unless you've got some slick control software to back it up, I think a product like that is likely to remain of more interest to hobbyists. Of course, you could develop software, and maybe a simple usb control surface, to go with it, but the development costs may well push the prices up to the point where people might as well get a simple desk. That said, if you can put together a package suitable for controlling a school / church hall style rig using a cheap pc, then you might be onto something.

Link to comment
Share on other sites

That said, if you can put together a package suitable for controlling a school / church hall style rig using a cheap pc, then you might be onto something.

 

As someone who does church / school hall gigs all the time - I have never met a church or school hall with money so it would have to be very reasonably priced...

 

James

Link to comment
Share on other sites

Actual hardware cost is in the region of £30 or so for a straight USB-DMX dongle, most of that being etching the PCBs.

 

The hardware design is trivial, (thanks Microchip and Atmel!), so the only question is how much time and effort went into producing the software, and what value do you place on that?

Link to comment
Share on other sites

  • 3 weeks later...

Hope I don't go off topic, but....

 

Has anyone tried/thought to get MIDI out of a PC and into the input of a lighting desk to control the lights that way?

 

When I was at Uni we restored the Light Console in my avitar. Using MIDI keyboards, MIDI to USB converters, MAC Laptop, REALBasic software (Code by N. Hunt) outputed to LANBox. Worked a dream, but once crashed when it didn't do anythoing for a long time.

I want to recreate it in Visual Basic on PC, I have the REALBasic code but no idea how to get MIDI in and out of VB :** laughs out loud **:, so the plan is stuck!

Link to comment
Share on other sites

Has anyone tried/thought to get MIDI out of a PC and into the input of a lighting desk to control the lights that way?

Not exactly, but the sound designer for JCS used MIDI signals from a laptop to control the mutes on his desk. Apparently the mute grouping wasn't good enough, so he added several extras using the laptop.

 

As to writing the program - he did it in C++. I don't think it's possible in VB without writing a module in C or C++ to insert into the project, by which time you may as well do the whole thing in C++.

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.


×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.