-
Notifications
You must be signed in to change notification settings - Fork 81
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
SSD1306 display rotation support and fix for #421 #422
Conversation
for SSD1306 display rotation support probonopd#412
probonopd#420) Requires an update to circle (PR submitted to develop branch) Co-authored-by: diyelectromusic <68612569+diyelectromusic@users.noreply.github.com>
Needed to support Circle develop?
…irectory and library.
This will need the latest develop branch of circle of course... |
|
It built 👍 Let's test it: |
I get an assertion failing in circle-stdlib/libs/circle-newlib/libgloss/circle/io.cpp(687): circle_fat_fs There was a corresponding update to newlib as well as stdlib so are you using the develop version of that too? |
Yep, looks like we need this too: smuehlst/circle-newlib@48bf91d |
Can you spot where we are pulling in circle-newlib? I don't see where I could change it... |
I believe it is one of the sub-modules for circle_stdlib, alongside circle itself...? |
Yes, so in the build.yml I guess we need to add something to also checkout the develop branch of newlib alongside circle (after checking out the develop branch of circle-stdlib itself)? |
Indeed. Submodules are pulling in other submodules. |
Needed for circle ec09d7e
@diyelectromusic how does MiniDexed_2023-01-21-63fac3c look? |
Reminder to self, also need to add descriptions for
to the wiki. I wonder whether someone will come up with a cool HW project using the mirror feature ;-) @diyelectromusic which values are allowed for these, just 0 and 1? |
That seems to have done the trick! :) Phew, that was a lot more complicated than it should have been!! Kevin |
Actually 0 and <>0 - I think that is the same as other boolean values in the config file... |
OK, for simplicty let's document it as 0/1 then. Thanks a lot for your help! Awaiting @vujnovich's response, will then merge. |
So is the setting in the ini file to toggle the flip? I hadn't downloaded
it and checked . I'll give it a go a bit later. Again. Thanks for the work
you put into this project
…On Sat, Jan 21, 2023, 12:18 PM probonopd ***@***.***> wrote:
OK, for simplicty let's document it as 0/1 then.
Thanks a lot for your help!
Awaiting @vujnovich <https://github.com/vujnovich>'s response, will then
merge.
—
Reply to this email directly, view it on GitHub
<#422 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AP6HDJLMH2O3GVKYHWI4BADWTQK4PANCNFSM6AAAAAAT7SZA6M>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
Yes, please try it out and let us know whether it works for you. Thanks! |
Moin, |
As the starting point was MT32-Pi I just ported over the two modes it already uses. I had a quick look at the ssd1306 datasheet, but haven't fully decoded the registers to know if there are additional feasible modes. But now it all looks up and running I might take a look again at some point... Update: Thinking a little more - isn't this what Mirrored + Rotated does? Now I'm really confused! :) Update again: Actually mirrored can be viewed in a mirror in either axis regardless!? Or am I missing something (highly likely)? This is Mirrored = 1; Rotated = 0 :) Final Thought: I think there is where I defer to "Physics Girl" - https://www.youtube.com/watch?v=vBpxhfBlVLU :) Kevin |
Yes, if you mirror something along the x-axis and then rotate it by 180 degrees, the final result will be the same as if you had just mirrored it along the y-axis. We should test and put this into the documentation. Is the following correct?
|
I think we're saying:
Note that a mirrored display will be the same orientation when viewed mirrored via the short axis, but upside down when viewed mirrored via the long axis. For a "heads up display" style effect it would need to be both mirrored and rotated. |
Haha, |
Also added to documentation. Again, thank you very, very much @diyelectromusic 👍 |
We've made it! Hurrah! :) |
So I just had the time to try the new build. Looking at the config, I
noticed the lcd mirror option is in the ssd1306 , not the hd44780. Bah, I'm
gonna try it anyway 😜. Suppose I didn't mention I was using the hd44780
with a backpack. Anyway cheers
…On Sun, Jan 22, 2023, 8:52 AM Kevin ***@***.***> wrote:
We've made it! Hurrah! :)
—
Reply to this email directly, view it on GitHub
<#422 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AP6HDJMBLHNWJF3GBUF4SL3WTU3RLANCNFSM6AAAAAAT7SZA6M>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
I thought you'd said you'd tried it with MT32-Pi and wondered if we could do the same. MT32-Pi can only rotate a SSD1306 based display too (well, actually it might support other "graphical" displays, but ssd1306 is the only one we do too). The hd44780 is not a "graphical" display and support in MT32-Pi can't rotate either, so I didn't bother even looking... Kevin |
Fix for Issue #421 - circle sound drivers have moved to their own subdirectory and library.