۰%

این کتاب، یک راهنمای کامل و قدرتمند برای ساخت پروژه مارشال (Marshall) است؛ یک ابزار امنیتی بی‌سیم مبتنی بر ESP32، سه ماژول NRF24 و نمایشگر OLED. این پروژه با هدف آموزش مفاهیم عملی الکترونیک، برنامه‌نویسی و امنیت شبکه طراحی شده است.

مارشال نسخه تکامل‌یافته پروژه‌های RF-Clown و VOID است که با قدرت بیشتر، وب‌اینترفیس پیشرفته و قابلیت‌های امنیتی گسترده‌تر، یک ابزار کامل برای تست امنیت شبکه‌های بی‌سیم فراهم می‌کند.

در طول این مسیر، شما با مراحل مختلفی از جمله شناخت قطعات، سیم‌بندی، نصب نرم‌افزار، آپلود فریم‌ور و راه‌اندازی وب‌اینترفیس آشنا خواهید شد. این پروژه به گونه‌ای طراحی شده که کاربران با هر سطح از دانش بتوانند آن را دنبال کنند.

هدف این کتاب

هدف این کتاب، آموزش مفاهیم کلیدی الکترونیک و برنامه‌نویسی از طریق یک پروژه عملی و جذاب است. شما پس از خواندن این کتاب، قادر خواهید بود یک دستگاه Jammer قدرتمند بسازید، با مفاهیم RF آشنا شوید و مهارت‌های برنامه‌نویسی خود را تقویت کنید.

این کتاب به سه فاز اصلی تقسیم شده است که هر کدام به تدریج شما را با مفاهیم جدید آشنا می‌کند. در فاز اول، با اصول اولیه سخت‌افزار و نرم‌افزار آشنا می‌شوید. در فاز دوم، قابلیت‌های تعاملی را اضافه می‌کنید و در فاز سوم، پروژه را به یک دستگاه شبکه‌ای قابل کنترل از راه دور تبدیل می‌کنید.

تذکر قانونی و اخلاقی

این پروژه صرفاً برای اهداف آموزشی و آشنایی با مفاهیم فنی طراحی شده است. هرگونه استفاده غیرمجاز، ایجاد مزاحمت یا تداخل در شبکه‌های مخابراتی، ممنوع و پیگرد قانونی دارد. مسئولیت هرگونه سوءاستفاده بر عهده خود کاربر است.

مارشال (Marshall) یک پروژه منبع‌باز قدرتمند برای تست امنیت شبکه‌های بی‌سیم در باند ۲.۴ گیگاهرتز است. این پروژه بر پایه برد ESP32، سه ماژول رادیویی NRF24L01+ PA+LNA و یک نمایشگر OLED ساخته شده و قابلیت‌های متنوعی را در اختیار کاربر قرار می‌دهد.

ویژگی‌های کلیدی پروژه مارشال عبارتند از:

  • ۸ حالت جمینگ: WiFi، BLE، Bluetooth، Video TX، RC، Zigbee، USB Wireless، NRF24 و حالت ترکیبی All-in-One.
  • استفاده همزمان از سه ماژول NRF24 برای پوشش گسترده‌تر و قدرت بیشتر.
  • وب‌اینترفیس پیشرفته: کنترل کامل دستگاه از طریق مرورگر با طراحی واکنش‌گرا.
  • نمایشگر OLED: نمایش وضعیت، مود فعال و اطلاعات لحظه‌ای.
  • ۴ LED رنگی: بازخورد بصری برای حالت‌های مختلف.
  • کنترل با دکمه: تغییر مود و فعال/غیرفعال کردن بدون نیاز به کامپیوتر.
مزیت کلیدی

برخلاف پروژه‌های ساده، مارشال با استفاده از سه ماژول NRF24 به صورت همزمان، قدرت اختلال را به طور چشمگیری افزایش می‌دهد و حالت All-in-One آن امکان حمله به چندین پروتکل را به طور همزمان فراهم می‌کند.

این پروژه صرفاً برای اهداف آموزشی و تست امنیتی در محیط‌های کنترل‌شده طراحی شده است. استفاده غیرمجاز از آن، جرم محسوب می‌شود.

Jamming یا ایجاد اختلال عمدی در سیگنال‌های رادیویی، یکی از قدیمی‌ترین روش‌های جنگ الکترونیک است که ریشه در تاریخ ارتباطات رادیویی دارد. از جنگ جهانی دوم که نیروها برای گمراه کردن رادارهای دشمن از Jamming استفاده می‌کردند، تا امروز که این مفاهیم به ابزاری قدرتمند برای آموزش و تست امنیتی تبدیل شده‌اند، این حوزه همواره دستخوش تحول بوده است.

در ابتدا، تجهیزات Jamming دستگاه‌های عظیم و پرهزینه‌ای بودند که تنها در اختیار ارتش‌ها قرار داشتند. اما با پیشرفت فناوری و کوچک‌سازی قطعات الکترونیکی، امروزه با استفاده از یک برد ESP32 و چند ماژول NRF24، هر کاربری می‌تواند یک RF Jammer قابل حمل و کم‌هزینه را در خانه بسازد.

با ظهور اینترنت اشیا و افزایش تعداد دستگاه‌های متصل به شبکه، درک مفاهیم Jamming بیش از پیش اهمیت پیدا کرده است. پروژه مارشال با ارائه یک ابزار عملی و آموزشی، به کاربران کمک می‌کند تا با مفاهیم کلیدی این حوزه آشنا شوند.

قلاب فکری

آیا تا به حال فکر کرده‌اید که چرا برخی از شبکه‌های وای‌فای در ساعات خاصی از روز کند می‌شوند؟ یکی از دلایل اصلی، تداخل امواج در باند ۲.۴ گیگاهرتز است. این پروژه به شما نشان می‌دهد که چگونه یک سیگنال ساده می‌تواند کل یک باند فرکانسی را تحت تأثیر قرار دهد.

پیش از هر اقدامی، لازم است با هر قطعه و ویژگی‌های فنی آن آشنا شوید. در این بخش، قطعات کلیدی پروژه مارشال را معرفی می‌کنیم.

برد ESP32-WROOM-32

  • نقش: پردازنده مرکزی و هسته اصلی پروژه.
  • پردازنده: دو هسته Tensilica Xtensa LX6 با فرکانس ۲۴۰ مگاهرتز.
  • حافظه: فلش ۴ مگابایت، رم ۵۲۰ کیلوبایت.
  • ولتاژ کاری: ۳.۳ ولت.
  • مدل مناسب: ۳۸ پین (مدل‌های ۳۰ پین برای این پروژه مناسب نیستند).

ماژول NRF24L01+ PA+LNA

  • نقش: فرستنده سیگنال‌های رادیویی در باند ۲.۴ گیگاهرتز.
  • PA+LNA: تقویت‌کننده توان (برد بیشتر) و تقویت‌کننده کم‌نویز.
  • ولتاژ و جریان: ۳.۳ ولت و ۱۵۰ میلی‌آمپر.
  • پروتکل ارتباطی: SPI.
  • تعداد مورد نیاز: ۳ عدد (برای استفاده همزمان).

OLED 0.96 اینچی (I2C)

  • نقش: نمایش وضعیت، مود فعال و اطلاعات.
  • رزولوشن: ۱۲۸x۶۴.
  • درایور: SSD1306.
  • پروتکل: I2C (SDA=GPIO21, SCL=GPIO22).
نکته حیاتی تغذیه

مجموع جریان مصرفی سه ماژول NRF24 به حدود ۴۵۰ میلی‌آمپر می‌رسد. حتماً ماژول‌ها را از یک منبع تغذیه جداگانه (مثلاً رگولاتور AMS1117 متصل به پین ۵ ولت ESP32) تغذیه کنید. تغذیه از پین ۳.۳ ولت ESP32 باعث ناپایداری می‌شود.

در این بخش، نکات کلیدی برای خرید قطعات پروژه مارشال ارائه شده است.

راهنمای خرید ESP32

  • حتماً مدل ۳۸ پین را انتخاب کنید.
  • روی برد عبارت ESP32-WROOM-32 حک شده باشد.
  • کابل Micro-USB حتماً قابلیت انتقال داده داشته باشد.

راهنمای خرید NRF24

  • عبارت PA+LNA روی ماژول حک شده باشد و آنتن خارجی داشته باشد.
  • حتماً ۳ عدد تهیه کنید.
  • به کیفیت آنتن و کانکتور آن دقت کنید.

راهنمای خرید OLED و سایر قطعات

  • OLED: مدل ۰.۹۶ اینچی با درایور SSD1306 و پروتکل I2C.
  • خازن‌ها: ۳ عدد خازن ۱۰ تا ۱۰۰ میکروفاراد (برای هر ماژول NRF24 یک عدد).
  • کلیدهای فشاری: ۳ عدد تاکت سویچ ۴ پایه.
  • LEDها: ۴ عدد LED رنگی (سبز، قرمز، آبی، زرد) با مقاومت‌های ۲۲۰-۳۳۰ اهم.
اشتباه رایج

حتماً مدل PA+LNA را تهیه کنید. مدل معمولی (بدون PA+LNA) برد بسیار کمی دارد و برای این پروژه قابل استفاده نیست.

قبل از شروع کار، محیط خود را آماده کنید. این شامل فضای فیزیکی، ابزارهای مورد نیاز و همچنین آماده‌سازی ذهنی است.

ابزارهای مورد نیاز

  • هویه (آهن لحیم‌کاری): برای لحیم‌کاری قطعات روی برد نهایی.
  • سیم‌های جامپر: برای اتصالات موقت روی بردبورد.
  • بردبورد (بورد بدون لحیم): برای تست و مونتاژ اولیه مدار.
  • مولتی‌متر: برای اندازه‌گیری ولتاژ و تست اتصالات.
  • کابل USB با قابلیت انتقال داده: برای اتصال ESP32 به کامپیوتر.
  • موچین و انبردست: برای جاگذاری قطعات کوچک.
نکته ایمنی

هنگام کار با هویه، حتماً از عینک ایمنی و تهویه مناسب استفاده کنید. محل کار خود را تمیز و مرتب نگه دارید.

Arduino IDE محیط اصلی برنامه‌نویسی و آپلود کد روی میکروکنترلرهاست. در این بخش، قدم‌به‌قدم نصب و راه‌اندازی آن را مرور می‌کنیم.

مراحل نصب

  1. به وب‌سایت رسمی آردوینو (www.arduino.cc) مراجعه کنید.
  2. آخرین نسخه پایدار را برای سیستم‌عامل خود دانلود کنید.
  3. در حین نصب، گزینه Install USB drivers را فعال کنید.
  4. پس از اتمام نصب، کامپیوتر را ریستارت کنید.

نصب درایور USB-to-Serial

بردهای ESP32 معمولاً از یکی از دو تراشه CP2102 یا CH340 برای ارتباط سریال استفاده می‌کنند. درایور مناسب را نصب کنید:

  • CP2102: از وب‌سایت Silicon Labs.
  • CH340: از وب‌سایت WCH.
تست شناسایی برد

ESP32 را با کابل USB به کامپیوتر وصل کنید. در Device Manager، یک پورت COM جدید با نام "Silicon Labs CP210x" یا "USB Serial Port" ظاهر می‌شود.

پس از نصب Arduino IDE، آن را برای کار با بردهای ESP32 پیکربندی کنید.

۱. اضافه کردن آدرس مدیر برد

آدرس زیر را در File → Preferences → Additional Boards Manager URLs وارد کنید:

https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json

۲. نصب پکیج ESP32

از منوی Tools → Board → Boards Manager، عبارت ESP32 را جستجو کرده و پکیج "esp32 by Espressif Systems" را نصب کنید.

۳. انتخاب برد و تنظیم پارامترها

  • Board: ESP32 Dev Module
  • Flash Size: 4MB
  • Upload Speed: 115200
  • CPU Frequency: 240MHz
تست با مثال Blink

کد File → Examples → 01.Basics → Blink را آپلود کنید. اگر LED داخلی چشمک زد، پیکربندی درست است.

برای پروژه مارشال، کتابخانه‌های زیر باید نصب شوند:

RF24 (برای ارتباط با NRF24)

از Sketch → Include Library → Manage Libraries، عبارت RF24 را جستجو کرده و RF24 by TMRh20 را نصب کنید.

U8g2 (برای OLED)

U8g2 by olikraus را نصب کنید.

WiFiManager (برای مدیریت وای‌فای)

WiFiManager by tzapu را نصب کنید.

توجه

کتابخانه‌های SPI و Wire به‌صورت پیش‌فرض در Arduino IDE نصب هستند و نیازی به نصب جداگانه ندارند.

اتصال صحیح قطعات، پایه و اساس هر پروژه الکترونیکی است. در این بخش، نقشه اتصال ESP32 به سه ماژول NRF24 را ارائه می‌دهیم.

پایه ESP32پایه NRF24توضیح
۳.۳ ولت (منبع جداگانه)VCCتغذیه مثبت (از رگولاتور جداگانه)
GNDGNDزمین مشترک
GPIO 18SCKخط کلاک SPI (مشترک)
GPIO 19MISOMaster In Slave Out (مشترک)
GPIO 23MOSIMaster Out Slave In (مشترک)

پایه‌های اختصاصی (CE و CSN)

ماژولCE (به ESP32)CSN (به ESP32)
NRF1GPIO 16GPIO 15
NRF2GPIO 22GPIO 21
NRF3GPIO 4GPIO 2
خازن — ضروری

یک خازن ۱۰ تا ۱۰۰ میکروفاراد بین VCC و GND هر ماژول NRF24 (نزدیک به خود ماژول) نصب کنید.

پس از اتصال قطعات، نوبت به تست سلامت مدار می‌رسد. از مثال GettingStarted کتابخانه RF24 استفاده کنید.

باز کردن مثال

از منوی File → Examples → RF24 → GettingStarted را انتخاب کنید.

تنظیم پین‌ها

// تنظیم پین‌ها برای اتصالات شما #define CE_PIN 16 #define CSN_PIN 15

آپلود و مشاهده خروجی

کد را آپلود کرده و Serial Monitor را با نرخ باد ۹۶۰۰ باز کنید. اگر پیام "RF24 connected" دیدید، ماژول به درستی کار می‌کند.

تبریک

موفقیت در این مرحله به معنای تکمیل فاز اول پروژه است.

رایج‌ترین مشکلات فاز اول و راه‌حل‌های آنها:

مشکلراه‌حل
NRF24 شناسایی نمی‌شود خازن ۱۰-۱۰۰µF بین VCC و GND نصب شده است؟ تغذیه ۳.۳ ولت را با مولتی‌متر اندازه بگیرید. پایه‌های CE و CSN را بررسی کنید.
در Serial Monitor خطای کامپایل می‌آید کتابخانه RF24 را نصب کرده‌اید؟ برد ESP32 Dev Module را انتخاب کنید.
خروجی Serial Monitor خالی است نرخ باد را روی ۹۶۰۰ تنظیم کنید. دکمه EN را فشار دهید.

OLED به عنوان نمایشگر پروژه عمل می‌کند و دکمه‌ها امکان تعامل کاربر را فراهم می‌کنند.

نقشه اتصال OLED

پایه OLEDپایه ESP32
VCC۳.۳ ولت
GNDGND
SCLGPIO 22
SDAGPIO 21

نقشه اتصال دکمه‌ها

دکمهیک پایه به ESP32پایه دیگر به GND
چپ (L)GPIO 27GND
راست (R)GPIO 25GND
وسط (S)GPIO 26GND
نکته

پایه‌های دکمه‌ها به صورت INPUT_PULLUP در کد تنظیم می‌شوند، بنابراین نیازی به مقاومت خارجی نیست.

برای تست OLED از کد نمونه کتابخانه U8g2 استفاده کنید.

// کد تست OLED #include <U8g2lib.h> #include <Wire.h> U8G2_SSD1306_128X64_NONAME_1_HW_I2C u8g2(U8G2_R0, U8X8_PIN_NONE); void setup() { u8g2.begin(); u8g2.setFont(u8g2_font_ncenB08_tr); u8g2.firstPage(); do { u8g2.drawStr(10, 20, "مارشال"); } while ( u8g2.nextPage() ); } void loop() {}
نکته

اگر OLED کار نکرد، آدرس I2C را در کد به 0x3D تغییر دهید.

پس از اتصال دکمه‌ها، کد زیر را برای تست آنها آپلود کنید.

int btnL = 27, btnR = 25, btnS = 26; void setup() { Serial.begin(115200); pinMode(btnL, INPUT_PULLUP); pinMode(btnR, INPUT_PULLUP); pinMode(btnS, INPUT_PULLUP); } void loop() { if (digitalRead(btnL) == LOW) Serial.println("چپ"); if (digitalRead(btnR) == LOW) Serial.println("راست"); if (digitalRead(btnS) == LOW) Serial.println("وسط"); delay(200); }

با فشار دادن هر دکمه، پیام مربوطه در Serial Monitor نمایش داده می‌شود.

فریم‌ور نهایی پروژه مارشال را از مخزن گیت‌هاب دانلود کرده و روی ESP32 آپلود کنید.

مراحل آپلود

  1. مخزن پروژه را از گیت‌هاب دانلود کنید.
  2. فایل Marshall.ino را در Arduino IDE باز کنید.
  3. فایل config.h را بررسی کنید و مطمئن شوید پین‌ها با اتصالات شما هماهنگ است.
  4. برد ESP32 Dev Module را انتخاب کرده و کد را آپلود کنید.
پس از آپلود

OLED منوی اصلی مارشال را نمایش می‌دهد. با دکمه‌ها می‌توانید بین مودها حرکت کنید و با دکمه وسط، وضعیت را فعال/غیرفعال کنید.

مشکلات رایج فاز دوم و راه‌حل‌های آنها:

مشکلراه‌حل
OLED روشن نمی‌شود اتصالات SDA/SCL را بررسی کنید. آدرس I2C را در کد از 0x3C به 0x3D تغییر دهید.
دکمه‌ها کار نمی‌کنند اتصالات GPIO به GND را بررسی کنید. مطمئن شوید در کد از INPUT_PULLUP استفاده کرده‌اید.
فریم‌ور آپلود نمی‌شود دکمه BOOT را نگه دارید و EN را بزنید تا برد وارد حالت Download شود. پورت COM صحیح را انتخاب کنید.

پروژه مارشال دارای یک وب‌اینترفیس کامل و قدرتمند است که امکان کنترل دستگاه از طریق مرورگر را فراهم می‌کند.

ویژگی‌های وب‌اینترفیس

  • نمایش وضعیت: نشان دادن ACTIVE/DEACTIVE با رنگ‌های سبز و قرمز.
  • نمایش مود فعال: نمایش نام مود انتخاب‌شده با آیکون.
  • دکمه‌های کنترل: فعال/غیرفعال، مود بعد، مود قبل.
  • منوی کشویی مودها: انتخاب مستقیم هر یک از ۹ حالت.
  • به‌روزرسانی خودکار: وضعیت هر ۲ ثانیه به‌روز می‌شود.
  • طراحی واکنش‌گرا: نمایش بهینه روی موبایل، تبلت و دسکتاپ.
دسترسی

پس از روشن شدن دستگاه، یک شبکه وای‌فای با نام Marshall_Network و رمز secure123 ایجاد می‌شود. با اتصال به آن و باز کردن آدرس 192.168.4.1، صفحه کنترل باز می‌شود.

شما می‌توانید تنظیمات شبکه مدیریتی دستگاه را در کد تغییر دهید.

تغییر نام و رمز شبکه

در فایل Marshall.ino، این دو خط را پیدا کنید:

const char* AP_SSID = "Marshall_Network"; const char* AP_PASS = "secure123";

مقادیر را به دلخواه تغییر دهید و دوباره کد را آپلود کنید.

تغییر آدرس IP

آدرس IP پیش‌فرض 192.168.4.1 است. برای تغییر آن، می‌توانید از کتابخانه WiFiManager استفاده کنید.

برای کنترل دستگاه از راه دور، کافی است به شبکه مدیریتی متصل شده و از وب‌اینترفیس استفاده کنید.

مراحل اتصال

  1. دستگاه را روشن کنید.
  2. با گوشی یا لپ‌تاپ، به شبکه Marshall_Network با رمز secure123 متصل شوید.
  3. مرورگر را باز کرده و آدرس http://192.168.4.1 را وارد کنید.
  4. صفحه کنترل مارشال باز می‌شود.
نکته مهم

این شبکه محلی است و به اینترنت متصل نیست. فقط دستگاه‌هایی که به این شبکه متصل هستند، می‌توانند دستگاه را کنترل کنند.

وب‌اینترفیس مارشال امکان کنترل کامل دستگاه را فراهم می‌کند.

دکمه‌های کنترل

  • فعال/غیرفعال: شروع یا توقف عملیات جمینگ.
  • مود بعد / مود قبل: چرخش بین ۹ مود مختلف.
  • منوی کشویی: انتخاب مستقیم هر مود.

نمایش وضعیت

وضعیت فعلی (ACTIVE/DEACTIVE) و مود فعال به صورت لحظه‌ای نمایش داده می‌شوند و هر ۲ ثانیه به‌روز می‌شوند.

می‌توانید ظاهر منوی OLED را به دلخواه تغییر دهید.

تغییر نام نمایشی

در فایل Marshall.ino، تابع drawHeaderBar() را پیدا کنید و خط زیر را تغییر دهید:

u8g2.drawStr(PAD, TXT_Y, "MARSHAL");

"MARSHAL" را با نام دلخواه خود جایگزین کنید.

تغییر آیکون مودهای خاص

در تابع drawCardAtCenter()، بخش آیکون‌ها را می‌توانید شخصی‌سازی کنید.

مشکلات پیشرفته‌تر و راه‌حل‌های آنها:

مشکلراه‌حل
وب‌سرور باز نمی‌شود آدرس IP را دقیقاً وارد کنید. مطمئن شوید به شبکه Marshall_Network متصل هستید. فایروال را موقتاً غیرفعال کنید.
برد به طور مداوم ریست می‌شود تغذیه را تقویت کنید (از آداپتور ۲ آمپر استفاده کنید). یک خازن ۱۰۰۰µF به ورودی برق اضافه کنید.
OLED اطلاعات را به‌روز نمی‌کند اتصالات I2C را بررسی کنید. ممکن است نویز باعث قطع ارتباط شود.
ماژول‌های NRF24 شناسایی نمی‌شوند تغذیه جداگانه را بررسی کنید. خازن‌ها را نزدیک به ماژول‌ها نصب کنید.

در بازار امروز، ابزارهای متنوعی برای تست و تحلیل سیگنال‌های رادیویی وجود دارد. در این بخش، پروژه مارشال را با سه ابزار محبوب مقایسه می‌کنیم.

Flipper Zero

یک ابزار همه‌کاره برای تست امنیت فیزیکی است که از RFID، Infrared و Sub-GHz پشتیبانی می‌کند. اما در باند ۲.۴ گیگاهرتز، قدرت و انعطاف‌پذیری مارشال را ندارد.

HackRF

یک SDR حرفه‌ای با قیمت بالا (چند صد دلار) که نیاز به دانش تخصصی دارد. مارشال با هزینه‌ای حدود ۵۰ دلار، یک ابزار تخصصی برای باند ۲.۴ گیگاهرتز است.

RTL-SDR

یک گیرنده SDR ارزان‌قیمت (حدود ۳۰ دلار) که توانایی ارسال ندارد. مارشال هم ارسال و هم دریافت را پوشش می‌دهد.

جایگاه پروژه مارشال

مارشال با هزینه‌ای حدود ۵۰ دلار، یک ابزار تخصصی برای باند ۲.۴ گیگاهرتز است که هم قدرت ارسال بالایی دارد، هم کنترل از راه‌دور، هم کاملاً آموزشی است و هم کد آن قابل شخصی‌سازی است.

سوال ۱: آیا می‌توانم از ماژول NRF24 معمولی استفاده کنم؟

خیر، مدل معمولی (بدون PA+LNA) برد بسیار کمی دارد و برای این پروژه قابل استفاده نیست.

سوال ۲: چرا OLED من کار نمی‌کند؟

اتصالات SDA/SCL را بررسی کنید. آدرس I2C را در کد از 0x3C به 0x3D تغییر دهید.

سوال ۳: چرا وب‌سرور باز نمی‌شود؟

به شبکه Marshall_Network متصل شوید و آدرس 192.168.4.1 را وارد کنید. فایروال را موقتاً غیرفعال کنید.

سوال ۴: فریم‌ور روی ESP32 آپلود نمی‌شود؟

دکمه BOOT را نگه دارید، EN را بزنید و رها کنید، سپس BOOT را رها کنید. پورت COM صحیح را انتخاب کنید.

سوال ۵: آیا می‌توان از این پروژه برای اهداف غیرآموزشی استفاده کرد؟

خیر. این پروژه صرفاً برای اهداف آموزشی و تست امنیتی در محیط‌های کنترل‌شده طراحی شده است.

پس از تکمیل پروژه مارشال، می‌توانید پروژه‌های زیر را دنبال کنید:

سطح مبتدی

  • کنترل LED با ESP32 از طریق وب: یک وب‌سرور ساده روی ESP32 راه‌اندازی کنید.
  • ساخت فرستنده دما و رطوبت بی‌سیم: با ESP32 و NRF24 داده‌ها را به صورت بی‌سیم ارسال کنید.

سطح متوسط

  • سیستم هشداردهنده بی‌سیم: با سنسورهای PIR و NRF24 یک سیستم امنیتی بسازید.
  • کنترل رباتیک با ESP32 و NRF24: یک ربات ساده را از راه دور کنترل کنید.

سطح پیشرفته

  • طراحی شبکه مش (Mesh Network): چندین ESP32 را به صورت مش به هم متصل کنید.
  • پیاده‌سازی پروتکل MQTT: داده‌ها را به یک سرور مرکزی ارسال کنید.
مسیر پیشنهادی

پیشنهاد می‌کنم به ترتیب مبتدی → متوسط → پیشرفته پیش بروید. هر پروژه، دانش جدیدی به شما اضافه می‌کند.

سلام! من لیو (Leo) هستم، یک توسعه‌دهنده بک‌اند با بیش از ۴ سال تجربه حرفه‌ای و علاقه‌مند به حوزه امنیت سایبری و الکترونیک. این پروژه حاصل تجربیات و علاقه من به دنیای ارتباطات بی‌سیم است.

هدف من از نوشتن این کتاب، کمک به علاقه‌مندان حوزه امنیت و شبکه است تا با یک پروژه عملی، درک بهتری از آسیب‌پذیری‌های شبکه‌های بی‌سیم پیدا کنند.

راه‌های ارتباط با من

از اینکه این کتاب را تا انتها همراهی کردید، صمیمانه سپاسگزارم. امیدوارم که مطالب آن برای شما مفید بوده باشد و بتوانید از دانش کسب‌شده در پروژه‌های آینده خود استفاده کنید.

اگر این کتاب برای شما مفید بود، لطفاً آن را با دوستان خود به اشتراک بگذارید. همچنین، از شما دعوت می‌کنم که در پروژه‌های آینده من مشارکت کنید.

حمایت از تولید محتوا

اگر از محتوای من
لذت می‌برید

با یک قهوه ☕ از من حمایت کنید تا
بتوانم محتوای باکیفیت‌تری تولید کنم.

تبریک! شما یک پروژه جامع و پیشرفته را از صفر تا صد تکمیل کردید. در این مسیر، با مفاهیم کلیدی الکترونیک، برنامه‌نویسی و شبکه آشنا شدید و یک دستگاه کاربردی ساختید.

مرور دستاوردها

  • پروتکل‌های ارتباطی: کار با SPI و I2C را به صورت عملی تجربه کردید.
  • سخت‌افزار: با قطعات مختلف و نحوه تغذیه و سیم‌بندی آنها آشنا شدید.
  • نرم‌افزار: با Arduino IDE، نصب کتابخانه‌ها و آپلود فریم‌ور مسلط شدید.
  • شبکه: یک وب‌سرور راه‌اندازی کرده و دستگاه را از طریق وای‌فای کنترل کردید.

منابع تکمیلی

تأکید بر نکات اخلاقی

از دانش و ابزاری که به دست آورده‌اید، فقط برای اهداف آموزشی و تست امنیتی در محیط‌های مجاز استفاده کنید. هرگونه کاربرد مخرب، مسئولیت قانونی و اخلاقی دارد.

موفق و پیروز باشید

مارشال — سفر شما در دنیای امنیت بی‌سیم آغاز شده است.