RaspberryPi 4B(以下ラズパイ4B)を購入しましたので、
GPIOピン割り当てを確認したいと思い、gpio readallというコマンドを打ちました。
ところが、
「Oops ‐ unable to determine board type… model: 17」
とエラーが出て確認できなかったのです。
gpioコマンドがラズパイ4Bを認識していないようです。
早速ですがエラーの原因は、WiringPiライブラリが古いからでした。
何故かというと、ラズパイ4Bを購入した際にプリインストールしてあるSDカードを
アップデートせずにそのまま使ってコマンドを打ったからだと思います。
なので、WiringPiライブラリをアップデートすればエラーが出なくなりました。
WiringPi以外のライブラリも古いはずなので、最初に
$ sudo apt-get update $ sudo apt-get upgrade
でソフトウェアアップデートしてみたのですが、これではダメでした。
そもそもWiringPiは、apt-getでは更新できないようです。
本題のWiringPiのアップデートのやり方は、WiringPiのサイトにもありますが、
$ cd /tmp $ wget https://project-downloads.drogon.net/wiringpi-latest.deb $ sudo dpkg -i wiringpi-latest.deb
を実行するとWiringPiが更新され、gpio readallが実行できるようになります。
簡単に説明すると、/tmpにwgetコマンドでwiringpi-latest.debファイルをダウンロードしてきて、
dpkgコマンドでWiringPiを更新しています。まあ、そのままですね。
ちなみにファイルのダウンロードは、/tmpでなくても大丈夫です。
更新前のgpioコマンドのバージョンは、2.50でしたが、
更新後バージョンが2.52にアップデートされラズパイ4Bが認識されるようになり、
gpio readallが表示されるようになりました。
この記事ではラズパイ4Bでしたが、
ラズパイ3B+でもプリインストールされているものを使用していてエラーが出る場合は、
WiringPiライブラリのアップデートを行えばエラーが解消されると思います。
<関連・おすすめ記事>
Raspberry Pi (ラズパイ)の購入後すぐにやっておきたい設定を解説 - 水瓶座列車
Raspberry Pi(ラズパイ)のOSをバックアップ・リストアする方法 - 水瓶座列車
Raspberry Pi 3B+ のGPIOピン割り当ての解説 - 水瓶座列車
RaspberryPi(ラズパイ)でカメラを使ってストリーミング配信する手順 - 水瓶座列車
RaspberryPi 3B+でLEDの点灯・消灯・点滅のやり方 - 水瓶座列車
LCD1602(I2C)を制御する方法を解析調査した結果まとめ - 水瓶座列車
Raspberry Pi (ラズパイ)で役に立つ書籍のおすすめランキングベスト5 - 水瓶座列車