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

AmbientLight effect sensitivity/speed adjustment parameter #71

Closed
ccelik97 opened this issue Jul 7, 2022 · 3 comments
Closed

AmbientLight effect sensitivity/speed adjustment parameter #71

ccelik97 opened this issue Jul 7, 2022 · 3 comments

Comments

@ccelik97
Copy link

ccelik97 commented Jul 7, 2022

Hi. Props to you for putting this program together, it works fine on my Legion 5 (15ARH05H).

It's working fine overall but, at times the program is reportedly using 8%+ CPU including while not much/anything is going on the screen.

So, to minimize the load on the CPU I think it's be nice to have a parameter to set the rate of the screen reading so that we can have it respond quick enough to our preferences while also saving some system resources. I know, these are beasty machines and all but for one I'd be fine with even half the detection rate/reaction time knowing that the program isn't doing that at times 8%+ processing anymore. :D

@ccelik97 ccelik97 changed the title Suggestion: A sensitivity/speed adjustment parameter for AmbientLight effect AmbientLight effect sensitivity/speed adjustment parameter Jul 7, 2022
@4JX
Copy link
Owner

4JX commented Jul 28, 2022

Yeah the screen capture code could do with some tuning, I'll see about showing an FPS option while the effect is active. (Or just tying the poll rate to the speed one, but that's probably too unintuitive).

@ccelik97
Copy link
Author

ccelik97 commented Aug 1, 2022

A FPS parameter would be nice and you could also make the color ranges a bit wider (for example cut down the brightest ranges, leave the dimmer/less saturated ones) so that it wouldn't look choppy at lower FPS/sensitivity rates. As in just throwing some more ideas in in case something clicks with you. :D

4JX added a commit that referenced this issue Nov 5, 2022
4JX added a commit that referenced this issue Nov 5, 2022
* Add support for 2022 keyboards

* Move effects to separate files

* Pass the generated profile as-is

* Smooth wave code dedup

* Fix #78

* Update the cli code

* Update deps

* Unify the logic for distinguishing effects that take input colours

* Make speed reach beyond stock

* Append json extension when saving a profile

* Change wording from preset to profile

* (Hopefully) Reduce resource usage for Fade

* Allow custom fps for AmbientLight

Solves #71

* Remove restriction for Temperature on Windows

* Finishing touches for 0.18.0

* Fix cli speed cap

Co-authored-by: Mario Bălănică <mariobalanica02@gmail.com>
@4JX
Copy link
Owner

4JX commented Nov 5, 2022

Implemented in v0.18.0

@4JX 4JX closed this as completed Nov 5, 2022
4JX added a commit that referenced this issue Jun 22, 2023
* Add support for 2022 keyboards

* Move effects to separate files

* Pass the generated profile as-is

* Smooth wave code dedup

* Fix #78

* Update the cli code

* Update deps

* Unify the logic for distinguishing effects that take input colours

* Make speed reach beyond stock

* Append json extension when saving a profile

* Change wording from preset to profile

* (Hopefully) Reduce resource usage for Fade

* Allow custom fps for AmbientLight

Solves #71

* Remove restriction for Temperature on Windows

* Finishing touches for 0.18.0

* Fix cli speed cap

* Fix ambient not respecting fps setting

Also update its dependencies

* Nix build system

* Fix execution issues on nix build

* Kinda fix shell env

* Nuke gui code

* Rework the CLI

* Fix #98

* Clamp AmbientLight fps

* Move driver to its own crate

* Update hidapi

* Better error handlng

* Refactor the zone representation

* Test UI

* #96 and misc README changes

* Pass CLI instructions to the GUI

* UI Progress

* Probably final layout

* Allow starting the GUI hidden

* AmbientLight FPS control

* In-memory profile management

* Error modals

* Update flake.nix

* Remove custom effect (unused) speed

* AmbientLight stuffs

* Profile and effect load/save management

* Update mod.rs

* Update workflows

* Windows fixing

* Linux dep fixing

* Move GUI startup code to a separate function

* Cli fixes

* Fix speed range crash

* Switch to spaces

* Change highlight color

* Update version

* Update cli.rs

* Clippy

* Switch to upstream clap

* Ambientlight improvements

* Update workflows

* Update checking capabilities

* Clippy

* Fix typo in update check code

* Revert using run-vcpkg in workflows

* Fix speed range issue

* Less convoluted settings

* Update workflows

* Update readme

* Use rdev

* Update compile-rust.yml

* Update compile-rust.yml

* Misc cleanup

* Better Ripple

* Revert to libusb

* Feature parity with old UI

* Update workflows

* Re include libusb in workflows

* Update temperature.rs

* Fix CPU usage and first boot lights update

* Profile switching bounds check

* Remove useless impl from CustomEffectState

* Revert to device-query

* Fixes

* Add default back to speed

* Remove update check code

Finicky at best and most likely prone to breaking

* Update deps

* Update vcpkg

* Adding support for 2023 models (#115)

* Adding support for 2023 models

Tested on a Legion 5 Slim:

```
System Information
        Manufacturer: LENOVO
        Product Name: 82Y9
        Version: Legion Slim 5 16APH8
        Serial Number: <Redacted>
        UUID: <Redacted>
        Wake-up Type: Power Switch
        SKU Number: LENOVO_MT_82Y9_BU_idea_FM_Legion Slim 5 16APH8
        Family: Legion Slim 5 16APH8

```

* fixing minor typo in README

* Fix device arr length

* Update version

* Fix release CI

---------

Co-authored-by: Mario Bălănică <mariobalanica02@gmail.com>
Co-authored-by: rslarson <58712050+rslarson@users.noreply.github.com>
Co-authored-by: pavelsevcik <pavel@sevcik.tk>
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

No branches or pull requests

2 participants