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. Required fields are marked *

Related Post

Hackadayリンク:2017年6月4日Hackadayリンク:2017年6月4日

クイック質問:最初のパソコンは何でしたか?技術史上無意味な議論が大好きであるため、リストを下りましょう。それはIBMではありませんでした、そしてパーソナルコンピュータを作成した男は彼がパーソナルコンピュータを発明しなかったと述べた。私が尽力しているリンゴは、非常に重要ではないいくつかの奇妙なイタリアのものがありました。これが1974年にリリースされた「最初のパーソナルコンピュータ」のオークションです.16KBのRAMと「ミックスメモリ」が付いている500kHzで8080が実行されています。これは博物館に属する歴史の不可欠なビットであり、オークションは20,000ユーロで始まります。開始価格は少し高いかもしれません。最近、私がオークションで€90,000を販売しています。これは、これらのことが通常どのように行くもののための絶望的です。ヴィンテージの逆コンピュータが私たちの下から落ちるのは市場ですか?時間だけが教えてくれます。 初心者では? 6月16日から17日にハッカーが行っています。コード ‘Hackaday’を使用して、anyconへのチケットを20%オフにすることができます。 カラーブレンド? Hackaday Readersは、一般的な人口よりも高い割合でカラーブリンデンスを患っています。 [João]画面に色を区別するためにこの本当にきちんとしたツールを作成しました。 Windowsのみがまだ便利です。 誰もがこの夏のときにモノプライスによって解放される150ドルの3Dプリンターのほとんどに興奮しています。これが99ドルの3Dプリンタです。はい、それはKickStarterですので、従来の警告が適用されますが、このボットにはそれに行くことがいくつかあります。実際のNEMA 17モーターを使用しており、このプリンタの背後にある人々は実際にはハードウェアの製造上の経験があります。ダウンサイド?それは完全に主導権を駆り立てているので、それは非常に遅くなるでしょう。 あなたはEEの学位を持つ両親の人に何を呼びますか?エンジニア。これはあなたが三次教育の価値を実現するべきであるところで、最も可能な卒業生によって定義されていないことを証明するべきです。それは最も有能な卒業生によって定義されます。 これがあなたの日曜日の夜の眺めです:[Bunnie] RISC-Vとオープンハードウェアの期待について話をしました。 こんにちは、OpenBuildsには新しい小型ミルがあります。それは、小さい~1HPのボッシュまたはデュワルトラミネートトリマー用に開発された基本的なCNCルーターです。小さいですが、可能です。 ケーバルスペースプログラム、エアフォースアカデミー、ebriddle、およびNASAで働いているすべての人のために必要な研究資料であるべきである唯一のビデオゲームは、2つのインタラクティブによって取得されました。すべてのアカウントでは、これは良いニュースです。レポートによると、オリジナルのDevチームは数ヶ月前にバルブを残しました。 Stratolaunchキャリア航空機は格納庫から外れています。それは一緒にテープされた2つの747Sダクトスピードです。

スクラップスクラップ

からレーザー彫刻を作成することを知っておく必要があるすべてのものは、彼が傷から作られたレーザー彫刻器を使って彼の電卓のカバーにエッチングしたアインシュタインヘッドをチェックします。私たちは彼が建物で素晴らしい仕事をしたと思いますが、彼が救済に慣れている技術を共有し、すべてのコンポーネントを再利用しているという仕事にさらに驚いています。それは異なるモデル/製造元のソースハードウェアに適応するのが非常に簡単であるべきです。 彼は古いスキャナーと部分の大部分のための古いプリンタを使用しました。これらの両方の両方に、ステッピングモータ作動ガントリーを含み、それは彼のフランケンシュタインレーザー彫刻器内のx軸およびy軸を形成するために一緒に引っ張る。部品が集まったので、彼は2つの簡単な透過ステッパーモーターボードとアルドイーノを含む制御電子機器で始まりました。 この時点で、彼はテストランのためにデバイスを取り、それをペンプロッタとして使用するためにキャリッジにマーカーを取り付けました。この【Sebastian】で固体性能を発揮した後、レーザーダイオードに追加した。彼はダイオードの駆動方法、ならびに焦点の配置が素晴らしい細部での焦点位置合わせを網羅しています。彼のウェブサイトの投稿は上記の指示的なリンクと同じコンテンツを持っていますが、私たちは念のためにリンクを残したかったです。

PlayStation 3 Jailbreak Hacker Goes Goes Downurd、おそらく刑務所に入れられますPlayStation 3 Jailbreak Hacker Goes Goes Downurd、おそらく刑務所に入れられます

Sonyがファームウェアv3.21、Graf_Chokoloの下にインストールするオプションを削除した後、PS3に黄色の犬Linuxを持ち帰ることに積極的に取り組んだ多数の人々の1人、今では彼の訴訟のために法廷で戦うためにお金が不足しており、おそらく刑務所に入るでしょう。 ハッキング大失敗のために、ソニーにとって物事はうまくいっていません。多くの異なるソニーサービスとサイトがハッキングされ、消費者のアカウントデータが侵害されました。過去数か月でソニーが攻撃されたことの数が実際に失われました。 1月に一生​​それをPwしたPlayStation 3ハックの背後にある主な人物であるGeorge“ Geohot” Hotzは、後に訴えられました。その後、この事件は4月に法廷外に解決されました。 しかし、他のハッカーはそれほど幸運ではありませんでした。そのようなハッカーの1つは、Graf_Chokolo(本名:Alexander Egorenkov)という名前です。ソニーは、PS3をハッキングすることから結果に関するすべての情報を削除することを強制しました。そうでなければ、彼は刑務所に行かなければなりません。 まあ、彼はとにかく刑務所に入るかもしれないようです。 Grafは、裁判所費用を支払うために資金が不足しているためです。 彼は今日このコメントを彼のブログに投稿しました: こんにちはみんな、もうお金は残っていません。おそらく私は裁判所の費用を支払うことができないので、すぐに刑務所に入るでしょう。 しかし、私は私が言ったことすべてに立ち向かい、そのために刑務所に行く準備ができています。勝つことは不可欠ではありません。もっと重要なのは、私たちが戦う準備ができていること、彼らが私を簡単に怖がらせることができないことを彼らに示すことです。ええ、私は自分の信念と私の原則のために刑務所に行く準備ができています。 ほとんどの人は、おそらくすべてのコンピューターとカーネルのハッカーは弱い子供であり、セラーに隠れ、一日中ピザを食べ、ソフトウェアを書き、注意を求めていると考えていますが、それは私ではありません。そして、私は最終的に出て仕事を続けます。私の仕事は私にとって非常に意味があります。 彼は続けて、勝つことは不可欠ではないと言っています。重要なのは、ハッカーがソニーに、彼らが支払ったコンソールをハッキングするために最善を尽くす準備ができていることを示していることです。ブラボー、グラフ! AppleやSonyのような企業は、製品のハッキングに厳密に反対していますが、MicrosoftはWindows Phone 7製品を使用して別のアプローチを採用しています。ほんの数時間前、私たちは、以前は「脱獄」WP7デバイスに使用されていたツールであるChevronWP7に関するMicrosoftの発表について書きました。 とにかく、私たちはgraf_chokoloに幸運を祈ります。あなたが彼を助けたいなら、あなたはここに寄付することができます。 ありがとうTrane132! Twitterでフォローするか、Facebookのファンページに参​​加して、Microsoft、Google、Appleから最新のすべてを最新の状態に保つことができます。