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

Backlight breathing intensity steps are too coarse for breathing speeds >4 #2181

Closed
BalzGuenat opened this issue Dec 20, 2017 · 1 comment · Fixed by #2187
Closed

Backlight breathing intensity steps are too coarse for breathing speeds >4 #2181

BalzGuenat opened this issue Dec 20, 2017 · 1 comment · Fixed by #2187

Comments

@BalzGuenat
Copy link
Contributor

For clarification, this is about the LEDs under the keycaps, not underglow.

At least when breathing to max intensity, the intensity steps of the LEDs become visible, resulting in a not-so-smooth breathing effect.

As I understand, this is related to the breathing_table in quantum.c and possibly(?) to the timer interrupt, which I think would need finer resolution. The code looks pretty complex, which is why I wanted to create this issue before trying anything myself. Maybe @jackhumbert, who seems to be who originally wrote the code, can tell me if there's something more fundamental that would prevent smoother stepping.

Oh and if the code gets looked at anyway, we might want to think about allowing a finer speed setting as well. Right now, +1 in speed results in half the speed. -1 in double the speed.

@BalzGuenat
Copy link
Contributor Author

Couldn't help but look around before a reply anyway. I may have found an error. In the ATmega32u4 data sheet, section 14.5, last paragraph it says:

The ICRn Register can only be written when using a Waveform Generation mode that utilizes the ICRn Register for defining the counter’s TOP value. In these cases the Waveform Generation mode (WGMn3:0) bits must be set before the TOP value can be written to the ICRn Register.

It looks like this is done in the wrong order in quantum.c.

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 a pull request may close this issue.

1 participant