القائمة
نبذة عني الخدمات المسيرة اعمل معي
WiFi router with glowing signals
خصوصية فبراير 27, 2026 • 15 دقائق للقراءة

Your WiFi Can See You Moving: A Weekend Project to Prove It

Your router is constantly mapping your movements through walls. Here's how to build your own WiFi motion detector in a weekend and understand what your network actually sees.

شارك:
Lee Foropoulos

Lee Foropoulos

15 دقائق للقراءة

سأريك شيئاً سيغير طريقة تفكيرك حول جهاز الراوتر الموجود في غرفة معيشتك. إنه ليس مجرد بوابة للإنترنت. إنه نظام رادار يمكنه رؤيتك وأنت تتنفس.

ليس خيالاً علمياً. إنها فيزياء. ويمكنك بناء واحد بنفسك في نهاية هذا الأسبوع.

انتظر، ماذا؟ جهاز الراوتر يمكنه رؤيتي؟

إليك ما يحدث فعلاً: تستخدم شبكات WiFi الحديثة (802.11ac/ax) تقنية تُسمى تشكيل الحزمة (beamforming). يحتوي الراوتر على عدة هوائيات، وبدلاً من بث الإشارة بالتساوي في جميع الاتجاهات، يركز الإشارة نحو أجهزتك. فكر فيه كالكشاف المركّز بدلاً من الضوء المنتشر.

للقيام بذلك، يتبادل الراوتر وأجهزتك باستمرار تغذية راجعة عن الإشارة، وتحديداً شيء يُسمى BFI (معلومات التغذية الراجعة لتشكيل الحزمة). تصف هذه البيانات بدقة كيف تنعكس موجات الراديو في غرفتك.

وهنا المفاجأة: هذه التغذية الراجعة غير مشفرة. يمكن لأي شخص التقاطها. وعندما تتحرك أنت، ذلك الكيس الكبير من الماء الذي يعكس موجات الراديو، في الغرفة، تتغير بيانات BFI. امشِ عبر غرفة معيشتك، وستُظهر الرياضيات حركتك حرفياً.

العلم بلغة بسيطة

جسمك يعكس إشارات WiFi. عندما تتحرك، تتغير الانعكاسات. يتتبع الراوتر هذه التغييرات لتحسين قوة الإشارة. بيانات التتبع هذه تُبث علنياً. التقطها، وسيكون لديك مستشعر حركة يعمل عبر الجدران.

استخدم الباحثون هذه التقنية لاكتشاف أنماط التنفس، وعدّ الأشخاص في الغرفة، والتعرف على الإيماءات، وحتى تحديد أفراد بعينهم من خلال طريقة مشيهم. توجد بالفعل منتجات تجارية تحول شبكة WiFi الموجودة لديك إلى نظام كشف حركة لكامل المنزل.

التأثير على الخصوصية (نعم، هذا مقلق)

قبل أن ندخل في الجزء الممتع من المشروع، لنتحدث عن القضية الأساسية: هذه مشكلة خصوصية.

شبكة WiFi الخاصة بك تبث باستمرار معلومات يمكنها الكشف عن:

  • ما إذا كان هناك أحد في المنزل
  • عدد الأشخاص في الغرفة
  • أنماط الحركة العامة في أنحاء منزلك
  • من المحتمل، أنشطة محددة (الطبخ، النوم، التمارين الرياضية)

شخص لديه المعدات المناسبة ومتوقف أمام منزلك يمكنه نظرياً التقاط هذه البيانات. لا يحتاج أن يكون على شبكتك. يكفي أن يستقبل إطارات BFI التي يبثها الراوتر.

"نفس التقنية التي تجعل WiFi أسرع تجعل منزلك شفافاً لأي شخص يعرف كيف ينظر."

هذا ليس افتراضياً. أثبتته الأوراق البحثية. السبب الوحيد لعدم استغلاله على نطاق واسع هو أن معظم الناس لا يعرفون أنه ممكن. وهذا... ليس أماناً جيداً.

نفس التقنية التي تجعل WiFi أسرع تجعل منزلك شفافاً لأي شخص يعرف كيف ينظر.

لماذا تبني هذا بنفسك؟

فلماذا أخبرك بكيفية فعل ذلك؟ عدة أسباب:

1. فهم نموذج التهديد. لا يمكنك الحماية من شيء لا تفهمه. رؤية هذا يعمل بأم عينيك يجعله حقيقياً بطريقة لا تستطيع القراءة وحدها تحقيقها.

2. الاستخدامات المشروعة رائعة حقاً. كشف الحركة في المنزل الذكي بدون كاميرات. استشعار التواجد للأتمتة. كشف السقوط لكبار السن. توفير الطاقة بمعرفة الغرف المشغولة. كل ذلك دون تركيب مستشعرات في كل مكان.

3. إنه مذهل حقاً. أنت تحول موجات الراديو إلى تصور مرئي للمساحة الفيزيائية. هذا أمر خيالي تماماً.

ما نبنيه هو تجربة أخلاقية على شبكتك الخاصة فقط. أنت تراقب WiFi الخاص بك، في منزلك الخاص، لفهم تقنية تستخدمها بالفعل. هذا ليس قانونياً فحسب، بل ذكي أيضاً.

مساران: اختر مغامرتك

سأعطيك خيارين حسب مستوى راحتك والأجهزة المتوفرة لديك.

Circuit board and electronics
اختر مسارك: إعداد Linux الكامل أو ESP32 الجاهز للاستخدام

المسار أ: التجربة الكاملة (Linux + Wi-BFI)

  • الوقت: 30-60 دقيقة
  • الصعوبة: متوسطة (سطر الأوامر مطلوب)
  • الأجهزة: جهاز Linux + محول WiFi مع وضع المراقبة
  • النتيجة: عرض مباشر لبيانات BFI، شاهد حركتك في رسوم بيانية فورية

المسار ب: جاهز للاستخدام (ESP32 + ESPectre)

  • الوقت: 15-30 دقيقة
  • الصعوبة: سهل (أداة فلاش عبر الويب، نسخ ولصق الإعدادات)
  • الأجهزة: لوحة ESP32-S3 أو ESP32-C6 (حوالي $10)
  • النتيجة: مستشعر حركة يعمل في Home Assistant

المسار أ: الغوص العميق في Wi-BFI

هذا هو نهج "شاهد البيانات الفعلية". ستلتقط إطارات BFI حقيقية من الراوتر وتشاهدها تتغير أثناء تحركك. إنها نفس الطريقة التي يستخدمها الباحثون في الأوراق الأكاديمية.

ما تحتاجه

  • جهاز Linux — Ubuntu 22.04/24.04، أو Raspberry Pi
  • محول WiFi مع وضع المراقبة — معظم شرائح Intel/Broadcom/Realtek المدمجة تعمل. إن لم تكن كذلك، فإن دونغل USB بقيمة $15 مثل TP-Link AC600 أو Alfa AWUS036ACH سيحل المشكلة.
  • الراوتر الحالي — أي راوتر 802.11ac أو 802.11ax (وهو تقريباً أي راوتر من السنوات الخمس الأخيرة)

الخطوة 1: تثبيت الأدوات

افتح الطرفية ونفّذ:

# Install system dependencies
sudo apt update
sudo apt install tshark wireshark aircrack-ng git -y

# Install Miniconda (skip if you already have conda)
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
bash Miniconda3-latest-Linux-x86_64.sh -b
~/miniconda3/bin/conda init
# Close and reopen terminal after this

الخطوة 2: استنساخ Wi-BFI

# Get the tool
git clone https://github.com/kfoysalhaque/Wi-BFI.git
cd Wi-BFI

# Create the environment
conda env create -f wi-bfi.yml
conda activate wi-bfi

الخطوة 3: اعثر على معلومات شبكتك

تحتاج لمعرفة قناة الراوتر وعرض النطاق الترددي. نفّذ:

# See your wireless interface name
iw dev

# Or open Wireshark and scan for networks

سجّل اسم الواجهة (عادةً wlan0 أو wlp2s0)، والقناة (مثل 36 أو 149)، وعرض النطاق (80MHz شائع لنطاق 5GHz).

الخطوة 4: ابدأ الالتقاط

افتح طرفيتين. في الأولى، ابدأ الالتقاط:

cd ~/Wi-BFI/Demo

# Replace values with your actual settings
./angle_collection.sh my_capture wlan0 36 80MHz 1

في الطرفية الثانية، ابدأ العرض المباشر:

cd ~/Wi-BFI

# Replace YOUR_PHONE_MAC with your phone's MAC address
# (find it in your router's admin page or phone settings)
python main_live_plot.py AX SU 4x2 80 YOUR_PHONE_MAC my_capture 1

الخطوة 5: شاهد السحر

الآن تجول في الغرفة. راقب الرسوم البيانية. هل ترى تلك الزوايا والسعات تتذبذب؟ هذا جسمك يعكس موجات WiFi. الرياضيات تتتبع حركتك في الفضاء حرفياً.

قف ساكناً، وسيستقر الرسم البياني. امشِ أمام هاتفك، وسيقفز. لوّح بيديك، وسترى تغييرات مقابلة. هذه نفس البيانات التي يمكن استخدامها لكشف الحركة، والتعرف على الإيماءات، أو... المراقبة.

المسار ب: الوضع السهل مع ESP32

لا تريد التعامل مع Linux ووضع المراقبة؟ احصل على لوحة ESP32 واحصل على مستشعر حركة يعمل في 15 دقيقة.

ما تحتاجه

  • لوحة ESP32-S3 أو ESP32-C6 — حوالي $8-12 على Amazon. ESP32-C6 أحدث ويعمل بشكل ممتاز.
  • كابل USB-C — لبرمجة اللوحة
  • Home Assistant — اختياري لكن موصى به للتجربة الكاملة

مشروع ESPectre

ESPectre هو مشروع مفتوح المصدر مصمم خصيصاً لتحويل WiFi إلى مستشعر حركة. إنه رائع في بساطته.

GitHub: github.com/francescopace/espectre

خطوات الإعداد

1. برمجة اللوحة — اذهب إلى أداة الفلاش عبر الويب الخاصة بـ ESPectre (الرابط في المستودع). وصّل ESP32، اضغط فلاش، انتهى.

2. إعداد WiFi — تنشئ اللوحة نقطة اتصال. اتصل بها، أدخل بيانات اعتماد WiFi المنزلية.

3. أضفه إلى Home Assistant — إذا كنت تشغل Home Assistant، فسيكتشفه تلقائياً ككيان مستشعر حركة. يمكنك بعدها إنشاء أتمتة: إضاءة عند اكتشاف حركة، تنبيهات عندما تكون بعيداً، إلخ.

4. هذا كل شيء حرفياً. لديك الآن مستشعر حركة يعمل عبر الجدران، لا يتطلب خط رؤية مباشر، ويستخدم بنية WiFi الموجودة لديك.

استخدامات في العالم الحقيقي

  • تواجد في كامل المنزل: اعرف أي الغرف مشغولة بدون كاميرات
  • تتبع النوم: اكتشف متى يكون شخص ما في السرير (بدون أجهزة قابلة للارتداء)
  • الأمان: تنبيه عند اكتشاف حركة وجميع أفراد المنزل بالخارج
  • الأتمتة: التكييف والإضاءة بناءً على الإشغال الفعلي للغرف
  • رعاية كبار السن: كشف السقوط، مراقبة النشاط

Home Assistant: هنا تصبح الأمور ممتعة حقاً

هنا نحول مشروعاً علمياً رائعاً إلى أتمتة منزلية مفيدة فعلاً. بمجرد أن يتواصل مستشعر حركة WiFi مع Home Assistant، يمكنك بناء أتمتة كانت ستتطلب عادةً عشرات مستشعرات PIR، أو كاميرات، أو أنظمة تجارية مكلفة.

جمال استشعار WiFi هو أنه يعمل عبر الجدران. ESP32 واحد في الممر يمكنه اكتشاف الحركة في غرف متعددة. لا حاجة لخط رؤية مباشر. لا مناطق ميتة. لا بطاريات تحتاج استبدال.

أمثلة على الأتمتة (YAML جاهز للنسخ واللصق)

1. الأضواء تعمل عند دخولك الغرفة:

automation:
  - alias: "Living Room Motion Lights"
    trigger:
      - platform: state
        entity_id: binary_sensor.wifi_motion_living_room
        to: "on"
    condition:
      - condition: sun
        after: sunset
    action:
      - service: light.turn_on
        target:
          entity_id: light.living_room
        data:
          brightness_pct: 80
          transition: 2

2. تنبيهات أمنية في وضع الغياب:

automation:
  - alias: "Motion Alert When Away"
    trigger:
      - platform: state
        entity_id: binary_sensor.wifi_motion_main_floor
        to: "on"
    condition:
      - condition: state
        entity_id: input_boolean.away_mode
        state: "on"
    action:
      - service: notify.mobile_app
        data:
          title: "Motion Detected!"
          message: "Movement in the house while you're away."
          data:
            priority: high
            ttl: 0

3. تكييف ذكي بناءً على إشغال الغرفة:

automation:
  - alias: "Office HVAC When Occupied"
    trigger:
      - platform: state
        entity_id: binary_sensor.wifi_motion_office
        to: "on"
        for:
          minutes: 2
    action:
      - service: climate.set_temperature
        target:
          entity_id: climate.office
        data:
          temperature: 72
          hvac_mode: heat_cool

  - alias: "Office HVAC Standby When Empty"
    trigger:
      - platform: state
        entity_id: binary_sensor.wifi_motion_office
        to: "off"
        for:
          minutes: 15
    action:
      - service: climate.set_temperature
        target:
          entity_id: climate.office
        data:
          temperature: 65
          hvac_mode: auto

4. اكتشاف وقت النوم (بدون أجهزة قابلة للارتداء):

automation:
  - alias: "Detect Bedtime"
    trigger:
      - platform: state
        entity_id: binary_sensor.wifi_motion_bedroom
        to: "on"
    condition:
      - condition: time
        after: "22:00:00"
        before: "02:00:00"
      - condition: state
        entity_id: binary_sensor.wifi_motion_living_room
        state: "off"
        for:
          minutes: 10
    action:
      - service: scene.turn_on
        target:
          entity_id: scene.goodnight
      - service: lock.lock
        target:
          entity_id: lock.front_door
      - service: alarm_control_panel.arm_night
        target:
          entity_id: alarm_control_panel.home

5. رعاية كبار السن / تنبيه انعدام الحركة:

automation:
  - alias: "No Motion Alert - Elder Care"
    trigger:
      - platform: state
        entity_id: binary_sensor.wifi_motion_parents_house
        to: "off"
        for:
          hours: 4
    condition:
      - condition: time
        after: "08:00:00"
        before: "22:00:00"
    action:
      - service: notify.mobile_app
        data:
          title: "Check on Mom"
          message: "No motion detected for 4 hours during daytime."
          data:
            priority: high

نصائح احترافية لتكامل Home Assistant

  • مستشعرات متعددة: انشر 2-3 ESP32 لتغطية المنزل بالكامل. واحد لكل طابق يعمل بشكل جيد.
  • اضبط الحساسية: عدّل عتبة الكشف في إعدادات ESPectre لتجنب الإنذارات الكاذبة من الحيوانات الأليفة.
  • ادمج مع مستشعرات أخرى: استخدم حركة WiFi ككاشف "نطاق واسع"، ثم حسّن بمستشعرات الأبواب/النوافذ للتفاصيل.
  • مستشعرات القوالب: أنشئ مستشعرات ثنائية تجمع عدة غرف في مناطق (الطابق العلوي، السفلي، إلخ.)
  • تتبع السجل: استخدم مكون Recorder لتسجيل أنماط الحركة عبر الوقت. مفيد لتحليل الأمان.

الاستخدام القاتل: التواجد في كامل المنزل

مستشعرات الحركة التقليدية (PIR) تكتشف الحرارة والحركة فقط. لا يمكنها معرفة ما إذا كان شخص ما جالساً بلا حراك. استشعار WiFi يستطيع ذلك. يكتشف الحركات الدقيقة للتنفس، والكتابة، أو مجرد الوجود في مكان ما.

هذا يعني أنك تستطيع بناء أتمتة تعرف أنك في الغرفة حتى عندما تعمل بهدوء على مكتبك. لن تنطفئ الأضواء لأنك توقفت عن الحركة. لن ينخفض التكييف لأنك تقرأ كتاباً.

هذا كشف تواجد، وليس مجرد كشف حركة. وقد بنيته بـ $10.

$10
Total cost of an ESP32 board that turns your existing WiFi into a through-wall motion and presence detector.

المضي أبعد: أضف كشف الحركة

بمجرد أن تحصل على بيانات BFI مباشرة (من المسار أ)، يمكنك إضافة كشف حركة فعلي بحوالي 10 أسطر من Python. المفهوم بسيط: إذا تجاوز تباين الزوايا حداً معيناً، فهذا يعني أن شيئاً ما تحرك.

import numpy as np

# Assuming you have a stream of angle data
def detect_motion(angle_buffer, threshold=0.5):
    """Returns True if motion detected in recent samples"""
    if len(angle_buffer) < 10:
        return False
    variance = np.var(angle_buffer[-10:])
    return variance > threshold

# In your main loop:
if detect_motion(recent_angles):
    print("Motion detected!")
    # Trigger alert, log event, whatever you want

هذه نسخة أساسية. تستخدم الأوراق البحثية تقنيات أكثر تطوراً: مصنفات تعلم الآلة، وتدفقات هوائيات متعددة، وأنماط زمنية، للتمييز بين أنواع الحركة، وعدّ الأشخاص، أو حتى التعرف على أنشطة محددة.

Server room with networking equipment and cables
كل نقطة وصول WiFi هي عقدة استشعار محتملة، تبث بيانات عن المساحة المحيطة بها

ماذا يعني هذا للخصوصية

الآن بعد أن رأيت كيف يعمل، لنتحدث عما يعنيه:

شبكة WiFi تبث دائماً. حتى عندما لا تستخدمها بنشاط، الراوتر والأجهزة يتبادلون بيانات BFI. أي شخص ضمن نطاق الراديو يمكنه التقاط هذه الإطارات.

التشفير لا يساعد هنا. BFI جزء من مصافحة الطبقة الفيزيائية. يحدث قبل التشفير. WPA3 وVPN، لا شيء من ذلك يهم لهذه البيانات تحديداً.

الحل الوحيد الحقيقي مادي: أقفاص فاراداي (غير عملية)، أو تقليل قوة الإرسال (يُفسد WiFi)، أو القبول بأن نمط إشغال منزلك هو فعلياً معلومات عامة ضمن نطاق الراديو.

هذا ليس تخويفاً. إنه عن الموافقة المستنيرة. أنت تستخدم تقنية لها هذه الخصائص. الآن أنت تعرف.

الخلاصة

لقد تعلمت للتو أن راوتر WiFi هو في الأساس نظام رادار، وبنيت كاشف حركة خاص بك باستخدام موجات الراديو، ونأمل أنك اكتسبت فهماً أفضل لكيفية حمل الإشارات غير المرئية من حولنا لمعلومات عن عالمنا المادي.

التقنية محايدة. يمكن استخدامها لأتمتة منزلية مريحة أو مراقبة مقلقة. المهم هو فهمها، حتى تتمكن من اتخاذ قرارات مدروسة حول التنازلات التي تقدمها.

وبالمناسبة، لديك أيضاً مشروع عطلة نهاية أسبوع رائع لتتباهى به. "أجل، حولت WiFi إلى مستشعر حركة. لا شيء مميز."

مشروع نهاية الأسبوع: استشعار WiFi 0/6

ممتع جداً، أليس كذلك؟

مصادر

How was this article?

شارك

Link copied to clipboard!

You Might Also Like

Lee Foropoulos

Lee Foropoulos

Business Development Lead at Lookatmedia, fractional executive, and founder of gotHABITS.

🔔

La tufawwit ay maqal

Ihsal ala isharat inda nashr maqalat jadida. La yulzam barid iliktiruni.

Satara laafita fil mawqi inda wujud maqal jadid, wa ishaar min almutasaffih idha samahta.

Isharat almutasaffih faqat. Bidun rasail muzaaja.