My I2C pins don't work

I can only see I2C-0 and I2c-1 why are the rest of the I2C pins not working? How do I enable them?
The links to enable pins say to modify the uEnv.txt in the boot folder. I don’t have a uEnv.txt but an armbianEnv.txt, do I need to edit that? I saw this post where all of the I2C ports are enabled, How do I do that?

1 Like

You need to use device tree overlays: https://github.com/radxa/overlays/tree/main/arch/arm64/boot/dts/amlogic/overlays

Instructions for installing overlays on Armbian are here: https://docs.armbian.com/User-Guide_Allwinner_overlays/

I am having the same issue,

radxa wiki says to just add overlays=meson-g12a-i2c-ee-m3-gpioa-14-gpioa-15 to uEnv.txt
tried adding to uEnv.txt and armbianEnv.txt still cannot see i2c-3.

it should already be compiled into the kernel. so should just need to activate it however nothing

for some odd reason the device is showing up on i2c-0 although it is connected to pins 3 and 5.
which is i2c M3 and should be i2c-3 as mentioned by the docs

when you update the radxa kernel, it create a folder inside /boot called extlinux, it allows the user to chose wich version they want to use to boot,

the problem is that the overlays config is done in the uEnv.txt config file, so we need to delete or rename the extlinux folder using the following:

sudo mv /boot/extlinux /boot/eextlinux
sudo reboot

the only downside is that from now on the board will always chose the latest firmware.