Wardrive

wardrive / wd — رسم خرائط WiFi مع GPS

CMD> wd

لجهاز T-Deck Plus فقط (يحتاج GPS). وعلى T-Deck الأساسي يطبع تنبيهًا ويخرج.

اضغط q للإيقاف. وتبقى مهمّة GPS عاملة بعد خروجك (مثل الأمر gps).


ما يفعله

يمسح wardrive نقاط وصول WiFi باستمرار، ويَسِم كلًّا منها بإحداثيات GPS الحالية، فيكتب ملفّ WiGLE WiFi-1.4 CSV يمكنك رفعه مباشرةً إلى wigle.net أو فتحه في أي أداة خرائط.

  • ينتظر أوّل تحديد موقع GPS قبل المسح (يبقى الراديو خاملًا حتى ذلك الحين)، ثم يمسح باستمرار
  • مسح متزامن (طريقة Bruce/Marauder المثبتة) — تعرض الشاشة Scanning... وتتجمّد لنحو 3–4 ثوانٍ لكل جولة ثم تُحدَّث؛ ويُقرَأ [q] بين الجولات
  • يُسجَّل كل BSSID مرّة واحدة في الجلسة (بلا تكرار في الذاكرة)
  • تُكتَب الصفوف فقط أثناء صلاحية تحديد GPS — فنقطة وصول بلا إحداثيات لا فائدة منها لـ WiGLE
  • تُسجَّل نقاط الوصول المخفية باسم SSID فارغ

هل عليّ انتظار تحديد GPS؟

لا — ليس للإطلاق. يبدأ التطبيق فورًا، ويشغّل مهمّة GPS إن لم تكن عاملة، ويعرض حالة حيّة. ويمسح طوال الوقت، لكنه يؤجّل التسجيل حتى يتوفّر تحديد موقع:

GPS searching  4 sat
not logging until fix (go outside)

وفي لحظة توفّر التحديد ينتقل إلى:

FIX  8 sat  LOGGING
+40.123456, -74.123456

وتبدأ الصفوف بالظهور. يستغرق التحديد البارد نحو 4 دقائق في العراء؛ أمّا البدء الساخن (تحديد حديث محفوظ في NVS) فأسرع بكثير. وقد لا تحصل على تحديد داخل المباني أبدًا — اخرج إلى الخارج.


ملفّ المُخرَجات

/apps/wardrive/NNN.csv

مُرقَّم تسلسليًّا (001.csv و002.csv …) ولا يُستبدَل أبدًا — كل تشغيل ملفّ جديد. ويُنشَأ الملفّ بتكاسل، عند أوّل نقطة وصول تُسجَّل فعلًا — فالجلسة التي لا تحصل على تحديد (أو تخرج منها مبكّرًا) لا تترك أي ملفّ، فلا تتراكم ملفّات CSV فارغة. والصيغة WiGLE WiFi-1.4:

WigleWifi-1.4,appRelease=AL-ANQA,model=T-Deck-Plus,release=2026,device=ESP32-S3,display=ST7789,board=LilyGo,brand=LilyGo
MAC,SSID,AuthMode,FirstSeen,Channel,RSSI,CurrentLatitude,CurrentLongitude,AltitudeMeters,AccuracyMeters,Type
1a:2b:3c:4d:5e:6f,MyWiFi,[WPA2-PSK-CCMP][ESS],2026-06-20 14:30:00,6,-55,40.123456,-74.123456,52.0,5.0,WIFI
العمود ملاحظات
MAC BSSID، بأحرف صغيرة
SSID فارغ لنقاط الوصول المخفية؛ تُزال الفواصل للحفاظ على سلامة الصفوف
AuthMode قدرات WiGLE بين أقواس، مثل [WPA2-PSK-CCMP][ESS] و[WEP][ESS] و[ESS] (مفتوحة)
FirstSeen YYYY-MM-DD hh:mm:ss بتوقيت UTC من GPS
Channel / RSSI أعداد صحيحة
Lat / Lon درجات عشرية (6 منازل — الدقّة الفعلية لتحديد GPS بدقّة 32 بت)
AltitudeMeters الارتفاع الحقيقي (بالأمتار فوق سطح البحر) من تحديد GPS؛ 0 حتى تبلّغ الوحدة عن الارتفاع
AccuracyMeters من HDOP الخاص بـ GPS (عرف Bruce نفسه)؛ يعود إلى تقدير حسب عدد الأقمار (8 م إن ≥6 أقمار، وإلّا 20 م) حين لا يتوفّر HDOP بعد
Type دائمًا WIFI

ارفع الملفّ على wigle.net/uploads لإضافة التقاطاتك إلى الخريطة العالمية.


العرض على الشاشة

[WAR::DRIVE]
File /apps/wardrive/001.csv
FIX  8 sat  LOGGING
+40.123456, -74.123456
Logged 42 APs
Scans 17  (last saw 9)
sweep n=9 fix=1 new=3 wr=3
[q] stop
  • Logged — نقاط الوصول الفريدة المكتوبة في هذه الجلسة
  • Scans — دورات المسح المكتملة؛ last saw = نقاط الوصول في أحدث مسح
  • sweep — تتبّع بوّابات كل جولة: n نقاط وصول عادت · fix صلاحية GPS (1/0) · new صفوف مُجهَّزة · wr صفوف كُتِبت إلى SD. فإن كان n مرتفعًا وبقي wr صفرًا، يبيّن هذا ما إذا سقط التحديد (fix=0) أم كان كل شيء مكرّرًا (new=0).

ملاحظات

  • يعمل WiFi في وضع STA؛ وتحدث كتابات SD بين عمليات المسح (الراديو خامل) — آمن من حيث GDMA.
  • مهمّة GPS مشتركة مع الأمر gps؛ فإن كنت قد شغّلت gps on، فقد يكون التحديد ساخنًا بالفعل.
  • بلا بطاقة SD → يمسح ويعرض الحالة لكن لا يمكنه التسجيل (يظهر بالأحمر).