xLightsSequencer / xLights

xLights is a sequencer for Lights. xLights has usb and E1.31 drivers. You can create sequences in this object oriented program. You can create playlists, schedule them, test your hardware, convert between different sequencers.
GNU General Public License v3.0
570 stars 212 forks source link

ESPixelStick V3 Upload Outputs Fails #4743

Open bobreese opened 3 months ago

bobreese commented 3 months ago

When I try to upload outputs to my ForkinEye ESPixelStick V3 with it configured for DMX, the upload outputs fails. When doing the same for Pixels on the stick, upload outputs works as expected. When trying to test with output to lights, nothing happens. When using the DA E131 application, I have full control of the DMX moving head on all channels.

Something within XLights and having the DMX set seems to be broken. I have tried everything including switching between DDP and E131 (e131 seems to work best).

Xlights 2024.14.1 ESPS V3 - ESP8266 - Firmware Aug 17 2024.

DA E131 PixelStick Admin PixelStick Device PixelStick Home XLights Controller XLights Upload Outputs XLights Visual

patdelaney commented 3 months ago

@bobreese Did this work in previous versions?

bobreese commented 3 months ago

No sir.

patdelaney commented 3 months ago

@MartinMueller2003 have you tried this?

bobreese commented 3 months ago

I have talked with him through email about the Upload Outputs. He seemed to think it was something in XLights as uploads work in Pixel mode. I have not discussed the Output to Lights with him.

derwin12 commented 3 months ago

tools->package logs.

MartinMueller2003 commented 3 months ago

I have not had time to look at this from the xLights side.

bobreese commented 3 months ago

Here you go. xLightsProblem.zip

computergeek1507 commented 3 months ago

fix for V4 firmware with 6f1488a9f5c62ba1e0d9e6a46c269c096183761a

bobreese commented 3 months ago

Nice... Let me know when I can test it.

computergeek1507 commented 3 months ago

you can download the exe artifact from here and place the new exe into your C:\Program Files\xLights\ and run it. I would recommend rename/backing up the old exe first. https://github.com/xLightsSequencer/xLights/actions/runs/10509832610

bobreese commented 3 months ago

Ok, Upload Outputs works! Turning on output to lights does not. The stick does not see any traffic from XLights.

xLights_l4cpp.log

computergeek1507 commented 3 months ago

Im getting Packets on mine, I cant easily test the DMX output at the moment

image

bobreese commented 3 months ago

Thank you.... Seems DDP works E131 - Not so much....

bobreese commented 3 months ago

Response with DDP and output to lights is Very Fast!

computergeek1507 commented 3 months ago

Okay I'll try e131

cybercop23 commented 3 months ago

If it works with DDP and that's the preferred way, why would we do/support E131? Anything pushing to it does support E131.

MartinMueller2003 commented 3 months ago

While I agree the E1.31 is a protocol that the lighting community needs to squash, there are so many people using it that they would enter withdrawal if we took it away.

cybercop23 commented 3 months ago

While I agree the E1.31 is a protocol that the lighting community needs to squash, there are so many people using it that they would enter withdrawal if we took it away.

Why do you think that? All they have to do is change the config in xLigths from E131 to DPP. Why will that make them move way? Not trying to be harsh, jsut trying to understand. We tell folks in the Zoom room to set up anything new (or sometimes change config) to DDP, unless ofcourse the HW doesn't support it. That's not the case here.

MartinMueller2003 commented 3 months ago

I have had conversations were people were convinced that they had to configure their ports so that they aligned on universe boundaries. Then I have a devil of a time convincing people that there is no relationship between pixels and universes "you must use a universe if you are using pixels". Ugh. It took two hours to convince a guy that putting his F16 into flat mode is what he needed to do rather than assign a universe + offset to each port and then he believed that if he used an offset in the universe that he would get fewer pixels on his output port. My point is that people have been drinking from the Universe cup since they started in this hobby and the need to be weaned off of the kool aid in order to get them to DDP. I think a great step is to make DDP the default protocol in the xLights setup and only show univers mess if they are in an advanced mode.

FYI: Avoiding univers stuff is built into the ESP V4 UI. It only gets mentions once, no matter how many ports you have. There is a brick wall between the universe input settings and the port output settings.

cybercop23 commented 3 months ago

Gotch-ya. Well... then if they don't want to keep up with the times.. then they should light a candle and be done. Yeah.. we've seen a few. I have no patience when they come for help and don't want to listen. If they do that, they are on their own. Like the advanced idea.. but there's nothing there now to support it, so it will be new dev and so far can't think of anything else that will need this.

bobreese commented 3 months ago

If Scott decides to fix this E131 issue, so be it. If not, then Scott can close this ticket as I have a "working" controller. If it was not for him, Upload Outputs and DDP would not be working today. How about we leave this to him.

cybercop23 commented 3 months ago

I had already talked to him. This is not helping.

computergeek1507 commented 3 months ago

I tried E131 and xLights looks like it is uploading the correct data. It also looks like ESPixelStick firmware is receiving the data and displaying it on the Diagnostics tab. I am using the Beta 5 firmware and a LoLin32 Controller for my testing. I don't actually have a DMX device attached but the software side looks correct.

image

image

image

image

image

derwin12 commented 3 months ago

Is 510 required? image

bobreese commented 3 months ago

I will retest when I get home later. I am running the latest firmware. They created a Web Flasher app to update these. https://espixelstickwebflasher.from-ct.com:5000/ Must be connected to the USB port to work.

MartinMueller2003 commented 3 months ago

Beta version is way old. Use the most recent CI version for the latest DMX support.

computergeek1507 commented 3 months ago

Did something change in the firmware that changed the configuration JSON? If the API hasn't changed, it doesn't feel like an xLights issue.

MartinMueller2003 commented 3 months ago

No the configuration record has not changed. Some new elements have been added, but xLights simply returns them unmodified. The changes were around the GPIO pins used for DMX on a SPI interface.

bobreese commented 3 months ago

Using XLights I changed the configuration from DDP to E131. FPP connect worked, Upload Outputs worked. Tested with my test sequence that worked with DDP, No data received. Tested with XLights Test mode, No data received.

bobreese commented 3 months ago

Using XLights I changed the E131 Channels per universe from 510 to 512. Did the FPP connect and Upload outputs Still does not receive data.

bobreese commented 3 months ago

I have done some extensive testing by loading firmware going all the way back to V4 Beta4. In every version the E131 is broken when the controller is set to DMX. If the controller is set for Pixels on Pixel port 1, then E131 works. I believe this is an issue with firmware and not XLights.

Also note: The ESPS web flasher shows multiple versions over and over again when pulling down and looking for the versions listed. It would be nice if there was some other way to get the firmware and use the Espsflash tool.

I am adding a backup of all the json files currently being used on the stick. ESPixelStick_V3_0x200000_2072576.zip

MartinMueller2003 commented 3 months ago

I just manually configured E1.31 and a DMX output device. Diagnostics shows the data arriving just fine and the DMX responds as expected. If the statistics screen does not show packets coming in, then you are not getting data to the ESPS.

image

image

image

image

MartinMueller2003 commented 3 months ago

And packet errors == packets is normal for sACN View. It sends all packets with a sequence number of zero.

computergeek1507 commented 3 months ago

@bobreese you make have a configuration issue due to FPP in the mix. If you have a FPP proxy address set, it bridges the data through FPP and you need to enable Enable Inputs in the FPP input page

bobreese commented 3 months ago

@bobreese you make have a configuration issue due to FPP in the mix. If you have a FPP proxy address set, it bridges the data through FPP and you need to enable Enable Inputs in the FPP input page

Thank you sir but no. There is no Pi in this configuration. I am only using XLights to directly connect to the Stick when testing.

bobreese commented 3 months ago

Tested with da e131 application and the stick set for e131, all worked as expected.

da_e131.zip

computergeek1507 commented 3 months ago

I installed the latest ESPixelStick CI build and it seems to work, I flashed with the Java program. From xLights I am also get lots of packets error as well. image

bobreese commented 3 months ago

ESPixelStick CI Is that the Web Flasher version? Where do I download this CI version?

MartinMueller2003 commented 3 months ago

Latest CI build is always available at https://github.com/MartinMueller2003/ESPixelStick/releases

bobreese commented 3 months ago

Would the type of Architecture be the issue? I see your both set to ESP32. When I changed over to that I got 8 pixel ports and 1 Serial port. I have an ESP8266 device.... 1 port each.

MartinMueller2003 commented 3 months ago

Flashing the wrong platform version can cause all sorts of hidden issues. The GPIOs are one aspect. Support for PSRAM and other hardware is assumed by type of CPU at compile time.

bobreese commented 3 months ago

As XLights is not working for both FPP Connect and Upload outputs with DDP working, I am good with the functional aspect of the device and software. If you all wish to close this, I am good with it. If you wish to work further with making everything working.. Good. You choose, as I have what I need. I will however test anything you want or need tested.

MartinMueller2003 commented 3 months ago

I just tested xLights (2024_15) with E1.31 and then DDP configured. Upload Outputs - Works fine for both input settings. E1.31 data is received. FPP Upload. Fails for both types of input settings. It looks like the upload thread crashed.