Artemis-RGB / Artemis

Provides advanced unified lighting across many different brands RGB peripherals
https://artemis-rgb.com
Other
969 stars 69 forks source link

Device layouts - Artemis won't unload wrong device layouts #616

Open Cheerpipe opened 3 years ago

Cheerpipe commented 3 years ago

If a wrong device layout is loaded, it won't be unloaded when reseting/removing layout setting. Device LED IDs list will also be empty until artemis is restarted.

Steps to reproduce:

1.- Load a good layout. All works as expected. 2.- Load a wrong layout (with wrong leds Ids). Layout is loaded but led ids will dissapear. 3.- Load the good layout again. Led ids list is still empty. 4.- Remove the layout. Layout is still loaded and led ids is still empty.

RobertBeekman commented 3 years ago

Fixed in fe933f60e8f7290fb400dcddef754c2f901f9416 I think, please try it out

Cheerpipe commented 3 years ago

It still happens

https://media.giphy.com/media/b9aND66ajuIQn4u6gg/giphy.gif

RobertBeekman commented 3 years ago

Can you ZIP up the layouts so I can test myself?

Cheerpipe commented 3 years ago

Sure.

I did some test with logitech device provider and layouts are loading/unloading/re-loading ok for my keyboard. Might it be a device provider related bug ? (OpenRGB)

PD: I uploaded the layouts from the video but it happens with all my layouts/devices (OpenRGB)

Layouts.zip

EDIT:

Even my yeelight device provider works well now when unloading/reloading layouts.

Cheerpipe commented 3 years ago

More weird behavior with OpenRGB. Idk if it is a provider or artemis bug.

Edit: This one is a missing dispose in the openrgb device provider.

https://user-images.githubusercontent.com/972765/121712625-f1cd9d00-caa9-11eb-890a-7c98b0ddc294.mp4

RobertBeekman commented 3 years ago

How is it now? I noticed an issue with how the Logitech device provider was unloaded and fixed that

Cheerpipe commented 3 years ago

Device is unloading/loading ok. The problem appears to be more on the Artemis side. I did an additional test changing layout and reloading device plugin device provide feature manually and it worked.

Uploaded a video in discord (PD: It also crashed one time)

RobertBeekman commented 3 years ago

I made some more improvements but I can't reproduce this with the layouts you sent me. Are you sure they are the 'bad' ones? They all contain LEDs

RobertBeekman commented 3 years ago

Any idue what the status is on this @Cheerpipe?

Cheerpipe commented 3 years ago

Cant get it to work in a consistent way.

https://www.youtube.com/watch?v=V0I0kbM7VtY

1.- It works the first time but layout is not refreshed. 2.- It make my device disappears the second time i remove a layout

I can't disable device provider (DMX) after the second time by the way

https://user-images.githubusercontent.com/972765/130829005-cf171dae-cd4e-4a49-87e5-43ebbf58d262.mp4