ESP32 433MHz RF コントローラ

Tool

概要

ESP32 433MHz RF Controller は、ESP32 を用いて 433MHz 帯域の無線(リモコン等で多いサブギガヘルツ信号)をウェブ UI と REST API 経由で「キャプチャ(録音)→ 保存 → 再生」し、Home Assistant 等から操作できるようにするプロジェクトです。信号履歴の管理やリピーター的な中継動作もサポートし、Flipper Zero の SubGHz 機能に似た体験を、より API フレンドリーな形で提供します。C 言語で実装され、CMake をビルドツールに、ビルドスクリプトを同梱しています(約300字)。

GitHub

リポジトリの統計情報

  • スター数: 9
  • フォーク数: 0
  • ウォッチャー数: 9
  • コミット数: 5
  • ファイル数: 9
  • メインの言語: C

主な特徴

  • 433MHz 帯の RF 信号をキャプチャして生波形(パルス幅や空白を含むタイミング情報)として保存、再生可能。
  • モダンな Web インターフェースと RESTful API を提供し、GUI 操作と自動化ツール両方に対応。
  • Home Assistant などの外部システムと容易に統合でき、HTTP 経由でトリガーや履歴参照が可能。
  • リピーター(中継)としての動作や保存したシグナルの一覧・履歴管理機能を備える。

技術的なポイント

このプロジェクトは ESP32 の無線周辺機能を使ってサブギガ領域のパルスデータを扱う点が中心です。具体的には、受信時に無線から得られるパルス列を時間情報(マイクロ秒単位など)として記録し、フォーマット化してストレージへ保存します。再生時は記録された時間パターンを忠実に再現することで、リモコン信号やワイヤレスセンサーのトリガーをエミュレートします。Web UI はユーザーが信号を視覚的に確認・ラベリングできるよう設計されており、REST API は CRUD 操作(キャプチャ開始/停止、シグナル再生、一覧取得、削除など)をサポートして自動化を容易にします。

ビルドは CMake を採用しており、C 言語ベースで実装されているため、ESP-IDF や同等のツールチェーン上で動作させる想定です。ソフトウェア設計上は保存フォーマットと API のシンプルさを重視しており、信号のメタデータ(名前、タグ、キャプチャ日時)と生パルス列を組み合わせて管理します。また、ネットワーク越しに信号をトリガーできるため、Home Assistant との連携は REST エンドポイント呼び出しによる実装が基本です。実運用では無線法の遵守や不正利用防止のため、ネットワークアクセス制御や認証を別途導入する必要がある点に注意してください。

(約700〜900字の技術解説。タイミング精度や保存フォーマット、API ベースの制御性、Home Assistant 連携に重点を置いた実装思想を説明しています。)

プロジェクトの構成

主要なファイルとディレクトリ:

  • .gitattributes: file
  • .gitignore: file
  • CMakeLists.txt: file
  • README.md: file
  • build.sh: file

…他 4 ファイル

リポジトリは小規模でファイル数が少なく、ビルドスクリプト(build.sh)と CMake 設定によりローカルでのビルド/書き込みが容易に行える設計です。README にサンプルの使い方や UI のスクリーンショットが含まれており、初期セットアップの流れが分かりやすくまとめられています。

まとめ

ESP32 で 433MHz 信号を簡単にキャプチャ・再生・API化できる実用的なツール。自宅の自動化に便利(約50字)。

リポジトリ情報:

READMEの抜粋:

ESP32 433MHz RF Controller

Capture, store, and replay 433MHz RF signals with ESP32 using a web interface and REST API. Easily integrates with Home Assistant and other automation tools.

SubGHz Demo Home Assistant Integration

Works like the Flipper Zero’s SubGHz module, but with a modern web interface and REST API.

Signal History

Ta…