05-28-2021, 05:09 PM
Hi Tim
1. I looked at the Raspberry Pi OS setup again and i2c-dev is loaded at boot and included in '/etc/modules' and '/etc/modules-load.d/modules.conf' (I don't think I have changed these lines manually, as I don't use an I2C screen with the machine, but I can't be sure, also Volumio loads the i2c-dev module by default). Enabling/disabling I2C in raspi-config changes the line 'dtparam=i2c_arm=on' to 'dtparam=i2c_arm=off', but the i2c-dev module is still loaded in both cases. In which case it seems that both the i2c-dev module must be specifically loaded and 'dtparam=i2c_arm=on' be set for the /dev/i2c-1 (etc) device entries to be created.
On Moode...
2. I thought the /etc/modules file was also overwritten by the the 720 to 721 update, but I could be mistaken.
3. In worker.php, it doesn't look like i2c-dev is loaded by the ALSA loopback configuration (and it wasn't loaded when I tried it), but is loaded for 'Allo Boss 2 DAC',
Besides the specific details of the I2C configuration on Moode (which are clearer to me now), I am mainly interested in a user's mpd_oled configuration being able to survive a Moode update (as it wasn't previously possible for an mpd_oled user to update Moode because of system customisations). The user has to configure their screen, and this will involve loading modules (for I2C or SPI) and adding settings to '/boot/config.txt'. It would be useful if there was a Moode recommended place for a user to load modules, that won't be overwritten by an update. Also, it would be useful if Moode could support a config.txt include file for user settings that would survive an update ( https://www.raspberrypi.org/documentatio...xt/misc.md ), so if the user adds a setting for the i2c bus speed like 'dtparam=i2c_arm_baudrate=800000' to the include file then the setting is still present after the Moode update.
I think those are all my comments. I don't want to hijack the 7.2.1 support thread!
Francesco and bitlab, thank you for the suggestion to use raspi-config. I thought it was something that shouldn't be used on Moode, but I can't find a reference not to use it in the forums! I'll check out if it can make the mpd_oled instructions easier. I think 'dtparam=i2c_arm_baudrate=800000' was commented out in '/boot/config.txt' by the upgrade, and if that is the case this file would still need editing after an upgrade.
Adrian.
1. I looked at the Raspberry Pi OS setup again and i2c-dev is loaded at boot and included in '/etc/modules' and '/etc/modules-load.d/modules.conf' (I don't think I have changed these lines manually, as I don't use an I2C screen with the machine, but I can't be sure, also Volumio loads the i2c-dev module by default). Enabling/disabling I2C in raspi-config changes the line 'dtparam=i2c_arm=on' to 'dtparam=i2c_arm=off', but the i2c-dev module is still loaded in both cases. In which case it seems that both the i2c-dev module must be specifically loaded and 'dtparam=i2c_arm=on' be set for the /dev/i2c-1 (etc) device entries to be created.
On Moode...
Code:
pi@moode:~ $ sudo modprobe i2c-dev
pi@moode:~ $ ls /dev/i2c*
/dev/i2c-1
pi@moode:~ $ sudo dtparam i2c_arm=off
pi@moode:~ $ ls /dev/i2c*
ls: cannot access '/dev/i2c*': No such file or directory
pi@moode:~ $ sudo dtparam i2c_arm=on
pi@moode:~ $ ls /dev/i2c*
/dev/i2c-1
pi@moode:~ $ sudo rmmod i2c-dev
pi@moode:~ $ ls /dev/i2c*
ls: cannot access '/dev/i2c*': No such file or directory
pi@moode:~ $ sudo modprobe i2c-dev
pi@moode:~ $ ls /dev/i2c*
/dev/i2c-1
2. I thought the /etc/modules file was also overwritten by the the 720 to 721 update, but I could be mistaken.
3. In worker.php, it doesn't look like i2c-dev is loaded by the ALSA loopback configuration (and it wasn't loaded when I tried it), but is loaded for 'Allo Boss 2 DAC',
Besides the specific details of the I2C configuration on Moode (which are clearer to me now), I am mainly interested in a user's mpd_oled configuration being able to survive a Moode update (as it wasn't previously possible for an mpd_oled user to update Moode because of system customisations). The user has to configure their screen, and this will involve loading modules (for I2C or SPI) and adding settings to '/boot/config.txt'. It would be useful if there was a Moode recommended place for a user to load modules, that won't be overwritten by an update. Also, it would be useful if Moode could support a config.txt include file for user settings that would survive an update ( https://www.raspberrypi.org/documentatio...xt/misc.md ), so if the user adds a setting for the i2c bus speed like 'dtparam=i2c_arm_baudrate=800000' to the include file then the setting is still present after the Moode update.
I think those are all my comments. I don't want to hijack the 7.2.1 support thread!
Francesco and bitlab, thank you for the suggestion to use raspi-config. I thought it was something that shouldn't be used on Moode, but I can't find a reference not to use it in the forums! I'll check out if it can make the mpd_oled instructions easier. I think 'dtparam=i2c_arm_baudrate=800000' was commented out in '/boot/config.txt' by the upgrade, and if that is the case this file would still need editing after an upgrade.
Adrian.