This is used in the Mission Pinball Framework (https://missionpinball.org). Let us know if you need more functionality or find any bugs.
Tested examples: https://github.com/missionpinball/mpf/blob/dev/mpf/platforms/smbus2.py
License: MIT