2年前の買ったダイキンのACK75L-Tの中に虫が入りこんで死んでいるっぽいので分解清掃した。

ダイキンは法人向け技術資料を普通に公開しているので、詳しい分解方法 (公式) を普通に知ることができる。だいぶ便利。普通のユーザー向け取説と同じぐらいイラスト付きで親切に書いてある。

幸い、1匹が原型を保ったまま死んでいるだけでよかった。粉々になったカメムシとかいなくてよかった。

一応、開いて掃除できる部分は掃除したけど、さすがに何重もフィルターしたあとの部分だけあって、目に見えるほこりはなくて、非常に細かい粒子みたいなのが一様についている感じだった。ウェットティッシュで拭くと真っ黒になる感じ。

RTTY (ラジオテレタイプ = 無線による文字伝送) というものがありまして、大変昔昔に考えられた通信プロトコルなのですが、アマチュア無線では一応現役のデジタルモードであります。

RTTY で通信すること自体にはあんまり興味沸いてなかったのですが、プロトコル自体には興味があったので、Web Audio と絡めて、試しに実装をしてみました。

RTTY のプロトコル

そもそも RTTY はラジオテレタイプの総称なのですが、アマチュア無線においては典型的には以下のようなプロトコルのようです。

  • 170Hz シフトの FSK (複数の周波数を切り替えて信号を伝達する)
  • 5bit の ITA2 コード Baudot Code (ボーコード) で、スタートビット1bit、ストップビット1.5bit の非同期方式
  • 速度は 45.45 ボー (22msecごとの符号)

さらに、無線機とのインターフェースとしては AFSK (Audio? FSK)、直接FSK というのがあって、前者は LSB モードの音声としてオーディオ帯域を入力するもの。後者はキーイングに応じて無線機側で直接送信周波数を 170Hz シフトさせるものです。

AFSK だとマイク入出力だけで無線機とのインターフェイスが完結するので接続は簡単になりますが、無線機に表示されている周波数と実際発射される周波数にズレが生じたり、ALC の調整とか、電波の質とか、送信が少々面倒です。まぁしかしとにかく AFSK として実装をしました。

なので、送信側としては 2125Hzの「マーク」符号 (=ビット1に相当) と、シフトされた「スペース」符号 (=ビット0に相当) を作ります。

Baudot Code

RTTY が開発された当初には ASCII コードとか存在しなかったようです。

5bit しかないので、アルファベットと数字・記号をシフトコードで切り替えながら送受信することになってます。なので、シフトコードの受信にミスると文字化けが起こります。

出力 (送信)

まずデバッグしやすくするため、送信側から作りました。デバッグには既存の MMTTY を wine で起動してマイク経由で適当にやりました。仕様通りに信号を変調すればいいので送信は比較的楽です。ただ、以下の点にハマりました。

  • LSB モードの復調結果を取り込むことを前提としているので、マークとスペースの位置が反転する (スペースが170Hzアップシフトになる)
  • 下位ビットからの送信

入力 (受信)

まぁ当然めんどうくさくて、とりあえず同期検波を実装してみました。マーク周波数、スペース周波数それぞれについて、I と Q (1/4位相ずれ) 信号を作ってやるやつです。それで直流になるので、あとは頑張って22msec分のサンプルを数えながらデコードしています。

この方法だと特にフィードバックとかがいらず、ストリーム1パスで処理できるので気が楽でいい感じです。

今回は JS 側でフィルタとか書きたくなかったので、最後のほうまでダウンサンプリングせず、できるだけ Web Audio の API で実装してみました。単に面倒だったのと、Web Audio の知見を溜めようという狙いです。I/Q な信号が2本なので、合計4チャンネルの信号を作って一気に1つのローパスフィルタノードに入れたりして結構楽しい感じです (ただ、こうするとチャンネル間で干渉するっぽい)。オシレーターノードを使ってもっと綺麗に書けないかと思ったけど、かえって面倒だったので素直に sin/cos してます。

ちなみにローパスとハイパスの Q 値は 0 以上の場合、カットオフ周波数付近がなぜか増幅されるという挙動になるのでハマりました。減衰傾斜が急になるのだとばかり思っていたら全然違った。バンドパスの場合の Q 値は上げても減衰傾斜が急になるだけです。

  1. トップ
  2. ham
  3. Web Audio (JavaScript) で RTTY (周波数偏移変調) をデコード
  1. トップ
  2. tech
  3. Web Audio (JavaScript) で RTTY (周波数偏移変調) をデコード

Lighroom はパッケージも今は別に高くはなくて、アップグレード版は10k円しないぐらいだけど、Photoshop はまだまだ高い。最新版を使いたいなら、PS + LR で月額1000円というのは非常に安い。初期費用がかからないことを考えるとお得感が増す。

2年に一度 LR をアップグレードするために10k円程度使うのは諦めていたけど、Photoshop は CS3 を買ったきりアップデートしていなくて、Camera Raw は古くて HDR 現像できないとか悲しい感じだった。

年間12000円のうち、5000円を今までと同じLRの維持費と考えると、+7000円で Photoshop の最新版が常に使える。あと一応 Creative Cloud のなんかオマケっぽいサービスもついてくる。

スリープからなかなか復帰しないな、と思ったら勝手に再起動がかかる、ということが2度起こった。

起動後、クラッシュレポートが表示されて Sleep Wake Failure と出ていた。ググってみると他にも発生している人がたくさんいる。結論からいうと外付けの USB HDD を繋いだままスリープ復帰させるようとすると、Sleep Wake Failure になることがあるみたい。クソだ。

知らなかったけど、 USB まわりに不具合が多いらしい。スリープ復帰後にUSB HDDがアンマウントされてしまうとかも起こることがあるみたいだ。

現時点では良い解決方法がない。

  • スリープさせない (とはいえ、スリープの設定項目はないので「ディスプレイが切のときはコンピュータを自動でスリープさせない」にチェックを入れるしかない)
  • スリープさせる前に HDD をはずす

なんとかしてほしい。

モニタの解像度が足りないからというのはあるだろうな、と思いつつ、大きい画面で高い解像度のディスプレイを持っていなかったので、完全に実感できていたわけではなかった (スマフォだと画面が小さいので、条件が変わってしまう)

MacBook Pro Retina を買って高解像度でそれなりに大きいディスプレイが手に入ったので、表題のような細かい写真を見てみているけど、やっぱり、解像度が足りなかったせいで思ったようなものになっていなかった、というのことを実感した。解像度が高いディスプレイは世の中にはまだまだ少ないので、そういった写真においては特にプリントされた写真というのは強い価値があるように思う。

マウスの問題というわけではなくて、内蔵トラックパッド・Bluetooth の Wireless TrackPad、他者メーカー製の USB マウスどれでもひっかかる。DisplayPort ケーブルを抜くと正常になるので、DisplayPort が悪いのは間違いなさそう。

解決方法がみあたらない。おれだけなんだろうか。めちゃめちゃに困る。

初回起動時の「設定アシスタント」では移行をスキップして、あとから「移行アシスタント」で移行をかけたほうがいい。

というのも、「設定アシスタント」だとユーザ情報はなぜか復元されないから。ユーザごと移行をかけたいなら「移行アシスタント」を使うしかない。

何気なく繋いだらちゃんと表示されなくてクソがって感じ。テレビとして認識されているようだ。ググってみるとなおすスクリプトを作ってる人がいたのでやった。(DELL U2713H)

http://embdev.net/topic/284710#3027030

$ ruby patch-edid.rb
$ sudo mv DisplayVendorID-10ac /System/Library/Displays/Overrides

に貼ってあるスクリプトを実行して再起動する。EDID を上書きして強制的に RGB にするみたい。

Time Machine はかなり気にせずに使えるのがいいというものですが、バックアップ実行中に環境設定を開いても今何をコピーしているのが全く表示されないので、気になるときはモヤモヤする。

なんかいい方法ないかなと思ったけど、特に思いつかないので、dtrace で open を見たらとりあえずわかりそうな結果はでました

$ sudo dtruss -t open -n backupd

で backupd が open するファイル名がドンドコ表示されるので、起動しっぱなしにしておけば、現在コピー中のファイルは知ることができる。

ただ、なんか1つのファイルをずっとコピーしているなー、という場合には (既に open 済みなので) 使えなくて、そういうときは lsof でいける気がする。けどたった今バックアップが終わってしまったので検証できないのでそのうちやってみます。

何かもっと素晴しい方法があればご教示ください。

  1. トップ
  2. tech
  3. Mac の Time Machine が今何をバックアップしているのか? を知る

出雲市 (特に大社と出雲市駅との往復) と、松江市 (松江駅を中心に周辺観光地) にいって公共交通機関で観光した実感。あんまりまとまってないけどとりあえず書きなぐっておく。

実際にいった主要なところは

  • 出雲市
    • 出雲大社
    • 日御碕
    • 島根ワイナリー
    • 島根県立古代出雲歴史博物館
  • 松江市
    • 松江城
    • 松江堀川遊覧船
    • 佐太神社
    • 八重垣神社

あたりだけ

公共交通機関のメリット

  • 運転免許がなくてもいい
  • 酒が自由に飲める
  • 比較的コスト安

ぐらいしかないと思う。基本、免許がなかったらタクシー貸切ればいいので、それができるならそのほうがいいと思う (タクシー貸切も考えたけど時期的に無理だった)

旅行行くと運転免許が欲しくなるけど、旅行のときしか運転しないとかだとどっちにしろ怖くて運転できねーよって感じなので結局運転免許を取得するメリットを未だ見いだせていないです。

フリーパス

とりあえず、3日間3000円で出雲、松江周辺のバス電車 (JRを除く) が乗り放題のチケットがあるので、これは必ず使ったほうがいいと思う。空港往復だけでも1500円ぐらいかかるので、まず元は取れ、バスの支払いで小銭の心配をする必要がなくなって捗る。JRでは使えないけど、松江、出雲間の移動であれば一畑電車がこのフリーパスでいける。ただしJRより少し余計に時間はかかる。

基本情報

出雲市内のバスは多くとも30分間隔、松江は20分間隔ぐらい。場所や路線によってはもっと少ない。路線と時間帯によってはほとんどないこともあるので、事前チェックは必須。土日にしか運行がないバス路線とかもあったりするので、平日の観光はより気をつける必要がある。

電車は路線も少なく、本数も少ない (一畑電車は1時間に1本程度・JR は普通列車は同じく1時間に1本程度) しかない。

公共交通機関使うなら当たり前かもしれないけど、事前にちゃんと行きたいところ決めてスケジュールを組まないとホテルに帰れないとか、飛行機に乗れないとか詰む可能性を感じる。

ただ、出雲空港と出雲市の往復バスは飛行機の離着陸にあわせた時刻表が組まれていいて、例えば出雲空港からの場合、飛行機がつくのが遅れたとかいう場合も、ついた時刻から10分後にバス出発という感じなので焦る必要はない。

時間的制約が各所で発生するので、ちょっと気が重い感じになる。

時刻表検索

バスを利用する場合、どうも Google Maps は役に立たないことが多い。Yahoo! ロコのほうがローカルに強い。しかし出雲の一畑バスはいずれも候補にでてこない。

一畑バスの公式サイトもなかなか不親切で、見たい情報を一覧で見れないので、事前に自分で表にしたほうがスムーズだと思った。ただ、出雲市駅でくばっている時刻表はいい感じに一覧になっているので、手にはいるならこれで良さそう(実際何度か参考にした・平日でも朝配ってくれていた)。

事前にスケジュールを組んでも、実際行ってみると思ったより時間がかかったとか、時間が余ったとかはよくあることなので、時刻表には簡単にアクセスできるようにしたい。今回、佐太神社には行く予定がなかったけど、八重垣神社で思ったより時間が余ったので予定を変更して行った。

松江は Yahoo! ロコでバスがでてくるのと、本数も20分に1本ぐらいはあるのでかなり気が楽。ただ、Yahoo! ロコのアプリがバグっていて、補完ででてくるバス停名だと検索できないことがある。これはバス停名にバス会社の名前がついてるせいなので、補完した後それを消せばいける…… (アホなのでなおして欲しい)

ことりっぷ 松江・出雲 石見銀山 (旅行ガイド) - 昭文社 旅行ガイドブック 編集部

昭文社 旅行ガイドブック 編集部

3.0 / 5.0

練習開始から111日。練習のモチベーションはかなり落ちているんだけど、割と習慣化できているので、1日に少なくとも5分程度はやってると思う。習慣化というか、せっかくここまで頑張ったんだし……っていうサンクコスト的な感じで続けざるを得ない。

前回書いたときから3週間ほど経ったけど、あいかわらず 100% をとらない限り次に進まない、というのを続けてる。23wpm で 100% を出して、今は 24wpm で 100% を狙っている。90%以上はコンスタントに出せていて、あとは運が良ければ100%とれるかな?という感じ。たまに 25wpm、26wpm をやってもまぁ90%ぐらいはとれる感じ……

というのはランダムの話で、やはり単語聞きとりになるとかなり精度が落ちる。80〜90%ぐらいになってしまう。符号の聞きとりだけじゃなくて、単語の認識をしようとして処理速度が追いつかない感じ。ただ、速度を落とせば聞きとれるかというと、そういうわけではなくて、頭に浮かんだ文字の一時記憶が数msecなので、遅いと遅いで単語が聞きとれない。

あと、「business」とか、「conversation」とか、長い単語になると、さらに辛い。単語は i e s あたりが本当に頻出なので、速度が1.5倍ぐらいになるインパクトがある。ss は特徴があるので覚えやすい。hh とか ii という列は普通ないので、ss は s 単体よりも正確に聞きとりやすい。process とか discuss とか possible とか、よくでてくる。

初期のころからやって聞き慣れつつある th からはじまる頻出単語 (the then they them this there their) は結構聞きとれるようになってきた。初期のころこれ無理だろ、って思ってたけどかなり時間をかけて慣れてきてる…… とはいえ、これらの中でも this there their は難易度が高い……

  1. トップ
  2. ham
  3. モールス練習 進捗
  1. トップ
  2. モールス
  3. モールス練習 進捗

JALタッチ&ゴーサービスで、発行されたQRコードが1つしかなくて、これで往復いけるの? と不安になったけど、1つで往復できるらしい。

なかなか答えが見つからなくてググったらスマフォアプリ?用の FAQ がヒットした。

【 国内線 / タッチ&ゴー 】
搭乗便を往復同時に予約しました。印刷用のバーコードは1つですが、携帯用のバーコードは2つあります。どちらを使えばいいですか。
【2次元バーコードを携帯にメールで送信する場合】
往復1つのご予約記録であっても、システム上片道ずつの配信となります。
どちらのメールからURLをクリックいただいても、2次元バーコードは同じものとなります。日付により、それぞれ使い分けてご利用いただく必要はございませんので、往路のメールで取得したバーコードで復路利用も可能です。

【2次元バーコード(eチケットお客さま控)を印刷してご利用いただく場合】
1つのご予約記録に対し、バーコードは1つとなります。

http://faq-sp.jal.co.jp/app/answers/detail/a_id/4229

検索クエリを眺めると、ほんとタバコの消臭に関する流入が多くて、たくさんの人が困っていることがわかる。

なんかいろいろあって??ってなるので特徴を覚え書き。線は信号に関係するものだけ (普通は +VDD が必要)

名前 特徴 速度 備考
1-wire SIGNAL, GND 半二重 1対多 非同期 標準 15.4kbps, オーバードライブ125kbps SIGNAL が VDD を兼ねるので本当に2本だけでOK センサーとかで採用例がある。MAXIM の日本語スライド
I2C SDA, SCL, GND 半二重 多対多 同期 ロースピード 10kbps 標準 100kbps ファーストモード 400kbps 高速モード 3.4Mbps バス中のデバイスのどれでもマスターになれる。マイコンだと400kbpsまでが多い?ここに上げた中では唯一多対多のバスを作れる
SPI SCK, MISO, MOSI, SS, GND 全二重 1対多 同期 クロック依存最大 1Mbps〜2Mbps マスターはスレーブの数だけ SS が必要。1対1 なら SS は必要ない。
RS232 RxD, TxD, GND 全二重 1対1 非同期 9600bps などいろいろ PC でもよく使われていたインターフェイス。今でも USB 変換ケーブルは簡単に手に入る。フロー制御とかしないなら3本で使える
USB1.0 D+, D-, GND 半二重 1対多 非同期 1.5Mbsp, 12Mbps 使うの面倒。USB2.0 は高速化版、USB3.0 はさらに高速化して全二重に

AVR では

  • SPI はほぼどの AVR でも使える
  • I2C は AVR によっては専用ハード (TWI) が用意されてる。専用ハードでなくても USI があれば TWI をハンドリングできる (多少面倒だけどライブラリとして公開している人はいる)。
  • RS232 はロジックレベルをドライバ (MAX232系の) で変換すれば USART で直接扱えるので簡単。
  • USB は一部の AVR で組込み。V-USB を使えばソフトウェアだけでもいける。あるいは USB Serial 変換チップ (FTDIのが有名でクロスプラットフォーム) を使えば USART 経由で使える。変換チップ使うのが確実で汎用性があってよく使われていそう。

略語がいっぱい

  • UART (Universal Asynchronous Receiver Transmitter) は非同期なシリアルを扱う回路の名前。同期なのを統合したものを USART (Universal Synchronous Asynchronous Receiver Transmitter) というらしい
  • TWI (Two Wire Interface) はその名の通り2線式ってことなんだけど、AVR においては普通は I2Cのことを指しているっぽい。I2Cと名乗ってないのはなんか政治的な問題?
  1. トップ
  2. avr
  3. マイコン周りのシリアル通信プロトコルまとめ
  1. トップ
  2. tech
  3. マイコン周りのシリアル通信プロトコルまとめ
  1. トップ
  2. arduino
  3. マイコン周りのシリアル通信プロトコルまとめ

そういえばマイコンからカメラのレリーズができたらいいかもなーとなんとなく考えたのでやってみた。タイムラプス的なもの (インターバル撮影) とか、バルブとか自分で制御できたら楽しいかもしれない。

リモートレリーズ端子

リモートレリーズ端子 (有線) にはいくつか種類があるらしく、キヤノンの場合、Kiss とかではステレオミニと同じだけど、5Dとか7Dとかだと、N3型端子とかいう謎の端子になる。N3端子ってのはそこらへんで単体で簡単に手に入らないので、既存のを買って切るしかないっぽい。機能的には同じみたいだけど、なんでこんなことになってるのか謎

手元にあるのはN3型のものなので、別にレリーズ別途買ってまで試すまでのモチベーションはわかなかったので、とりあえずリモートレリーズ端子を使うのは諦めた。(ただのスイッチなので難しいことはなさそう)

赤外線リモコンのレリーズ

他にレリーズを切る方法としては、赤外線リモコンを使うほうほうがあって、これなら赤外線 LED チカらせるだけでよく、端子とか関係ないのでお手軽そうだった。赤外線は昔昔買ったLEDジャンク詰め合せに無駄にいっぱい入っていて腐っている。

ググるとリモコンの解析結果を公開している人がいるので、その通りやったらいけた。

あたり前だけどドライブモードをリモコンのモードにしないとシャッター切れない。解析結果をそのままコードにしただけだけど (PB0 に LED が接続されている前提)

void shutter () {
	int i;

	for (i = 0; i < 23; i++)  {
		set_bit(PORTB, PB0);
		_delay_us(13);
		clear_bit(PORTB, PB0);
		_delay_us(13);
	}
	_delay_us(7200);
	for (i = 0; i < 23; i++)  {
		set_bit(PORTB, PB0);
		_delay_us(13);
		clear_bit(PORTB, PB0);
		_delay_us(13);
	}
}

ただ、赤外線の場合、設定済みの露出でしかシャッターを切れないので、バルブとかはできない。インターバル撮影とか、センサー連動のシャッターとかはこれで十分できそう。花火の撮影とか自動化できそう。

  1. トップ
  2. avr
  3. キヤノンのカメラのリモートレリーズ (またはリモコンレリーズ)
  1. トップ
  2. tech
  3. キヤノンのカメラのリモートレリーズ (またはリモコンレリーズ)
  1. トップ
  2. arduino
  3. キヤノンのカメラのリモートレリーズ (またはリモコンレリーズ)

ディスクを1台新しく買ったので、Windows とディスクを共有する、という前提を諦めて (というより、ネットワーク共有するつもり)、ディスクは HDFS+ でフォーマットした。

これで Time Machine のバックアップ対象にできるぞ、と思ったんだけど、なんとなく case sensitive としてフォーマットしたら、Time Machine 用のディスクが case insensitive なせいでバックアップ対象にできないことが判明、、、せっかく8時間ぐらいかけてバックアップをコピーしたのに………

最近このようなことばかりで本当に嫌気がさす。ろくなことがおこらない。人生自体がバグってる