bitfocus / companion-module-novastar-controller

This module controls some Novastar devices.
MIT License
16 stars 15 forks source link

Feature Request: MX40 Pro Support #27

Open TreborKutscher opened 1 year ago

TreborKutscher commented 1 year ago

Is it possible to add the mx40 pro led controller?

Also support variables output luminance in nits and color temprature in kelvin would be nice.

TreborKutscher commented 1 year ago

URL Protocols for COEX Controller.pdf

I was able to gather some information about the coex api. Maybe this is helpful

krisdahl commented 1 year ago

I'm working on the MX40 support now. The web server port is 8001, which isn't in the documentation.

The functionality will be somewhat limited. We can blackout, put to normal mode, adjust brightness, switch sources, recall presets, turn on HDR, dynamic boosting, and change color space.

The API is very different from past controllers, so it will be a little odd to implement in the existing module. It may make more sense to create a Novastar COEX module for the newest controllers.

Also, we can get lists of sources etc. from the API which we can't do from the old controllers, so that would be nice to implement in future.

TreborKutscher commented 1 year ago

Nice to know that you start working on mx40pro implementations l.

I also would agree on a Novastar Coex module. Also they now have a half 19inch six port conteoller for coex wich also would fit the coex api.

krisdahl commented 1 year ago

Yes the new KU20. I wrote the module that I think will be compatible with the KU20 (eg pulls the input list directly from the API), but I don't have one to test with so won't be 100% sure it works. I probably won't specifically advertise that model in the supported devices, but if you set it up as an MX40 it should work the same.

Hoping to have the code finalized and committed early this next week, waiting on a repo and some additional QA.

TreborKutscher commented 1 year ago

Hello Krisdahl,

long time no hear. I can now confirm that i have four mx40 in my facility and would be eager to test your module.

kman1898 commented 1 year ago

Any updates on when this might be implemented?

krisdahl commented 1 year ago

@kman1898 I've been working on it but there appears to be some issues with the API. I'm working with the Novastar tech team to try to figure out what's going on. I think the new firmware updates caused some issues.

Just for reference which processor do you have?

kman1898 commented 1 year ago

Understood. Thanks for the info. And the MX40 is what I have access to.

markbpx commented 1 year ago

@krisdahl Are there any particular commands which are having issues? I got Blackout, Normal, Freeze and Preset recalls working today using http PUT commands in companion. Using the commands in this document from Nova. I have the Nova tech team visiting our shop tomorrow so I am going to ask them to help me with Brightness as I can’t get that working. Is there anything I can do to help with the module? Cheers for working on it! / COEX-Series-Interface-API-User-Manual.pdf

markbpx commented 1 year ago

Forgot to mention I am running latest firmware on MX40 and latest version of companion

krisdahl commented 1 year ago

@markbpx I got it all working now, and I did begin working on a node module for the MX/COEX processors.

Brightness is on a per-cabinet basis (you have to tell it which cabinet IDs you want to adjust brightness). I'm working on having a function that will just send to all connected cabinets, should be pretty easy. Probably not an easy way to just do that with REST bulk commands in companion.

Here is the repo for the library I'm working on--I'll try to get some additional progress today and tomorrow maybe get a beta companion module up.

https://github.com/atomicinfotech/novastar-coex

markbpx commented 1 year ago

Thanks @krisdahl If you replace the cabinet ID string with 16777215, it will send the command to all cabinets. eg: {"idList": [ 16777215 ], "ratio": 0.1, "nit": 1000} will send brightness 10% to all connected cabinets. ID 16777215 can also be be used in any API command that requires cabinet ID, and will send the command to all connected cabinets. Just had NovaStarDavid here and helped me figure that out. Hope this helps!

krisdahl commented 1 year ago

Okay that helps a lot. Thanks!

On Thu, Jul 13, 2023 at 8:26 PM markbpx @.***> wrote:

Thanks @krisdahl https://github.com/krisdahl If you replace the cabinet ID string with 16777215, it will send the command to all cabinets. eg: {"idList": [ 16777215 ], "ratio": 0.1, "nit": 1000} will send brightness 10% to all connected cabinets. ID 16777215 can also be be used in any API command that requires cabinet ID, and will send the command to all connected cabinets. Just had NovaStarDavid here and helped me figure that out. Hope this helps!

— Reply to this email directly, view it on GitHub https://github.com/bitfocus/companion-module-novastar-controller/issues/27#issuecomment-1635213878, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAAW4NGPF26HBFGBUPKSGYDXQC365ANCNFSM6AAAAAASONBPVM . You are receiving this because you were mentioned.Message ID: @.*** .com>

markbpx commented 1 year ago

@krisdahl Awesome work getting the module up! Thanks! Do you know how I can go about testing it? I tried loading it into the companion dev but doesn't seem to show up. I am pretty new to it so might be doing something wrong!

krisdahl commented 1 year ago

Thanks @markbpx , I'm hoping to finish up bulk of it today.

Are you using version 3.0+? Make sure you set your module path like in step #5 here.

Companion Module Path Instructions

At this point I only have a couple of the commands integrated, but it is going fast now that I finished the first version of the novastar-coex library.

krisdahl commented 1 year ago

@markbpx and @TreborKutscher I did get a version up and running and tested. Let me know how it works for you.

https://github.com/bitfocus/companion-module-novastar-coex