-
Notifications
You must be signed in to change notification settings - Fork 28
Add ability to use custom characters for 7-segment display #96
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
Conversation
approved but i think |
Thanks @ladyada! Is it used somewhere besides typing that I overlooked? |
pretty sure its used to connect to the device :) |
busio is used for communication but it gets imported at the user code level or typically via I think it's okay to have it in the try/except in this case since it's only used for typing inside the library. I am testing out the code / example in this PR on RP2040 Feather with a 4x7 Segment FeatherWing. It does successfully get past imports and initialization. But I'm not seeing any letters appear on the 7 segment displays. The only characters that seem to appear are the three dots at the end of "scrolling..." Those dots are turning on and appear to be scrolling properly but without any letters in front of them. I'm digging in a bit to see if I can figure out why and a fix. |
Thanks for testing @FoamyGuy. Does it not recognize they're existence entirely, or is it scrolling as if something is supposed to be there? |
@@ -343,6 +350,9 @@ def _put(self, char: str, index: int = 0): | |||
# pylint: disable=too-many-return-statements | |||
if not 0 <= index <= 3: | |||
return | |||
if self._chardict and char in self._chardict: | |||
self._set_buffer(index, self._chardict[char]) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I dug for a bit and found that it is making it to here and calling _set_buffer()
with values that seem okay to me, but nothing seems to happen on the segment display. Possibly it's an auto_write issue?
I'm putting it down for now but will circle back eventually to look more if you don't end up getting a solution once you've got your hardware for testing.
I think it is scrolling as if something is there but not showing the actual characters. The "..." appear with a large space between them. I think the space is right size for "Scrolling" but haven't specifically counted. |
I think I'm missing some command(s), looking into it now |
I thiiiiiiiink I might have found it @FoamyGuy, I think the |
Oh, tagging Issue #94 as well. |
@tekktrik nice, thank you. It does scroll more now. but it seems the new characters do not show. Only hex + numbers + 'L" and "O" I think, I haven't tried all letters but this guess based on how "Scrolling.." appears. htk1633_scrolling.mp4 |
Weird, so none of the custom ones... Guess I'll dig more! |
@FoamyGuy I added a commit to fix only the example file but the code works for me, can you retest or provide some more info so I can confirm it works or reproduce what you're seeing? Running on |
Interesting... I don't think I saw that but I can double check. I'm busy today so it might not be for a couple days, thanks for checking! |
Co-authored-by: Neradoc <[email protected]>
Thanks for reviewing! Does that fix the issue? I don't have my test setup right now :/ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Updating https://github.com/adafruit/Adafruit_CircuitPython_HT16K33 to 4.3.0 from 4.2.1: > Merge pull request adafruit/Adafruit_CircuitPython_HT16K33#96 from tekktrik/feature/custom-characters > Merge pull request adafruit/Adafruit_CircuitPython_HT16K33#97 from tekktrik/doc/consolidate-readme
Spawned from Issue #79, which while addressed by PR #80 only extends to the "L" and "O" characters. This PR adds the ability to set any number of custom characters for printing/marquee on the 7-segment displays. Includes an example file.
Currently away from hardware to test, will be able to test in a few days.