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

Dmx input esp dmx #28

Merged
merged 37 commits into from
Apr 6, 2023
Merged

Conversation

netmindz
Copy link
Collaborator

Add support for listening to DMX, just like e1.31 and art-net but over a wired connection.

Note: needs the newer ESP32 platform so only enabled for the _V4 builds

@netmindz
Copy link
Collaborator Author

Please test using the esp32_4MB_V4_S build target

@ewoudwijma
Copy link
Collaborator

ewoudwijma commented Mar 30, 2023

I see a compile error on:

image

Could you compile this separately and see what happens? Most likely over 100% flash size...

@softhack007 , should we change esp32_4MB_PSRAM_M to esp32_4MB_PSRAM_S (small) ? Or another way PSRAM is partitioned possible?

@softhack007
Copy link
Collaborator

Could you compile this separately and see what happens? Most likely over 100% flash size...

@softhack007 , should we change esp32_4MB_PSRAM_M to esp32_4MB_PSRAM_S (small) ? Or another way PSRAM is partitioned possible?

Yes, I think that's necessary, as we are regularly fighting with size on the PSRAM config. Another option (but incompatible with previous installs) would be to use another partition file for that config - it would only have 256Kb for file system (LittleFS), but adds about 300Kb of program space.

I'll look into the compile errors 👍

@netmindz
Copy link
Collaborator Author

Yeah could squeeze a little more space for the app Vs file system that would be great. Don't think we really need much filesystem space for most users do we?

@softhack007
Copy link
Collaborator

You can already do that for testing. I also gives you more space for debug build. Just uncomment line 263 in platformio.ini, and comment out line 262.

https://github.com/MoonModules/WLED/blob/922b8b69dbc0145b70be6c61cb73968dde254d0d/platformio.ini#L262-L263

Downside is, it leads to reformatting the flash, so you'll lose your config when uploading firmware with a different partitioning.

I'm just changing the PSRAM buildenv to "_S" - lets see if that's enough.

@softhack007
Copy link
Collaborator

softhack007 commented Mar 30, 2023

@netmindz technical question - are you relying on the SparkFun DMX driver (in wled dependancies folder), or using a different driver?

I'm hoping for the second, because the SparkFun driver does a few suspicious things (like timer interrupts on Serial2), and its not compatible with ESP32-S2 or ESP32-C3.

@softhack007
Copy link
Collaborator

softhack007 commented Mar 30, 2023

@softhack007 , should we change esp32_4MB_PSRAM_M to esp32_4MB_PSRAM_S (small) ? Or another way PSRAM is partitioned possible?

Just did both:

  • [env:esp32_4MB_PSRAM_S] downgraded from "M" to "S" (93% flash used)
  • [env:esp32_4MB_PSRAM_M] added, with smaller partition for file system (84% flash used)

see my latest commit e8d3712

@netmindz
Copy link
Collaborator Author

I'm using esp_dmx - which does use also uses interrupts and Serial2, I don't have any of the -S2, -S3 or -C3 board to test with sadly.

@netmindz
Copy link
Collaborator Author

Thanks, @softhack007 that's the builds all running green now.

@netmindz netmindz marked this pull request as ready for review March 30, 2023 18:36
@ewoudwijma
Copy link
Collaborator

Is this ready to merge? So can be part of the release ...

@netmindz
Copy link
Collaborator Author

netmindz commented Apr 2, 2023

I've tested and seems to work for me, was trying to get some other folk to test as well just to be sure.

As it's only enabled for the experimental _V4 builds it should be relatively low risk

@MoonModules MoonModules merged commit 6ef2857 into MoonModules:mdev Apr 6, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants