PDA

View Full Version : DMX, Renard, sACN Tester



DynamoBen
01-09-2012, 01:07 PM
What about a DMX/Renard/sACN (or whatever else) tester? I've been situations where I would rather use a handheld controller instead of booting my laptop or I just want to isolate a problem, this could fill both problems.

I will try to keep things through hole, but I will likely include the SMT USB parts for those that don't want to buy a prop-plug. Initially I will focus on DMX and sACN support since those are easily testable for me and then widen the data type options to Renard or others.

This tester will have an LCD with key switches for menu navigation (sorry no touch screen). In a perfect world it would both receive and transmit each of the protocols. I also plan to implement some diagnostics information for each protocol (IE byte space time, MAB time, etc).

Since this will be my first battery powered project any advice or design ideas are welcomed.

Materdaddy
01-09-2012, 03:09 PM
Subscribed!

LabRat
01-09-2012, 03:12 PM
In my ever so humble opinion.. select your enclosure now. Design the board to match your enclosure.
I've got far too many "half done" projects because I could never get them finished enough to release.
(Plenty of nice boxes, including batter compartments, at mouser and digikey)

DynamoBen
01-09-2012, 03:15 PM
In my ever so humble opinion.. select your enclosure now. Design the board to match your enclosure.
I've got far too many "half done" projects because I could never get them finished enough to release.
(Plenty of nice boxes, including batter compartments, at mouser and digikey)

I was thinking about something like this (http://www.mpja.com/93in-X-62in-X-35in-Waterproof-Case/productinfo/17813+BX/), pelican makes a similar version that costs more. If that seems too big I will continue to look for cases.

Jack Stevens
01-09-2012, 03:17 PM
That sounds interesting.

A feature I'd like to see, if it's early enough to get requests in?

DMX start address setting, the type where you output a 0-255 level to set the controller address.

DynamoBen
01-09-2012, 03:23 PM
DMX start address setting, the type where you output a 0-255 level to set the controller address.

The challenge is there are a number of ways to do this, none of which follow the standard. Can someone collect all the methods and list them here so I can think about how to implement them?

LabRat
01-09-2012, 03:45 PM
Ahh you're thinking much more industrial than I was.

I was envisioning something in a case more like one of the HAMMOND ENCLOSURES (http://www.hammondmfg.com/1553colors.htm).

I've made a few false starts on this myself. I've got a basic design around a 16F688 (because I know we tend to have them lying around),
but never made it to the stage of having the board(s) made. Again.. I failed to design to the enclosure, so the design has sat idle for months now.

Looking forward to watching this thread.

DynamoBen
01-09-2012, 05:06 PM
Ahh you're thinking much more industrial than I was.

I was envisioning something in a case more like one of the HAMMOND ENCLOSURES (http://www.hammondmfg.com/1553colors.htm).


I think its because I really like that case but maybe I should pick an alternative case that is more accessible via digikey or mouser. Thanks for the suggestion I will continue to look into cases before I get too deep and regret it. ;)

Matt_Edwards
01-09-2012, 06:04 PM
The challenge is there are a number of ways to do this, none of which follow the standard. Can someone collect all the methods and list them here so I can think about how to implement them?
These are the ones I found when settling on the Sum method.

Start Address (Sum)
Start Address = Ch1 + Ch2

Start Address (Units)
Start Address = Ch1*100 + Ch2*10 +Ch3

Start Address (Modified Sum)
0 to 255
Start Address = Ch1 : Ch2=0
256 to 512
Start Address = Ch1 +256 : Ch2=1

DynamoBen
01-09-2012, 06:08 PM
These are the ones I found when settling on the Sum method.

Start Address (Sum)
Start Address = Ch1 + Ch2

Start Address (Units)
Start Address = Ch1*100 + Ch2*10 +Ch3

Start Address (Modified Sum)
0 to 255
Start Address = Ch1 : Ch2=0
256 to 512
Start Address = Ch1 +256 : Ch2=1

How do the devices know that what is being sent is an address and not real data? Start code > 0x00?

LabRat
01-09-2012, 06:33 PM
Devices typically use a "program" header/jumper/switch.

I suspect that is what we're talking about here.

DynamoBen
01-09-2012, 06:40 PM
Devices typically use a "program" header/jumper/switch.

I suspect that is what we're talking about here.

So in my code if I drop into a "device programming" mode and continuously send the string I should be good?

LabRat
01-09-2012, 06:43 PM
That is my understanding. Here's a pic of what I had been working on, but haven't followed through with.
As you can see... I didn't design for the enclosure, and even neglected to include mounting holes. (silly designer)

12860

Matt_Edwards
01-09-2012, 09:19 PM
Most units use the Link pack / switch option. I prefer the push button switch cause I am worried about losing link pack in the garden when doing changes on the fly.
Prior to RDM, I believe JEC came up with a sequence / method that will set the Controller into address setting mode. (Not sure if this has been published.) http://response-box.com/rgblights/2007program.shtml

erm213
01-09-2012, 09:20 PM
Sounds like an interesting project. I would be interested in one.

Erik

DynamoBen
01-10-2012, 01:31 AM
First design challenge: I would like to have one connector for Tx and another for Rx, and they need to be locked to that function. On a commercial DMX tester these functions are enforced by connector gender, the problem is an RJ45 has no polarity. Short of color, or using XLRs instead of RJ45s, I can't think of a way to make sure that the connectors don't get mixed up. Opinions?

Matt_Edwards
01-10-2012, 02:28 AM
First design challenge: I would like to have one connector for Tx and another for Rx, and they need to be locked to that function.
Why? just read the incoming port first before letting the user set the unit to TX. If you can read DMX or Renard, disable the TX function and issue an error message.

DynamoBen
01-10-2012, 02:51 AM
Why? just read the incoming port first before letting the user set the unit to TX. If you can read DMX or Renard, disable the TX function and issue an error message.

Two reasons. First I want a cable testing feature. Second I can do some interesting "man in the middle" diagnostics for troubleshooting.

Matt_Edwards
01-10-2012, 06:16 AM
Two reasons. First I want a cable testing feature. Second I can do some interesting "man in the middle" diagnostics for troubleshooting.
So you are now assuming I meant only one Connector. use two connectors ansd let the use decide which one is TX and Which one is RX. Before you enable TX, Enable RX and make sure the cannel is quiet.

DynamoBen
01-10-2012, 11:53 AM
So you are now assuming I meant only one Connector. use two connectors ansd let the use decide which one is TX and Which one is RX. Before you enable TX, Enable RX and make sure the cannel is quiet.

Actually I wasn't assuming that, what I mean is that from a hardware perspective what you are suggesting won't be an option. With that said this might not be a a set of features this community is interested in.

DynamoBen
01-26-2012, 12:34 PM
Update: I've started porting the W5100 code to the W5200 so I can use it for this project. Also I think I'm going to be creating two versions of this tester, a very feature rich version that is SMT for myself, and a more basic through-hole version for the community.

Because I do stage work there are a number of features I would like to see that would add expense and complexity to the project. So my current plan is to make the more complex version first and the make a "lite" version after that. The lite version should just amount to removing some hardware, swapping SMT for DIP, and removing some code objects.

CaptKirk
01-26-2012, 02:35 PM
Any ideas on a ballpark BOM cost?

DynamoBen
01-26-2012, 03:00 PM
Any ideas on a ballpark BOM cost?

No clue for either at this point, its still early. Here is what I'm thinking right now:

Both versions will use W5200 and an LCD display ($20) with switches to navigate menus.

The "lite/community" version will use the new WizNet module with the W5200 that's $20, there won't be any DMX isolation, power will likely be via 9V battery and wall-wart, it may have both a DMX in and out, and RJ45s for DMX. The problem with DMX In and Out is PCB mount RJ45s are typically female only, I might suggest people solder a male whip for one of them to keep In and Out straight. Also I'm hoping to source an inexpensive handheld case for this one to keep it small.

The "pro" version will be similar but I might not use the wiznet module, this one will have isolation, it will be AC powered with rechargeable batteries, a DMX cable check feature will be onboard, and 5 pin xlrs for DMX. This one will likely have a watertight case with latching cover, similar to a small Pelican case.

ukewarrior
01-26-2012, 03:12 PM
Nice !
Can't wait to see it.

DynamoBen
01-26-2012, 03:42 PM
Can't wait to see it.

Me too. ;)

CaptKirk
01-26-2012, 03:56 PM
Same here especially since I will be running a mixed environment of all three protocols this year.

Matt_Edwards
06-11-2012, 05:54 PM
Ben,
Did you take this further?

Sent from my GT-I9100 using Tapatalk 2

DynamoBen
06-11-2012, 06:00 PM
Ben,
Did you take this further?

Sure but it isn't finished yet. I've been focused on the highly featured "pro" version for myself, only after that was done was I going to do a community version. Unfortunately I need to back-burner it until mid-July.