Seeed K.K.の中井です。
先日とあるユーザー様から「Grove Beginner Kit for Arduinoの温湿度センサーが黒いセンサーに変わっていて既存のコードでは動作しない」とご連絡をいただきました。 確認してみたところ搭載している温湿度センサーがDHT11からDHT20にアップデートされていることが判明しました。

DHT11 vs DHT20
見た目でセンサーの樹脂カラーが水色から黒に変更されているので、どちらのセンサーが搭載されているのかは一目瞭然です。

| [変更前] DHT11 | [変更後] DHT20 | |
|---|---|---|
| Supply Voltage | DC 3.3~5.5V | DC 2.0~5.5V |
| Measuring Range (Temperature) | -20 ~ +60 ℃ | -40 ~ +80 ℃ |
| Measuring Range (Humidity) | 5 ~ 95% RH | 0 ~ 100% RH |
| Temperature Accuracy | ± 1 ℃ | ± 0.5 ℃ |
| Humidity Accuracy | ± 5 % RH ( 25 ℃ ) | ± 3 % RH ( 25 ℃ ) |
| Interface | 1-Wire | I2C |
変更後のDHT20は、変更前のDHT11と比べると性能が良いです。ただし、インターフェースが異なるため、既存のコードが温湿度センサーを使っていると、そのままでは正常に動作しないです。
Q. DHT20を使うには?
ArduinoのGrove Temperature And Humidity Sensorライブラリをバージョン2.0.1以降に更新し、DHTTYPEをDHT20に変更すればOKです。

例えば、サンプルコード「DHTtester」をDHT20で動くようにするには、下記のようにDHTTYPEをDHT20に変更します。
// Uncomment whatever type you're using! //#define DHTTYPE DHT11 // DHT 11 //#define DHTTYPE DHT22 // DHT 22 (AM2302) <== この行をコメントアウト //#define DHTTYPE DHT21 // DHT 21 (AM2301) //#define DHTTYPE DHT10 // DHT 10 #define DHTTYPE DHT20 // DHT 20 <== この行をアンコメント
Q. 外装からどちらの温湿度センサーが実装されているのか判別できるか?
2022年4月~5月の製造時に温湿度センサーが切り替わりました。 そのため外装に貼られているラベルに記載された日付で判断することができます。
| 日付 | 温湿度センサー |
|---|---|
| 2022年3月以前 | DHT11 |
| 2022年4月以降 | DHT20 |
ちなみに、手元のアップデート版(DHT20搭載)のラベルは2022年11月9日でした。

変更履歴
| 日付 | 変更者 | 変更内容 |
|---|---|---|
| 2022/12/23 | mnakai | 作成 |