Archive for 4月, 2019

一言言いたい。

銭湯の絵は果たして芸術なのか? 僕は美術などには全く能がないが、あれはどう考えても工業・産業的なもので、確かに技術はあるが、(例えて言えば、街にあふれる看板や以前書いた「(自称)オルゴール」の演奏のようなものだ)芸術とは言えない。価値がないとは言わないし、確かに伝統はあるだろうし、継承して行く必要はあるのかも知れないが、芸術ではないだろう(その証拠のひとつは、銭湯の絵はいつも上書きするではないか。仮に芸術なら、保存したくなるのでは?)。それでも弟子になりたい人が居るのはいいけど、「芸大」の人がやって何か得るものはあるのか。

(浮ついた)名声?

解散!

そして、騒がれているが、あの虎の絵は(芸術的)「盗作」というより、著作権法違反とか無断引用の範疇だろう。

PS. とは言っても、無断引用にしたって、僕はあれをその場で描けるのは大した腕(才能・センスは不明)だと思うから、もっとちゃんとすればいいのにと思う。

  •  1
  •  0

先日ちょっと書いたドライブの補足を書きます。

歯科(定期検診)のあと、久し振りに行きたくなって、いつものデニーズに向かい、12時頃着いた。パスタとサラダとオールフリーにした。ペペロンチーノはまあまあ(麺がちょっと水っぽかった)だった。小泉さん(仮)が親切だったけど、前回同様、すぐに居なくなってしまった。いつもと同様に1500円くらいだった。付近の道沿いの桜が満開だったので、食後に少し歩いた。天気が良くて気持ち良かったが、歩くと暑くなった。

気分も天気も良かったので、古峰ヶ原辺りまで走ってみることにした。30kmくらいで、ちょっと行くには遠い気がしたから、疲れたら途中で帰ろうと思っていたが、のどかに走れたせいか、いつの間にか着いて、すごく近く感じた。13時頃出て、14時頃、神社に着いた。平日なので、さすがに人は少なかった。

※調べたら、狛猫は既に居るとのこと。ちょっと見に行きたいけど、遠い・・・

神社から林道(舗装はちゃんとされていて、入口辺りは太かった)経由で帰ることもできるようで、おもしろそうではあったのだが、どうせ途中から細くなって神経を遣うだろうから止めた。帰路の山を下る道に、ものすごく遅い(ほぼ30km/h・・・ 良くこのスピードを保てるものだと、却って感心するw)老人の軽が居たが、呆れながらも気持ち良く走れた。遅く走るのも自由だけど、彼らには「譲る」という単語も覚えて欲しい。行きと同じ道は車が多目だったので、途中で少し南にそれた(地図の「鹿沼市」の左の下に膨らんだ部分)。それから7-11に寄って、バナナを食べながら「国生さん」に見とれたw

16:15頃、無事帰宅した。気持ち良かったが、結構長時間乗ったので疲れた。帰りにガソリンを入れたら、近頃はほとんど遠出しかしていないため、燃費は良く、15km/lだった。

約90km、6:45(歯科・昼食込み)
AQUOS sense liteにて撮影 (今ひとつ色が薄い感じ)

 

(4/9 9:30, 11:18, 11:32 題を変更, 5/13 6:22 日付が誤っていたので修正)

  •  0
  •  0

なぜか、春になるといろいろなことが動き出す(まさに啓蟄?)ようで、気候が良くて気分がいいこともあるのだが、いろいろなことが勃発して疲れることも多い。以下に主なものを列挙する。あとで詳細を書くかも知れないし、そのままにするかも知れない。特に書きたいことは、ここで書いておく。

  • 病気再発? → とりあえず、様子見に。
  • スマフォ(AQUOS sense lite)の怪: 電池の激減、Wi-Fiルータへの接続を繰り返す、再起動したら予定を同期しなくなった。
    • なぜか、消費電力測定アプリ(シンプル バッテリー グラフ)が駄目になって、突然数十%も減るようになったので、別の(3C Battery Monitor)に入れ替えたj※。広告を停めるため、外部との通信を遮断していたのだが、突然、それが原因で電池を食うように(見えるだけ?)なった他に、システムの電池情報もおかしくするようになってしまったようだ。
      • ※その後、GSam Battery Monitorというアプリもいいことが分かった。こっちは電力消費率のグラフが出て便利だし、例のDoze(ディープスリープ)状態になっていた時間や、Wi-FiやGPSなどがonになっていた時間が分かるので便利だ。あと、広告も良心的でいい(3Cは突然全画面で出る)。でも、3Cにもいい点がある(アプリごとの電力消費量が分かる: GSamにもその画面はあるが、正しく動いていない)ので、ちょっと迷っている。 (4/7 19:42) → GSamは電力消費率のグラフの縦軸(消費率)を拡大できなくて実用的でないので、基本的には3C(同様のグラフがあり、ちょっと分かりにくいけど拡大できる)にすることにした。ただ、今は別件でWi-Fiのon/offの確認をしたいので、一時的にGSamも併用している。まあ、両方入れておいても問題なさそうではあるが。 (4/8 12:17)
    • Wi-Fiルータへの接続はAir Cardでいろいろやっていた関係かも知れない。ルータも再起動したら、直った。
    • 再起動で予定を同期しなくなったのは以前からなので、諦めて別のアプリにした。今までのは古い版のまま更新されていないので、仕方ない。
  • 鋭い歯科衛生士さん、歯科医院の世襲劇
    • 先日の定期検診で診てくれた歯科衛生士さんは、僕が何も言わなかったのに、今までの人が発見できなかった問題を2個も見付けてくれた。一個は虫歯で、もう一個は割れの可能性だった。虫歯は歯が金属に接する部分が欠けていたのだが、以前痛んですぐに収まったところかも知れない(すごく小さいので、自分で見ても全然分からないし、今は自覚症状もない)。痛んだ時は、(歯科)医師も衛生士も全然分からなかった。割れは、ずっと、歯ブラシで触ったりするとピリピリしていた歯だった。写真では縦に筋が入っていたが、医師は割れではない(知覚過敏)と診たようだ。それまでは指摘すらされなかったから、写真を見せられてすごく納得した。当然なんだろうが、こういうのはかなり人に依るものだな。
    • それまでは前回までの、清掃をとても丁寧にしてくれる、お姉さん的な人にやってもらいたくて楽しみにしていたのだがw、すっかりその鋭い人に参ってしまった。次回もその人だといいが、なかなかそうも行かない・・・
    • その日、なぜかそれまでの担当の歯科医師が居なくて、院長に代わった。掲示されている担当者一覧を見たら、歯科医師のところには院長と同じ名字の人が並んでいたので、子どもたちが一人前になったから今までの人は「用済み」になって放逐されてしまったのだろうと推測した。資格があっても気を抜けない、なかなか大変な世界だw
    • あと、いつものように、受付にはにこやかな菅野美穂さん(に似た人)が居て、和んだのは全くどうでもいいことだが、どうしても書きたいw
  • 軽いドライブ、小泉さんと国生さんw
    • 歯科のあとで、いつものデニーズに昼食を食べに行き、それから古峰ヶ原(古峯神社)にドライブに行った。古峰ヶ原はデニーズから30kmくらいあるので、疲れたら途中で帰ろうと思っていたが、すごく気持ち良く走れて全然遠く感じず、あっという間だった。
    • デニーズの辺りの道ばたの桜並木が満開で綺麗だった。今まで全然知らなかった。
    • デニーズには小泉さん(仮)が居た。相変わらずだったw クーポンを使おうとしたらログインが必要で、手間が掛かってすぐに見せられなかったのだが、見せなくても「確認したので大丈夫です」と言ってくれたのがうれしかった。でも、すぐに居なくなってしまった。
    • デニーズアプリは、ログインは面倒だし、データ量を馬鹿みたいに食う(20MB以上)のでちょっと止めたい。
    • ドライブの帰路に寄ったコンビニに、(昔の)国生さゆりそっくりな人(色白、ミディアム(かショート)ボブ、色っぽい顔と目と唇)が来て、驚いた。なぜ、あんな田舎にあんな綺麗な人が居たんだろう? 車内でバナナを食べていた僕は目を釘付けにされた。
  • 散歩中にピアノ: 先日散歩していたら、突然、ピアノの演奏が聞こえて来た。CDなどの録音ではなく、誰かが弾いていると感じた。録音(プロ)ほど完璧ではないが、(よく子どもがするような)弾き直しなどなくて下手ではなく、気合が入っていた。曲名は分からなかったが(多分、リストなど僕の不得意なロマン派)、なかなか鋭い演奏で、少し立ち止まって居た。なんとなく、大人の女性がグランドピアノを弾いている気がした(少なくとも、アップライトではないし、高校生以上のような気がする)。その辺りには蕎麦屋のおばさんの家があるのだが、まあ、あののどかな人があんな鋭い音を出していたのではないだろう※。今日、その蕎麦屋に行ってそのおばさんも居て、何か知っていることがあるかもとは思っては居たのだが、なかなか聞けなかったw
    • ※僕は、日頃から表現者の性格・行動・属性などと作品は関係ないと思っているが、上に書いたこととは矛盾しないと思う。つまり、のどかな人は、仮に演奏したとしてものどかな音を出すように思えるから、「のどか」に見えるのだ。別の言い方をすれば、世間に広く知られていると思われることは実際には虚像で、本人を正しく表していない可能性があるが、本人を知っていれば、その人のしそうな表現も推測できるということなのではないだろうか。(苦しいな・・・)
  • 母の病気: おそらく緊急性はないのだが、根治には手術が要る一方、高齢なので手術にはリスクがあるので、どう助言すればいいのか難しい。助言しても、なかなか本心を出さないから厄介だ。
  • 暑いうえに寒い → くしゃみ連発+鼻水。ティシューの減りが速いうえに鼻の周辺がひりひりする。
  • 床屋が面倒: 行きたくなってから2週間経過して、髪の伸び具合が高校・大学時代みたいな雰囲気になって来たw

こんな時はやっぱり、モーツァルトのピアノ協奏曲(第20番以降)を聴くに限るのだが、Spotifyで選ぶのすら疲れるので、手持ちのゼルキンの1980年代のを連続して掛けている。時には歯がゆい・枯れ過ぎな箇所もあるのだが、全体としては「鉄板」で、安心して聴ける。他の定番であろう、内田やピレシュ、ペライアなどとは安心度が全然違う。ただ、フレイの演奏がもっとあれば、新進気鋭(当時)さや若い熱気やパワーで元気が出る気がするのだが、余りないので仕方ない。

 

PS. コンピュータのプログラムやライブラリの説明で、「いろいろ混ぜて一緒にした」(= ごった煮)というような意味の単語があったのだが、調べても"misc."や"sundry"(今日まで正しい意味を知らなかった)くらいしかなく、「本物」が思い出せなくて歯がゆいw

(4/7 11:35 地名を修正)

  •  0
  •  0

先週、2017年に手術した辺りが腫れた。そして、前回と同様の経過を経て治まった。再発したのかと思って心配になったのだが、単なるできもので問題ないかも知れないとも思いつつも、やっぱり気になって病院に行った。

結果は予想どおり「様子見」になり、またこうなったら来るように言われた。まあ、今までの経験から予想していたとおり(医師は、だいたい、その時に症状が出ていなければ、「様子見」にする)なので、特にムカつきもせず、逆にまた入院・手術するのも面倒だし、あそこには余り入院したくないので、ほっとしたくらいだ。ただ、もし次回行くとすれば、無駄足を避けるために治る前に行きたいw

ただ、MRIくらい撮ってもいいとは思うのだが、まあいい。というのは、今は、仮に再発しても手術しないことも考えているからだ。前回は病気なのを知らずに二十年以上放置していたが、癌のようなすごくひどいことにはなっていなかったので、今後もそれで乗り切れるのではないかと期待するのだ。まあ、その時になったらどうするか分からんけど、次は手術するのとしないのと、更に、(僕の体質に起因するのであれば、)手術しても再発する可能性も考慮して、どちらがいいか考えたい。

転勤したのか、前回の主治医は居なくなっていた。そして、運の悪いことに、今日は当番の二人のうち片方が休みのようで、結構待つかと思ったが、一時間くらいで診てもらえた。途中から一人増員になったのが良かった。その増員の医師は、前回もちょっと診てくれた元気な人だった。もしかしたら、僕の手術をした人なのかも知れないと思うのだが、手術前の挨拶はなかったし、僕は眼鏡をしていなかったし、彼はマスクを着けていたから良く分からない。そういうことを教えてくれなかったのは、あの病院の良くない点だ。そういうことも、あそこを敬遠したい一因だ。

他に、日本の病院では良くあることだが、受付前の待合所で人前で病状を聞かれたのは、どうなんだろうと思った。僕はまあいいけど、話しにくい人は居るだろうし、今はプライバシーを大切にする世の中ではないのか。その病院はとても大きな組織が運営しているのに、田舎だからダウングレードしてしまっているのか。残念なことだ。でも、いつも思うのだが、看護師さんや受付の人が親切なのは良い。少なくともそれだけは、あそこのいい点だ。

待っている間、SpotifyでThe Carsの"Candy-O" (1979)を聴いた。ちゃんと聴くのは久し振りではないか。データ節約モードでも全く問題ない音質だった。ただ、スマフォのボリュームでは微妙な音量調整ができないので、ケーブルの途中に入れるボリュームが欲しくなった。そういうアプリがあればいいのだが、以前は見つからなかった(→ 「音量微調整」で検索したらいろいろあったので、試す)。次のアルバム(何だったかすっかり忘れたw)を聴き始めた頃に呼ばれた。

見ただけのせいか、診療費は200円くらいと安かった。ちょっと心配したのだが、再診扱いのようで、紹介状がなくても追加費用は取られなかった。

モバイルデータ量を調べたら、なぜかOperaが多かった。以前起こったのと同じ現象だ。自分や他の方のブログをちょっと見ただけなのに16MBも使った。40分くらい聴いたSpotifyと同じくらいだ。謎だし、どうも気に入らない。Firefoxでも起こったし、フォントか何かなのだろうか。

帰りにちょっとドライブして来た。景色は「いかにも春」で、ところどころに桜なども咲いていて、車が例によって調子良いのと相まって、気持ち良過ぎて眠りそうだったw 約30km、1時間くらい走った。途中に、たまに通るちょっとした山道(低いので、屈曲路という方が正しい)があって楽しかった(正確には、その道かもと思ってナビの目的地に設定した)。やっぱり道はちんぷんかんぷんで、帰路はナビより近道があったのに気付かなかった。

朝、バッテリーが少し危うい感じだったが、まだ持ちこたえている。走行距離はほとんど増えず、約54000km。夏には車検だ。

 

PS. スマフォの音楽再生音量の微調整の件。Androidではなんと15段階しかできないようだ。昔から問題になっているのだが、例によってGoogleは対応していない。Automagicでも15段階だった。微調整するアプリはいくつか見付かったが、Precise Volume (+ EQ/Booster)というのが一番僕には向いている感じだ。ただ、無料版ではアプリを開かないと微調整ができず、音量キーを押すと大きな幅で変わってしまうのが嫌だ。気に入ったら買おうか。 それにしても、ブースターは山ほどあるのだが、そんなに使うものだろうか。あと、単なる音量調整(設定と同じ機能)が山ほどあるのだが、そんな無意味なアプリを作るなんて、そんなに暇なのか?w 情弱から広告料を稼ぎたいのか。 (22:53)

(4/4 7:53) その後、AndroidのイコライザやDSPを改造して自作しようかと思ってGithubを探したのだが、さすがに面倒なので保留した(中心部分は乗算だけなのでものすごく簡単なのだが、UIだのAndroidアプリにするような、「回り」の作業が煩雑だ)。そもそも、イコライザアプリなんて、中身はAndroidのを使う、単なるガワばかりだった。ただ、一個だけ、JamesDSPManagerというのがまともで良さそうだった。これをベースにすれば、今使っているグライコアプリと音量微調整を統合できそうだ。

それから、(Google Playでなく)Googleで検索して、最初は使い方が分からなくてパスした、ExtraVolumeSimple(音量微調整)※の使い方が分かり、良さそうなので試そうと思っている(と言っても、スマフォでSpotifyを聴くことはそうそうないので、なかなか試せないがw)。

※ExtraVolumeConfigの方が新しいようだ。基本機能は同様だが、不具合修正や新しいOS対応があるようなので、こっちに変えた。

ただ、UIをもう少し分かりやすくすればいいと思う。あれでは、画面を一目見て使える人は皆無だろう。Google Playにも「どうすれば音量を微調整できる」ということは書いてなくて、他人の書いたページを読んで初めて分かった・・・ これを、例えば、「拡張音量設定」を「音量ステップの倍率」などと書き、そのスライダーの最小・最大値を"x1/10"と"x10"などと書き、現在の値を"x1/6"のように書けば、随分分かりやすくなるのではないだろうか(← 例はあくまでも僕の理解の範疇なので、実は間違っているのかも知れない)。

まあ、こっちは使うだけなので文句は言わないが(でも、上の改善例をコメントに書こうかな)、技術者としては「それじゃ駄目だよ」と言いたいw あと、こちらは、ちょっと設定しようとすると全画面広告を出すPrecise Volumeより邪悪でないのが、すごくいい。

  •  0
  •  0

もう誰も使っていないだろうし、こういう情報が要る方は皆無だとは思うが、折角いろいろやったので、今までに分かったことをまとめる。最新版のハード(PQI Air Card II)とファーム(V303)が対象である。

  • 使い方に関して
    • PC(Linux)からAir Cardのファイルにアクセスするなら、dropbearを入れてsshfsなどを使うよりcurlftpfsを使う方が手軽。
      • Air Cardの内蔵のftpサーバのままでマウントできる(設定・改造不要)。
      • curlftpfsでの転送速度が速いか遅いかは不明(筆者の環境では500KB/sくらい出ていた)。
    • autorun.shを作って子機モードで使う時にAPに繋がるまでに30秒くらい掛かるのは、通常のAPモード(w3コマンド)と子機モード(w2コマンド)の初期化に時間が掛かっているため。w3を起動させずに直接子機モードにすれば少し速くなるはず。
      • そうするにはinitramfsを作り直す必要がある。
      • /etc/init.d/S12_mod_wifi startでAPモードにしている。
      • ただし、APモードになれないと動作確認が困難になる欠点があるので切り替えられるようにした方がいい。
    • 子機モードの時は、kcard_appやkcard_cmdやkcard_startupは全く不要。kcard_appを停めても問題ない。
      • kcard_appでデジカメで画像を削除したらWi-Fiをonにするなどの処理を行っている。
    • ファーム更新に失敗した時などに設定が壊れてWi-FiのSSIDがおかしく(例: "h)")なったりして、ファームを書き直しても直らない場合は(まだ「回復不能になった」と諦める必要はないw)、/mnt/mtd/configがディレクトリでなく通常ファイルになっていることがあるので、ログインできるならそうしてコマンドを実行して直すか、autorun.shにコマンドを書いて作り直すといい。
    • Air Card内のLinuxと外部からのmicro SDへのアクセスが競合すると、micro SDが(論理的に)壊れる可能性がある。
      • Linuxからrefresh_sdコマンドを実行するとその時のmicro SDの状態がLinuxに反映でき、syncコマンドでその逆(Linuxでの変更がmicro SDに反映される)になるようだ。
      • それでも同時アクセス(例: Linuxで変更後、外部でmicro SDが変更され、その後Linuxでsyncした場合)で壊れる可能性はある。
      • だから、Linuxからmicro SDに書き込むのはなるべく控える方がいい。
  • 消費電力関係
    • 「スリープモード」は無効。kcard_cmd -s 0 (または1)は効かない。してもしなくても一緒で、スリープしない。
      • 昔は動いていたけどファーム更新でなくなったのか、子機モードで使っていたせいかも知れない(そうでなくても無効だった気がするが、定かでない)。
      • kcard_appに入っているが公開されていないioctl、KCARD_GO_SLEEPも効かない。
    • 消費電力を減らすには、wlコマンドでWi-Fiモジュールの省電力設定を変えるのがいい。
      • 例: wl PM 1 (または wl PM 2)
        • wl PM 0で解除される。
      • 消費電力が27%くらい減る(例: 800mW → 500mW)。
    • ifconfigコマンドでWi-Fiを停めてもWi-Fiが使えなくなるだけで、消費電力は減らない。
    • Wi-Fiの送信電力を下げても消費電力は減らない。通信速度が落ちるので無意味。
    • Wi-Fiモジュールの省電力機能以外で消費電力を減らすことはほぼ不可能。
      •  システムをスタンバイさせたり電源をoffにする機能はなさそう。
        • 第三者が公開しているbusyboxのpoweroffコマンドの動作はshutdownと同様。
      • スリープはビジーループなので、消費電力削減には全く効かない。
      • micro SDをアンマウントしても消費電力は減らない。
      • カーネルにはクロックを変更したりスリープモードになると思われる機能があるが、使えるのか(本当に機能するのか)は不明。
      • Linuxを起動させなくても消費電力は減らない(u-bootのスリープがビジーループになっているせいか)。
      • CPUにはスタンバイなどの機能はあるが、システム制御レジスタの仕様が分からなので使えない。
      • 仮に、電源スイッチを付けてAir Card全体の電源を切ったとしたら、外部からSDとしてアクセスできなくなってしまう。
        • micro SDの制御にはLinuxやCPUは関わっていないが、SOCが制御しているようなので。
    • microSDを挿さないとAir Card全体が起動しないようで、消費電力は低い。
  • 更に細かい話
    • Air Cardの元はKeyASICのMCARDのようだ。
      • TranscendのWi-Fi SD CardやFlucardも同様と思われる。
      • SOC: SPG101 (CPU: ARM926EJS)
      • Wi-Fi: Fortune AF-N-31GL (Atheros AR6005)
      • Linuxカーネル: 2.6
    • ファーム更新用プログラム: program.binについて
      • ファーム更新ファイルの内容(推定)
        • program.bin: ファームウェア更新プログラム
        • mtd_jffs2.bin: /mnt/mtdのファイルシステムの内容
        • Image3: Linuxカーネル (Imageの場合もある)
        • initramfs3.gz: Linuxのルートファイルシステム(/)の内容 (initramfs.gzの場合もある)
        • autoload.tbl: (ない場合もある)不明。読み込むファイル一覧?
      •  更新に必要なファイルが正しくないと通常の起動になる。
        • 先頭のデータで更新ファイルの正当性を確認しているようなので、最初だけコピーしておけば誤魔化せる。
      • program.binの中に書かれたu-bootのコマンド(スクリプト)で、micro SDの更新ファイルを読んで内部フラッシュに書き込んでいる。
      • program.binはu-bootのサブセット+改造と思われ、使える(動く)コマンド・機能は少ないし、動作がおかしいものがある。
        • if, &&などやclk setコマンドは使えない。
        • sleepコマンドの単位は秒でなく、かなり小さい(約1/416秒?)。
      • ファームの更新成功後、program.binはLinuxの起動時に削除される(他の更新ファイルはどこで削除されているのか不明)。
    • [既知の情報] ファーム内のinitramfs3.gzの先頭8バイトを除去しないと、gunzipできない。
      • 例: dd if=initramfs3.gz bs=8 skip=1 | gunzip > initramfs3
      • ファイルの展開にはcpioを使う。
        • 例: cpio -ivd < initramfs3
    • [既知の情報] busyboxをコンパイルするには、arm-none-linux-gnueabiのgccが要る(→ ダウンロードの例)。Linuxのクロスgcc(arm-none-eabiなど)では駄目。
      • u-bootやLinuxカーネル(GPLなので、昔ソースが公開されていたようだ)はそれでなくてもビルドできるが、ちゃんと動かすための設定が難しい(u-bootは起動はするものの、今ひとつうまく動かない。Linuxカーネルはビルドできたが、動かなかった)。
      • LinuxカーネルはmkimageコマンドでuImageにする。なぜか作られなかったので、u-bootのものを使った。
    • Air Cardのブートの流れは以下のように推測している。
      1. 電源on後、内部フラッシュのu-bootが読まれて起動される。
      2. u-bootはmicro SDにprogram.binがあれば読んで実行する。
      3. u-bootは内部フラッシュのLinuxを起動する。(内部フラッシュからRAMへの展開をどこでやっているのか不明: おそらくu-bootがやっている)

 

(4/3 8:09 refresh_sdに補足)

  •  1
  •  0

諦めた」と書いたPQI Air Card II(以下、Air Card)でのデジカメ画像の転送であるが、実は密かに日夜続けていたw(投稿の間が空いたのはそのせいだ) 買ったお金が無駄になるのが嫌なのでなく、「できそうでできない」というムカつかせる状態や僕の好奇心がそうさせていた。毎日、夜には諦めて片付けるものの、朝起きると新しいアイデアが浮かび、引っ張り出して試し、結局駄目でがっかりして、「もう諦めた!」と決意を堅くして仕舞うの繰り返しだった。

大きな問題は以下だった。

  • 電源をonにした時、通常はWi-Fi(Linuxも)を起動させないようにする。
  • デジカメから、Linuxを起動するかどうかの切り替えができるようにする。

切り替える手段がほとんどないので、Air CardやFlashAirのやり方をならって、特定の画像を削除することにした。ただ、前にも書いたように、切り替え機能を実現するベースに使おうとしているファームウェア更新プログラム(program.bin)ではifなどの条件判定ができないうえに、入手したu-bootをコンパイルしてもなぜかうまく動かない機能が多いので、どうしても、「あるファイルがあったら*する/しない」という判定ができずにいた。

それが、昨夜ふと思い付いたことで可能になった。

program.binは、SD内にファームウェアの更新に必要なファイルがあるかどうかを判定して(u-bootの)ファイル読み込みやフラッシュ書き込みコマンドを実行しているので、その判定処理を使うのだ。具体的には、例えば、SDにあるImage3というファイルをフラッシュに書き込むコマンドは、program.binの中に以下のような文字列で書かれている。

fatload mmc 1 208000 image3; sf erase 200000 300000; sf write 1ffc00 200000 300000

今までは、そこにファイル有無を判定するコマンドを入れて失敗していたのだが、そもそも、Image3がある時だけこれが実行されるのだから、これが呼ばれる前にImage3というファイルの有無の判定処理があるはずで、それが使えるのだ。それで、書き込みコマンドを以下のように書き換えれば、SDにImage3がある時には、(しばらくの間: 10万秒(= 約1日)を期待する)Linuxを起動させないようにすることができる(u-bootにはシステムを止めたり何もしないでいるコマンドがないので、sleepを使った)。

sleep 100000

そのように書き換えて(実際には、コマンドを書けるサイズが大きいのでpreprog_chk.binというファイル用の領域を使った)、SDに対象のファイルを作って起動したら、当たり前ながらLinuxは起動しなかった。

実際にデジカメから設定できるようにするには、設定に使う画像ファイルはDCIMディレクトリの下になければならないのだが、運良く乗り越えられた。program.binの中には、存在を確認するファイル名を格納している領域があるので、そこに判定に使いたいファイル名(例: DCIM/100_CTRL/nowf0001.jpg)を書き込めば良い。実際には、本来のファイル名より実際のファイル名が長いからオーバーしてしまうのだが、たまたま、その後にメッセージの文字列が入っていたので、そこまで使って格納できた。メッセージは見えないので、おかしくても全く問題ない。具体的には、

preprog_chk.bin\0pre-program check passed.

DCIM/100_CTRL/nowf0001.jpg\0 check passed.

に変えた(文字列中の"\0"は、文字列の終端を示す文字である。\0は記載したそれぞれの文字列の最後にもあるが、省略している)。これで、DCIM/100_CTRL/nowf0001.jpgがある時はWi-Fi(Linuxも)は起動せず、それをカメラで削除して電源を入れ直せばWi-Fi(Linuxも)が起動するようになる(Linuxが起動したら、削除した設定用ファイルなどを復活させるようにした)。なお、デジカメはディレクトリ名やファイル名や画像のサイズを細かくチェックしているので、それらを規格や仕様に合わせないと、デジカメにエラーが出たり画像が表示されなかったりするので、注意が必要だ。

画像の削除でWi-Fi(Linux)をonにできるようになった

ここで、動作確認していたら問題が見付かった。Linuxを起動させないようにするsleepの待ち時間が想定よりかなり短いことが分かった。調べたら、約1日は持つと思っていた"sleep 100000"が約4分で終わってしまった。どういう訳か、単位が秒でなく1/416秒程度だったようだ。仕方ないので、約1時間ごとに繰り返すように、以下のようにした(調べたところでは、アドレスe00000にジャンプするとプログラムが(再)起動するようなので、そうした)。

sleep 1440000; go e00000

ようやく、実使用時の操作方法でPCに画像を転送できるように(実際にはPCから画像が取り込めるように)なったと思いきや、更に大きな落とし穴があった。

デジカメの省電力(自動電源off)機能だ。

今の状態ではWi-Fiでの転送速度はUSBに比べれば遅いが、改良していくら高速化しても、大量の画像を転送しているうちにデジカメの電源が切れる可能性が0にならないのだ。マニュアルによれば、5分で切れる(時間は変更不可・・・)。今日測定したら、1枚の転送に約6秒掛かっていたので、50枚以上取り込もうとしたら切れる。いくら高速化したって(現実には10倍だって無理だろう)、いつかは切れる。一方、USB(PTP)の場合は、カメラが自分で転送中と分かっているから、おそらく絶対に切れない。自分で転送しているのに切るのなら、とんでもない間抜けだ。

カメラは、挿さっているSDが勝手にWi-Fiで転送しているなんてことは知る由がないし、SDからカメラに「ちょっと電源切らないで」なんて言えないので、それを防ぐにはデジカメの省電力機能をoffにするしかないが、使っているうちに自分で電源を切り忘れる可能性があるから嫌だし、転送のたびに設定を変えるのは面倒だ(それならケーブルを繋ぐ方がいい)。

「Wi-Fi内蔵SD」は本質的に駄目だったのだ。

確かに、ちょっと前に見たページにも省電力機能と競合するのでWi-Fi SDは下火になったようなことが書いてあった。。。 これって、最初っから太刀打ちできないとか腐っているもの(例: 竹槍)を気合や根性でなんとかしようとしたけど結局は無駄で、他所の賢い人が考えた素性のいいものに完敗するという、日本の伝統ではないか!w (多分、「本物」は、この期に及んでも分割転送とかいろいろやるんだろうな・・・ 僕はもうお腹いっぱいだが)

散々苦労したし、渾身のシステムができそうでわくわくしていたものの、結局はお蔵入りだ。がっかりしたが、まあ、随分遊べて(ちょっとしたハッカーの真似事?w)おもしろかったし、いろいろなことが分かったので良しとしたい。

が、すごく疲れたー。

これで安心して本当に仕舞えるかな(micro SDだけ残してさっさと捨てたいくらいだw)。

最後に一言:

駄目なものはいくら頑張ったって無駄。

 

PS. それにしても、Air Cardの中をかなりいろいろ見たが、これまでに書いた以外にも山ほどまともに動かない/作っていない・手抜きなところが多く、いかにも「中華クオリティ」(ただし、本当はどの国の人が作ったのかは知らない)だと思った。まあ、それでもそれなりに売れてそれなりに動いているのだから、逆に感心する。でも、それが結局は、あのとんでもない評価に繋がっているのだろう。やっぱり、手抜きはいけない。

(19:55 画像を追加)

  • wifi機能付のSDカード

    wifi機能付のSDカード

    wifi機能、つまり、無線LANを使った通信機能のあるSDカードがある程度広まった感があるのでここで…

  •  0
  •  0