Skip to content
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

More information on TFT display + TFT backlight timeout #914

Merged
merged 13 commits into from
Oct 9, 2024

Conversation

kimble4
Copy link
Contributor

@kimble4 kimble4 commented Sep 27, 2024

I expect the entire TFT UI will be re-done at some point, but as an interim measure this adds some more useful information to the display:

openevse_improved_tft_ui

  • Dedicated icon for the vehicle connection status, like in the Web UI.
  • WiFi connection status icon (artwork is a bit rough and ready) that also indicates whether in station or AP mode.
  • The actual power/current being drawn by the vehicle, and the supply voltage (which can be updated in realtime by MQTT).
  • The EVSE temperature.
  • Current limit has shrunk a bit to fit this all in.

I've also changed the date format to ISO8601; in the absence of any localisation this is considerably less confusing for non-American users.

Meanwhile, setting TFT_BACKLIGHT_TIMEOUT_MS enables a timeout of the TFT's backlight. (Value is in milliseconds, so 600000 = 10 minutes.) The backlight will wake automatically when the EVSE or WiFi connection state changes, or if a message is displayed.

If TFT_BACKLIGHT_CHARGING_THRESHOLD is set, the display will timeout during charging if the current drawn drops below the set value in Amps.

@clowrey
Copy link

clowrey commented Sep 27, 2024

Beautiful! 1000% want

@jeremypoulter
Copy link
Collaborator

Thanks for the contribution, this is a good improvement. I will do a proper review. Indeed the intention is to move over to a proper framework but we have some other changes to do first.

Copy link
Collaborator

@jeremypoulter jeremypoulter left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@kimble4 Changes look good, and tested, looks to work well.

Maybe one thing to consider,
Instead of

#ifdef ENABLE_SCREEN_LCD_TFT
  _lcd.setWifiMode(true, false);
#endif //ENABLE_SCREEN_LCD_TFT

Maybe just define an empty method in the on TFT to get rid of the #ifdef

Do you have any other plans to add more changes?

jeremypoulter
jeremypoulter previously approved these changes Oct 8, 2024
@kimble4
Copy link
Contributor Author

kimble4 commented Oct 8, 2024

That's a good idea; wasn't sure which was the less invasive change to make.

I don't have any plans to add to this, but I didn't last week either :) Happy to draw a line here and start a new branch if I think of something else to add.

Longer term things like localisation, colour themes, maybe some graphs or displaying the history or whatever are best left for a proper framework. But it's really nice to be able to see the current and (particularly for portable use) what the WiFi is doing.

@jeremypoulter
Copy link
Collaborator

Yeah I agree. I am refreshing the networking layers at the moment but a framework is next on my list, probably LVGL but lib Websockets also looked good

@jeremypoulter jeremypoulter merged commit 6457dbb into OpenEVSE:master Oct 9, 2024
23 of 24 checks passed
kimble4 added a commit to kimble4/openevse_esp32_firmware that referenced this pull request Oct 9, 2024
Merge pull request OpenEVSE#914 from kimble4/tft-improvements
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.

3 participants