Omnimaga

Calculator Community => Other Calc-Related Projects and Ideas => TI Z80 => Topic started by: alex10819 on March 03, 2011, 01:31:28 am

Title: Alex's TI-84+SE --> DMX512 control program
Post by: alex10819 on March 03, 2011, 01:31:28 am
Just wanted to show you guys the demo of this program I've been working on for a while. It allows you to control 64 channels of DMX512 through a TI84 (Needs the USB to output fast enough).

In case you don't know what DMX512 is, it's the protocol used to control stage lighting. This is completely written in TI-BASIC, with a small ASM lib to utilize the USB port efficiently.

Title: Re: Alex's TI-84+SE --> DMX512 control program
Post by: SirCmpwn on March 03, 2011, 01:33:39 am
Wow, that's actually quite cool!  Is it in assembly?
Also, may I suggest wrapping the video in [youtube] tags so that we don't have to leave to watch it?
Title: Re: Alex's TI-84+SE --> DMX512 control program
Post by: AngelFish on March 03, 2011, 01:34:14 am
Looks nice. Also welcome [back] to Omnimaga, Alex.
Title: Re: Alex's TI-84+SE --> DMX512 control program
Post by: alex10819 on March 03, 2011, 01:35:33 am
Wow, that's actually quite cool!  Is it in assembly?
Also, may I suggest wrapping the video in [youtube] tags so that we don't have to leave to watch it?

Done, and as it says in the first post, it's TI-BASIC with a small ASM lib. TI-BASIC can't send frames to the USB fast enough, and the lights interpret it as data corruption and ignore it.
Title: Re: Alex's TI-84+SE --> DMX512 control program
Post by: SirCmpwn on March 03, 2011, 01:38:30 am
Done, and as it says in the first post, it's TI-BASIC with a small ASM lib. TI-BASIC can't send frames to the USB fast enough, and the lights interpret it as data corruption and ignore it.
I should learn to read posts entirely :P very cool, will you be posting source at some point?
Title: Re: Alex's TI-84+SE --> DMX512 control program
Post by: alex10819 on March 03, 2011, 01:40:21 am
Possibly, it's not quite done yet. I'm still having issues with the frame rate being a little too slow, it causes a flicker in RGB enabled lights, and it occasionally goes insane and sets all the channels to full (YAY EPILEPSY)

I've actually used it in small shows at a local venue, but it doesn't quite replace a dedicated lighting console or PC.
Title: Re: Alex's TI-84+SE --> DMX512 control program
Post by: DJ Omnimaga on March 03, 2011, 01:41:40 am
That's impressive. It's also nice to see some BASIC was used in this. We would expect the entire program to be in ASM. I also like to see calculators used for non-conventional purposes  instead of games and math. It proves what they are capable of.
Title: Re: Alex's TI-84+SE --> DMX512 control program
Post by: SirCmpwn on March 03, 2011, 01:42:47 am
I'm amazed it was done mostly in Basic.

Spoiler For Did someone say epilepsy?:
:hyper::hyper::hyper::hyper::hyper::hyper::hyper::hyper::hyper::hyper:
:hyper::hyper::hyper::hyper::hyper::hyper::hyper::hyper::hyper::hyper:
:hyper::hyper::hyper::hyper::hyper::hyper::hyper::hyper::hyper::hyper:
:hyper::hyper::hyper::hyper::hyper::hyper::hyper::hyper::hyper::hyper:
:hyper::hyper::hyper::hyper::hyper::hyper::hyper::hyper::hyper::hyper:
Title: Re: Alex's TI-84+SE --> DMX512 control program
Post by: alex10819 on March 03, 2011, 01:46:04 am
Well, DMX is a fairly simple packet to generate. You have 512 channels, and each one is just one byte. So you're just broadcasting 512 bytes per frame, at a minimum of 100 frames per second. TI-BASIC can't quite push this out, but I hacked it into working by making the ASM lib loop what it broadcasted at 100FPS, and only changing one channel at a time. Since the program can only affect one channel at a time anyway, this means I'm generating maybe 5 FPS, and the ASM lib is broadcasting a loop for the rest without too much of a problem.
Title: Re: Alex's TI-84+SE --> DMX512 control program
Post by: z80man on March 03, 2011, 01:49:17 am
How are you connecting the usb to the light control. It seems like that would take the most effort to set up. Also did you ever think of porting this to axe. With a similar syntax to basic but insanely higher speeds you could get a better framerate.
Title: Re: Alex's TI-84+SE --> DMX512 control program
Post by: alex10819 on March 03, 2011, 01:53:28 am
It's just a miniUSB male to USB male cable connected to a USB female to USB male cable that I spliced together. My soldering skills are crap though :-/
Title: Re: Alex's TI-84+SE --> DMX512 control program
Post by: calcdude84se on March 07, 2011, 05:11:29 pm
Cool! :D
I have no use for this, but that's amazing and unconventional, like DJ said ;D
Title: Re: Alex's TI-84+SE --> DMX512 control program
Post by: jnesselr on March 07, 2011, 06:11:33 pm
What asm lib are you using? USB8x?
Title: Re: Alex's TI-84+SE --> DMX512 control program
Post by: willrandship on March 07, 2011, 06:26:26 pm
Sweet, if I get stage tech next year I might try it!
Title: Re: Alex's TI-84+SE --> DMX512 control program
Post by: jnesselr on March 07, 2011, 07:14:38 pm
Sweet, if I get stage tech next year I might try it!
I have stage tech now, and want to try it.  Alas, our light board is a bit more complicated than what a calc can drive.