How-To:USB Remote Control Receiver

MP3を聴く、XVIDまたはX264Sを閲覧する今、コンピュータは多くの家の少なくとも1つのスペースの楽しみセンターです。しかし、あなたが特別なHTPCを持っていない限り、あなたは鍵盤を使ってキーボードを使って、ボリュームの修正、そして急速に早送りのMythBustersの再販を停止します。 PCリモートコントロールは、著名なソフトウェアでサポートされていないUSBデバイスに、古代シリアルポートデザイン(誰がいますか?)を受信します。このハウツーでは、Windows用のソフトウェア、Linux、およびMac用にサポートされている典型的なプロトコルを模したUSB赤外線受信機をスタイルします。部品リストだけでなく、プロトコルプラス回路図への完全なガイドがあります。

デザインの概要

リモコンは変調された赤外線のデータを送信します。赤外線受信機ICは、変調されたビームを1Sだけでなく0Sのクリーンストリームに分離する。データストリームは、USB接続を介してコンピュータに送信されるだけでなく、マイクロコントローラによってデコードされる。ソフトウェアはコードを処理し、コンピュータ上のアクションをトリガーします。

バックグラウンド

コンピュータ赤外線受信機

最も古いPCの赤外線受信者スタイルは、レシーバICを使用してシリアルポートピン、通常はDCDを切り替えます。このスタイルは、USENETに由来する可能性が最も高い、そしてそれはまだWeb上で最も顕著なものです:Engadget、Interestableなどは、データをPCに送信しないので真のシリアルデバイスではありません。代わりに、コンピュータプログラムがシリアルポート上のパルスと信号を復調するだけでなく、時間がかかります。これは非常に簡単な設計ですが、それはWindowsで提供されなくなったタイミング精度への直接割り込みゲインアクセスに依存します。まだシリアルポートがある場合は、LinuxまたはMacユーザーがこの受信側を試すことができます。このタイプの受信機が現代のWindows XP PC上のシリアルポートと協力すること、およびUSB->シリアルコンバータを介して転送する正確なタイミングを期待していませんでした。

いくつかの高度な高度な赤外線受信機は、コンピュータにデータを送信する前に赤外線信号を決定または復号する真のシリアルポートデバイスです。 UIR / IRMANとUIR2は従来のピクチャ16F84を統合していますが、ファームウェアやソースコードを供給しません。これらのデバイスは、必要に応じてUSB->シリアルコンバータを介して現代のコンピュータで動作する必要があります。 USBIRBOYとUSBIRBOYはネイティブUSBデバイスですが、幅広いサポートがありません。

受信者ソフトウェア

受信者タイプに関係なく、コンピュータには、着信リモートコマンドをリッスンするためのプログラムが必要であり、それらをコンピュータ上のアクションに変換します。 LinuxおよびMacユーザーはLIRCを持っています。これは多くの異なる受信機タイプをサポートしています。 Windowsユーザーは少し幸運です。 WinLircは、簡単な割り込みベースのシリアルポート受信機のためのLIRCの放棄されたWindowsポートです。 WinLircは2003年に最後に開発されました。幸いなことに、Girderの最後のフリーウェア版(3.2.9b)はまだダウンロードのために提供されています。

IRリモートプロトコルの操作

IR信号を復号化します

リモートコントロール38kHzプロバイダパルスの間隔またはタイミングでエンコードコマンド、[San Bergmans]は、関係するプリンシパルについて説明しています。赤外線受信機ICはデータストリームをキャリアから分離する。私たちの仕事は、マイクロコントローラでデータストリームを復号することです。たくさんのリモートコントロールプロトコルがありますが、PhillipsのRC5は普通に普通に使用されているとともに、趣味で使用されています。

RC5は1ビット時間あたり1.778msの正確に14の等しい長さのビットのストリームです。ビット時間の最初の半分の間のパルスは0を表し、後半のパルスは1を表す。この計画はマンチェスター符号化と呼ばれます。

私たちは、既知のRC5リモコン、既知のRC5リモコンの出力を調べるためにロジックアナライザを使用しました。ダイアグラムは、2ボタンの2つのプレスと2ボタンの2つのプレスを示しています。なお、出力は上記の説明から逆方向に逆になることに留意されたい。

最初の2ビット時間は開始ビット、その後にトグルビットが続きます。受信機が繰り返しプレスと同様に、ボタンが押されるたびにトグルビットが逆になります。次の5ビットはアドレス(0b1110 = 0x1e)、その後にコマンド(0b000001 = 0x01,0b000010 = 0x02)です。 RC5への後方互換の拡張機能は、コマンドビット7として2番目のスタートビットを使用します。

コンピュータへのリモートコードを表す

前のデザインを見ると、リモートコマンドをコンピュータに伝達する3つの一般的な方法があります。

プロトコルの特定の受信機は1つのプロトコルを復号し、実際の復号化されたコマンドをPCに送信します。

もっと一般的なタイプの受信機は、各パルスの間隔だけでなく、各パルスの間隔も分析のためにPCに送信する。

いくつかの受信機は信号に対して異なるハッシュを生成しますが、波形を完全に再現するのに十分なデータを実際には含まれていません。

私たちの好みが一般的なハッシュメソッドに向かっている間、私たちの唯一のリモートはRC5を使用していますそれがRC5の特定のデコーダを開発するのはもっと魅力的だったので。ファームウェアセクションでは、もっと一般的なバージョンの変更を説明します。

コンピュータインタフェースプロトコル

私たち自身の受信側ソフトウェアまたはドライバを書いたくなかったので、模倣する既存のよく認められた通信プロトコルを探しました。 UIR / IRMAN / IRA / CTINFRA / Hollywood + Type Receiverは、LIRCと同様に桁だけでなく、ハンドシェイクで簡単なシリアルプロトコルを使用しています。

ガジェットは、DTSとシリアルポートのDTRピンによって初期化されます。私たちはこれらのものも持っていません。

コンピュータはオプションの遅延で「IR」を送ります。ガジェットは「OK」と返信します。すべての “R”に “OK”を送る

リモートコントロールコードは、異なる6バイトハッシュとして送信されます。実際の値を送信するだけでなく、RC5信号をデコードしますが、代わりに一般的なハッシュが使用される可能性があります。

このプロトコルはシリアルポートデバイス用ですが、USBレシーバは仮想シリアルポートとして表示され、プログラムは違いを理解できません。

ハードウェア

フルサイズの回路図(PNG)の右クリックしてください。私達の受信者はUSB対応の写真18F2455マイクロコントローラ、18F2550のより小さく、高価なバージョンに基づいています。 18Fの世帯は、VPPをリスクフリーレベルに減らすためにダイオードを使用している場合、Hobbyistの好ましいJDMスタイルのプログラマとプログラム可能です。ピクチャは、1つのデカップリングコンデンサ(C1)、およびICSPプログラミングヘッダー上の抵抗(R1)と同様にダイオード(D1)を取得します。デバッグ用のPINヘッダまたはMAX RS232トランシーバICを使用して、シリアルポートを露出させました。

USBペリフェラルには、20MHzの外部クロック(Q1、C5,6)、および.220UFコンデンサが必要です。 2 xの0.1UFデカップリングコンデンサ(C2,3)を使用してコンデンサを偽造しました。 3mm LED(LED1)と330Ωの現在の制限抵抗(R2)はUSB接続状態を示しています。

4.7UFデカップリングコンデンサ(C4)を呼び出すTSOP-1738赤外線受信機ICを使用しました。この特定のICを発見できない場合は、ここでは任意のタイプの受信者が機能する必要があります。 TSOP-1738出力は受信信号の逆数であり、パルスが検出されたときにグランドに引っ張るので、信号が存在しないときにプルアップ抵抗(R3)がピンをハイに保持します。確認した場合は、別の受信側を使用するかどうかを確認してください。

回路はUSBバスから電力を引きますので、追加の電源装置を必要としません。

パーツリスト

フルサイズの配置図(PNG)の場合は、ここをクリックしてください。 PCBスタイルは片面だけでなく100%スルーホールです。 CADSoft EagleとPCBと同様に、CADSoft Eagleで作られていました。すべてのファイルはジョブアーカイブ(ZIP)に含まれています。

説明

IC1

PIC 18F2455

28ピン.300ソケット

C1,2,3

0.1UFコンデンサー

C4.

4.7UFコンデンサー

C5,6

27PFコンデンサ(15pFが良くなる可能性があります)

D1.

1N4181ダイオード

Q1

20MHzの水晶

R1,3

10Kオーム抵抗器

r2

330オーム抵抗器

ts ts

TSOP1738(時代遅れ、TSOP1138)

USB

USB ‘B’プラグ、女性

ser

.1 “ピンヘッダ

ICSP.

.1 “ピンヘッダ

ファームウェア

ファームウェアは、マイクロチップの無料発表C18コンパイラを使用してCで書かれています。ソースと同様にファームウェアはジョブアーカイブ(zip)に含まれています。

マイクロチップのUSBスタックのバージョン2.3を使用して、すでに多くのシステムで提供されているデフォルトのChauffeursを使用してUSBシリアルポートを作成しました。 USBスタックは、USBガジェットを列挙するための簡単な機能と、ガジェットとホスト間でデータを転送します。 CDCプレゼンテーションをカスタムメイドのハードウェアに取り組むために数ピンの変更を加えただけです。

UIR / IRMAN / IRA / CTINFRA / Hollywood + Protocolの私達の実装は、「OK」を持つ文字 ‘r’に応答するだけです。これは、このプロトコルのあらゆる種類の実装のハンドシェイク要件を満たすべきです。

私たちは、それが広く使用されているプロトコルであるため、RC5(およびRC5X)を具体的にデコードすること、および私たちが扱う必要があるリモコンの唯一のタイプです。復号化の多くは割り込みハンドラで行われます。

非常に最初の信号変更は、889US(半ビット期間)タイマーを開始する割り込みをトリガします。

各タイマ割り込みでは、マンチェスター符号化ビットの半分がサンプリングされます。

測定値は、他のすべての割り込みが比較され、ビット値は0,1、またはエラーであると計算されます。エラー復号ルーティングをリセットします。

各送信の終わりに、コマンドバイトと同様にアドレス、ならびに4つのバッファバイト(0)を備えたホストに送信される。 PCソフトウェアを他のプレスごとに混同しているため、トグルビットを破棄します。 RC5Xコンプライアンスのコマンドビットに2番目のスタートビットを追加します。これは0x40以外のRC5Xリモートコードに0x40を追加します。

マンチェスターコーディングステップ(3)を削除することによって、および48個のサンプルビット(6バイト全て)をコンピュータに送信することによって、もっと一般的なバージョンを作ることができる。

USB赤外線受信機のインストール

ほとんどのオペレーティングシステムはすでにAをサポートするChauffursを持っていますレシーバのような仮想シリアルポートガジェット。 Windows XPには必要なドライバがありますが、それらをそれらを適切に私たちのデバイスと関連付けるには、必要があります。

Windowsは、受信側をプラグインする最初の時間に初めて新しいハードウェアダイアログを表示します。カスタムメイドのドライバを使用する場合と、ジョブアーカイブ(zip)に含まれる.infデータにそれをポイントします。これは、ガジェットをすでにWindowsに含まれているモータリストにリンクしています。受信者をCOMポートとして追加します。コントロールパネルのCOMポート番号を確認できます。

MacおよびLinuxユーザーはLIRCで受信者を使用できますが、Windowsユーザーは古い、フリーウェアの桁数、または新規、30日間のトライアルSharewareバージョンのオプションに直面します。私たちは桁のフリーウェア版を使いましたが、あなたが見落とされた素晴らしい、オープンソースの代替を提案することを願っています。

使用するコンピュータ側コントロールソフトウェアに関係なく、UIR / IRMAN / IRA / CTINFRA / Hollywood +スタイルレシーバー用に設定したり、割り当てられたCOMポートまたはシリアルアドレスに移動します。当社の受信機は、「Fast UIR INIT」のような任意の種類のプロトコルオプションと同様に、「IR」 – >「OK」ハンドシェイクを短縮または取り除くことのような任意の種類のプロトコルオプションと互換性があります。今すぐあなたのソフトウェアの文書に従って受信機をテストしてください。

手動端末インタフェースとデバッグ

受信者に問題がある場合、または興味がある場合は、シリアル端末からインタフェースしてみてください。ヘラクレスのシリアルターミナルが本当に好きです。右のCOMポートを設定しますが、USBシリアルポートドライバによってスピードと設定設定は無視されます。

資金調達 ‘R’はタイムリーに受信者に「OK」を返信します。 RC5コードは生のバイトとして返されるので、それをASCIIテキストとして翻訳するのではなく、ターミナルが16進数の値を表示するように設定してください。非常に最初のバイトは、RC5アドレスバイト(0x1e)、その後にコマンドバイト(0x41)が続き、次に4つのバッファ0がUIR / IRMANプロトコルに付着します。写真はハンドシェイク、および1,2の短いプレスの出力と3つのボタンを示しています。

Portmonと呼ばれる無料のユーティリティは、レビューのためにCOMポートアクティビティを記録します。これは、既存の受信者プロトコル上でのスパイ、およびカスタムメイドのハードウェアと閉鎖/独自のソフトウェアとの対話をデバッグするのに役立ちます。画像は、初期化文字列 ‘IR’(0x49,0x52)、および受信側の応答 ‘OK’(0x4F、0x4B)を送信します。

それをさらに服用する

当社のRC5X準拠受信機は、広く使用されているインターフェースプロトコルに従います。オープンソースの赤外線受信機の追加機能のためのトンの可能性があります。

元のUIR / IRMANハードウェアのように、一般的なハッシュジェネレータを介してすべてのリモートをサポートします。

RC6のような追加のリモートプロトコルデコーダを追加します。

複数の設定可​​能なインターフェイスプロトコルをサポートします。

シリアルポートI / Oを実装してください。

プロトコル、インタフェースモード、タイミングオプション、シリアルポートなどを含むEEPROMで設定オプションを保存します。

Leave a Reply

Your email address will not be published.

Related Post

Oculus Riftをハッキングする:OclightOculus Riftをハッキングする:Oclight

私たちのOculus Riftが最後にメールに表示されました。私はそれが素晴らしい状態であることを述べる以外の製品自体について私の考えをあなたに惜しまないでしょう。そのショーの人々の考えや反応、そしてiFixitだけでなく、普通の涙液も緊急の涙液を持っています。 モッズIは、まず最初に扱うことを決断しました。水平周辺視灯でした。眼鏡の形状は、SKIIマスク、またはダイビングマスクを使用しているように感じることを示しています。側面の極端な端には巨大な黒い枠があります。基本的なMODは、基本的なAbibilightクローンを実行するだけでなく、基本的なMODもいくつかのRGB LEDを追加することです。 私はAdalightコードをダウンロードし、RGB LEDストリップに差し込んでいただけでなく、座っていた。リフトは4つの角部の領域がまとめられています。私はこれを利用したので私は裂け目に切られなければならなかったことさえありませんでした…まだ。私はただ穴に輝く適切なLEDを使ってストリップをリフトに縛りました。 結果はまともでした。 LEDが画面の端よりも周辺視野に追加的に戻ることを考慮すると、おそらく周囲からの少しの光がヘッドセットに「漏れ」するように見えます。それは画面の端をはるかに超えているものを見ることの認識を提供します。非常に良いインスタレーションで、角の代わりに左側の方法をすべての方法で有効にすることができます。

How-To:すぐにダウンロードするだけでなく、テレビをiPodに変換するHow-To:すぐにダウンロードするだけでなく、テレビをiPodに変換する

最近ビデオのiPodコンバータをリリースしました。このツールを利用すると、ほとんどあらゆる種類のビデオiPodを準備することができます。彼らはあなた自身のDVDをトランスコーディングするだけでなく、リッピングのために便利なハウツーを持っています。私たちの目標は、BitTorrentを利用してテレビをダウンロードすることだけでなく、それをiPodフレンドリーなスタイルに変換することです。 あなたが要求する最初のことは、zureusを利用した実際的なブロードクチャリングシステムです。 1つを設定するためのHOW-to。 Broadcatching Systemは、設定したテレビ番組をすぐにダウンロードします。 azureusで設定する必要がある2つの重要なことがあります。 「ツール – >オプション」の後藤。 [デフォルトのデータディレクトリに保存]の横にあるボックスを調べます。ダウンロード中にデータを保持するディレクトリを選択します。 「完成したファイルの移動」の横にあるボックスを調べます。テレビ番組をダウンロードした後にテレビ番組を置くディレクトリを選択します。 「保存」をクリックしてください。紺碧の構成は完了です。 ビデオをすぐに変換するには、VideooraとビデオRa iPodコンバータの両方を設定することができます。私たちはビデオを活用していませんが、Xcastingの選択に電源を入れるためにインストールする必要があります。 VideoRa iPod Converterがインストールされた後に、準備が整いましたが、準備する前に設定するものはほんの数多くあります。 「設定」をクリックしてください。 iPod準備データを配置したいディレクトリを選択します。更新:H.264プロファイルはiPodでは機能しません。 SPまたはMPEG4を選択してください。 Xcastingの場合は、設定できるようにVideoRAをインストールした場所を選択する必要があります。 「自動キューイング」のボックスを調べても、完了したダウンロードが保存されているディレクトリを選択します。ディレクトリを調べるための時間間隔を選択してください。 「保存」をクリックしてください。 新しいデータが[完了]ディレクトリに表示されるたびに、ビデオRAはすぐにそれをその変換キューに追加します。データが効果的に変換されたとき、それらはあなたのiPodに転送される準備をしたあなたの他のフォルダに置かれます。コンバータは直ちにデータをデバイスにコピーすることができますが、Appleがまだ「処理順序」であると言っているため、この機能をテストできませんでした。頑張って!

グリッドディップメーター:忘れられた機器グリッドディップメーター:忘れられた機器

オシロスコープを得るためにハードウェアハッカーのための主要な儀式の儀式であることが利用されています。最近まで、典型的な人々の予算ではめったに新しい楽器がめったにありませんでした。さて、特にローエンドのPCスコープと「スコープメーター」を含める場合は、低コストのオプションが大幅にあります。デジタルメーターも同様に低コスト(多くの場合、一部の主要店では完全に無料)、信号発生器、周波数カウンタ、およびロジックアナライザでもあります。 しかし、それは非常に柔軟なキットの部分であるので、あなたが一般的に利用されているのと同じくらい一般的であると思わないテスト装置の一部があります。確かに、あなたが無線作業をしていない場合は、あなたの欲求リストでは高くないかもしれませんが、あなたがRFで何かをしているならば、それは柔軟なツールだけではなく、大きな価値もあります。それは何と呼ばれていますか?場合によります。歴史的に、彼らは「グリッドディップオシレータ」またはGDOという名前で行きました。場合によっては、代わりに「グリッドディップメーター」と呼ばれるのを聞いています。しかし、現代のバージョンはチューブを持っていません(したがって、したがって、グリッドはありません)ようこそ、あなたは今それらを浸漬メートルやおそらくDippersだけ呼ばれるのを聞くのです。 なぜそれが浸るのですか? 電話をかけているものに関係なく、操作の理論はまったく同じでもまったく同じです。装置は、出力を外部回路に結合する方法を備えた非常に広いバンドオシレータよりはるかに多いものではありません。発振器からどの程度の電力がどの程度どの程度の電力がどの程度行われているかをスクリーニングする方法がも同様にあります。これは、発振器の最上部振幅を見て一般的に行われます。 DIPの理由は、メソッドインダクタおよびコンデンサが異なる周波数で動作するのを終える必要があります。ほぼ任意のタイプの回路または要素には、3つのインピーダンス源があります。抵抗は、周波数に基づいて修正しないはずです。静電容量による容量性リアクタンス。誘導要素からの誘導的リアクタンスと同様に。場合によっては、これらのうちのかなりの量のものがあります。たとえば、カーボン抵抗器では、どちらのタイプのリアクタンスも非常に多くありません。コンデンサは主に容量性のリアクタンスであるべきです。 インピーダンスと同様にリアクタンス 提供されたコンデンサの場合、リアクタンスは低周波数では非常に高く、高周波数では非常に低いです。インダクタンスは反対の:低周波数はより高い周波数よりも低いリアクタンスを生み出します。あなたがゼロヘルツ波として存在するDCを信じるならば、これを覚えておくのは非常に簡単です。インダクタ(ワイヤのコイル)は、直流(低リアクタンス)、ならびにコンデンサ(2つの平行なプレート)をはっきりと通します(高リアクタンス)。 回路の全体的なインピーダンスがこれら3つの要素に依存していても、値を追加するだけでは簡単ではありません。それは抵抗、そしてリアクタンスはまったく同じ種類の量ではありません。 3オームのリアクタンスを持つ2オームトンに1Vの信号が入っている場合は、1Vが通常の抵抗に入るとまったく同じように振る舞いたいと思います。抵抗とリアクタンスが直列である場合、その効率的な抵抗の値はインピーダンスであり、それは抵抗のベクトル和、リアクタンスです。 この例では、22 + 32 = 13である。 13の平方根はおよそ3.6ですので、インピーダンスの大きさは3.6オームです。それをさらに複雑にするために、誘導的リアクタンスならびにカパラクティブリアクタンスは互いにキャンセルする傾向がある。それを正方形にするからであるが、キャパシウムリアクタンスを否定的に扱うことは慣習的である。数学のために、あなたは本物の部分としての抵抗と複素数の虚数部分としてのリアクタンスとして抵抗を扱います。極型への変換は、位相角と同様に大きさを提供します。 並行して、それはまったく同じことのようなものですが、反応は抵抗と同じ抵抗を並行して追加します。これがポイントです:いくつかの周波数、誘導リアクタンスならびに容量性リアクタンスが等しい。直列回路では、リアクタンスがゼロになるだけでなく、残っているだけでなく抵抗があります。並列回路では、ゼロはフラクションの分母内で巻き取り、その結果、効率的なリアクタンスは無制限(そして純粋な抵抗と並行して、抵抗の値を修正しません)。いずれにせよ、リアクタンスは純粋な抵抗を残す。 共振 リアクタンスが互いにキャンセルされる点は共鳴です。 DIPメーターは共振点で作動しているため、メーターの発振器はそれに最大のトン(最低インピーダンス)を持ちます(最低インピーダンス)、したがって電圧が低下する(またはディップ)。任意の種類の他の周波数では、テスト中の回路の全体的なインピーダが存在するだけでなく、いくつかのリアクタンスが残されます。共振。 Clearly, the most fundamental function of the dip meter is to