HID Prox RFIDリーダーをArduino UNOと連携:ステップバイステップセットアップ
必要な部品と材料
| Arduino UNO | ×1 |
| HID Prox Pro II(5455BGN06、Wiegandインターフェース、5V対応) | ×1 |
プロジェクト概要

ArduinoベースのRFIDリーダープロジェクトは数多く存在しますが、その多くは13.56MHzやMifare互換の安価なものです。しかしプロフェッショナルなRFIDバッジシステム(HID Prox互換)と互換性がありません。HID Prox互換リーダーをArduinoに接続する方法を解説します。
元記事:obviate.io
機材リスト

- HID 5455 PROX PRO II Proximity Card Reader Wiegand (5455BGN06)
- Arduino Uno
HID Proxリーダー選定のポイント:5V動作対応であること、Wiegandインターフェースであること。Prox Pro IIはAmazonで入手しやすく約130ドル。中古ならeBayで10ドル程度で見つかることも。Arduinoは5V動作するものなら互換機でもOK。手元にUnoがあったので使用(プロトタイピングに最適)。次期版ではSparkFun Pro Microを検討中。
配線図

配線は非常にシンプル。Proxリーダーのピグテール(10芯)のうち、重要なのは4線のみ:
- 赤(VCC)→ Arduino 5V
- 黒(GND)→ Arduino GND
- 緑(Data 0)→ Digital 3
- 白(Data 1)→ Digital 2
VCC以外を先に接続すれば間違いようがありません。他の6線について:
- 橙=緑色LED
- 茶=赤色LED
- 黄=ブザー(カード読み取り時に常に鳴る)
- 青(Hold)、紫(Card present)、ドレイン(シールドGND)は今回未使用
Arduinoに余裕があればLEDやブザーも制御可能ですが、ブザーは読み取り時に必ず鳴ります。
コード
ネットでArduino/HID/Wiegandライブラリを探しましたが、うまく動くものが少なかったです。最終的にPagemac.comの2012年のコードが動作。LED制御とブザー制御をサンプルとして追加し、GitHub Gistに公開しています。26bit/35bitのHIDカードに対応し、ファシリティコードも出力します。コードはシンプルなので、カスタムビット長のHIDカードにも容易に対応可能です。
すべてを組み合わせる
配線完了後、ArduinoをUSB接続してコードをアップロード。シリアルモニタを開き、HIDバッジをProx Pro IIにかざすとブザーが鳴り、バッジ番号(とファシリティコード)がシリアルモニタに表示されます。完了!
コード
GitHub Gist
回路図

製造プロセス
- ArduinoとRC522で作るセキュアなRFIDドアロック(MIFARE 13.56MHz)
- USB HID 攻撃の防止:Arduino Leonardo キーボードエクスプロイト実演
- Arduinoで作るセキュアなRFIDロック – ステップバイステップガイド
- Python連携で信頼性向上: Arduino RFID勤怠管理システム
- Bluetooth操作のArduinoスパイボットを自作する
- FlickMote:ジェスチャー操作のIRリモコンでスマートホームを制御
- 自作Arduino TV-B-Gone:全テレビ対応の万能リモコン
- 12メートル先から見える大型LEDマスタークロック(アラーム機能付き)を自作しよう
- ArduinoとBluetoothで作るスマート紛失防止タグ「Find Me」
- Arduinoプロジェクトのための最適化電源ソリューション
- Arduino三目並べ:MAX7219 LEDマトリクスと段ボールケースで自作