Files
OpenMQTT-Gateway/docs/use/displays.md
T
DigiH 1b5215de42 [SSD1306] Partial MAC address in BLE title (#1498)
* partial MAC in title

• Last three octets of MAC address in title to differentiate devices with the same model name.
• fixed memory leak
• process optimisation

* lcd to oled

lcd to oled renaming
2023-03-03 14:53:07 -06:00

3.2 KiB

Displays

SSD1306 Display (Heltec SX127X and LILYGO® LoRa32 boards)

Several options are available for the display of information on the SSD1306 display. Some options are exclusive to each other, and when a different option is enabled, the current option is disabled.

The current SSD1306 display states are being published to the SSD1306toMQTT topic, e.g.

{"onstate":true,"brightness":50,"display-metric":true,"display-flip":true,"idlelogo":true,"log-oled":false,"json-oled":true}

Display ON/OFF

To turn the SSD1306 display on or off.

This can be enabled with the compiler directive -DDISPLAY_STATE=true.

MQTT Display OFF command:

mosquitto_pub -t home/OpenMQTTGateway/commands/MQTTtoSSD1306/config -m {"onstate":false}

MQTT Display ON command:

mosquitto_pub -t home/OpenMQTTGateway/commands/MQTTtoSSD1306/config -m {"onstate":true}

Brightness

The display brightness can be set between 0-100%.

It is recommended to set a value lower than 100 to extend the life of the OLED display. The default setting is 50.

This can be set with the compiler directive -DDISPLAY_BRIGHTNESS=50.

or with the runtime command

mosquitto_pub -t home/OpenMQTTGateway/commands/MQTTtoSSD1306/config -m {"brightness":50}

Metric or Imperial property units

To have applicable device properties displayed in Imperial units, e.g. °F for temperature.

This can be set with the compiler directive -DDISPLAY_METRIC=false.

or with the runtime command

mosquitto_pub -t home/OpenMQTTGateway/commands/MQTTtoSSD1306/config -m {"display-metric":false}

Rotating the display by 180 degrees

This can be set with the compiler directive -DDISPLAY_FLIP=false.

or with the runtime command

mosquitto_pub -t home/OpenMQTTGateway/commands/MQTTtoSSD1306/config -m {"display-flip":false}

To display the OpenMQTTGateway logo during device display idle time. This reduces the likelihood of burn-in.

This can be set with the compiler directive -DDISPLAY_IDLE_LOGO=true.

or at runtime with

mosquitto_pub -t home/OpenMQTTGateway/commands/MQTTtoSSD1306/config -m {"idlelogo":true}

Setting the log output

The display of serial log messages to the display can be enabled via compiler directive -DLOG_TO_OLED=true or via MQTT commands.

For example if you want to set the serial log to OLED

mosquitto_pub -t home/OpenMQTTGateway/commands/MQTTtoSSD1306/config -m '{"log-oled":true}'

you can also revert it back with

mosquitto_pub -t home/OpenMQTTGateway/commands/MQTTtoSSD1306/config -m '{"log-oled":false}'

The log level of the messages displayed is Errors and Warnings, and this can only be changed via the compiler directive -DLOG_LEVEL_OLED=LOG_LEVEL_NOTICE.

Displaying Module json messages (default)

The display of messages from various modules is also supported. Currently supported modules include ZgatewayRTL_433, ZgatewayBT and ZsensorBME280.

This can be enabled with the compiler directive -DJSON_TO_OLED=true.

You can also change it by MQTT. For example if you want to display module json messages:

mosquitto_pub -t home/OpenMQTTGateway/commands/MQTTtoSSD1306/config -m '{"json-oled":true}'

And to disable the display of module json messages:

mosquitto_pub -t home/OpenMQTTGateway/commands/MQTTtoSSD1306/config -m '{"display-json":false}'