A111搭載測距モジュールピッチ変換基板を最新のRaspberry Pi OSで動かす

投稿者:

ご好評いただいている A111搭載測距モジュールピッチ変換基板 ですが、最新のRaspberry Pi OSでは動かないという話をお客様から聞いて、当社で追試したところやはり動きませんでした。

OSのバージョンは5.4.51-v7+ #1333でした。

調べてみたところ、最新のRaspberry Pi OSではLinux Kernelのバージョンが5.xになっており、Linux Kernel 5ではGPIOの扱いが変わっていました。今までは/sys/class/gpio下にアクセスすることによりGPIOを操作していましたがこれが非推奨となり、gpiolibを使うのが推奨になっています。

このため、従来の方法でGPIOにアクセスしていたAcconeer社のライブラリが動作しなくなったのが原因でA111にアクセスできなくなっています。Acconeer社のライブラリがgpiolibを使うように修正してくれるのが根本的解決になると思うのですが、それがいつになるのかわからないので暫定的な対処方法を紹介します。

ライブラリを展開すると/rpi_sparkfun/というディレクトリができていると思います。この中の/source/acc_board_a1r2_rpi_sparkfun.cというファイルを変更します。

116行目と125行目をコメントアウトして保存してください。

保存したらカレントディレクトリを/rpi_sparkfun/にして、
make clean; make all
して、全体をコンパイルし直してください。

これでサンプルプログラムが動作するようになると思います。

なお、この変更を行うと4.x系のRaspberry Pi OSではA111が動かなくなりますのでご注意ください。