
ESPectre - वाई-फाई स्पेक्ट्रम विश्लेषण (CSI) पर आधारित गति पहचान प्रणाली, होम असिस्टेंट एकीकरण के साथ।
वाई-फाई स्पेक्टर विश्लेषण (CSI) पर आधारित गति पहचान प्रणाली, ESPHome के माध्यम से मूल Home Assistant एकीकरण के साथ।
[!TIP] नया ML डिटेक्टर: न्यूरल नेटवर्क-आधारित गति पहचान। कोई कैलिब्रेशन आवश्यक नहीं, डिवाइस पर चलता है। यह एक प्रायोगिक सुविधा है, और समर्पित ML डिटेक्टर चर्चा में आपकी प्रतिक्रिया का स्वागत है। नवीनतम परिवर्तनों के साथ एक स्नैपशॉट बिल्ड भी उपलब्ध है (मशीन लर्निंग आधारित डिटेक्टर के लिए
-mlएसेट्स का उपयोग करें), या कस्टम कॉन्फ़िगरेशन के लिए सेटअप गाइड का पालन करें।
बाहरी एंटेना के साथ ESP32-S3 DevKit
सेटअप समय: ~10-15 मिनट
कठिनाई: आसान (केवल YAML कॉन्फ़िगरेशन)
वास्तविक समय गति पहचान, थ्रेशोल्ड नियंत्रण और डीबग सेंसर के साथ Home Assistant डैशबोर्ड
जब कोई व्यक्ति कमरे में चलता है, तो वह राउटर और सेंसर के बीच यात्रा करने वाली वाई-फाई तरंगों को "परेशान" करता है। यह ऐसा है जैसे आप टॉर्च के सामने अपना हाथ घुमाते हैं और छाया को बदलते हुए देखते हैं।
ESP32 डिवाइस इन परिवर्तनों को "सुनता" है और समझता है कि गति है या नहीं।
तकनीकी विवरण समझना चाहते हैं? CSI स्पष्टीकरण और सिग्नल प्रोसेसिंग दस्तावेज़ीकरण के लिए ALGORITHMS.md देखें।
विश्वसनीय गति पहचान के लिए सेंसर का इष्टतम स्थान महत्वपूर्ण है।
इष्टतम सीमा: 3-8 मीटर
करें:
न करें:
ESPectre गति पहचान के लिए एक केंद्रित प्रोसेसिंग पाइपलाइन का उपयोग करता है:``` ┌─────────────┐ │ CSI Data │ Raw Wi-Fi Channel State Information └──────┬──────┘ │ ▼ ┌─────────────┐ │ Gain Lock │ AGC/FFT stabilization (~3 seconds) │ │ Locks hardware gain for stable measurements └──────┬──────┘ │ ▼ ┌─────────────┐ │ Auto │ Automatic subcarrier selection (once at boot) │ Calibration │ Selects optimal 12 subcarriers (NBVI) └──────┬──────┘ │ ▼ ┌─────────────┐ │ Adaptive │ auto: P95 × 1.1 | min: P100 │ Threshold │ or fixed manual value └──────┬──────┘ │ ▼ ┌─────────────┐ │ Hampel │ Turbulence outlier removal │ Filter │ (enabled by default) └──────┬──────┘ │ ▼ ┌─────────────┐ │ Low-pass │ Noise reduction (smoothing) │ Filter │ (optional, disabled by default) └──────┬──────┘ │ ▼ ┌─────────────┐ │ Detection │ MVS or ML score │ Evaluation │ every evaluation_interval packets └──────┬──────┘ │ ▼ ┌─────────────┐ │ Hit Filter │ motion_on_hits / motion_off_hits │ │ edge-driven IDLE ↔ MOTION └──────┬──────┘ │ ▼ ┌─────────────┐ │ Home │ Edge-driven motion binary + │ Assistant │ periodic Movement Score / Threshold └─────────────┘
### एकल या एकाधिक सेंसर```
┌─────────┐ ┌─────────┐ ┌─────────┐
│ ESP32 │ │ ESP32 │ │ ESP32 │
│ Room 1 │ │ Room 2 │ │ Room 3 │
└────┬────┘ └────┬────┘ └────┬────┘
│ │ │
└────────────┴────────────┘
│
│ ESPHome Native API
▼
┌────────────────────┐
│ Home Assistant │
│ (Auto-discovery) │
└────────────────────┘
प्रत्येक सेंसर Home Assistant द्वारा स्वचालित रूप से खोजा जाता है:
ESPectre स्वचालित सबकैरियर चयन के लिए NBVI (Normalized Band Variance Index) लागू करता है, जो शून्य मैनुअल कॉन्फ़िगरेशन के साथ लगभग-इष्टतम प्रदर्शन (F1>96%) प्राप्त करता है। यह एल्गोरिदम स्थिरता मेट्रिक्स और स्पेक्ट्रल विविधता के आधार पर 12 गैर-क्रमागत सबकैरियर चुनता है।
⚠️ महत्वपूर्ण (MVS मोड): डिवाइस बूट होने के बाद 10 सेकंड तक कमरे को शांत और स्थिर रखें। इस दौरान ऑटो-कैलिब्रेशन चलता है और हलचल पहचान सटीकता को प्रभावित करेगी। ML मोड कैलिब्रेशन को छोड़ देता है।
एल्गोरिदम विवरण के लिए, देखें ALGORITHMS.md।
प्रश्न: क्या इसे उपयोग करने के लिए प्रोग्रामिंग ज्ञान की आवश्यकता है?
उत्तर: नहीं! ESPectre YAML कॉन्फ़िगरेशन फ़ाइलों का उपयोग करता है। बस उदाहरण डाउनलोड करें, इसे फ्लैश करें, और ESPHome ऐप या वेब इंटरफ़ेस के माध्यम से WiFi कॉन्फ़िगर करें।
प्रश्न: क्या यह मेरे राउटर के साथ काम करता है?
उत्तर: हाँ, यदि आपके राउटर में 2.4GHz Wi-Fi है (लगभग सभी आधुनिक राउटर में होता है)।
प्रश्न: कुल लागत कितनी है?
उत्तर: हार्डवेयर: एक ESP32 डिवाइस के लिए ~€10 (S3/C6 अनुशंसित, अन्य वेरिएंट भी काम करते हैं)। सॉफ्टवेयर: सभी मुफ्त और ओपन सोर्स। आपको कहीं न कहीं Home Assistant चालू रखने की भी आवश्यकता होगी (Raspberry Pi ~€35-50, या कोई भी मौजूदा PC/NAS)।
प्रश्न: क्या मुझे राउटर में कुछ भी बदलाव करने की आवश्यकता है?
उत्तर: नहीं! राउटर सामान्य रूप से काम करता है। सेंसर बिना कुछ बदले Wi-Fi सिग्नलों को "सुनता" है।
प्रश्न: क्या यह दीवारों के आर-पार काम करता है?
उत्तर: हाँ, 2.4GHz Wi-Fi सिग्नल ड्राईवॉल में प्रवेश कर जाता है। प्रबलित कंक्रीट की दीवारें संवेदनशीलता कम कर देती हैं लेकिन कम दूरी पर पहचान संभव बनी रहती है।
प्रश्न: एक घर के लिए कितने सेंसर चाहिए?
उत्तर: यह आकार पर निर्भर करता है। एक सेंसर ~50 m² की निगरानी कर सकता है। बड़े घरों के लिए, कई सेंसर उपयोग करें (इष्टतम कवरेज के लिए हर 50-70 m² पर 1 सेंसर)।
प्रश्न: क्या यह लोगों और पालतू जानवरों के बीच अंतर कर सकता है?
उत्तर: सिस्टम एक 2-स्टेट सेगमेंटेशन मॉडल (IDLE/MOTION) का उपयोग करता है जो लोगों, पालतू जानवरों या अन्य गतिशील वस्तुओं के बीच अंतर किए बिना सामान्य गति की पहचान करता है। अधिक परिष्कृत वर्गीकरण के लिए (लोग बनाम पालतू जानवर, गतिविधि पहचान, जेस्चर डिटेक्शन), प्रशिक्षित AI/ML मॉडल की आवश्यकता होगी (देखें भविष्य का विकास अनुभाग)।
प्रश्न: क्या यह मेश Wi-Fi नेटवर्क के साथ काम करता है?
उत्तर: हाँ, यह सामान्य रूप से काम करता है। सुनिश्चित करें कि ESP32 2.4 GHz बैंड से कनेक्ट हो।
प्रश्न: पहचान कितनी सटीक है?
उत्तर: पहचान सटीकता काफी हद तक पर्यावरण पर निर्भर करती है और उचित ट्यूनिंग की आवश्यकता होती है। प्रदर्शन को प्रभावित करने वाले कारकों में शामिल हैं: कमरे का लेआउट, दीवार की सामग्री, फर्नीचर की स्थिति, राउटर से दूरी (इष्टतम: 3-8m), और हस्तक्षेप स्तर। उचित ट्यूनिंग के साथ अनुकूल परिस्थितियों में, सिस्टम विश्वसनीय गति पहचान प्रदान करता है। अपने विशिष्ट वातावरण के लिए संवेदनशीलता ट्यून करने हेतु segmentation_threshold पैरामीटर समायोजित करें।
प्रश्न: बिजली की खपत कितनी है?
उत्तर: निरंतर संचालन के दौरान सामान्यतः ~500mW। फर्मवेयर में पावर ऑप्टिमाइज़ेशन के लिए समर्थन शामिल है, और बैटरी-संचालित डिप्लॉयमेंट के लिए डीप स्लीप मोड लागू किए जा सकते हैं, हालांकि इसके लिए कोड में कस्टम संशोधन की आवश्यकता होगी।
सिस्टम Wi-Fi रेडियो चैनल की भौतिक विशेषताओं से संबंधित अनाम डेटा एकत्र करता है:
CSI डेटा केवल संचरण माध्यम के गुणों को दर्शाता है और इसमें प्रत्यक्ष पहचान संबंधी जानकारी नहीं होती है।
चेतावनी: CSI डेटा की अंतर्निहित अनामिता के बावजूद, इस सिस्टम का उपयोग निम्न के लिए किया जा सकता है:
इस सिस्टम का उपयोग करने के लिए उपयोगकर्ता पूरी तरह जिम्मेदार है और उसे यह करना होगा:
एल्गोरिदम विवरण (MVS, NBVI कैलिब्रेशन, Hampel फ़िल्टर) के लिए, देखें ALGORITHMS.md।
प्रदर्शन मेट्रिक्स (confusion matrix, F1-score, बेंचमार्क) के लिए, देखें PERFORMANCE.md।
यह प्रोजेक्ट नवाचार की गति और प्रोडक्शन स्थिरता के बीच संतुलन बनाने के लिए दोहरे-प्लेटफ़ॉर्म दृष्टिकोण का अनुसरण करता है:
लक्षित दर्शक: अंतिम उपयोगकर्ता, स्मार्ट होम उत्साही, Home Assistant उपयोगकर्ता
लक्षित दर्शक: शोधकर्ता, डेवलपर, शैक्षणिक/औद्योगिक अनुप्रयोग
Micro-ESPectre आपको निम्न के लिए मूलभूत क्षमताएँ देता है:
┌─────────────────────┐ Validated ┌──────────────────────┐ │ Micro-ESPectre │ ─────────────────► │ ESPectre │ │ (R&D Platform) │ algorithms │ (Production Platform)│ │ │ │ │ │ • Fast prototyping │ │ • ESPHome component │ │ • Algorithm testing │ │ • Home Assistant │ │ • Data analysis │ │ • End-user ready │ │ • MQTT flexibility │ │ • Native API │ └─────────────────────┘ └──────────────────────┘
**नवाचार चक्र**: नए फीचर्स और एल्गोरिदम पहले Micro-ESPectre (Python) में विकसित और मान्य किए जाते हैं, फिर प्रभावी साबित होने पर ESPectre (C++) में पोर्ट किए जाते हैं।
---
## भविष्य का विकास
जबकि ESPectre v2.x **गति पहचान** (MVS + स्वचालित सबकैरियर चयन) पर केंद्रित है, यह परियोजना उन्नत अनुप्रयोगों के लिए मशीन लर्निंग क्षमताओं की खोज कर रही है:
| क्षमता | स्थिति | विवरण |
|------------|--------|-------------|
| **ML डिटेक्टर** | प्रायोगिक | न्यूरल नेटवर्क (MLP 9→32→16→1)|
| **हाव-भाव पहचान** | नियोजित | स्मार्ट होम नियंत्रण के लिए हाथ के हाव-भाव (स्वाइप, पुश, सर्कल) का पता लगाना |
| **मानव गतिविधि पहचान** | नियोजित | गतिविधियों की पहचान (बैठना, चलना, गिरना) |
| **लोगों की गिनती** | नियोजित | किसी कमरे में लोगों की संख्या का अनुमान लगाना |
| **3D स्थानीकरण** | अनुसंधान | चरण-सुसंगत एंटीना ऐरे के माध्यम से इनडोर स्थिति निर्धारण (30-50cm सटीकता) |
ML डिटेक्टर आपके YAML कॉन्फ़िगरेशन में `detection_algorithm: ml` के साथ पहले से उपलब्ध है। एल्गोरिदम विवरण के लिए, [ALGORITHMS.md](https://github.com/francescopace/espectre/blob/HEAD/micro-espectre/ALGORITHMS.md#ml-neural-network-detector) देखें और वर्तमान मेट्रिक्स के लिए `PERFORMANCE.md` देखें
ML डेटा संग्रह और प्रशिक्षण अवसंरचना का दस्तावेज़ीकरण [ML_DATA_COLLECTION.md](https://github.com/francescopace/espectre/blob/HEAD/micro-espectre/ML_DATA_COLLECTION.md) में किया गया है।
विस्तृत योजनाओं, समय-सारणियों और योगदान करने के तरीके के लिए [ROADMAP.md](https://github.com/francescopace/espectre/blob/HEAD/ROADMAP.md) देखें।
---
## दस्तावेज़ीकरण
### ESPectre (उत्पादन)
| दस्तावेज़ | विवरण |
|----------|-------------|
| [Intro](https://github.com/francescopace/espectre/blob/HEAD/README.md) | (यह फ़ाइल) परियोजना अवलोकन, त्वरित आरंभ, FAQ |
| [Setup Guide](https://github.com/francescopace/espectre/blob/HEAD/SETUP.md) | ESPHome के साथ स्थापना और कॉन्फ़िगरेशन |
| [Tuning Guide](https://github.com/francescopace/espectre/blob/HEAD/TUNING.md) | इष्टतम पहचान के लिए पैरामीटर ट्यूनिंग |
| [Performance](https://github.com/francescopace/espectre/blob/HEAD/PERFORMANCE.md) | बेंचमार्क, कन्फ्यूज़न मैट्रिक्स, F1-स्कोर |
| [The Game](https://github.com/francescopace/espectre/blob/HEAD/docs/game/README.md) | ब्राउज़र गेम, USB स्ट्रीमिंग API, इंटरैक्टिव थ्रेशोल्ड ट्यूनिंग |
| [Test Suite](https://github.com/francescopace/espectre/blob/HEAD/test/README.md) | PlatformIO Unity परीक्षण दस्तावेज़ीकरण |
### Micro-ESPectre (R&D)
| दस्तावेज़ | विवरण |
|----------|-------------|
| [Intro](https://github.com/francescopace/espectre/blob/HEAD/micro-espectre/README.md) | R&D प्लेटफ़ॉर्म अवलोकन, CLI, MQTT, वेब मॉनिटर |
| [Algorithms](https://github.com/francescopace/espectre/blob/HEAD/micro-espectre/ALGORITHMS.md) | MVS, NBVI कैलिब्रेशन, Hampel फ़िल्टर का वैज्ञानिक दस्तावेज़ीकरण |
| [Analysis Tools](https://github.com/francescopace/espectre/blob/HEAD/micro-espectre/tools/README.md) | CSI विश्लेषण और अनुकूलन स्क्रिप्ट |
| [ML Data Collection](https://github.com/francescopace/espectre/blob/HEAD/micro-espectre/ML_DATA_COLLECTION.md) | मशीन लर्निंग के लिए लेबल किए गए डेटासेट बनाना |
| [References](https://github.com/francescopace/espectre/blob/HEAD/micro-espectre/README.md#references) | शैक्षणिक पेपर और शोध संसाधन |
### परियोजना
| दस्तावेज़ | विवरण |
|----------|-------------|
| [Roadmap](https://github.com/francescopace/espectre/blob/HEAD/ROADMAP.md) | परियोजना दृष्टि और ML योजनाएँ |
| [Contributing](https://github.com/francescopace/espectre/blob/HEAD/CONTRIBUTING.md) | योगदान कैसे करें (कोड, डेटा, दस्तावेज़) |
| [Changelog](https://github.com/francescopace/espectre/blob/HEAD/CHANGELOG.md) | संस्करण इतिहास और रिलीज़ नोट्स |
| [Security](https://github.com/francescopace/espectre/blob/HEAD/SECURITY.md) | सुरक्षा नीति और भेद्यता रिपोर्टिंग |
| [Code of Conduct](https://github.com/francescopace/espectre/blob/HEAD/CODE_OF_CONDUCT.md) | सामुदायिक दिशानिर्देश |
---
## मीडिया
| लेख | शीर्षक |
|-------------|-------|
| Medium | [मैंने अपने Wi-Fi को मोशन सेंसर में कैसे बदला - भाग 1](https://medium.com/@francesco.pace/how-i-turned-my-wi-fi-into-a-motion-sensor-61a631a9b4ec?sk=c7f79130d78b0545fce4a228a6a79af3&utm_source=github&utm_medium=readme&utm_campaign=espectre) |
| Medium | [मैंने अपने Wi-Fi को मोशन सेंसर में कैसे बदला - भाग 2](https://medium.com/@francesco.pace/how-i-turned-my-wi-fi-into-a-motion-sensor-part-2-62038130e530?sk=7c8b6f11cf3fcb8d279648016ebff72a&utm_source=github&utm_medium=readme&utm_campaign=espectre) |
| IoT For All | [मैंने अपने Wi-Fi को मोशन सेंसर में कैसे बदला](https://www.iotforall.com/wifi-motion-sensor-iot) |
| Hackaday | [अपना खुद का ESP32-आधारित पर्सन सेंसर बनाएं, किसी विशेष हार्डवेयर की आवश्यकता नहीं](https://hackaday.com/2026/01/28/make-your-own-esp32-based-person-sensor-no-special-hardware-needed/) |
| Adafruit Learn | [Feather के लिए ESPectre ह्यूमन डिटेक्टर](https://learn.adafruit.com/espectre-human-detector-for-feather) |
| Seeed Studio Wiki | [ESPHome के साथ Seeed Studio XIAO ESP32 सीरीज़ पर Espectre तैनात करना](https://wiki.seeedstudio.com/xiao-esp32--series-espresense/) |
| ब्लॉग | चर्चा |
|----------|------------|
| Home Assistant | [ESPectre - Home Assistant के लिए Wi-Fi मोशन डिटेक्शन](https://community.home-assistant.io/t/espectre-wi-fi-motion-detection-for-home-assistant/961251) |
| वीडियो | वीडियो |
|---------|-------|
| @GithubAwesome | [ESPectre](https://www.youtube.com/shorts/iQ_DPHLn8ms) |
| पॉडकास्ट | एपिसोड |
|-------------|---------|
| Hackaday | [पॉडकास्ट एपिसोड 355: पर्सन डिटेक्टर, वॉकी-टॉकी, ओपन स्मार्टफोन...](https://hackaday.com/2026/01/30/hackaday-podcast-episode-355-person-detectors-walkie-talkies-open-smartphones-and-a-wifi-traffic-light/) |
---
## संबंधित परियोजनाएँ
- [radio-presence-scanner](https://github.com/francescopace/radio-presence-scanner): होस्ट डिवाइसों से BLE रेडियो अवलोकनों पर केंद्रित पूरक उपस्थिति-संवेदन परियोजना (Python), वैकल्पिक HTTP डैशबोर्ड के साथ।
- [micropython-esp32-csi](https://github.com/francescopace/micropython-esp32-csi): कस्टम MicroPython फ़ोर्क जो ESP32 CSI APIs को उजागर करता है, Micro-ESPectre वर्कफ़्लो में तीव्र CSI प्रोटोटाइपिंग के लिए फर्मवेयर आधार के रूप में उपयोग किया जाता है।
---
## आभार
ESPectre ESP32 चिप्स की नेटिव Wi-Fi CSI क्षमताओं का लाभ उठाता है। [Espressif](https://www.espressif.com/) का धन्यवाद, जिन्होंने ESP-IDF फ्रेमवर्क में CSI को सुलभ बनाया और अपने [esp-csi](https://github.com/espressif/esp-csi) रिपॉज़िटरी में ESPectre को [सामुदायिक परियोजना](https://github.com/espressif/esp-csi#6-related-resources) के रूप में मान्यता दी।
---
## लाइसेंस
यह परियोजना **GNU General Public License v3.0 (GPLv3)** के अंतर्गत जारी की गई है।
GPLv3 यह सुनिश्चित करता है कि:
- सॉफ़्टवेयर मुफ़्त और ओपन सोर्स बना रहे
- कोई भी इसका उपयोग, अध्ययन, संशोधन और वितरण कर सके
- संशोधनों को उसी लाइसेंस के अंतर्गत साझा किया जाना चाहिए
- अंतिम-उपयोगकर्ता अधिकारों और सॉफ़्टवेयर स्वतंत्रता की रक्षा करता है
पूर्ण लाइसेंस पाठ के लिए [LICENSE](https://github.com/francescopace/espectre/blob/HEAD/LICENSE) देखें।
योगदान GPLv3 के अंतर्गत प्रस्तुत किए जाते हैं और प्रत्येक कमिट पर DCO
`Signed-off-by` ट्रेलर शामिल होना चाहिए (`git commit -s`)।
## लेखक
**Francesco Pace**
ईमेल: [[email protected]](mailto:[email protected])
LinkedIn: [linkedin.com/in/francescopace](https://www.linkedin.com/in/francescopace/)
यदि आपको ESPectre उपयोगी लगता है और आप इसके विकास का समर्थन करना चाहते हैं, तो आप मुझे एक कॉफ़ी खरीद सकते हैं। यह पूरी तरह से वैकल्पिक है।
मैं इस परियोजना पर इसलिए काम करता हूँ क्योंकि मैं इसके प्रति जुनूनी हूँ। योगदान मुझे परीक्षण किए गए और समर्थित डिवाइसों की सूची का विस्तार करने के लिए नया हार्डवेयर खरीदने और नए फीचर्स के लिए अधिक समय समर्पित करने में मदद करते हैं।
<a href="https://www.buymeacoffee.com/espectre" target="_blank"><img src="https://assets.kitploit.com/production/public/readmes/9574/a7e8174c892355a24fbaec083cbef385d097a0b488fd4823dbbb0061643bb5e2.png" alt="Buy Me A Coffee" style="height: 60px !important;width: 217px !important;" ></a>
| दूरी | सिग्नल | मल्टीपाथ | संवेदनशीलता | शोर | अनुशंसा |
|---|
| < 2m | बहुत मजबूत | न्यूनतम | कम | कम | ❌ बहुत पास |
| 3-8m | मजबूत | अच्छा | उच्च | कम | ✅ इष्टतम |
| > 10-15m | कमज़ोर | परिवर्तनशील | कम | उच्च | ❌ बहुत दूर |
प्रश्न: यदि यह काम नहीं करता है, तो क्या मुझे मदद मिल सकती है?
उत्तर: हाँ, GitHub पर Issue खोलें या मुझसे ईमेल के माध्यम से संपर्क करें।