Display
The SDK handles the display functionality via the IEvsDisplayService
interface (received from the Evs.instance().display()
method).
Display Size & Rendering Position
The glasses display resolution is 640x400 pixels.
To enable personal adjustment of the UI location on the display, the SDK supports a virtual rendering area.
The virtual rendering area is smaller than the physical display size, and can be defined by the developer, according to the application use-case and needs.
Adjusting the virtual screen position
When using the Screen
, the SDK enables adjusting its position within the full display by calling:
val dx = 10f
val dy = -15f
Evs.instance().screens().setRenderingCenterX(dx)
Evs.instance().screens().setRenderingCenterY(dy)
Adjust Stock UI
To shorten your development cycle, the SDK comes with built-in UI for your application (currently only portrait is supported).
The open the personal adjust stock ui call:
Auto Display Off
The glasses display will be automatically turned off in the following scenarios:
- The charger is plugged in
- The glasses are disconnected
- The glasses are off the face
- The power button was pressed when the display was on
- After 2 minutes where both the application and the charger are connected
- After 2 minutes when the application is not connected
The display is turned on when turning on the glasses.
The SDK won't turn on automatically the display (except when starting
firmware update). It is the application responsibility to turn on the
display when required via Evs.instance().display().turnDisplayOn()
Brightness
Brightness can be controlled using a continues scale between 1 to 255, but it is recommended to use the discrete brightness controller that optimized the current brightness levels to the physical display:
Evs.instance().display().desecrateBrightness().setBrightnessLevel(briLevel)
//or
Evs.instance().display().setBrightness(briValue)
Auto brightness Controller
The display service also exposes the auto brightness controller.
It easily enables controlling the auto brightness operation, like starting it and stopping it automatically if a manual setBrightness is called.
The controller must have a IEvsAutoBrightnessProvider
(should be
supplied by the application), for converting the ambient sensor lux
values into screen brightness level
A default IEvsAutoBrightnessController
implementation is provided by the
SDK via AutoBrightnessGainController
. You may test and see if this
default implementation matches your needs, but it is provided as-is.
For different behavior you should implement your own
IEvsAutoBrightnessController
Evs.instance().display().autoBrightness().setProvider(provider: AutoBrightnessGainProvider())
Evs.instance().display().autoBrightness().enable(isEnabled: true)
Evs.instance().display().autoBrightness().setProvider(AutoBrightnessGainProvider())
Evs.instance().display().autoBrightness().enable(true)
Read Next
Learn about the Glasses Handling