卵と鶏 | 似非科学研究所
2008-02-23 22:30:02

卵と鶏

テーマ:るびぃのカケラ

RubyでiPodリモコンに挑戦しているわけですが、新たな難問が..


オシロの調子が悪いです(涙)


突然電源が落ちて再起動してみたり..コンデンサの劣化かもしれませんが、オシロ(しかも電源部)を

修理するのにそのオシロ自身は使えませんし、まさに卵が先か鶏が先かな状態です(^-^;


そんな訳で調子の悪いオシロをだましだまし..調子の悪いときには電源スイッチ入れてから立ち上がる

まで30分ほど要しますが..実験を続けています。



iPodのリモコンコードは0x00とか0xffとかバイナリコードを送る必要があるので、意外と大変な部分が

ありました。


最初はTEXCELLさんのwincom.rbを使っていたのですが、一応バイナリモードはある物の実際に

バイナリデータを流そうとすると(当然バイナリモードでオープンしてます)..

send([0xFF, 0x55, 0x03, 0x02, 0x00, 0x01, 0xFA]) は受け付けてもらえませんし、

send([0xFF.chr, 0x55.chr, 0x03.chr, 0x02.chr, 0x00.chr, 0x01.chr, 0xFA.chr]) もダメです。


唯一、ループを回して1バイト毎に送信するとエラー無く送信はできるのですが、実際に送信された

データはなかなかひどい状態です。




↑上の波形が通信ソフト(Acknowrich)で送信したデータ。 下の波形がRuby + wincom.rbで送信したデータです。

なんだかデータが抜けてます..


たまにはこんなデータが送信されます↓



↑データ数としては一応送信漏れは無いような感じですが、送信バイト毎の間隔が不定期に開いています。


それでwincom.rbはあきらめまして、ネットをさまよった挙げ句にcom.rbというのを使ってみました。

こちらは..


send([0xFF, 0x00, 0x55, 0x00, 0x03, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01, 0x00, 0xFA]) はエラーは発生しませんが、送信されるデータはめちゃくちゃです。(^-^; なにか変換されている感じ


send([0xFF.chr, 0x55.chr, 0x03.chr, 0x02.chr, 0x00.chr, 0x01.chr, 0xFA.chr]) はAcknowrchと同じデータを

送信することができました。





上の波形がAcknowrich、下がRuby + com.rbです。

これでようやくリモコンコードの確認に移ることができます。


2st-riderさんをフォロー

ブログの更新情報が受け取れて、アクセスが簡単になります

コメント

[コメントする]

Ameba人気のブログ

Amebaトピックス