Adventures with I2C & Minerva Mk2
Posted: Fri Sep 05, 2025 1:44 pm
I thought I'd create a thread on i2c & Minerva Mk2 to document my adventures on the topic in case anyone else wants to have a play now or in the future. Hope that's ok.
The intention is to document the devices I or anyone else tries, and more specifically "quick and dirty" basic programs to prove functionality and later the creation of extensions to super basic in assembler
It's targeted at i2c on a Minerva Mk2 board (either original or a remake https://github.com/alvaroalea/QL_Minerva_MK2) so the basic test programs use i2c_io_bin (which is assumed to have already been lrespr'd)
EDIT: It turns out that the 7-bit I2C address gets shifted 1 bit in the i2c command string, but I2C_IO uses just the 7 bit address so is always half the value. An ID of &A0 (as used for the Minerva Mk2's RTC/NVRAM) needs to be &50 when specified as a parameter in I2C_IO as this is the 7-bit ID address without the read/write bit. Many thanks Pr0f
A remake of the Minerva Mk2 (I'm using 15 pin D connectors for i2c to maintain hardware compatibility with my BBC Model B's i2c)
A 2 x device harness
A harness for attaching a device to the 2 x device harness or to the Minerva Mk2 (with an HTU21D attached)
The intention is to document the devices I or anyone else tries, and more specifically "quick and dirty" basic programs to prove functionality and later the creation of extensions to super basic in assembler
It's targeted at i2c on a Minerva Mk2 board (either original or a remake https://github.com/alvaroalea/QL_Minerva_MK2) so the basic test programs use i2c_io_bin (which is assumed to have already been lrespr'd)
EDIT: It turns out that the 7-bit I2C address gets shifted 1 bit in the i2c command string, but I2C_IO uses just the 7 bit address so is always half the value. An ID of &A0 (as used for the Minerva Mk2's RTC/NVRAM) needs to be &50 when specified as a parameter in I2C_IO as this is the 7-bit ID address without the read/write bit. Many thanks Pr0f
A remake of the Minerva Mk2 (I'm using 15 pin D connectors for i2c to maintain hardware compatibility with my BBC Model B's i2c)
A 2 x device harness
A harness for attaching a device to the 2 x device harness or to the Minerva Mk2 (with an HTU21D attached)