Skip to content

feat: Implement fix for sunlight fading issue#603

Merged
daveallie merged 8 commits intocrosspoint-reader:masterfrom
allgoewer:feature/sunlight-fading-fix
Feb 5, 2026
Merged

feat: Implement fix for sunlight fading issue#603
daveallie merged 8 commits intocrosspoint-reader:masterfrom
allgoewer:feature/sunlight-fading-fix

Conversation

@allgoewer
Copy link
Copy Markdown
Contributor

@allgoewer allgoewer commented Jan 28, 2026

Summary

  • What is the goal of this PR?

The goal of this PR is to deliver a fix for or at least mitigate the impact of the issue described in #561

  • What changes are included?

This PR includes a new option "Sunlight Fading Fix" under "Settings -> Display".

When set to ON, we will disable the displays analog supply voltage after every update and turn it back on before the next update.

Additional Context

  • Until now, I was only able to do limited testing because of limited sunlight at my location, but the fix seems to be working. I'll also attach a pre-built binary based on 0.16.0 (current master) with the fix applied to the linked ticket, as building this fix is a bit annoying because the submodule open-x4-sdk also needs an update.
  • PR in open-x4-sdk needs to be merged first, we also need to add another commit to this here PR, updating this dependency.
  • I decided to hide this behind a default-OFF option. While I'm not really concerned that this fix might potentially damage the display, someone more knowledgeable on E-Ink technology could maybe have a look at this.
  • There's a binary attached in the linked issue, if someone has the required sunlight to test this in-depth.

AI Usage

While CrossPoint doesn't have restrictions on AI tools in contributing, please be transparent about their usage as it
helps set the right context for reviewers.

Did you use AI tools to help write this code? NO

nkocher added a commit to nkocher/crosspoint-reader that referenced this pull request Jan 31, 2026
… fork)

Point SDK submodule to allgoewer/open-x4-epaper-community-sdk commit 9c86003
which adds turnOffScreen parameter to displayBuffer() and displayWindow(),
required by crosspoint PR crosspoint-reader#603 (sunlight fading fix).

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
nkocher added a commit to nkocher/crosspoint-reader that referenced this pull request Jan 31, 2026
…to custom-v16 sandbox

Merge PR crosspoint-reader#603 (sunlight fading fix) with settings serialization conflict
resolved: fadingFix placed at position 25 after powerButtonHoldDuration
(position 24), SETTINGS_COUNT incremented to 25.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@allgoewer allgoewer marked this pull request as ready for review February 1, 2026 13:50
@allgoewer
Copy link
Copy Markdown
Contributor Author

I still got no feedback from anyone regarding the effectiveness of this PR. I was able to do only limited testing due to weather conditions but it seemed to do the trick.

@osteotek osteotek requested a review from a team February 3, 2026 09:46
@osteotek
Copy link
Copy Markdown
Member

osteotek commented Feb 3, 2026

as discussed in #561 (comment) seems to be working.

osteotek
osteotek previously approved these changes Feb 3, 2026
@daveallie daveallie force-pushed the feature/sunlight-fading-fix branch from 68c4ad8 to 73c9a85 Compare February 5, 2026 12:25
@daveallie daveallie merged commit d762325 into crosspoint-reader:master Feb 5, 2026
4 checks passed
jdk2pq added a commit to jdk2pq/crosspoint-reader that referenced this pull request Feb 5, 2026
* master:
  feat: add shift lock to KeyboardEntryActivity (crosspoint-reader#513)
  feat: rename and move in file manager (crosspoint-reader#630)
  feat: Implement fix for sunlight fading issue (crosspoint-reader#603)
  chore: Add PR title check on sync (crosspoint-reader#698)
  feat: Go To Position for epubs (crosspoint-reader#666)
  feat: Calibre Web Automated (CWA) koreader sync server support (crosspoint-reader#594)
  chore: Add CI check job to consolidate status (crosspoint-reader#696)
  chore: CI Build Summary - firmware stats, firmware artifact (crosspoint-reader#601)
  feat: quick rotate option in epub reader menu (crosspoint-reader#685)
  feat(settings): add "Cover + Custom" sleep screen mode (crosspoint-reader#582)
  fix: Artifacts on Thumb on Home Screen (crosspoint-reader#662)
  feat: holding back button while booting, boots to home screen as a mean of escaping boot loop (crosspoint-reader#587)
  docs: Add small SCOPE.md and GOVERNANCE.md documents (crosspoint-reader#640)
  feat: front button remapper (crosspoint-reader#664)
  feat: UI themes, Lyra (crosspoint-reader#528)
  feat: Add CSS parsing and CSS support in EPUBs (crosspoint-reader#411)
  fix: move http upload state to heap (crosspoint-reader#657)
@cbix
Copy link
Copy Markdown
Contributor

cbix commented Feb 9, 2026

Nice fix, I got the black version anyway but would this theoretically save battery as well?

@allgoewer
Copy link
Copy Markdown
Contributor Author

In theory, yes. But I didn't measure.

Unintendedsideeffects pushed a commit to Unintendedsideeffects/crosspoint-reader that referenced this pull request Feb 17, 2026
## Summary

* **What is the goal of this PR?**

The goal of this PR is to deliver a fix for or at least mitigate the
impact of the issue described in crosspoint-reader#561

* **What changes are included?**

This PR includes a new option "Sunlight Fading Fix" under "Settings ->
Display".

When set to ON, we will disable the displays analog supply voltage after
every update and turn it back on before the next update.

## Additional Context

* Until now, I was only able to do limited testing because of limited
sunlight at my location, but the fix seems to be working. I'll also
attach a pre-built binary based on 0.16.0 (current master) with the fix
applied to the linked ticket, as building this fix is a bit annoying
because the submodule open-x4-sdk also needs an update.
* [PR in
open-x4-sdk](open-x4-epaper/community-sdk#15)
needs to be merged first, we also need to add another commit to this
here PR, updating this dependency.
* I decided to hide this behind a default-OFF option. While I'm not
really concerned that this fix might potentially damage the display,
someone more knowledgeable on E-Ink technology could maybe have a look
at this.
* There's a binary attached in the linked issue, if someone has the
required sunlight to test this in-depth.

---

### AI Usage

While CrossPoint doesn't have restrictions on AI tools in contributing,
please be transparent about their usage as it
helps set the right context for reviewers.

Did you use AI tools to help write this code? _**NO**_

---------

Co-authored-by: Dave Allie <dave@daveallie.com>
@insunaa
Copy link
Copy Markdown

insunaa commented Mar 9, 2026

doesn't actually seem to work for me :( but setting the refresh interval to every page-turn keeps the text readable enough

@allgoewer
Copy link
Copy Markdown
Contributor Author

@insunaa Would you mind providing a short clip?

Are you sure there is no difference between enabled / disabled fix?
With the fix disabled, you should see the screen completely fading to white over the period of a minute or so, with the fix enabled the fading should stop as soon as the screen-update finishes.
There will still be fading during the screen update, even with the fix enabled. That is expected.

@pablohc
Copy link
Copy Markdown
Contributor

pablohc commented Mar 9, 2026

doesn't actually seem to work for me :( but setting the refresh interval to every page-turn keeps the text readable enough

Are you sure it's because of the sun? I perceive degradation of the screen, and I always have the two X4s (black and white) in my room without any exposure to the sun. Somebody has made a post in reddit comparing 0.16 vs 1.1.0 and the old version of the firmware showed more contrast in the black screen than in the newer FW.

@insunaa
Copy link
Copy Markdown

insunaa commented Mar 10, 2026

@pablohc some people on reddit speculated it was caused by infrared light heating the ink particles and changing their magnetism for a short bit

@allgoewer I'll make a video as soon as there's sunlight in my area again. For me the fading isn't just the dark pixels turning light, it's also the light pixels splotchily turning dark and after-images of the last ~5-10 refreshes appearing. this happens much more strongly if I am actively flipping pages, but it also happens to the book cover when the device is in deep sleep (as in: put it to sleep while not affected by sunlight and then several minutes later exposing it to direct sunlight)

it also doesn't seem to be affected by UV-A (365nm), I have a UV-A flashlight and neither shining it at the e-ink screen nor shining it between the buttons or into the USB-C port causes any noticeable changes to the display content (regardless of whether the fix is enabled or not)

@allgoewer
Copy link
Copy Markdown
Contributor Author

Yeah, that sounds like a completely different issue.
Nonetheless, really wanna see the vid :-)

whale-n pushed a commit to whale-n/njwiv-xt that referenced this pull request Mar 17, 2026
## Summary

* **What is the goal of this PR?**

The goal of this PR is to deliver a fix for or at least mitigate the
impact of the issue described in crosspoint-reader#561

* **What changes are included?**

This PR includes a new option "Sunlight Fading Fix" under "Settings ->
Display".

When set to ON, we will disable the displays analog supply voltage after
every update and turn it back on before the next update.

## Additional Context

* Until now, I was only able to do limited testing because of limited
sunlight at my location, but the fix seems to be working. I'll also
attach a pre-built binary based on 0.16.0 (current master) with the fix
applied to the linked ticket, as building this fix is a bit annoying
because the submodule open-x4-sdk also needs an update.
* [PR in
open-x4-sdk](open-x4-epaper/community-sdk#15)
needs to be merged first, we also need to add another commit to this
here PR, updating this dependency.
* I decided to hide this behind a default-OFF option. While I'm not
really concerned that this fix might potentially damage the display,
someone more knowledgeable on E-Ink technology could maybe have a look
at this.
* There's a binary attached in the linked issue, if someone has the
required sunlight to test this in-depth.

---

### AI Usage

While CrossPoint doesn't have restrictions on AI tools in contributing,
please be transparent about their usage as it
helps set the right context for reviewers.

Did you use AI tools to help write this code? _**NO**_

---------

Co-authored-by: Dave Allie <dave@daveallie.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants