# HTML to DMX



## JohnG (Nov 15, 2010)

Does anyone have any ideas how one could use some sort of coding and then take HTML coding to create some kind of webpage that could be opened on a computer and then have access to control over a DMX network? So the HTML could output in a format that would output in a DMX format.
Any ideas?


----------



## jstroming (Nov 15, 2010)

Don't know if this is a fun project for you, or if you're just trying to remotely control a lighting system from a different location, but I use LogMeIn with great success when checking up on video editor's work (I do alot of video). I can be in LA and make changes to the timeline on a system in NY, etc. LogMeIn is free (of course you can pay for enhanced features) and you could very easily log in remotely via the internet and control the PC light show, if thats what your going for.

I used to work with this crazy LD who would run the show from his laptop in his hotel room but have his assistant sit by the console just in case. He was a big Jets fan and refused to miss the game on Sunday haha. Then when they came out with those 3g wireless cards he would sit FOH with his Jets jersey, cap, and foam finger (yes, i know) and watch the game from his laptop. He certainly had his priorities in order!!


----------



## caithnard (Nov 15, 2010)

HTML is a markup language, not a programming language. You're going to have to use a programming language (like Javascript) in your webpage. Not sure about how the actual coding would work though...


----------



## JohnG (Nov 15, 2010)

Not what I was going for at all, I was aiming for something where HTML could output DMX. Is this possible? Using a dongle could one make HTML that would output in a DMX usable format to control a lighting system? Would one have to use C++? I would much rather use HTML though.


----------



## MNicolai (Nov 15, 2010)

Short of mastering a few different languages, acquiring the hardware, and putting all of the different pieces of the puzzle together to form your own PC lighting controller, you won't have any easy time reinventing the wheel.

Let's dial this back a little bit. What's the exact problem you have that you're trying to solve?


----------



## Footer (Nov 15, 2010)

Many lighting consoles has remotes that you can use via a web browser. Strand's newest consoles do this along with Chamsys Magic Q (if you are using branded chamsys hardware).


----------



## icewolf08 (Nov 15, 2010)

If your goal is to create a web based lighting controller, this is probably possible. However, you are not going to accomplish it only using HTML. As has been noted, you will need to incorporate a real programming language like Java.

You would need a computer to act as a web server in your venue that is capable of outputting DMX or ArtNet or some other lighting protocol. Then you would need to write the program that essentially is your lighting console software. You would have to make sure that it can communicate properly with your output hardware, and also it would have to be a web-app.

All things considered, it is probably easier to set up a computer running MagicQ and then VNC into the machine to control it remotely. If you own a Mac and run MagicQ on a mac, they have built in screen sharing (though I would imagine windoze does as well). This solution would probably be much easier and more stable than reinventing the wheel and writing your own software.

In any case, if you have any intention of running a show over the internet, I would advise against it. There is latency inherent in internet connections, and there is always the possibility of data loss, so this would be a very unreliable way to run a show. For tech purposes and for focus and other on stage work where a remote might be useful, this is not a bad solution. However, if it is show critical, you should have someone sitting at the console/controller.


----------



## Van (Nov 16, 2010)

The Horizon System had this capabilty. In 1997 I believe. There were a number of venues I could port into and double check programming on Horizon and Vista systems. In addition Horizon Gold used to support the production of Hot pages. basically your plot with information from Lightwright, Vectorworks, wysiwyg, etc. you could basically point and click your way through the entire process remotely. An Agoraphobics Dream!


----------



## JohnG (Nov 17, 2010)

Ok so here's what I'm going for, I knew that I need to go in a programming languauge I want to know if anyone has dabled in say something like HTML I know and I like HTML but, yes you all are very right I should be looking at Ruby or Java... I have no idea where to start on this project though. So pretty much this is a step that I cannot quite get in a larger project. 

Larger project: Create a prototype lighting board that would use real time images as well as being able to sense based on past photos of where lights are focused on the stage. This would then bonce off the paperwork from vectorworks and lightwright and figure out which lights/channels/dimmers are in a certain area. The designer would then be able to click on a area of the stage, and a list of lights/colors/effects whichever the user specified would come up. The designer could select it and select a leval. It is a way of boards that would allow the designer to watch the stage through an image and eliminate the board op. I also understand that I will have to figure out a better way to translate the true colors of the light to the camera and moiniter but am figuring that out slowly. So that's about it. 
... Anyone want to help? haha

-John


----------



## cpf (Nov 17, 2010)

Not a job for HTML is all I can say.


----------



## Pie4Weebl (Nov 17, 2010)

JohnG said:


> Ok so here's what I'm going for, I knew that I need to go in a programming languauge I want to know if anyone has dabled in say something like HTML I know and I like HTML


Call me crazy, but I think you really don't know HTML if you think you can make programs with it. HTML is a "markup language" it exists merely to output a formatted display. It can't do any math, or any processing, or store variables, or any other basic programming functions. 

You are in HS, do they have any computer science classes you could take, Java perhaps. See if you like that, then go to college for it, and then maybe after that you could re attempt your project.


----------



## Footer (Nov 17, 2010)

How you get DMX to respond to this system is the tip of the iceberg compared to what is ahead. I don't want to see this thread turn into the usefullness of this concept or anything like that, so I'm not going to touch that. 

If you want to do this, its going to take some real programming skill. Go talk to your computer programming teacher or the youngest math teacher on staff if you don't have a programming teacher. Start learning basic programming. The software you described could easily be a capstone project at the end of a 4 year CS program. Its not something that any language made to run a website would be able to handle.


----------



## Pie4Weebl (Nov 17, 2010)

Footer said:


> If you want to do this, its going to take some real programming skill. Go talk to your computer programming teacher or the youngest math teacher on staff if you don't have a programming teacher. Start learning basic programming. The software you described could easily be a capstone project at the end of a 4 year CS program. Its not something that any language made to run a website would be able to handle.



jinx, I think you owe me a coke?


----------



## DuckJordan (Nov 17, 2010)

Pie4Weebl said:


> jinx, I think you owe me a coke?


 
As others have said this is a huge project, and if you plan on getting the board out of this picture then you are going to have to learn the basics about Computers such as how specific signals are sent along a wire. Understandably you are handling this in steps but i think your taking a larger step than you feel you are. As others have suggested take up a class on programming whether its in C# or in java or some other language that's where you will want to start.

Since you only seem to understand the basics of HTML you may find that programing is not something you want to take up, requires a very large understanding of concepts that most grad students taking the class here at my university have issues with.


----------



## Van (Nov 17, 2010)

everything you described is everything that has been done, if I understand what you posted. Horizon, using WYSIWYG, and would allow you to "watch' everything in 'virtual real time' as you programmed and ran the show. It allowed you to covert your light plots into HTML sheets which would then act as an interface for programming, and focusing a show. So you want to re-invent a horse ?


----------



## icewolf08 (Nov 17, 2010)

JohnG said:


> Ok so here's what I'm going for, I knew that I need to go in a programming languauge I want to know if anyone has dabled in say something like HTML I know and I like HTML but, yes you all are very right I should be looking at Ruby or Java... I have no idea where to start on this project though. So pretty much this is a step that I cannot quite get in a larger project.
> 
> Larger project: Create a prototype lighting board that would use real time images as well as being able to sense based on past photos of where lights are focused on the stage. This would then bonce off the paperwork from vectorworks and lightwright and figure out which lights/channels/dimmers are in a certain area. The designer would then be able to click on a area of the stage, and a list of lights/colors/effects whichever the user specified would come up. The designer could select it and select a leval. It is a way of boards that would allow the designer to watch the stage through an image and eliminate the board op. I also understand that I will have to figure out a better way to translate the true colors of the light to the camera and moiniter but am figuring that out slowly. So that's about it.
> ... Anyone want to help? haha
> ...


 
We always have people who want to re-invent the wheel and ultimately there is nothing wrong with that. If we didn't have people doing that we would never get new technology. That being said, to build a program like you describe, from the ground up seems like not the best use of your time. Unless you think that you are going to go into computer science or some related field, then what is the motivation? There are plenty of technologies and software that are available for minimal cost and minimal amounts of labor to set up that can easily accomplish what you want to do.

As I mentioned before, if you had a computer running MagicQ as your controller and paired it with visualization software and then had a second computer, you could VNC into the main machine and manipulate the lights. In theory you could do it from home if the host machine was connected to the internet.

I do think that one of the real problems you would run into with the and product and it's uses as you described it is marketability and practicality. Even if you had the best rendering software and a live HD video feed from the theatre, there is no substitute for actually sitting at the tech table looking at the lights. Wen a designer is programming a show they don't want to be looking at a screen, they want to be looking at the stage and how the light plays on the scenery and the people. There really is no comparison to seeing it live and in person. The biggest reason that we have board-ops in this industry is so that the designer is free to look at the work they are doing as opposed to being tied to a computer and screens.

Now, if this is a project that you want to pursue, that is great, go for it. Don't let any of us dissuade you from trying to do this. We are generally a stubborn industry, we like tried and true over shiny and new, but someone has to come up with new ideas sometimes! However, I would echo what others have said, you are going to need some serious training in real computer programming. This isn't going to be just another web-page to bang out. While part of the project may include a web interface, the bulk of this is going to be software that controls the lights (stores cues and levels and submasters, etc.), software that handles the live video, software that handles the visualization, etc. All things considered, this is a project that probably would need at least two host computers to be networked or one really powerful server. This project goes far beyond what a simple web-app is really capable of


----------



## JohnG (Nov 17, 2010)

Pie4Weebl said:


> Call me crazy, but I think you really don't know HTML if you think you can make programs with it. HTML is a "markup language" it exists merely to output a formatted display. It can't do any math, or any processing, or store variables, or any other basic programming functions.
> 
> You are in HS, do they have any computer science classes you could take, Java perhaps. See if you like that, then go to college for it, and then maybe after that you could re attempt your project.


 
Then I will call you crazy. I know HTML I want to use it to be able to complete one part of the project. I will be deploying an actual program, but I want HTML to be able to point to the program, then the program to point to DMX. So before you make these kind of accusations maybe you should ask.  I mean no disrespect but next time. Thanks 
-John


----------



## JohnG (Nov 17, 2010)

I am a Computer Science major actually.
So I am learning these things, yes currently this whole project is a bit more than I can chew, however, maybe a bit I'll have figured something out that works. I'll talk to you again about this in a few years.


----------



## Chris15 (Nov 18, 2010)

JohnG said:


> Then I will call you crazy. I know HTML I want to use it to be able to complete one part of the project. I will be deploying an actual program, but I want HTML to be able to point to the program, then the program to point to DMX. So before you make these kind of accusations maybe you should ask.  I mean no disrespect but next time. Thanks
> -John



Whilst being as tactful as I can about this, I think you are in no position to be saying that people should ask; refer to your #4 post in this thread:


JohnG said:


> Not what I was going for at all, I was aiming for something where HTML could output DMX. Is this possible? Using a dongle could one make HTML that would output in a DMX usable format to control a lighting system? Would one have to use C++? I would much rather use HTML though.


 
So it's time for everyone to remember CB's Core Values:

> The cornerstone values of our community is mutual respect between members. We pride ourselves in having a mature, civil, yet fun atmosphere where members are able to debate their differing opinions without resorting to flame wars . Our community enthusiastically welcomes new members, and we are always eager to offer helpful advice to both the novice and seasoned veteran alike.



Keep this topic out of flame territory and focussed on the matter at hand, software, and I nor any other mod won't be closing it. If there is any further interpersonal conflict of any form, expect us to take action...


----------



## n1ist (Nov 18, 2010)

To be honest, this is not a bad project for learning GUIs, serial I/O, and inter-process communications I did something similar (though not with an HTML front end) when I was learning MFC programming years ago. I ended up with a 2-scene board with a cue list and patches, and used it for a few dance recitals before I upgraded.

I would start by getting a USB to DMX dongle with a published data format, such as the Enttec USB Pro (or even one of the clones from the DIY Christmas lighting guys, but be careful since those only support a subset of the Enttec command set). Then figure out how to get your back-end program to talk to your serial port and control the dongle. Next, figure out how to get the update information from your GUI to your back-end program, and finally, create the GUI.

As for what language to use, any one that can interface to your GUI on one end, and to the serial or USB port on the other would be fine. 

/mike


----------

