I2Cの簡単な仕組み、Raspberry Pi(ラズパイ)で有効化と実際にI2Cデバイスを検出する手順の解説しています。I2C対応のセンサーやディスプレイ、ADコンバーターなどを利用することで、Raspberry Piの可能性がさらに広がります。Raspberry Pi OS (Raspbian)インストール後は無効になっているので、こちらを参考に有効化して下さい。
Raspberry Pi OS Version 2022-01-28対応
更新日 : 2022年2月14日I2Cとは
I2Cとは、Raspberry PiとセンサーなどのICとの間で通信するための規格のことです。
以下は、温度センサーと気圧センサーをI2Cで接続した例です。Raspberry Piからは測定の指示を出し、センサーが温度と気圧データを送信する、といった具合です。それぞれのセンサーは独自の「アドレス」を持っているため、1組のI2C信号線に複数のデバイスを接続して、個別に制御することが可能です。

実際の接続ですが、Raspberry PiのGPIO端子にI2C用のピンが用意されており(以下の図の3番ピンSDAと5番ピンSCLを使用)、そこにセンサーなどを接続する形になります。

出典 : Raspberry Pi GPIO
わずか2本の信号線で複数のデバイスと通信できる点がメリットで、高速な通信が必要ないセンサーなどのICでは広く使われています。
しかし、Raspberry Pi OS (Raspbian)をインストール後はI2Cが無効になっているので、I2Cを有効にする必要があります。
I2Cの有効化
Raspberry Pi OS (Raspbian)において、I2Cインターフェースは、インストール後は無効になっているので、有効化しておく必要があります。
スタートメニューから、「設定 -> Raspberry Piの設定」をクリックします。

設定ツールが起動するので、上部タブから「インターフェイス」を選択し、I2Cの項目を有効にします。


「OK]をクリックして完了です。
これでI2Cを使う準備が整いました。設定ツールが用意されているので、非常に簡単ですね!
I2Cで接続されているデバイスの確認
接続がうまくできているかの確認や、アドレスの確認に便利な方法を紹介します。普通にI2Cを使う場合はこの手順は必要ありません。
ターミナルを開いて、以下の$に続くコマンドを実行します。
$ i2cdetect -y 1
すると、全てのアドレスについてI2Cで接続されたデバイスをスキャンして、結果を表示します。以下の例ではアドレス0x39、0x76、0x77に接続された3つのデバイスを検出しました。なお、アドレスはデバイスによって異なります。

この方法で、I2Cの接続がうまくできているかと、デバイスのアドレスが分かります。
ただし、一部のデバイスはRaspberry Piからの入力のみで、応答を返さないものもあり、そういった場合はこの方法では検出できません。
まとめ
I2Cの簡単な仕組み、Raspberry Piで有効化と実際にI2Cデバイスを検出する手順の解説は以上です。I2C対応のセンサーやディスプレイ、ADコンバーターなど様々なデバイスを利用することで、Raspberry Piの可能性がさらに広がります。
温度、湿度、気圧、明るさ、二酸化炭素センサーなどをI2Cで制御するIndoor Corgi製の拡張基板もあるので、ぜひご利用下さい。
次のステップとして、VNCを利用してPCからRaspberry Piにリモート接続する手順を解説しています。

TSL2572センサーとRaspberry Piで明るさ(照度)を測定する
Indoor Corgiのセンサー制御ソフトウェア「cgsensor」を利用して、TSL2572センサーで明るさを測定する方法を解説します。コマンドラインツールを使って1行もコードを書かずに測定ができるほか、Pythonパッケージを使えばご自身のプログラムから簡単にセンサーを制御できます。

SCD41 CO2センサーとRaspberry Piで二酸化炭素濃度を測定する
Indoor Corgiのセンサー制御ソフトウェア「cgsensor」を利用して、SCD41 CO2センサーで二酸化炭素濃度を測定したり、センサーの校正や設定を変更する方法を解説します。コマンドラインツールを使って1行もコードを書かずに測定や記録ができるほか、Pythonパッケージを使えばご自身のプログラムから簡単にセンサーを制御できます。

定期撮影Raspberry Piカメラをモバイルバッテリーで長期運用 (RPZ-PowerMGR)
Raspberry Pi(ラズパイ)と純正カメラを使用して、定期的に撮影するタイムラプス機能を実装する方法を解説します。RPZ-PowerMGR拡張基板を使うことで、指定時刻に起動し、撮影後は自動的にシャットダウン&電源OFFします。待機時の消費電力をカットすることで、モバイルバッテリーで長期運用が可能になります。