-
Notifications
You must be signed in to change notification settings - Fork 2.2k
Add 72x40 display #5546
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
Open
andbad
wants to merge
15
commits into
letscontrolit:mega
Choose a base branch
from
andbad:andbad-72x40
base: mega
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
+19
−6
Open
Add 72x40 display #5546
Changes from 10 commits
Commits
Show all changes
15 commits
Select commit
Hold shift + click to select a range
032c480
Update _P036_FrameOLED.ino
andbad c3c99dd
Add new display configuration for 72x40 resolution
andbad 8bb8ce0
Add case for pix72x40 resolution handling
andbad 6ca21c8
Update p036_resolution enum values
andbad dcc1e79
Add new display option '72x40' to OLed_helper
andbad f7e285b
Fix enum values for p036_resolution
andbad 64de797
Reorder resolution options in OLED frame
andbad c40cdc8
Fix formatting of optionValues array in FrameOLED
andbad 30c1118
Reorder display size options in OLed_helper.cpp
andbad c77e1f7
Remove and re-add 72x40 resolution configuration
andbad 48641c7
Merge branch 'letscontrolit:mega' into andbad-72x40
andbad 3aebc9c
Update OLedFormSizes call to include element count
andbad a8c6635
Update OLedFormSizes to use optionsSize parameter
andbad b7f74fa
Add default parameters to OLedFormSizes function
andbad 4d6d2c1
Refactor FormSelectorOptions initialization
andbad File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.
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.
Because of the way this is constructed, this will crash when configuring the display configuration in P023, as that plugin won't provide the 4th option value.
I think the number of items to display in the selector will have to be added as a new argument to the function, can default to 3, for 'other plugins using this function', and from P036 a value of 4 should be provided (or the length of the values array, likeNR_ELEMENTS(optionValues)).Uh oh!
There was an error while loading. Please reload this page.
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.
Alternatively, you can change the signature for the function, having
const int values[](also in the .h file), and take theNR_ELEMENTS(values)instead ofNR_ELEMENTS(options3), that would be an easier change 😉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 finally took some time to try this on actual hardware, and the above suggestion (of course) won't work as C/C++ doesn't allow for a dynamic array as a method argument 🫣 so I introduced an extra argument for the size of the selector-array, that defaults to 3.
Then it does work as intended, without breaking P023, that uses the same size selector function.
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.
Here's the diff for the changes that I made. You can place the attached file in the base directory of your repo, and from the VSCode terminal use this command:
PR5546-OLedFormSizes.txt
(Github doesn't allow a .diff file, but the content is in the default git diff format)
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.
Thank you.
Unfortunately, my environment no longer allows me to properly compile firmware for my hardware (even in the main branch) after I updated to the latest version. This appears to be due to compatibility issues with the ExpressIf platform. I've wasted some time and tokens trying to resolve the issue, but I'm still only halfway there.
But I digress.
Anyway, I applied your changes.
I hope all is well.
By(t)e
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.
NB: The
00.138 : (256100) Error | FS : Error while reading/writing devsecurity.dat in 2138in your log is because thedevsecurity.datfile doesn't exist yet on your unit, I also don't have it on my test-unit, and see the same message. This is not causing any issues.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.
Uh oh!
There was an error while loading. Please reload this page.
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.
Well, it is possible that it's hardware-related.
Do you have another board, preferably from a different manufacturer, or with a different ESP32 chip, to test this build on? I can create that build for you, of course.
NB: The board I've used for testing is this one: https://aliexpress.com/item/1005010315154730.html
NB2: Have you also tried using the latest beta build (without support for this display, of course)?
Available from https://TD-er.nl/ESPEasy/latest/
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 have two boards, both like the one you have. One looks identical, the other has some SMD components (I'm not sure if they're resistors or something) arranged slightly differently.
I tried installing the beta Display-A version on both.
Neither works.
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 have two boards, both like the one you have. One looks identical, the other has some SMD components (I'm not sure if they're resistors or something) arranged slightly differently.
I tried installing the beta Display-A version on both.
Neither works.