●Ubuntu 64bit DeskTop Client install
2022.05.07
RaspberryPiに Ubuntuを installすると動作が早いと githubに書いてあった。
Ubuntuも、RasPi imagerから Downloadして SSDを作成する事ができます。
対応言語は Linux Mac Windowから選択できます。
installできる OSの種類は DeskTop Type Ubuntu Server Ubuntu Core
などがあります。
● Ubuntu Server:
Networkの設定で混乱して立上げ後も WiFiが遅い、eth0に切替えても遅い。
アプリの installが、何かの原因で失敗ばかりして異常に遅い。
設定を変更するにも時間ばかり掛かってうまくいかない。
netplanと resolv.confの設定を途中であきらめる。
● Ubuntu Core:
制限事項が多すぎて途中であきらめる。
【install 環境】
Raspi RAM O S python SSD Hard Camera tensorflow |
RaspberryPi 4B 4 GB Ubuntu 22.04 LTS DeskTop Client aarch64 ver 3.10.4 micro SD 64GB SunFounder PciCar-4WD Kit RaspberryPi Camera Module tensorflow-aarch64 2.8.0 |
【Desk Top 64bit OS Client install】
RasPi imagerで作成した SSDを取り付けて電源を入れると
下記の画面が立ち上がってきます。
Ubuntu 64bit OS Client Top 画面
Ubuntuの network設定は netplanを設定して行います。
defaultの yamlは修正するなと云っていますので、01.yamlをcopyして
60.yamlを作成してからnetworkの設定をします。
netplanは、python Programと同じ考えで作成しなければなりません。
インデント(左端からの空白数)をきちんと合わせないと Errorが消えません。
yamlを設定したら netplan applyで確認して、
Errorのなくなるまで修正を繰り返します。
$ cd /etc/netplan
$ cp 01-network-manager-all.yaml 60-network-manager-all.yaml
$ sudo nano 60-network-manager-all.yaml
network:
version: 2
renderer: networkd
ethernets:
eth0:
dhcp4: true
dhcp6: true
optional: true
nameservers:
addresses: [192.168.1.1, 8.8.8.8]
wifis:
wlan0:
dhcp4: false
dhcp6: true
optional: true
routes:
- to: 192.168.1.0/24
- 192.168.1.1
# gateway4: 192.168.1.1
nameservers:
addresses: [192.168.1.1, 8.8.8.8]
access-points:
"Buffalo-A-788E":
hidden: true
password: "xxxxxxxxxxxx"
addresses:
- 192.168.1.11/24
設定が終わったら、netplan applyで確認します。
$ sudo netplan apply
Errorがなければ作成完了です。
【wifi 設定確認】
$ ip addr
$ networkctl status -a ・・・network 状態表示
$ wifi-status ・・・wifi状態確認 ctl+cで戻る
$ nmtui ・・・簡易GUI wifi設定
$ nmcli ・・・network 詳細表示
$ ls /sys/class/net ・・・lan/wifi 名称を見る
$ wpa_cli -i wlan0 status ・・・wlan0 statusを見る
$ sudo piwiz ・・・初期設定のやり直し
うまくいかなかった場合
$ sudo netplan --debug try ・・・デバッグ
IP Addressが割り振られない場合は手動で IP設定。
$ sudo ip address add 192.168.1.11/24 broadcast 192.168.1.255 dev wlan0
$ sudo ip route add default via 192.168.1.1
$ sudo ip address del 192.168.1.1 dev wlan0
$ sudo ip link set eth0 up
$ sudo ip link set wlan0 up
【Camera Interface 確認】
Camera Interfaceの確認は以下の Commandを使用します。
$ ls /dev/video0 ・・・ video device の認識確認
/dev/video ・・・表示が出れば認識している
$ sudo apt install fswebcam ・・・webcam app install
$ sudo dmesg | grep -i camera ・・・camera 認識しているか
$ sudo dmesg | grep -i usb ・・・usb に関連する物は何か
● v4l2-ctl ・・・ubuntu camera interface command
$ sudo apt-get install v4l-utils ・・・install
$ v4l2-ctl --list-devices ・・・camera 一覧
$ v4l2-ctl -d /dev/video0 --info ・・・device 情報表示
$ v4l2-ctl -d /dev/video0 --all ・・・deviceのすべての情報表示
$ v4l2-ctl -d /dev/video0 --list-formats ・・・formatの一覧表示
$ v4l2-ctl -d /dev/video0 --list-formats-ext ・・・fram size fram rate
$ avconv -f video4linux2 -list_formats all -i /dev/video0
● camara command ・・・64bit camera command
$ libcamera-hello -t 0 ctl+c まで表示継続
$ libcamera-jpeg -o test.jpg test.jpg を作成
$ libcamera-still -t 10000 10秒間継続表示
$ libcamera-vid -t 10000 10秒間継続表示
video に pi ユーザー名を登録 ・・・video にユーザー登録
$ sudo gpasswd -a pi video
$ [sudo] password for pi: xxxx
Adding user pi to group video
$ cat /etc/group | grep video ・・・video group の登録内容確認
video:x:44:pi ・・・pi が video groupに登録された
【Camera Inteface Test】
camera Interfaceは config.txtに下記2行を書かないと動作しません。
$ sudo vcgencmd get_camer ・・・camera status 表示
$ boot/firmware/config.txt
【all】の下に2行を追加。
start_x=1
gpu_mem=128 ・・・gpu memry は 128MB以上を割り付ける
$ boot/config.txt ・・・camera type V2 の設定が必要
#dtoverlay=vc4-kms-v3d
dtoverlay=imx219 ・・・これはカメラ type 毎に違う。
Camera typeの詳細はこちら ⇒ RasPi Camera type list
【仮想環境 構築】
pyenv で仮想環境を構築
まず、「Virtual」という仮想環境用の Directoryを作成します。
そして、/home/pi/Virtualの python version表示
$ mkdir Virtual
$ cd Virtual
$ pyenv versions
*system
$ python -V
python 3.10.4
仮想環境の作成は、Mainの環境の python Versionが仮想環境に反映されるので
まず Main環境側で準備をします。
Main環境を python-3.7.13に Local固定した状態で venvで py37envという
Folderを作成して python3.7.13環境を構築します。
$ cd /home/pi/Virtual
$ python3 -m venv py37env ・・・py37env Folder作成
仮想環境には pyenvで 必要となる pythonを installして
version 3.7.13を localに固定します。
$ cd /home/Virtual/py37env
$ pyenv versions
system
3.7.3
*3.7.13
3.8.13
3.9.12
【仮想環境に Tensorflow install】
作成した仮想環境に Tensorflowを installします。
$ sudo apt update
$ sudo apt upgrade
$ cd /home/Virtual/py37env
$ . bin/activate
(py37env)$ pip install pip --upgrade pip
(py37env)$ pip install tensorflow-aarch64
【これは、ここで行き止まり】 <2022.05.21>
● Ubuntu 64bit OS Client :
64bit版はmmal.so がない
vcgencmd get_camera で supported=1 detected=0 になる。
64bit 版 libcamera not found
32bit版の raspistill command も install できない。
64bit版 libcamra-hello not found になる。
----------------------------------------------------------------------------------------------------------------------------