follow me

Codama をTinker Board Sで使う。

Codama (こだま) をTinker Board Sで使う方法です。
Tinker Board Sで使いたい人がどれだけいるかわかりませんが。
まぁせっかくドライバ作ったんだし公開しておきます。(ずっと放置してた。)
https://github.com/srchack/codama-tinker-driver.git


注意点はいくつかありまして、
  1. Tinker Boardでは動きません。Tinker Board Sだけが対応です。
    これは、I2Sスレーブモードに対応するのが、Tinker Board Sだけだからになります。
  2. Tinker Board S付属のヒートシンクが入りません。HATが干渉してしまう為、背の低いヒートシンクを用意する必要があります。
  3. Codamaのファームウェアを書き込むユーティリティ codama_dfu_i2c が失敗する事が多々あります。 これは、i2c周りの問題です。rk3288のi2cドライバでI2C Clock Stretchingが想定動作しないので、i2c-gpioを利用するのですが、安定していない様です。
ドライバの調整はじっくりとやっていくとして、とりあえず使うに困らないので一旦放流しておきます。
導入方法もgithubに記載しているので詰まることはないかと。

おそらく疑問に思う人が居るだろう点は、最後の処で/etc/rc.localに追記している箇所だろうか。
# Run Alsa at startup so that alsamixer configures
arecord -d 1 > /dev/null 2>&1
aplay dummy > /dev/null 2>&1
何故こんなものを入れているのかというと、Codamaはボリューム調整がハードでは出来ず、alsaのsoftvolを利用している点からくるのですが、なんでも良いので何かを流さないとVolume Controlに登場してくれない罠。
Raspberry Piでも同様なのですが、キモチワルイです。
alsaは素人なので良くわからんのです。
follow me

技術書典7、薄い本仕入れてきた

技術書典5、薄い本仕入れてきました。
人多すぎ。。。ちょっと辛いです。


ちょっと散財しすぎましたが気にしてません。
たまにはいいんですよ。
気分少しは上がったので。
follow me

アキバぶら歩き(2019/09/28)

毎週の様にぶらぶらしなくなった街、秋葉原。
もういいかな感にあふれてきた街、アキバと秋葉原。
2019/09/28(土)、ぶらぶらした戦利品記録です。

秋月電子通商
i.MX 8Mが欲しかっただけです。
Google Coral Dev Board、GoogleのTPUはまったくもって必要なかったんですがね。
ただそれだけです。

follow me

TinkerOS_Debian v2.0.11betaが登場してる


ASUS Tinker BoardのOS、TinkerOS Debian がいつの間にか2.0.11betaを出していた。
2019/08/22に出ていたようです。(本当は気がついてたけど放置してた。)
ChangeLogからは、バグ修正だけなのだろうと思われますが、詳細がないから困るんですよね。

で、またKernelモジュールを追加しようと思ったときに困りました。
https://github.com/TinkerBoard/debian_kernel にv2.0.11が存在しない。
というか、v2.0.10を中途半端が用意された。。。
やる気ないのかなASUS。。。
結局今回も、Kernel headersについては、linux-headers-4.4.132+_4.4.132+-1_armhf.deb を使えという形でよさげ、少しわかりにくいですね。

2.0.11の問題ではないのだが、overlayなモジュールを利用する場合にTinkerOSで嵌る箇所は継続中の模様、
aptでdevice-tree-compilerをインストールしても意味が無い点です。
バージョンが古くて、ことごとくError: ./example.dts:2.2-8 syntax error が出ます。
$ dtc -I dts -O dtb -o  ./example.dtbo  ./example.dts
Error: ./example.dts:2.2-8 syntax error
FATAL ERROR: Unable to parse input tree
linux-headersパッケージ(上記のgithubからダウンロードしたもの)に含まれる dtc を利用しましょう。
/usr/src/linux-headers-4.4.132+/scripts/dtc/dtc に配置されるやつです。
Tinker Board Forum に情報があります。
follow me

アキバぶら歩き(2019/09/21)

毎週の様にぶらぶらしなくなった街、秋葉原。
もういいかな感にあふれてきた街、アキバと秋葉原。
2019/09/21(土)、ぶらぶらした戦利品記録です。

オリオスペック
クリアファイル貰ってきた。
それより、MikroTik CRS305-1G-4S+が置いてある方がビックリした。
みんな見に行くといいと思うよ。

follow me

Raspberry Pi 4 Model B、そろそろ日本も販売開始かな?

SoCも変更されたので動作確認のために入手はしていたものの、相変わらずまともに触れていない。
いけないですね。
まぁTELECが3A+ですらまだという状況だった訳で、やる気が上がらないのもある訳ですが。
そろそろドライバ対応しておかないとなので、とりあえず起動まで確認とりました。
ほんとシールドルームほしい。(暗室まではいらない。。。)

個人コンテナDCの人達は意外と電波遮蔽もされてウハウハだったりするのだろうか?(最近気になってる)
コンテナの電波遮蔽率がめっちゃ気になって寝れない。

電波云々はまぁ置いといて、とりあえず、Raspberry Pi 4Bの開封。

follow me

ルパン三世 FRIDAY’S NIGHT

池袋HUMAXシネマズでやってる「ルパン三世 FRIDAY’S NIGHT
シーズン1があと1回で終わりですか。
ルパンSP悩みます。
仕事終わって移動考えるとぎりぎりなんですよね。

当時のパンフが販売されてました。
買占めも起きてない様で良いですね。
当たり前といえば当たり前なんですが。
follow me

TinkerOS で i2cのクロックを変える

Tinker Boardのi2cのクロックを変えるのになぜにこんな面倒なのか。。。
Tinker Board Forumの情報みてやったら変わらんし。
という記憶が薄れてきたのでメモを残しておこう。
動作するdtsファイルはこうなった。
こいつをdtcでコンパイルしたものを/boot/overlaysに配置。
/dts-v1/;
/plugin/;

/ {
    compatible = "rockchip,rk3288-miniarm","rockchip,rk3288";

	fragment@0 {
		target-path = "/";
		__overlay__ {
//			i2c0: i2c@ff650000 {
			i2c1: i2c@ff140000 {
//			i2c2: i2c@ff660000 {
//			i2c3: i2c@ff150000 {
//			i2c4: i2c@ff160000 {
//			i2c5: i2c@ff170000 {
				compatible = "rockchip,rk3288-i2c";
				clock-frequency = <100000>;
			};
		};
	};

};
overlayの設定は、/boot/hw_intf.confに入れるのがTinkerOSの作法。以下を追記。
intf:dtoverlay=i2c-clock-freq
follow me

アキバぶら歩き(2019/08/14)

毎週の様にぶらぶらしなくなった街、秋葉原。
もういいかな感にあふれてきた街、アキバと秋葉原。
2019/08/14(水)、ぶらぶらした戦利品記録です。
夏休みという事で水曜日だけどぶらぶらしてきました。
台風の影響で天気が読めませんでしたが、雲が切れたタイミングで行って帰ってこれたので良しとしましょう。

嫌パン展6
嫌な顔されながらおパンツ見せてもらいたいイラスト展6、女性が結構来ているのが毎回不思議です。
そんなもんなんですかね?

follow me

PiJECTOR MEMSレーザー プロジェクター


Maker Faire Tokyo 2019で入手した「PiJECTOR MEMSレーザー プロジェクター モジュール for Pi」を組み立てた。
会場で買えばちょっとお安いので。
以前からあったHDMIタイプよりも光量が増えているという話もあり期待です。
HDMIではなくRaspberry Piの40ピンのヘッダーからの制御という事で、Raspberry Pi前提感がでていますが、HDMIをわざわざ差し替えたりが面倒なので、コッチの方が扱いやすそう感が僕にはあります。
動作温度範囲 0℃~35℃というのは少し狭いな感を感じつつも困りはしない気はします。