概要
Raspberry Pi 4 B (以下、ラズパイ4)でLepton3.5とPureThermal 2を動かすときに結構苦労したのでその時の内容をまとめます。
結論から言うと、PureThermal 2のファームウェアのアップデートが必要です。
PureThermal 2のファームウェアアップデート
現在のバージョンを確認
dmesg
でラズパイ4に接続されているPureThermal 2のファームウェアの現在のバージョンを確認できます。
ここで、(fw:v1.3.0)
がファームウェアのバージョンになります。
この結果はアップデート後です。(2020年6月27日時点での最新ファームウェア)
アップデート前は(fw:v1.2.1)
でした。
ファームウェアアップデート方法
まずは、ファームウェアをアップデートできる状態にする必要があります。
データシートに書いてある方法に沿ってファームウェアアップデート可能状態にしていきます。
下記の一連の動作はPC - PureThermal 2の間で完結します。
- BOOTボタンを押し続ける。
- BOOTボタンを押したまま、RSTボタンを押す。
- RSTボタンを離す。
- Deviec Firmware Update(DFU)モードに入ることに成功したら、LEDの点滅が止まって輝度が半分になる。
BOOTボタン・RSTボタンは小さくてちょっと押しにくいので注意が必要です。
ちゃんと押せてたらボタンの沈む感覚があると思います。
次に、アップデート環境を構築していきます。僕は今回、Mac Book Air(以下、Mac)で行いました。
WindowsやUbuntuの場合はファームウェアアップデート環境構築方法に書いてあります。
sudo mkdir -p /usr/local
curl -L https://launchpad.net/gcc-arm-embedded/4.9/4.9-2015-q3-update/+download/gcc-arm-none-eabi-4_9-2015q3-20150921-mac.tar.bz2 -o ~/Downloads/gcc-arm-embedded.tar.bz2
sudo tar xjf ~/Downloads/gcc-arm-embedded.tar.bz2 -C /usr/local && rm ~/Downloads/gcc-arm-embedded.tar.bz2
export PATH=$PATH:/usr/local/gcc-arm-none-eabi-4_9-2015q3/bin
git clone https://github.com/groupgets/purethermal1-firmware
cd purethermal1-firmware
make
次に、MacとPureThermal 2を接続してファームウェアのアップデートをしていきます。
brew install stlink
dfu-util -a 0 -D main.bin -s 0x08000000
以上でファームウェアのアップデートが完了します。
念のためdmesg
で(fw:v1.3.0)
になっているか確認しておくといいと思います。
GetThermalを実行
GetThermalを手順に沿ってインストールしていきます。
実行コマンドと実行結果
Mac - ラズパイ4の間はVNCを利用して接続しています。
purethermal1-uvc-captureのuvc-radiometry.pyを実行
purethermal1-uvc-captureを手順に沿ってインストールしていきます。
cloneした後にgit checkout master+libuvc-upstream
を忘れないようにしましょう。
実行コマンドと実行結果
最後に一言
ラズパイ4でLepton 3.5とPureThermal 2を動かすにはPureThermal 2のファームウェアアップデートが必要でした。
ラズパイ3B+は特に何もすることなく普通に動作していたので困っていましたが、なんとか解決して良かったです。
あと、Lepton 3.5とPureThermal 2を接続したときに必ず「カチッ!」と音が鳴るところまで押し込んでください。(これが意外と沼にハマる原因になっています...)
また、筆者はQiita初投稿なので「記事の構成をもっとこうしたほうがいいよ」的なメッセージをくださると嬉しいです。
参考文献