空を見上げて
トップページ » 2010年06月

NASトランスポート(1)

前にもあったが、組み込みLinuxならNASでもよさそうである。

これならUSBメモリなどというものではなく、例えば1Tとかも夢ではない。
据え置きという発想であるから、別段問題はないような...。
ただネットワークは必須というか...。でもないかな?
再生するのはNAS自体だし、NASのHDDなのでそこは問題はない。
問題は「どうやって曲を入れるか?」だが、USBメモリで移し変えるのも面倒。
やはりネットワークだろう、普通に考えて...。
どうせwavなりmp3なりにするのにPCは使うのでそれでもいいような。

さて、そうなると自由に中身が変えられるNASがいい。
まあBuffaroでもIOでもやっている人はいるんだけど、情報が多そうな玄人志向の玄箱にした。
というのもオークションで出ていたというか。
この発想自体は珍しくないようで、エレキジャックでも同じようなことを玄箱Proでやっていた。
やはり似たようなことを考える人はいるものだ。
まあArmadilloにしてからが同じようなものだけど、あれはNASという感じではない。USBメモリなのでスタンドアロンで使える。

ヤフオクをのぞいていると初代の玄箱が250GのHDDをつけて@5000で出ていた。
HDDを調達するのも面倒なのでそのまま落札した。どうもFANの結線を切ってあるとある。(^^!
うるさい音だったのかな?

by   at 09:00  | Permalink  | Comments (0)  | Trackbacks (0)

USBトランスポート(29)

今度はUSBオーディオに関して検討する。

調べてみると「光出力」ってのはあまりない。
まあ安物ではないのであって、高級品にはある。ただ高級品はDACがついていてそれが高級というか。
今はデジタルtoデジタルだけ考えるので別段安くてもいいように思う。

少し前までは例えば
・玄人志向 AUDIO-OPT-USB オーディオアダプタ
http://tool-kobo.ddo.jp/Files/Product/USB2706/USB2706.htm
など安いのがあった。
割り切れば、ヤフオクで光出力専用のが¥1300たっだ。
自作でいいのなら(端子は別途必要なのだが)
・USB2706
http://tool-kobo.ddo.jp/Files/Product/USB2706/USB2706.htm
ってのもある。
・ベリンガーUCA202がよさそうな。
http://www.soundhouse.co.jp/shop/ProductDetail.asp?Item=181%5EUCA202%5E%5E

このあたりはもう1Chipになっていて、低価格なスピーカにも入っているものがあるらしい。
CM102-AというChipがあって共立電子が販売している。(@500)
SANWA SUPPLY MM-SPU2WH USBに入っていてこれは@1366。部品付きだし。
これから光出力が出せる。トランジーバはいるのだが...。
データシートを読むと、44.1KHzにも48KHzにも対応しているらしい。(PLLかな?)
このあたりデジタルtoデジタルなので、そうでもいいと書いたが、1つだけクロックジッタが残る。

どうしても低ジッタにこだわる場合は
ラトックシステム RAL-2496UT1
http://akiba-pc.watch.impress.co.jp/hotline/20091219/ni_cral2496.html
あたりがいいのかもしれないが、遊ぶには高すぎる。(TT)

自作するかバラスか、完成品を買うか...迷いはするが、@1000程度でできるのはおどろいた。
H8の場合は結局I2SからS/PDIF変換ICが高かったりするというか。
USBって思ったより安いというか量産効果というか。凄いものである。


by   at 06:00  | Permalink  | Comments (0)  | Trackbacks (0)

USBトランスポート(28)

Armadillo240であるが、手抜きの代償というか、TelnetとFTPサーバを入れた。

それでも「PCを立ち上げないと接続できないではないか!」となるのだが、iPODTouchにTelnetクライアントを入れるという手がある。
組み込むのは面倒でもないが、幾つか設定ファイルを変える必要がある。
inittabを編集してrc.localを作成して起動から常駐させることにした。

まあ、それでめでたくiPODTouchからログインできて触れるが...
・コマンドが面倒
・iPODTouchのソフトキボードだとなお面倒
という悲惨な結果だった。(TT)
できないよりはましだけど。
しかもコマンドラインなのでリモコンからは程遠い。(TT)
ただiPODTouchなので無線だから、リモコンと言い張れば形態だけはそんな感じになる。

まじめにコンソールの代わりでも作ってやるべきようにも思うが...。

by   at 09:00  | Permalink  | Comments (0)  | Trackbacks (0)

USBトランスポート(27)

後はgpioの制御を書いて、それで演奏制御をすればよい。

そちらはたいしたことがないが、自動マウントがあるので面倒な部分もある。
またどうもスライドショーをつぶさなかったせいか、LED制御が思ったように動かない。
わかるといえばわかるので、このままにしておくことにする。

で、完成!!

価格に見合わず操作は上海問屋風(TT)
しかも、自動マウントで結構な頻度で失敗するし、Linuxなので立ち上がりも...。まあ普通より早いけど。ResetSWが活躍したりする。
いいのは...
・本体が小さく省電力
・好きなUSBオーディオデバイスがつけられる(多分)
・メモリで動作を変えられる(ソフトを書かなくてはいけないが)
である。

例えばメモリを変えるとネットラジオになる。(^^)
これは案外便利で放送局ごとUSBに書いておけば...。

どう考えても手抜きであるし、なんかUSBメモリも抜き方とかでエラーするときがあるし、いまいちな感じ。
どちらかと言えばH8の前作の方がよくできている感じがする。(^^!
要はマウントするとき以外無視するに限るというか。

まあ、
・wavが再生できる
・光デジタルで出力できる(そういうUSBオーディオユニットを買えば)
まではクリアしているし
・wavでリサンプリングしない
というのはこだわる人にはいいような。

でも同じARMでもiPODは良く出来ているような。実力の差っていうか。(TT)
これはここまでにしてNASでもやろうかな?

by   at 09:00  | Permalink  | Comments (0)  | Trackbacks (0)

USBトランスポート(26)

メモリを1つにしたので、コンソールも考える。
まあ端末風に見せて良いが、それでもユニットが増える。

考えると、上海問屋のプレヤーはLED2個とスイッチだけだ。でも困ってはいない。
なのでスイッチだけつけることにすれば、中のGPIOでいけそうだ。
幸いにしてaitendoで買ったジャンクのSW(3個ついて@50)がころがっていた。
でもArmadilloは小さくてなかなか入る場所がない。
もう1つはArmadilloは価格が価格なので穴をあけたりするのは抵抗もある。

しかし、空きエリアを見つけて勇気をしぼって(?)つけてしまった。

ついでなのでResetSWは内蔵してしまって、代わりにユーザランドのシヨートピンを出しておいた。
さすがにこれでケースはあけなくてもよさそうだ。

心配したがちゃんと閉まった。

これでDebugもユーザランドもケースの外からできる。

by   at 09:00  | Permalink  | Comments (0)  | Trackbacks (0)

USBトランスポート(25)

メモリを2つつないで片方をプログラムにすると...。
・本体のユーザランドに書かなくて良い(ここは変更がない)
・USBを差し替えると違うものに使える
というメリットがある。但し価格はあがるが...。

というので実験してみる。

USBを2つつなぐと1つはsda1にもう1つはsdb1になる。
Armadillo240の場合、スライドショーというのがあって、自動的に/home/www-data/storageにsda1がマウントされる。

HUBにつなぐと1番がsda1になると思うと、ちゃんとそういう感じで認識した。
ところが、いろいろ差し替えていると、必ずしもそうでもない。(TT)
他がsda1になる場合も出てきた。条件がよくわからない。(TT)
まあ、どこかでリマウントする手法も考えられるが、この手法だと、
・Armadillo240のUSBポートが2つ
・オーディオデバイス+USB*2なので3つの口が必須
なのでHUBが必須になる。
それなら4ポートHUBで1つはUSBコンソールというのもいいかもしれないが、どんどんユニットが増える。

そこで(美しくはないが)USBメモリの中にフォルダを作ってそこにプログラムを入れることにした。
幸いにして、Armadillo240にはスライドショーがあってメモリをさすと自動実行する仕掛けがある。
ただ、これは毎回うまく起動するわけでもないのだが...。(^^!

by   at 09:00  | Permalink  | Comments (0)  | Trackbacks (0)

USBトランスポート(24)

CoregaはNFSで中断しているのでArmadillo240で組み上げてみることにする。

本来ならちゃんと、コンソールを作ってケースを作って...なのだが、どうも食指がわかない。(TT)

ArmadilloのアプリはCygwinでも開発できる。
このあたり至れり尽くせりなので、すごくやりやすい。
できれば、何かもう1つメモリ(SDとか)があって、そこをRAMに展開してくれるといいのだが。

いろいろ食指がわかない理由を考えると、やはり「価格が高い」というのがある。
こういうのに使う素材ではないような...。

まずは、「端末」を使う場合にケースをあけてやらないといけない。
それはそれでもいいのだが、せっかくなのでケースを閉めても使えるようにしてみる。

まずは線材を引っ張り出す。
でもコネクタを出すと、従来のとは互換がなくなるので新作した。
こんな感じで従来のは手前に見える。

ついでなので5VとResetを出しておいた。Resetはないと不便なような。
5Vは外部にLCDをつないだ場合に必要かな?と思った。それと3.3Vは内蔵の3端子がもたないと困るし。

めでたくケースに収まった。

Debugはこんな感じ。終わったら外す。

でもユーザランドを書き換えたい場合はジャンパ設定がいる。
線材を出してもいいのだが...。
いっそ、USBメモリを2つつないで1つをプログラムメモリとしてRAMに展開したらどうかと。

by   at 09:00  | Permalink  | Comments (0)  | Trackbacks (0)

USBトランスポート(23)

ベアボーンではあまりしっくり来なかったのだが...
さらに考えるとUSB付のNASでもいいんじゃないかと。(^^!

これならUSBトランスポートというよりHDDトランスポートなのかも。
これだとHDDは1Tとか500GBぐらい使えるし...。
玄箱でDebianだし。
なんか同じことをエレキジャックでやっていたかも。確かリモコンもつけてたし。
「まんま」でも悪くないかも。

これだとネット(Samba)で音楽ファイルを放り込んで演奏できる。リモコンがあればPCを立ち上げなくてもいいような。

価格(今は1.5万ほど+HDD)といい悪くないかも。
でも意味があるんだろうか?ま、いいか。
CoregaのNFSにつまずいているのもあり、DebianでNFSサーバにしちゃえば、うまくマウントするかも。
でもそうやっても結構使うのは面倒だけど、全く開発できないよりはましだし。
Coregaは本を買っても全然遊べなかったし。(TT)

まだ、しっくり来ない部分があるにはあるけど、とりあえず検討するか...。
でもなんだかなあ~。というのでオークションをあたる。
ジャンクだけど、HDD付の初代玄箱が@5000。まあHDDも付いているし、すぐに遊べそうなので、落札してみる。
送料を入れても@6000。
なんとなく無意味な感じもするのはするけど。ARMだといいのにな。PPCだとクロス開発なんてすることないし。ARMはまだいろいろ遊べるのだが...。
ってArmadillo9があるので、そこにHDDつけても同じだったりして。(^^!

まあ人生、楽しく前向きに...。

by   at 09:00  | Permalink  | Comments (0)  | Trackbacks (0)

USBトランスポート(22)

結局、この手で成功したのはArmadillo240ぐらいだった。
後は、遅いとかNFSの問題であえなく挫折。(TT)
どうせなら、VGAが要らないので安い220だが、全然安くない...。

この手はROMに圧縮イメージが入っていて、RAMに展開して動かす。
なので突然電源を切っても、ROMが書けるわけじゃあないので、またRAMに元通り展開される。
そんなに簡単に書けるならNFSだっていらないわけで...とトラウマが...。

で、当然だがROMは容量があるし、RAMだって64MByteだし。
これでもH8の外付け2MByteが広く思ったが。32Kしか使ってないし。
ここにOSも入れるのできついといえばきつい。Alsaだけで依存も入れると1Mは超えていたし。

で思ったのは、「これなら小型ベアボーンでもいいような...」と。(^^!
・2万も出せば手に入る。
・HDDは要らなくて、USBに書いておいてUSBからブートする。
・RAMに展開して動く。
 そういえば、所持品にwizpyがあったような...。(^^!
RAMは256Mもあれば動くし、窮屈でもない。
ベアボーン+RAM+手持ちUSBでいいんじゃないかと。

と思って調べるとあるのだが...
・でかい(小さいのは高い...なぜか...)
・消費電力がでかい(小さくても30Wとか)
でもLinuxでもx86だと環境はいいし助かるような...。しかもUSBなら...と思う。

まあ、この手は環境っていうよりやはり使い勝手かもしれないけど。

悩ましいけど、多分性能は落ちるけどArmadillo2XXは似たようにはできると思う。
いいベアボーンを探すのもいいのかもしれない。
なんかPCを作っているのと変わらないのかも。


by   at 09:00  | Permalink  | Comments (0)  | Trackbacks (0)

USBトランスポート(21)

そうこうしていたら、「CG-LBSTD2PU 」と「汎用Linuxボードを使った開発で学ぶ 組込みLinux基礎講座 」が届いた。
今なら、「CG-LBSTD2PU 」だけでいのかも。

まず、これにシリアル端末が必須。でもついてこない。(TT)
で自作することになるのだが、2mmピッチのヘッダで入手が難しい。
そもそもハードの解説が不親切というか。
この、「CG-LBSTD2PU 」のCD(これはついてくるわけではなくDLして自分で焼く)には簡単なテキストで説明がのっている。
でもなんか不安だが、「汎用Linuxボードを使った開発で学ぶ 組込みLinux基礎講座 」に写真をつけて親切に解説してある。
なんとなく、このアダプタとUSBのアダプタぐらいは別売りでもいいので用意してほしかった。
このあたりはなんか不親切。

ちょっと今一だけど、直接ハンダして作った。
シリアルコンソールはそのうち要らなくなるのかも。
まあさほど面倒でもないけど、部品そろえるのが面倒かも。

まず、「汎用Linuxボードを使った開発で学ぶ 組込みLinux基礎講座」なのだが、5時間でネットメディアプレヤーを作るとあるが、環境構築だけでもそんなに早くはできない。
そもそも、この本のmp3はVS1001をつけている。(接続Kitも販売しているが)
USBオーディオ&ソフトデコードを期待していた自分としては完全にショック状態。
本文を読むと「巷と似たようなことをやってもつまらない」みたいな話になっているが、逆にこれならH8でもっと安くできる。秋月でWebラジオKitもあるし。
なので、それをもっと高くやってもらっても...と思う。
それと、なんか環境構築は丁寧なのだが、肝心のユーザランドあたりからは記述がない。
なんとも半端な感じの本。Amazonの評価はあたっているような。

愚痴はおいておいてクロスコンパイラのインストールでRedHat系(Vineとか)が推奨らしいので、VMPlayer経由でRedHatに入れた。
こっちはあっさり終わる。

Webを読むとU-BOOTからいろいろやるようで
・カーネル=TFTP経由の書き込み
・ユーザランド=NFS経由の書き込み
・U-BOOT自体=記述なし(JTAG?)
みたいな感じだ。
まあBOOTはどうでもいいので、気にしないことにした。

<カーネル>
最新のものはリバティシステムファクトリ社にあるようだ。
USBサポートがやっと出てきているみいだ。巷では動作不安定という話も聞こえる。マスストレージがそうならさきが思いやられる。
これはバイナリがあるので、TFTPであっさり書き込みできた。

<ユーザランド>
実はこれではまりまくって...あきらめた。
NFSに接続できない。U-BOOTなのでカーネルを変えても接続できない。
「ポート番号がとれない」というエラーでNFSに接続できない。でカーネルパニック!!
最初はファイアウォールかと思ったが、もう1台なくなくLinuxを仕立てた。
・Linux同士で接続するとあっさりマウントできる。
・しかし、このボードからだとどちらのLinuxマシンでもマウントできない。
どちらのLinuxにも同じ(CDに入っていた)ユーザランドを展開してある。
接続しても全く同じエラーになる。(1台はRedHat系でもう1台はDebian系。ディストリビューションの差ではない。)
RPCがこけている。
portmapなどはちゃんとサービスで走っているのは確認した。
firewallはとめても同じ結果。

こんな感じ...。
NET4: Unix domain sockets 1.0/SMP for Linux NET4.0.
Looking up port of RPC 100003/2 on 192.168.1.88
RPC: sendmsg returned error 128
portmap: RPC call returned error 128
Root-NFS: Unable to get nfsd port number from server, using default
Looking up port of RPC 100005/1 on 192.168.1.88
RPC: sendmsg returned error 128
portmap: RPC call returned error 128
Root-NFS: Unable to get mountd port number from server, using default
RPC: sendmsg returned error 128
mount: RPC call returned error 128
Root-NFS: Server returned error -128 while mounting /home/...

これでは開発できない。(TT)
VerUpもできないし。
でも自分だけとも思えないがWebには思ったより少ない...というかこれ自体が少ないというか。
Armadilloはhermitでできたのに...。
元に戻してしまっておこうかしら?

しばらくU-BootとNFSでも気が向いたら調べよう。

by   at 09:00  | Permalink  | Comments (0)  | Trackbacks (0)

USBトランスポート(20)

Armadillo240の続き。

普通の家電風にしようとすると、
・上位でプログラムを書く
・リモート制御できるソフトを入れる
のどちらかになる。
たとえ後者を入れても、コンソール周りは自作になるが、プログラム制御は楽になる。

依然mpg123でやっていたこともあったが、ちゃんとmanを読むと

1.mpg321
 -Rオプションがあってリモート制御できるみたいだ。
 これはmpg123の後継だし、wavに変換もできるが、どういうわけかwavの再生ができない。
2.AlsaPlayer
 これはリモート制御もできるし、デモーンでも走らせられる。但しライブラリが多い。

の2つが候補としてはよさそうである。
早速入れてみた。

1.mpg321
 げげ!!なんか全然速度が出ずに音楽になってない。(TT)
 ちなみにmpg123に戻すと、これはしっかり再生している。
幾つかライブラリも必要だし、速度まで互換でもないのだろう。wavも再生できないしボツ!!

2.Alsaplayer
 げげ!!入らない。(TT)
 まあ、ふんだんに自由自在ってわけではないのはわかるのだが。textだけでいいんだけど。
image-magicあたり使わないので外してみたらコンパイルでエラー続発。slideshowが使っているのだろう。
 しょうがないのでAlsaplayerで録音機能などは外し、wavとも3だけ再生する最低限までファイルを宿なくしたら、なんとか納まった。Alsa-miniと改名したほうがいいのかも。
 これはwavもmp3もまじめに再生するしリモートで使える。
 どうせ自作のも小さいしなんとか入る...と思うし。
 なんだかパズルゲームしているようだ。
ちなみにこんなのが使える。

Player control (use -n to select a session other than the default):

-e,--enqueue file(s) queue files in running alsaplayer
-E,--replace file(s) clears and queues files in running alsaplayer
--status get some information about session
--volume vol set software volume [0.0-1.0]
--start start playing
--stop stop playing
--pause pause/unpause playing
--prev jump to previous track
--next jump to next track
--seek second jump to specified second in current track
--relative second jump second seconds from current position
--speed speed floating point speed parameter
1.0 = normal speed, -1.0 normal speed backwards
--jump track jump to specified playlist track
--clear clear whole playlist
--quit quit ses

まあ、これはここでとめておくことにしよう。
Armadilloの欠点は価格とコンソールぐらいだ。
コンソールはどちらにしてもこの手はいるんだし。

by   at 09:00  | Permalink  | Comments (0)  | Trackbacks (0)

USBトランスポート(19)

Armadillo240の原因の追求にかかる。

どうも話としては画面(VGA)の割り込みでUSBの転送が落ちるのではないかと思われる。
画面は使わないので、思い切ってカーネルから外すことにした。

でも環境がなくなっている。(TT)
しょうがないので最初から構築する。
AtmarkTechnoさんのHPを見るとATDEというVMPayer向けの仮想環境があった。(^^)
早速ダウンロードしてクロスの環境まではサクサク進んだ。

しかしUSBオーディオではまってしまった。
Configなんて覚えていない。(TT)
結局はOSSを使った。(^^!
ローダブルモジュールなのでmodprobeで使う。

ついでなので、mp3play(mp3用)とvplay(wav用)も入れておいた。ついでにmpg123も入れた。
ゲゲ!!するとalsaplayerが入らない。ま、いいか。
これライブラリが多いのよね

早速、再生してみた。
おおーーー。ノイズは見事に消えた。(^^v
これなら、トランスポートに使えそうだ。

mp3もwavも正常だし、ネットラジオもmpg123で簡単だし。そこはいいのだが。
USBオーディオに光出力があれば立派なトランスポートだし。
sambaクライアントでも入れてNASでも再生できそうに思うし。

と思って入れてみると、コンパイルも書き込みもできるけど、走らせると...
容量不足でカーネルパニック!!(TT)
まあ限度があるのよね。なんせ内蔵のFlashROMだし。
Sambaがあるとファイルサーバにもなるんだけどなあ~。まあhttpdで見えるけど書けないし。
cgiでも走らせればいいのかしら。そこまで要らないか。
USBトランスポートなんだし。

Coregaはまだやってないけど、やればこの程度はできるのかも。

まあ、ソフトの世界なんだけどLinuxの組み込みなので、結構面倒なところもある。
試行錯誤っていうか。Flashに書くのが面倒なのかな。

それにしてもArmadilloにしてもCoregaにしても、コンソールがほしいような。
端末からコマンドを叩くってのはどうも家電風ではないし。
そもそも端末=PCならPCでやればいいわけで、何をしているかわからない。
なんかアプリを書いて、コンソール作ってシリアル通信なのかしら?
そういうのないのかな?
高いと困るわけだけど。

by   at 09:00  | Permalink  | Comments (0)  | Trackbacks (0)

USBトランスポート(18)

やっているのは趣味で製品化でもないのだからArmadillo9は1つの答えかもしれない。
ただこれってサプライズがないというか、個性がないというか。

それやこれやで悩んで止まっているより、先に進めることにする。
後で戻ったほうがいいのかも。

4.GP2X
これも前にやった。ゲーム機なので中にオーディオはもっている。
さらにUSB-Hostもあるので、拡張ユニットを買えば...とだんだん¥がかかる。
それを無視すれば、これもARM9の200MHzだし期待はできると思う。しかも2CPUだし。
USBオーディオデバイスは認識はするようだ。
ただ出力を切り替えるソフトというか設定がないので、そこは自前でなんとかしないとテストもできない。
これ用にalsaplayerを移植すればいいのだが、なんか面倒。
それにこれはコンソールがあるので、そういうUIもいるし。
そういえばXも走ったように思うが、立ち上がりまでが遅かったような...。
それに今の最新機種はWizになったのかしら?

どうも完成イメージに食指がわかないので、このままボツにし、先に進むことに。

5.CG-LBSTD2PU
ARMではないが、価格は良い。
というので購入することにした。
ただ情報があまりにも少ない...。まあArmadilloを期待するほうが無理なのか...。
日新テクニカのはまだわかりやすかったが。
そういえば
汎用Linuxボードを使った開発で学ぶ 組込みLinux基礎講座
という本があり、LAN経由のmp3プレヤー(ネットラジオ?)を作るようなものらしい。
Amazonでの評価はかなりよくないが買ってみるか。
これUSBコネクタもついていないのよね。(中に端子はあるが...。)
でもこれで動けば、価格的には一番なのかも。
1万だとサプライズもあるような気がする。

サプライズは危険と隣り合わせだ。ってことはできないことも十分考えられるかも。

by   at 09:00  | Permalink  | Comments (0)  | Trackbacks (0)

USBトランスポート(17)

で、Armadillo-9。

これがそうだが、むき出しではあまりだし。

上にアクリルカバーなどをつけてみる。

代わり映えしないようにも思うが、物もおけるし...。


結局、物=Hub+USBオーディオは横に置いた。
こちらの方が余程でかいというか。

8GのCFを積んでいるがあまり残りがない。今なら迷わず32Gなのだろうけど。
これだとセルフコンパイルもできるので便利なのだが。
でも、これにもVGAがついているが...ま、いいか。

Alsaplayerがなくてもapt-getでとれたりする。
なんかコマンド叩くだけのような...。
こうなるとPCとあまり変わりがない。マウスの代わりにコマンドラインっていうか。
画面のないのでシリアル端末というか。

ネットラジオも作るまでもなくmpg123でも入れて
mpg123 http://scfire-dtc-aa07.stream.aol.com:80/stream/1010
こんだけで再生できる。(SkyFMのSmoothJazzのサイト)
なんか、拍子抜けするが、小さくてもLinuxって感じがする。

で、早速Alsaplayerで再生。
おおーーー、なんとwavもmp3もノイズがない。
なんかかすかにあるような気もするが、全然わからない!!

これでUSBオーディオで光出力付のを買えば...。クリエイティブにあったような...。
と思ったけど、Armadillo9だとやがて5万で、PCと変わらない。
240でもノイズは出るが、同じようなことはできる。
220でノイズがどうかは気になるが、このあたり持っていたからやったけど、最初から手だしすると2万以上してiPODぐらいは軽くかかる。
それにさらにUSBオーディオ光出力付もいる。
また端末をいちいち打たないように、コンソールもいるし...。
まあ、どう考えても安いものではない。

240の原因はわからないままだが、このクラスで実現できるのはわかった。
ただ、これは価格maxのように思う。

それにしてもArmadilloは環境がいい。組み込みLinuxだとこのあたり凄く助かる。
CygWin用のクロスのバイナリも提供されているのが嬉しい。
これで本体はARM9で1万ならなあ~と思う。

自分で遊ぶ分には完成というか、できるにはできたけど、これってPCと一緒かも。
というか、こうなると出来て当たり前っていう感じでサプライズがない。
「何したの?」と聞かれると「インストールしただけ」みたいになってしまう。
これでは面白くない。

by   at 09:00  | Permalink  | Comments (0)  | Trackbacks (0)

USBトランスポート(16)

1番目で見事に失敗したのにめげず2番目...と思ったが...

2.SH7084LAN/USBボード

は、Lunixでもないし、MesでUSBオーディオで作っていくのはあまりに敷居が高く感じる。
なんか、VSXXXXをつけたくなるが、それなら意味ない。
逆にこの上のボードにLinuxをのせて...というのもあるが、それだとUSB-Hostを作ってカーネル作成となり、これまた大変だ。
しばらく悩んだ末にこの路線は捨ててしまった。(^^!

で次が...
3.armadillo 220
なのだが、これ前にもやったような...。(^^!

まあI2Sも出ているらしいが、USBオーディオでもできる。
USBオーディオなら光出力端子付のものを買えば、すぐにUSBトランスポートになってしまう。
もってないけど、USBオーディオならオーディオテクニカのがある。

まずは先回と同じく安物をつなぐ。

Alsaplayerを入れてあるのであっけない。
ls /home/www-data/storage/*.mp3 > /tmp/playlist.pls
alsaplayer -i text -o oss -s session1 -e /tmp/playlist.pls -P &
と入れると全部再生する。当たり前だが名前順にちゃんとなる。

Alsaplayerなのでwavも再生する。
ls /home/www-data/storage/*.wav > /tmp/playlist.pls
でwavのリストもできる。

まあそれはどうでもいいとして、問題は音質だ。
このUSBオーディオはあまりなのでオーディオテクニカを持ち出す。
最初のはSkype用の電話機の代わりだったりするわけでスピーカがあったりする。

なんかノイズが入る。ボリュームのガリ音みたいなのが小さく入ってしまう。
これはwavでもmp3でもそうなる。これは我慢できない。
先回も、「そんなものなんだなあ~」でやめた記憶がよみがえる。

今回も同じでは進展がないので、少し対策してみたくなる。
最初はAlsaplayerを疑って、ボリュームやらいろいろ変えてみたが、変化がない。
mpg123でも何でも必ずそうなるというか。
USBオーディオを変えても変化がない。
これはwavだろうがmp3からだろうが出る。

実は、自分の持っているのは220ではなくVGAのついた240だったりする。
ネットを読むとVGAからの割り込みでUSBの無線LANがこけるとある。
ってことは、これは240特有ではないかと疑いはじめる。

対応を読むと...カーネルの再ビルドみたいだ。(TT)
昔作った環境がどこかに消えてしまった。(^^!
かと言って今更220を買うのもなんだか...。
なんとなく2万出すならiPODClassicだって、Linuxが走るわけで...ってあれこそ音楽プレヤーか。
中にI2S端子が隠れているだけなんだろうなあ~。
脱線してしまった。(^^!

家捜ししてArmadillo-9を見つける。
これで同じことをやってみればわかるかも。

by   at 09:00  | Permalink  | Comments (0)  | Trackbacks (0)

USBトランスポート(15)

持っていないのもあるわけでまずは

1.uClinux対応多機能ARM7ボードKane BeBe II ARM7-44B0

を買ってみた。(^^!
このボードはI2Sからオーディオを出力できる。今はそこにDACがのっているが、ここから配線すればS/PDIFも夢ではない。
書籍はH8のものだが、出ていたので買ってみた。
ただ、中身は知っていたことばかりで、殆ど役に立たなかった。(TT)

つないでみた。

ゲゲ、Pingが通らない。(TT)
なんとも最初から躓いた。(TT)

気を取り直して、USBをマウントして、再生してみる。
まずはwav再生。
ゲゲ!!なんじゃこりゃ!!全然音楽にならない。途切れてひどいものだ。
しょうがないので、内蔵のwavを聞いたがこれまたひどい。(TT)

もう落ち込みがひどかったが、元気を振り絞ってmp3を再生。
ゲゲ!!音楽になってない。(TT)

もう奈落の底に落ちたような。
動作を見ていると、USBからの読み込みがとにかく遅い。なので再生が止まって連続しない。
ARM7の66MHzってこんな程度なのだろうか?H8の10倍ってあったけど...。

LANの件で開発などは進まない。

環境構築なのだが、RedHat9を推奨してある。
最初はubuntuでやっていたが、これだとカーネルのコンパイルに失敗する。
メッセージを見るとmtd(メモリテクノロジデバイス)を入れると失敗するようだ。
ubuntuやDebian系では
/usr/include/linux/mtd
がないようだ。(TT)
しょうがないので、Linuxを入れるが、VMPlayerなので仮想Imageを作ったりと結構面倒。
まあ、なんとかカーネルコンパイルはできるようになったがターゲットボードのLANが故障で転送ができない。

日新テクニカさんに問い合わせするとハードの故障ではないかということ。
どうもカーネルもLAN経由で書いているようで「考えにくい」とのお話だった。
こちらでは「稀にpingが通る」「すぐにUnhandled fault」みたいで調子が悪い。

いろいろお話させていただくと
ユーザアプリの想定は「一般的な監視・制御、簡単な音を出すだけ」で「音楽向け」ではないとのこと。(TT)
wavが途切れるとのは多分USBメモリのアクセス速度の問題。
>USBが遅いのは調査中ではあるが、用途的には今のものでも良いと思っている
mp3が途切れるのはソフトデコードの問題
>mp3はソフトデコードはARM766MHzでは限界
とのことで、「音楽向けではない」とのこと。

一旦は自分もそう思って、NASにでもしようと思った。
ただ、このUSBの速度はいただけない。64KByte/S程度ではないかと思われるがとにかく遅い。
LANが修復してもここがある限りはNASってのも難しいように感じた。

結局は、LANの初期不良もあったので、日新テクニカさんは返品することにした。

by   at 09:00  | Permalink  | Comments (0)  | Trackbacks (0)

USBトランスポート(14)

USBトランスポート1号機はめでたく完成したわけで、今もBGMを聞いている。
なんか、あまりアナログと変わらない感じはするが、気分的にはフルデジタルに近づいたと思うことで自己満足する。

翻って考えると、思いっきりハード開発に走ってしまったが、果たしてこういうアプローチが正しいのか?と疑問を持つ。
もう1つはVS1053を使ったために、CDの44.1KHzが48KHzにアップコンバートされることだ。
別段、知らなければわからないようなものだが、クロックジッタにこだわる人が聞くとわかるのかもしれない。
それなりに凄いシステムの人はいろいろ¥がかかって大変そうだ。

そこで第二段を全く違ったアプローチで考える。
まず、VS1053をスッパリやめる。
これを使うと、結局オーバーサンプリング問題があって、トランスポートとして後悔が残りそうである。
そもそも、それでいいのなら1台あるわけだし。
一方、ARM(マイコン)にはI2Sが出ている。
まあ知られてはいないが、知っている人は知っていると思う。ならばARMのI2Sから、S/PDIFだってできるはずである。
逆にwavだけというのなら、これは非圧縮なのでファイルを読んでヘッダを見て後はI2Sに放り出せばよい。
mp3は...ソフトウェアデコードになる。ピュアオーディオかどうかはともかく、やはりできるに越したことはない。
ARMは組み込み用途ではポピュラーというか、もうこれ1色に近い。iPODなどもそうだ。
そうなるとOSは組み込みLinuxだろう。

こうやった場合に、最も問題なのは価格だと思う。
H8の3069だと本体は安かった。周辺も入手は面倒だが@3000ほどでできると思う。送料は別だけど。
なので1万程度なら、まあ互角とは言わないがターゲットになりそうだ。
それにLinuxならネットラジオとか、NASの再生とかもできそうに思う。

というので候補を漁ってみることにする。

1.uClinux対応多機能ARM7ボードKane BeBe II ARM7-44B0
@8980で安い。USB-HostはSL811がついている。
日新テクニカ」や「日昇テクノロジー」が扱っている。
どうも中国系の会社のようで、日昇テクノロジーからはAVR+VS1003のmp3プレヤーKitを買ったことがある。
これは、転送落ちが発生するためプレヤーとしてはどうかと思うものだった。上海問屋の@990プレヤーの方が余程優秀に思った。(^^!
開発で自由にできるのはいいところだが、如何せんこの状態では直す場所がわからずそのまま放置。
VS1003のユニットはUSBトランスポート初代機のDebugには使えた。
マニュアルにはwavとmp3の再生が掲載されている。
mp3はソフトデコード。I2Sがサポートされている。USB-HostはSL811。

2.SH7084LAN/USBボード
1枚だとLAN+USBで@7000。値段はいいというか申し分ないというか。
Mes2で名高いみついわさんのHPからLinkがある。
SHなのでI2Sは期待できないのでUSBオーディオになる。
このボードはどうもLinuxは走らなくてMesになるようだ。
それにSHにI2Sは期待できないし、VSXXXXをつけるのなら意味ないし。

3.armadillo 220
アットマークテクノさんのものでケースもある。
ARM9の200MHz。そこはいいいのだが価格も¥22500ほど。
Armadillo-9もいいのだが、¥47100とお値段もそれなりに良い。(TT)

4.GP2X
これはゲームパックホールディングスという会社の製品でゲーム機だが中身はARMのLinux。
価格は新品だとF200で¥29800。USB-Hostはさらにアダプタが必要。
いいのはVGAの画面がついているのと、開発できなくても遊べるのはいいかも。
動画プレヤーにもできるが電池の持ちはいまいち。

5.CG-LBSTD2PU
これはコレガの製品で価格はだいたい¥9800ほど。
ARMではなくMIPSの流れになる。
USBは1.1が内蔵されている。
オーディオとしてはUSB経由になるのか?

ぐらいだろうか。というか、それ以上なら結構あるのだが。
なんかそれなら激安のPCにLinuxでも入れればできそうな気もするし。
そういうのも悪くはないのだが、図体は大きそうである。
他にも玄箱とか、LinuxのNASを改造する手はあるような気がする。

でもここはオーソドックスにやってみようと決心する。
というか、そういうボードは好きでいろいろもってたりするし。

by   at 09:00  | Permalink  | Comments (0)  | Trackbacks (0)

USBトランスポート(13)

しばらく使っていると、リモコンで電源をOnOffしたくなった。

そういう場合は赤外の受信部分だけは電源を供給しておいて、他を切断しておけばそんなに電気を食わない。
もっとも皆無でもないのでエコでもないのだが。
このユニットがAVRで独立に作ったこともあり、これはなんとかなりそうだ。
秋月の5Vのリレーもあったのでそれで作ってみることにした。

ソフトは簡単というかAVRで「電源(相当)」のボタンが押されたら、リレーをOnOffするだけだ。
ただ、エコにしたいので、やはりSleepモードを使った。
AVR2313なので、INT0の立下りだと、アイドルモードぐらいで使った。レベル割り込みにすれば、パワーダウンモードでも使えるのだが、やってみたら動作しなかった。
電池なら気にするところだが、電源もあるのでこの程度は許容とした。
使わないときはSleepしていて、赤外割り込みで動作するように変更した。

リレーは小型なのだが、やはりケースが小さく場所がなかなか...。

このぐらいのサイズで、横の空きスペースに入れることにした。

しかし実はここからがトラブルの連続だった。

1.リセットしない
電源をOnOffしてもリセットしない。(TT)
おかしいと思ってどんどん追っていくと、なんとAVRのTxDとH8のTxDを結んだ部分だった。(TT)
どうもこの状態(H8=Off)でAVRをOnにすると、AVRから盛大に電流が流れ、H8に2Vぐらい供給されている状態になる。
それにしても負荷が軽いとは言え、すごい電流だ。
勿論、動作はしないが2Vから立ち上げたのでは、リセットがうまくかからない。
対応方法として抵抗を入れたりしたが、やはりちゃんと(?)したい。
そこで考えたのはPNPトランジスタで位相はそのままにしてバッファすることにした。
つまり2SA1015のエミッタは抵抗を介してH8の5Vにつないだ。この状態でエミッタでTxDを転送する。
場所がないので秋月の基板の上にホットボンドでつけてしまった。(^^!

2.リモコンが誤動作する
これもリモコンのプログラムを疑ったのだが、どうも電源をOnしたら発生する。(TT)
どうもリレーがOnすると、急激に5Vの電流が流れるため一時的に5Vが低下する。
それが激しいため、AVRがこけているようだ。(TT)
最初はコンデンサを大きくしていたが限度があるので、結局はAVRの電源に抵抗を入れてコンデンサを入れた。
AVRは受信専用だし、Sleepもするので、殆ど電流は食わないため抵抗はある低度大きくてもOK。
51Ω程度入っている。

後、この方式なら電源も押しボタンでいいのだが、なんとなく緊急用としてはロックスイッチが好きだ。
見た目でわかるし。
なのでリモコンをなくした場合は手動でOnもできるように残した。リモコンがあると、ここがOffでもOnできる。(Offもできる。)

違う意味でいろいろ勉強にはなった。
やはりリモコンで電源OnOffは便利だ。

by   at 09:00  | Permalink  | Comments (0)  | Trackbacks (0)