Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Art-Net Improvements v2 #179

Merged
merged 16 commits into from
Nov 18, 2024

Conversation

troyhacks
Copy link
Collaborator

@troyhacks troyhacks commented Nov 7, 2024

Fully implemented new Art-Net codebase.

Improvements:

  • AsyncUDP instead of WiFiUDP so it's much faster
  • Support for professional Art-Net gear with many outputs
  • Color-order remapping
  • ESP32-P4 SIMD assembly optimization for brightness calc, a bit faster
  • Full GUI support for all settings
  • GUI guidance for setup:

chrome_lfXtWhKwfN

@troyhacks troyhacks added the enhancement New feature or request label Nov 7, 2024
@troyhacks troyhacks self-assigned this Nov 7, 2024
wled00/bus_manager.cpp Outdated Show resolved Hide resolved
wled00/udp.cpp Outdated Show resolved Hide resolved
@troyhacks
Copy link
Collaborator Author

GUI demo:

WhatsApp.Video.2024-11-07.at.8.42.54.AM.mp4

@troyhacks
Copy link
Collaborator Author

@softhack007 Checks all green - your fix was what it needed, thanks!

@softhack007
Copy link
Collaborator

@troyhacks would it make sense to add proxy mode support fixes from

Just if that's not a corner case which makes the code complicated or unstable ....

@troyhacks
Copy link
Collaborator Author

@troyhacks would it make sense to add proxy mode support fixes from

Just if that's not a corner case which makes the code complicated or unstable ....

That's unrelated to my code. I'm doing Art-Net output here, not input.

I guess you could consider it related if I was sending Art-Net data to another WLED board with DMX and expecting it to proxy to wired DMX, but that's an edge case and should be considered separately. (I think that other PR is fine, but @netmindz might have opinions.)

wled00/bus_manager.cpp Outdated Show resolved Hide resolved
wled00/bus_manager.h Outdated Show resolved Hide resolved
wled00/bus_manager.h Outdated Show resolved Hide resolved
wled00/bus_manager.cpp Outdated Show resolved Hide resolved
wled00/udp.cpp Outdated Show resolved Hide resolved
wled00/udp.cpp Outdated Show resolved Hide resolved
wled00/udp.cpp Outdated Show resolved Hide resolved
@troyhacks troyhacks requested review from softhack007 and removed request for netmindz November 10, 2024 18:37
@troyhacks
Copy link
Collaborator Author

@softhack007 All changes you flagged in the review have been implemented, including the free().

Should be good to merge.

@@ -314,6 +338,7 @@
gId("lc").textContent = sLC;
gId("pc").textContent = (sLC == sPC) ? "":"(" + sPC + " physical)";


Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

additional blank line could be removed

wled00/udp.cpp Outdated
static const size_t ART_NET_HEADER_SIZE = 12;
static const byte ART_NET_HEADER[] PROGMEM = {0x41,0x72,0x74,0x2d,0x4e,0x65,0x74,0x00,0x00,0x50,0x00,0x0e};
static const byte ART_NET_HEADER[12] PROGMEM = {0x41,0x72,0x74,0x2d,0x4e,0x65,0x74,0x00,0x00,0x50,0x00,0x0e};
static uint_fast16_t framenumber = 0;
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks like this is never used?

@netmindz
Copy link
Collaborator

Looks good to me

@softhack007
Copy link
Collaborator

@troyhacks some problem with the UI - i cannot save the LED settings page

image

i'll see what can be done ...

@softhack007
Copy link
Collaborator

Thanks 👍 I'm merging now.

@softhack007 softhack007 merged commit fb259d1 into MoonModules:mdev Nov 18, 2024
38 of 39 checks passed
@troyhacks troyhacks deleted the Art-Net-Improvements-v2 branch December 10, 2024 14:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants