Sending Art-Net data with vanilla Max9 objects
Hello Max community,
Cycling74 added the rawbytes message to the udpsend object so now we are able to send Art-Net data with vanilla Max9 objects.
Here you can download a simple demo patcher:
https://github.com/telematique/Sending_Art-Net_data_with_vanilla_Max9_objects
Simply modify the following parameters:
- Your Art-Net IP address
- Update time (common value 25ms = 40Hz)
- Universe (0 to 32768)
Successfully tested on a Silicon Mac with an ENTTEC ODE MK2.
Maybe someone will find this useful.
Happy patching,
telematique

Nice share 🙌
sadam.udpSender is option for older max versions.
at least from max 5 up

Hello Telematique,
Great that you found a solution which works with native Max objects and share it with us.
Thank you so much. From my perspective this solution closes a big gap. Will check it out today.
No need for the "Beam for Max" external which is quite expensive and oversized for send a few Art-Net channels.
For older versions of Max and Mac Intel machines there is also the Art-Net external imp.artnet.controller from David Buttler.
Best,
Pelo
Super nice share!
How about receiving Art Net data?
B
parse received packet header same way as you format it for sending.
after matching 8 bytes for "Art-Net" 0x00 , next bytes can be matched to
get OpCode and all the rest
Hey @source audio, thx for the reply.
Some of this probably above my head but I managed to get a start!
Probably an easier way, I can receive the commands but as far as choosing subnet, universe on the receiving end is beyond me at the point!
Any help would so appreciated!!
Bill
receiving art-net data from remote devices is not simply loopback
of sent messages.
You might want to read art-net specs to get better picture.
what exactly do you need to receive ?
check status of controlled devices,
or something else ?
Source Audio, thx for the reply.
You can see my limitations here!
I'm very familiar with OSC but for DMX/ArtNET, I've always relied on David Butler's IMP objects to do basic things like changing presets and very limited control of parameters on my max patches from a Grand MA lighting desk or another media server.
The idea that it can know be done on vanilla Max objects is exciting.
I've just started to dig into the specs.
B
if I remember correctly, imp.artnet objects only sent dmx packets
no polling requests or anything like that.
imp.artnet.node also only listened to that.
if that is all you need, then it should not be difficult
to parse net, subnet, universe, number of channel and then data.
I don't use max 9 , that's why sadam ...

here you can pick net, subnet, universe to monitor

Wow, thank you, amazing.
I’m away from my machine but will check it out later.
Yer’ an amazing resource on this forum.
B
you are welcome.
In case you need other then ArtDmx data packet OpCode
now you know how to parse Art-Net header.
in docs they are represented in HEX
OpOutput used in your code 0x5000 = 50 hex or 80 decimal.
Hello Source Audio,
Thanks for sharing the receiver.
Now we are independend from third party externals :-)
Hopefully this solution is stable.
Here is the Max9 version of your patch.
Best,
Pelo
I tried it with Max 8 and it doesn't work( It works with Max 9).
Is there something different with udpsend in Max 9?
yes, in Max 9 updsend can send raw bytes. in Max 8 you can use sadam.UdpSender from the "Sadam Library" package