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

ENHANCEMENT: Non-blocking animations/scrolling #22

Open
hackerceo opened this issue Aug 30, 2022 · 14 comments
Open

ENHANCEMENT: Non-blocking animations/scrolling #22

hackerceo opened this issue Aug 30, 2022 · 14 comments
Labels
enhancement New feature or request

Comments

@hackerceo
Copy link
Contributor

Hi, I am looking for this functionality in a non-blocking design. Is there any plans to do this? Is there interest if I do this and issue a pull request?

Thanks,
Nick

@Kravatox
Copy link

Kravatox commented Aug 30, 2022 via email

@jasonacox jasonacox added the enhancement New feature or request label Aug 31, 2022
@jasonacox
Copy link
Owner

Hi @hackerceo - Thanks for opening this issue. Great question and yes, I would be happy to accept a PR that gives us that enhancement! 🙏

@Kravatox I'll move your question to a new issue as it is not related to animation/scrolling: See #23

@Frtrillo
Copy link

Hello, at least non-blocking scrolling text would be very useful IMO

@hackerceo
Copy link
Contributor Author

I plan to work on this Sept-Oct. It should play animations AND scroll text in a non-blocking way.

@jasonacox
Copy link
Owner

jasonacox commented Sep 18, 2022

Thanks for the PR here #24 ! I can't wait to use this for my projects.

I have one minor change suggestion for API consistency:

Can we change the parameters for scrollString() and startAnimation() where we put content payload first and put bool usePROGMEM = false at the end with a default to false? This would align with the rest of the function. We could even add scrollString_P() and startAnimation_P() as alias functions that call their main functions with usePROGMEM = true.

Seems like that would help with consistency, but I could be convinced otherwise. What do you think?

  void startAnimation(const uint8_t (*data)[4], unsigned int frames = 0, unsigned int ms = 10, bool usePROGMEM = false );
  void scrollString(const char s[], unsigned int ms = DEFAULT_SCROLL_DELAY, bool usePROGMEM = false);

And thanks, @hackerceo - brilliant work!

@hackerceo
Copy link
Contributor Author

hackerceo commented Sep 18, 2022 via email

@jasonacox
Copy link
Owner

I like it! Great thinking @hackerceo ... And it is consistent with startAnimation(). Do you want to make these changes or should I? I can merge and update or can wait to merge until after you commit the changes to the same PR.

@hackerceo
Copy link
Contributor Author

hackerceo commented Sep 18, 2022 via email

@hackerceo
Copy link
Contributor Author

@Frtrillo you should be happy as non-blocking animation/scrolling functionality is now added to this library!

@jasonacox
Copy link
Owner

jasonacox commented Sep 19, 2022

I'll release this as v1.7.0 for the Arduino library and add a TODO to port this to the 6-digit display as well.

Thanks for this great enhancement @hackerceo !

@hackerceo
Copy link
Contributor Author

hackerceo commented Sep 19, 2022 via email

@jasonacox
Copy link
Owner

Agree. You added that to library.properties so it now shows up on the Arduino library page:

image

The update announcement was broadcast on twitter -- I added comments: https://twitter.com/jasonacox/status/1572097524223311872?s=20&t=KQt712j4CPpizeAMyt8vng

Thanks again @hackerceo !

@hackerceo
Copy link
Contributor Author

hackerceo commented Oct 11, 2022 via email

@hackerceo
Copy link
Contributor Author

I have submitted #31 which adds support for non-blocking animations on 6 digit displays. Once PR #31 is merged in you can close this issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

4 participants