FIXED?: [099 2017.6800] DMX In sACN not filtering Alt Start

sACN has alternate DMX512-A start codes (for some reason), the most common of which is ETC’s DDh start code for per-channel priority in addition to per universe. Though most manufacturers for now, even ETC in some cases, just discard these packets when listening to sACN. When sending sACN, some still send out occasional DD start code packets that are just filled with 0xDDs and this looks like all channels blinking if those packets are improperly interpreted as DMX data.

[url]ESTA

Basically, at a bare minimum, the DMX In CHOP should just discard any packets that don’t have 0x00 in the 125th octet (the byte JUST before the first DMX value) in the packet. Or for more future-proofness, at least give us the ability to filter packets based on different start codes.

You can see it happening using the free sACNView program sacnview.sourceforge.net/ where every second it looks like every channel snaps to 100 for one frame. Those packets had a start code of 0xDD if you look at them in wireshark.

trail0xDD.png
Also for some reason the DMXin CHOP gives me a Warning when receiving sACN data from sACNView: “Message clamped to 0 values.” Not sure if that’s related to these 0xDD packets or something else. I’ll have a chance to try this new CHOP functionality on Monday with a couple real lighting consoles, so I’ll report back if I find any other weirdnesses.

Thanks a bunch for adding this functionality, this is the last step to making TD a true lighting / pixelmapping powerhouse in my opinion. I plan on talking all my LD friends’ ears off about it (more than I already have…)

Hey,

thanks for reporting this, we are looking into it.

Cheers
Markus

Just a bump, still not working in 2017.5540.

Also, I discovered, in playing with the bits of the UDP packets in the other bug I just posted, that the thing that is causing the DMX In CHOP to say “Warning: Message Clamped to 0 values.” when getting sACN from places like a lighting console or sACN Viewer’s output mode is that TD is expecting incoming packets to have 0x0200 in octets 123-124 of the packet, so when it gets a packet with the correct 0x0201, it thinks the packet is going to be one byte too long, and thus throws up that error message.

So getting it to discard packets with non-zero start codes and not throw the error when the “Property value count” is correctly indicated at 0x0201 would fix all of the problems with the sACN receiving functions of the DMX In CHOP in regards to production lighting consoles (as far as I know)

Thanks!

So all the other bugs with sACN in and out seem to be fixed, the only thing that may or may not still be a bug is that packets with alternative start codes are still showing up in the DMX In CHOP in sACN mode, but they can be filtered out if you set the DMX In CHOP to Format “Packet Per Channel (All)” instead of “Packet Per Channel (Latest)” and then put a select chop afterwards that selects only channel “net0subnet0uni1_0” for the first universe’s DMX stream.

If you wanted the otherwise useless alt-start-code packets that very few lighting systems spit out (Only sACNView and any ETC system as far as I know), you could set up another select / replace (or hold I guess) CHOP trail to grab channel “net0subnet0uni1_1” and treat that as your per channel priority.


I don’t know if that is the intended way of filtering out the alt-start-code packets for the foreseeable future, but it’s good enough for me, especially since, when using with an MA2 system, you don’t need to do this, since MA2 does not spit out per-slot priority packets.

I’ll leave this post and maybe put something in the wiki if I can about this technique for anyone google searching for “TouchDesigner ETC Eos / Gio / Ion / Nomad Streaming ACN sACN DMX glitching jumping to 100 a hundred DMX In CHOP”…

Thanks for digging so deep on this Peeet.

Hi Peeet,

We’ve added a “Start Codes” parameter to the DMXIn CHOP available in the next Experimental build, 2018.20120+

The parameter will allow you to specify a list of accepted start codes, and will filter out any sACN packets with a start code not in the list. By default it will accept all start codes.

We just posted 2018.20310 with a new Start Code parameter in the DMX In CHOP, plus a bunch of DMX fixes which are mentioned in the release notes.

Download page