-
Notifications
You must be signed in to change notification settings - Fork 8.2k
drivers: display: Added support for 2.7inch epaper display #38306
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
860a684 to
b5ff56c
Compare
mbolivar-nordic
left a comment
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.
Hi and thanks for the patch. A few comments about the devicetree from my side.
boards/shields/waveshare_epaper/waveshare_epaper_gdew027w3.overlay
Outdated
Show resolved
Hide resolved
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.
What's going on here? This is undefined, so the #ifdef GDEW027W3 below is dead code.
If you need to match on a particular piece of hardware, then I think we need to get around to removing CONFIG_LVGL_DISPLAY_DEV_NAME and using a devicetree node instead.
Then you can either:
- match on its compatible with DT_NODE_HAS_COMPAT: https://docs.zephyrproject.org/latest/reference/devicetree/api.html#c.DT_NODE_HAS_COMPAT
- add some other devicetree property that the driver or application can use to decide to use
display_refreshinstead ofdisplay_blanking_off
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.
@mbolivar-nordic As suggested , Inorder match for this particular hardware, used DT_NODE_HAS_COMPAT.
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.
If you need to match on a particular piece of hardware, then I think we need to get around to removing CONFIG_LVGL_DISPLAY_DEV_NAME
This part was important, can you please do that too?
What I mean is that Kconfig options which just specify a device name have been deprecate for a long time now that the devicetree.h API has been stabilized and the device model has been updated to use devicetree nodes.
The thing to do now is to just get the struct device* from a devicetree pointer, using things like DEVICE_DT_GET, DEVICE_DT_GET_ANY, or DEVICE_DT_GET_ONE.
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.
Apologies for the delayed reply, if we remove CONFIG_LVGL_DISPLAY_DEV_NAME and get the device using any of the DT api , it will then go into hardware specific, also this type of west build may create conflicts right?
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.
Thanks for the reply, but I do not understand. What conflicts are you referring to?
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 thought, if --DSHIELD overlay and device name used inside main.c will create conflicts but it wont. So modified the requested changes
boards/shields/waveshare_epaper/waveshare_epaper_gdew027w3.overlay
Outdated
Show resolved
Hide resolved
boards/shields/waveshare_epaper/waveshare_epaper_gdew027w3.overlay
Outdated
Show resolved
Hide resolved
ab79dd8 to
7bf9271
Compare
erwango
left a comment
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.
+1 on shield part
23ff9ad to
58d896d
Compare
b1e10fa to
71d55e3
Compare
|
@jfischer-no fixed all the comments you mentioned, except this #38306 (comment) , the below image will explain that issue. 1st image: CS pin keeps LOW while sending data value (display not/won't work) |
|
This pull request has been marked as stale because it has been open (more than) 60 days with no activity. Remove the stale label or add a comment saying that you would like to have the label removed otherwise this pull request will automatically be closed in 14 days. Note, that you can always re-open a closed pull request at any time. |
|
@DineshDK03 Please take a look at the latest changes @andysan has made in https://github.com/zephyrproject-rtos/zephyr/blob/main/drivers/display/uc81xx.c and https://github.com/zephyrproject-rtos/zephyr/blob/main/drivers/display/ssd16xx.c, and try to align your driver with these. In the commit history, I see shield support before the driver, this should be the other way around. |
I would suggest going even further. As far as I can tell, the register layout of this chip is very close (almost identical) to the UltraChip EPD drivers. A quick look at the data sheet suggests that you can most likely just add a quirk structure for this device in UC81xx and it should mostly just work out of the box. You might want to have a look at #48383 if you go down that route. |
|
This pull request has been marked as stale because it has been open (more than) 60 days with no activity. Remove the stale label or add a comment saying that you would like to have the label removed otherwise this pull request will automatically be closed in 14 days. Note, that you can always re-open a closed pull request at any time. |
Add support for gdew027w3 2.7inch epaper display. Signed-off-by: Dinesh Kumar K <[email protected]>
Added new display driver ek79652 for 2.7inch epaper display. Signed-off-by: Dinesh Kumar K <[email protected]>


Added new display driver ek79652
Signed-off-by: Dinesh Kumar K [email protected]