こんにちは、mi2yo4です。
今日の昼前に東海地方も梅雨入りしたそうです。これから1ヶ月ぐらいはジメジメとした気候が続くんですね…
さて、今回は久々にRaspberryPiネタを書いてみようかと思います。
とここで、宣伝 ^^)
ログBOXの写真を撮って頂きました。
今回、20台製作しましたが、おかげさまで早くも売り切れてしまいそうです。今年の初めから本格的に受注を開始していますが、受注ペースがここ最近、上がってきているのを実感します。
以上、ログBOXの宣伝でした。
本題に戻ります。
OSを更新したら1-Wireセンサが反応しなくなった
以前にRaspberryPiで1-Wire防水温度センサを使ってみるという記事を書きました。
あちこちからリンクが張られていたので、意外と人気があったようです。自分の書いたことが誰かの役に立つというのはイイですね。
それはさておき、弊社にあるRaspberryPiのType-B、昔書き込んだOSだと起動しない場合がある事に気づきました。
どうやらB+が発売されたタイミングと前後して、Type-Bも中身が少し変わっているようです。
発売元に問い合わせると「最新のOSバージョンをお使い下さい」という事でしたので、OSのバージョンも最新のものに変更しておきました。その結果…
1-Wire防水温度センサが認識しなくなりましたorz
どどどどえどうしよう…
1-Wire温度センサを新OSでも認識させる方法
慌ててもしょうがない、って事で色々と情報を検索してみました。
すると、あっさりと発見。
DS18B20 not listed in /sys/bus/w1/devices
やはり、全世界で皆同じように苦労しているんだなぁ…と思う瞬間でした ^^)
Raspbianの新しいバージョンでは以下のようになっているみたいですね。
- /etc/modulesのw1関連の設定は有効でない
- /boot/config.txtにw1関連の設定を記述する
なので、さくっとconfig.txtに設定を書き込んでしまいましょう!
/boot/config.txt
# w1 device configuration dtoverlay=w1-gpio-pullup,gpiopin=4,pullup=4
弊社で使っていたDS18B20は2線式のものでしたので、上記のpullupに関する記述は必須となります。
(でないとエラーコードが出力されるだけで正しい温度が出力されません)
上記の設定を行い、再起動すれば…
以前と同じように1-Wire温度センサで温度を計測することが出来ます。最近のRaspbianを使っている方は参考にしてみて下さい。
ではまた!