I would like to know the reasons why the RPi.GPIO library was dropped from the Raspberry Pi Tools add-on. In my opinion, this is a mistake. I'll explain. I am the author of the OLEDproc plugin. It depends on several libraries, including the luma.oled and luma.core libraries. And therein lies the trouble. The luma.core library needs the RPi.GPIO library to work. I am convinced that it is unthinkable and also pointless for me to create some clone of the luma.core library, which would use, for example, gpiozero instead of RPi.GPIO. So, as it stands, the OLEDproc add-on user could not upgrade their system to LE12, otherwise their OLED display would stop working. It occurred to me that it was possible to go another way. I tried to reincarnate the Raspberry Pi Tools add-on to include the necessary RPi.GPIO library. The result is the "new" add-on Raspberry Pi Legacy Tools.
And it really works!
I know there are more similarly affected add-ons (dependent on Raspberry Pi Tools/RPi.GPIO). If their users couldn't upgrade to LE12 because of this, now they can! It is really easy. You only need to do two steps:
1. Install the Raspberry Pi Legacy Tools add-on
2. Make a simple edit to the addon.xml file of the dependent addon. As an example, I present an excerpt from the addon.xml file that belongs to the OLEDproc add-on:
Original version:
<requires>
<import addon="xbmc.python" version="3.0.0"/>
<import addon="script.module.luma" />
<import addon="script.module.cbor2" />
<import addon="script.module.smbus2" />
<import addon="script.module.spidev" />
<import addon="virtual.rpi-tools" />
</requires>
Modified version:
<requires>
<import addon="xbmc.python" version="3.0.0"/>
<import addon="script.module.luma" />
<import addon="script.module.cbor2" />
<import addon="script.module.smbus2" />
<import addon="script.module.spidev" />
<import addon="virtual.rpi-legacy-tools" />
</requires>