enviro pHAT

RasPi や RasPi Zero に付けられる拡張基板。

akizukidenshi.com

加速度センサ、地磁気センサ、光センサ、温度湿度センサなどがついていてお得。

本家はこちら

Enviro pHATshop.pimoroni.com

python によるライブラリが公開されている。

GitHub - pimoroni/enviro-phat: Python libraries and examples for the Pimoroni Enviro pHAT

これを使えば簡単に操作できそう。

しかし、C/C++から使おうとすると、C/C++用のライブラリは上記のリポジトリにはなさそう。まぁ、普通は python ライブラリがあれば十分なわけだが。

基板上の各種センサは I2C IFを持っているので、RasPi用の I2Cライブラリを使えばデータの取得はできそう。I2Cデバイスのアドレスは公開されている。

 

あとは、各デバイスが出力するデータのフォーマットがわかれば、読み取れるはず。

そこらへんは、python ライブラリのソースと各デバイスのデータシートを見ればわかるだろう。

 

  • BMP280 temperature/pressure sensor
  • TCS3472 light and RGB colour sensor
  • Two LEDs for illumination
  • LSM303D accelerometer/magnetometer sensor
  • ADS1015 4-channel 3.3v, analog to digital sensor (ADC)

ん?今気がついたが、ADCが乗っているということは、センサ類はアナログ出力で、それをADCに入力し、ADCが I2C でセンサ値をデジタル出力している、ということか。

各デバイスのI2Cでのアドレスはここで見つけた。

  • 0x49: ADS1015
  • 0x29: TCS3472
  • 0x1d: LSM303D
  • 0x77: BMP280