LoginSignup
0
0

○○インスパイア系を食した話【radxa zero3w】

Posted at

ラーメンの話じゃないよ

はじめに

  • GW前にラズパイ5に触り始めて、最初はヘッドレスに取り組んでみたけど、arduino村からやってきた身としては、「ラズパイも電子パーツを動かしてなんぼでしょ」と途中で目が覚めた。
  • つか、環境構築ってプログラムを書く楽しさはなく、延々とネットで調べて試行錯誤する苦行だったよ。まぁ、ラズパイ自体をパーツと捉えて、ラズパイを動かす楽しさもちょっぴりあったけどね。
  • で、反省した後、パーツを取り付けやすいzero2wを買ったけど、今どきmicroUSBとか終わってると思ったので、速攻でradxa_zero3w(以下、zero3)を注文した。
  • eMMCを装備していて、sdカードがなくても使える。もちろんsdカードスロットもあるから、eMMCをないものとして運用も可能だけど。
  • 今回は、zero3のeMMCにdebianをインストールして見たので、紹介する。

手順(eMMCインストール)

  • eMMCインストールは面倒だから、別にsdカードでいいやと思ったら、こちらへどうぞ。インストールの楽さや、バックアップの容易さを考えたら、eMMCを使うメリットってあまり思い浮かばない...それでも、eMMC運用にロマンを感じる人は次に進んでみたらいいよ。
  • まあ、このページの手順通りにやるだけなんだけどね。
  • ubuntuやmac使いの人は、コマンドベースで、rkdeveloptoolを使ってeMMCに書き込むことになる。windowsの場合は、アプリがあるから、もう少し楽みたいだけどね。
  • まずは、ubuntuやmacにrkdeveloptoolをインストールすることから始める。
  • debian(ubuntu)での手順は次の通りとされている。今回は、parallels上のubuntu24.04で作業を行った。
sudo apt-get update
sudo apt-get install -y libudev-dev libusb-1.0-0-dev dh-autoreconf pkg-config libusb-1.0 build-essential git wget
git clone https://github.com/rockchip-linux/rkdeveloptool
cd rkdeveloptool
wget https://patch-diff.githubusercontent.com/raw/rockchip-linux/rkdeveloptool/pull/73.patch
wget https://patch-diff.githubusercontent.com/raw/rockchip-linux/rkdeveloptool/pull/85.patch
git am *.patch
autoreconf -i
./configure
make -j $(nproc)
sudo cp rkdeveloptool /usr/local/sbin/
  • 上記手順通りにやって、rkdeveloptoolを無事にインストールできた人はお疲れ様でした。僕はうまくいきませんでした。
  • 途中のgit am *.patchで、下記メッセージが出て止まったよ。
*** Please tell me who you are.

Run

  git config --global user.email "you@example.com"
  git config --global user.name "Your Name"

to set your account's default identity.
Omit --global to set the identity only in this repository.

fatal: unable to auto-detect email address (got '*****@***.(none)')
  • でね、調べると、emailと名前を登録できてないのが原因ということで、メッセージに従って、git config --global user.email "メアド"git config --global user.name "なまえ"をしたわけですよ...
  • で、エラー回避できず。なんでだよ。
  • 結構、調べたら、「--global」を「--local」にしたらOKという情報を見つけて、うまくいった........ふぅ.......こういうとこだよ、linuxの作業で本当に本当にイライラするのは...画面の通りに作業して、ネットで調べても、うまく行く人とうまく行かない人がいて、その解決策も膨大な試行錯誤で知るしかないという、壮大な無駄な時間。糞みたいな時間だよ。
  • で、rkdeveloptoolを無事にインストールできたので、-hオプションで機能を見ると、次の通り。
---------------------Tool Usage ---------------------
Help:			-h or --help
Version:		-v or --version
ListDevice:		ld
DownloadBoot:		db <Loader>
UpgradeLoader:		ul <Loader>
ReadLBA:		rl  <BeginSec> <SectorLen> <File>
WriteLBA:		wl  <BeginSec> <File>
WriteLBA:		wlx  <PartitionName> <File>
WriteGPT:		gpt <gpt partition table>
WriteParameter:		prm <parameter>
PrintPartition:		ppt 
EraseFlash:		ef 
TestDevice:		td
ResetDevice:		rd [subcode]
ReadFlashID:		rid
ReadFlashInfo:		rfi
ReadChipInfo:		rci
ReadCapability:		rcb
PackBootLoader:		pack
UnpackBootLoader:	unpack <boot loader>
TagSPL:			tagspl <tag> <U-Boot SPL>
-------------------------------------------------------
  • 使うのは、①-dbと②-wlと③-rdと④-efと⑤-ldだけ。
  • osを書き込むときの順番は、①⇒②⇒③
  • 書き込んだosを削除するときは、①⇒④⇒③
  • macがzero3を認識しているかどうかを確認するのが⑤。認識されていれば、こんな感じで返ってくる。macにzero3を接続するときは、裏面の小さなボタンを押しながら刺すこと。
    スクリーンショット 2024-05-25 16.29.15.jpg
  • osはここから選ぶけど、説明を見るとこれ一択みたいなので、素直にこれにした。
    スクリーンショット 2024-05-25 19.12.43.jpg
  • ちなみに、書き込んだosを削除してからsdを差し込んで起動しても、sdからbootしてくれないから、再度、eMMCにosを書き込むしかない。
  • sdからbootさせるための方法もありそうだけど、調べる苦労が果てしなさそうだから、調べるのをやめた。

osインストール後

  • 起動するとこんな感じ
    スクリーンショット 2024-05-25 19.26.40.jpg
  • 実は、最初、軽量と噂のdietpiがzero3用のosイメージを配布してたからインストールしたんだけど、bluetoothが使えなかったから諦めた。
  • その点、radxa純正のosイメージはちゃんとbluetoothが使えたよ。それだけで感動できちゃうね、ラズパイ界隈は。本当にくだらないことで感動できちゃうよ。
  • で、まずは、ちっこいキーボードを使ってbluetooth設定して、いんちきヘッドレス(自作キャプチャアプリ版)が可能となりました。めでたしめでたし。
  • そうだ、重要なことを伝えるの忘れてた。
  • インストールした後に、「よーし、パパ、upgradeしちゃうぞ〜」とつぶやきつつsudo apt upgradeをしたらアウト。bluetoothが使えなくなります。
  • upgradeした後、rebootとすると、画面右上のアイコン(赤矢印)が消えます。
    スクリーンショット 2024-05-25 19.38.20.jpg
  • そして、こんな感じになります。
    image.png
  • sudo apt updateするのはいいけど、upgradeは慎重にね。

終わりに

  • upgradeしちゃった愚かな僕の場合、なんとかbluetoothを回復できないか調べるため、1時間ほど潰して分からず、じゃあとりあえずsdカードで起動させようかと思って、sdカードを起動ドライブにする方法を調べるために1時間ほど潰して分からず、しょうがないからeMMCをクリアすれば強制的にsdカードで起動するだろうと思って、eMMCをクリアする方法を調べるのに30分ほど費やし(これは判明した。)、eMMCをクリアしてもsdから起動しないことが判明し、結局、eMMCに再インストールした、と....
  • この過程で、外国人も苦労して見つけられていない現状を知ったよ。みんな、無駄な時間を過ごしてるなぁ。
  • プログラムを書くための知識を得るために費やした時間は、努力を積み上げた気がするけど、たかが環境構築のために無駄な時間を過ごすのは、本当に糞。時間をドブに捨ててる気がする。
  • そういえば、スマホ操作用の言語として学習するのにswiftを選んだのは、AndroidStudioが環境由来のエラーしまくったから、それに嫌気がさしたからなんだよなぁ。
  • 結局、○○インスパイア系を食した結果、playgrounds最高!ってことが再確認できたよ。ありがとう!そして、ありがとう!
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0