The Banana BPI M2 Zero arrived this morning and so far I have managed to get it working with the ADC Pi, ADC Differential Pi, IO Pi and RTC Pi.
I used the BPI-M2 zero Ubuntu 19.10 Eoan Ermine Mainline Kernel 5.3.5 image.
The following software packages were needed to get I2C working with python.
sudo apt-get install python3-dev python3-smbus i2c-tools git
The first thing I discovered was that on the Banana BPI M2 Zero the I2C bus is on address 0 instead of address 1 so all i2c commands like i2cdetect need to use 0 for the target, for example sudo i2cdetect -y 0.
With i2ctools installed I ran i2cdetect and the ADC Pi showed up on addresses 0x68 and 0x69.
The I2C bus only appears to be configured to have root access on Ubuntu so you have to use sudo to open any python programs. I also couldn't find the python-smbus package in the apt repositories so you can only access I2C using Python 3.
So far I have successfully tested our python library with the ADC Pi, ADC Differential Pi, IO Pi and RTC Pi. Each of the python classes needed updating to detect it is running on a Banana BPI M2 Zero and use the correct I2C bus. I have uploaded an updated version of the libraries to github.
I haven't managed to get our other boards working yet. The Servo Pi and I2C Switch use the RPi.GPIO package and this doesn't seem to be compatible with the Banana Pi. I haven't tested the SPI bus yet but hopefully I can find a way to make it work.