กลับไปหน้ารวมไฟล์
wifibox-packet-monitor-with-waterfall-plot-using-esp32-8483d7.md

🌟 เกี่ยวกับโปรเจกต์นี้

โปรเจกต์นี้คือการรับค่าการจราจรของสัญญาณในช่อง (Channel) ที่เรากำหนด ตั้งแต่ช่อง 1 ถึง 14 ด้วยความช่วยเหลือของ ESP32 และจอ TFT LCD จากนั้นก็เอามาแสดงผลแบบกราฟิกให้เห็นเลยว่าตอนไหนมี Traffic เข้ามาเยอะน้อยแค่ไหน โดยจะแสดงผลในรูปแบบ Waterfall Plot ที่ดูเท่ๆ ไปเลย

📷 ภาพประกอบ

🎯 ฟีเจอร์เด็ด

  • สแกนคลื่นความถี่ 2.4GHz ให้เห็นหมด
  • แพ็กเก็ตที่ได้รับจะถูกแสดงด้วย Waterfall Plot ดูแล้วเข้าใจง่ายสุดๆ
  • มีสิทธิ์เลือกช่องสัญญาณที่อยากดูได้จากทั้งหมด 14 ช่อง อยากดูช่องไหนก็กดเลย

🧰 เริ่มต้นกันเลย

เราใช้จอ TFT แบบ st7735 กับบอร์ด ESP32 ครับ และเพื่อความสะดวก เราเพิ่ม MicroSwitch เข้าไปด้วยเพื่อใช้สำหรับเปลี่ยนช่องสัญญาณ WiFi (802.11 channels) นั่นเอง

🔌 วงจรและการต่อสาย

ต่อสายให้ถูกต้องตามตารางและแผนภาพ Schematic ด้านล่างนี้เลยน้อง

  • การต่อระหว่าง ESP32 กับจอ st7735 TFT LCD
  • แผนภาพ Schematic ทั้งหมด

⚙️ การติดตั้ง

ก่อนจะอัปโหลดโค้ด ต้องติดตั้งบอร์ด ESP32 ใน Arduino IDE ของเราก่อนนะ

  • ใน Arduino IDE ไปที่ File > Preferences
  • วางลิงก์นี้ลงในช่อง Additional Boards Manager URLs แล้วกด "OK"
    https://dl.espressif.com/dl/package_esp32_index.json
    

จากนั้นก็ต้องติดตั้งไลบรารีที่จำเป็นใน Arduino IDE อีกนิดหน่อย ทำตามนี้เลย

  • ไปที่ Sketch > Include Library > Manage Libraries
  • ค้นหา Adafruit_ST7735
  • ติดตั้งไลบรารีนั้นซะ

👀 วิธีใช้งาน

หลังจากอัปโหลดโค้ดเสร็จแล้ว ตัว Packet Monitor จะแสดง Traffic ที่ได้รับมา ตามช่องสัญญาณที่เราเลือกไว้เลย หล่อเท่เลยงานนี้!

🔬 รายละเอียดทางเทคนิคเพิ่มเติม (แบบจัดเต็ม)

การวิเคราะห์สเปกตรัม 2.4GHz

WiFiBOX นี้คือเครื่องมือตรวจสอบเครือข่ายประสิทธิภาพสูง ที่ทำให้เห็นกิจกรรมของสัญญาณ WiFi รอบตัวแบบเรียลไทม์ ซึ่งปกติเรามองไม่เห็น

  • การจับแพ็กเก็ตในโหมด Promiscuous: ใช้ความสามารถ "Promiscuous Mode" ของ WiFi controller ใน ESP32 เฟิร์มแวร์ Arduino จะดักจับและแยกส่วนหัวของแพ็กเก็ต 802.11 ทุกแพ็กเก็ตในบริเวณนั้น โดยไม่จำเป็นต้องเชื่อมต่อกับ Access Point
  • หัวใจของการแสดงผล Waterfall: ข้อมูล (ความแรงสัญญาณ vs ความถี่) จะถูกเรนเดอร์เป็น "Waterfall Plot" ที่เลื่อนลงเรื่อยๆ บนจอ ST7789 หรือ ILI9341 Color TFT LCD ที่คมชัด สีร้อนๆ (แดง/เหลือง) บ่งบอกถึง Traffic สูง ทำให้เห็นภาพรวมของความแออัดในเครือข่ายได้ชัดเจน

ด้านวิศวกรรมฮาร์ดแวร์

  • ศูนย์ตรวจสอบแบบพกพา: ถูกบรรจุในเคสขนาดกะทัดรัด พร้อมระบบชาร์จแบตเตอรี่ลิเธียมในตัว ทำให้มันเป็นเครื่องมือพกพาระดับโปรสำหรับวิศวกรเครือข่ายและผู้เชี่ยวชาญด้าน IT โดยเฉพาะ

ข้อมูล Frontmatter ดั้งเดิม

title: "WiFiBOX - Packet Monitor with Waterfall Plot using ESP32"
description: "Packet Monitor with Waterfall Plot using ESP32"
author: "CiferTech"
category: ""
tags:
  - "arduino"
  - "wifibox"
  - "packet monitor"
  - "esp32"
views: 1439
likes: 0
price: 1499
difficulty: "Intermediate"
components:
  - "1x ESP32S"
  - "1x Arduino Nano R3"
  - "1x st7735 tft LCD"
tools: []
apps:
  - "1x Arduino IDE"
downloadableFiles:
  - "https://github.com/cifertech/WiFiBox"
documentationLinks: []
passwordHash: "dcdda94a0369b4e7a4d085d9376ef875c06c4da0161f14c2c7baf26505ec18d2"
encryptedPayload: "U2FsdGVkX18+wgvtl3F7FMcm9zSNC2jlHLKOzRrzUfv0fSY8sV5weK0z6WmPilr/MX/EgMAtVkwNZa40j/ovmj7s6P150WsjBRwCqFjIFRc="
seoDescription: "WiFiBOX: Packet Monitor with Waterfall Plot using ESP32. Real-time WiFi network packet monitoring and visualization project."
videoLinks:
  - "https://www.youtube.com/embed/v6ky2bvrTds"
heroImage: "https://cdn.jsdelivr.net/gh/bigboxthailand/arduino-assets@main/images/projects/wifibox-packet-monitor-with-waterfall-plot-using-esp32-8483d7_cover.jpg"
lang: "th"