I just finished one little project. The work took me several weeks, but I believe it was worth it.
There are many OLED graphic displays on the market that are cheaper and look better than traditional (character) LCD displays.
I was sorry that so far these displays could not be used as a display for the Kodi multimedia center.
That is why I set myself the task of remedying this shortcoming. I am presenting the result of my work to you today.
The core of the solution is a new add-on called OLEDproc. As the name suggests, it is similar to the LCDproc add-on (which is used to control LCD character displays).
It is therefore clear that the OLEDproc add-on also needs the XBMC LCDproc add-on (which is the data source) for its work.
However, the XBMC LCDproc add-on needs one small modification to work properly with OLEDproc - adding UTF-8 encoding support.
The modified add-on is part of the attached SW package. At the same time, I asked the author of the add-on to include the modifications in the repository version. However, the author has not yet responded.
OLEDproc also depends on script.module.luma, script.module.smbus2, and script.module.cbor2.
I also created these add-ons and they are also part of the attached SW package.
In the current version, OLEDproc only supports I2C displays. It may not be difficult to support SPI displays. However, I do not have any at my disposal.
I tried the add-on with LibreELEC 10.0.2.
I tried two SBCs: RPi4B (4GB) and Orange Pi PC (1GB). The tests were successful on both SBCs, the add-on worked as expected.
I tried two displays:
One with the SH1106 chip (I can't give a specific link, the seller no longer offers the product)
and one with SH1107 chip (eg https://www.aliexpress.com/item/4000547865501.html).
In the case of RPi4B, the I2C interface must be enabled by adding rows
to the config.txt file.
In the case of OPi PC, the file sun8i-h3-i2c0.dtbo should be stored in the /overlays directory and the line FDTOVERLAYS /overlays/sun8i-h3-i2c0.dtbo should be added to the extlinux.conf file.
I'm hoping someone will be interested.