Page 1 of 1

Artnet packet generation

Posted: Fri Jan 27, 2023 11:06 pm
by MatteLe
Hey Mappers,

I have this scenario: 2 fixtures next to each other, mapped to 2 different universes (unicast with sync), content is line moving through them, 1 after the other. With wireshark I can see that not on every frame both of the dmx packets were sent before a sync. I assume this is intended behaviour when the content not change, maybe to save bandwith, can you confirm this?

My question is: can you tell me, in which (frame or sync) interval I can assume a full transfer of all activated universes, regardless of changed content? In Wireshark it looks like this happens on every second frame...

My background is development of Artnet receivers, mainly intended to work with MM. So it would be nice to know how MM behave to adjust my firmware accordingly.

Thanks in advance,
Best, Matze

Re: Artnet packet generation

Posted: Fri Feb 03, 2023 12:27 pm
by MatteLe
No one? I append a example project and the resulting wireshark capture as a screenshot, where you can clearly see that not every universe is transmitted before every sync..

Re: Artnet packet generation

Posted: Tue Feb 07, 2023 11:35 am
by mad-matt
Hi,
Sorry for the late reply.

ArtNet spec says if nothing changes in a universe, a minimum of one packet each 4 seconds should be sent. For compatibility with some hardware, we reduced this timeout to half a second.
We're not supposed to send unchanged universes before each ArtSync. Let me know if you have another information.

You can limit the output FPS from MadMapper Preferences / DMX - "Maximum FPS". If doing video at the same time, MadMapper generally runs at 50/60 FPS while any device doing ArtNet->real DMX is generally limited to 40 FPS, so MadMapper will update the universe 60 times per second but ArtNet sending can be limited this way. Pixel drivers should be able to run at higher framerate, which is much better, in this case users should just set max FPS at 60.

There is an hidden setting to set the min FPS (in this case in min FPS == max FPS, MadMapper will always send all universe and then a sync packet) but this is not supposed to be used since we use network bandwidth with unchanged universes;
But if you wan to test (the artNetOutputMaxFps is the setting tou can change from preferences, the other setting is not presented):
Windows:
REG ADD HKCU\SOFTWARE\Garagecube\MadMapper /f /v artNetOutputMaxFps /t REG_SZ /d 60
REG ADD HKCU\SOFTWARE\Garagecube\MadMapper /f /v artNetOutputMinFps /t REG_SZ /d 60
macOS:
defaults write com.garagecube.MadMapper artNetOutputMaxFps 60
defaults write com.garagecube.MadMapper artNetOutputMinFps 60

Cheers
Matthieu - MM team

Re: Artnet packet generation

Posted: Tue Feb 07, 2023 12:39 pm
by MatteLe
Thank you, this is very helpful.

Re: Artnet packet generation

Posted: Sat Dec 09, 2023 12:56 am
by arneboe
The proposed solution does not seem to work.
I have set the registry keys (and restarted madmapper) but i can still see that madmapper is not sending all universes in wireshark. And the leds are still flickering. Was this feature removed in recent version? I am running madmapper 5.5.1

Re: Artnet packet generation

Posted: Mon Dec 11, 2023 11:28 am
by mad-matt
You're right, min FPS was not working in some situations. We fixed that for 5.2.2 release.