ข้ามไปที่เนื้อหา

Genesis Core: Hardware Reflex Layer Protocol (v1.0)

📡 ภาพรวม (Overview)

เอกสารนี้กำหนดมาตรฐานการสื่อสารระหว่าง Genesis Core (AI) และ Physical Robot Body (ESP32) โดยมีเป้าหมายเพื่อแยก "สัญชาตญาณ" (Reflexes) ออกจาก "ความนึกคิด" (AI Decisions)

  • โปรโตคอล: Socket.IO (v4.x) ผ่าน WiFi
  • การขนส่งข้อมูล: Websockets (แนะนำ) / Polling
  • การยืนยันตัวตน: พารามิเตอร์ token ใน query หรือ Auth Object

🔐 การเชื่อมต่อ (Connection Handshake)

Endpoint: http://<GENESIS_IP>:8000 Auth: ต้องระบุ GHOST_SECRET (ค่าเริ่มต้น: GHOST_99_ALPHA)

ตัวอย่างการเชื่อมต่อ (Arduino/C++)

socket.begin("192.168.1.X", 8000, "/socket.io/?transport=websocket&token=GHOST_99_ALPHA");

📤 เหตุการณ์ขาออก (ESP32 -> Genesis)

1. telemetry (Heartbeat)

ส่งทุกๆ 2-5 วินาทีเพื่ออัปเดตสถานะ

{
  "dashboard_id": "8",         // อัตลักษณ์
  "battery": 85,               // เปอร์เซ็นต์ (ส่งผลต่อพลังงาน AI)
  "wifi_signal": -60,          // dBm
  "status": "IDLE"             // สถานะดิบ
}
ผลลัพธ์: อัปเดตหน้า Dashboard และสถานะการรับรู้ภายในของ AI (Energy)

2. reflex (การตอบสนองทันที)

ส่ง ทันที เมื่อเซนเซอร์ตรวจพบค่าที่กำหนด (เช่น สิ่งกีดขวาง < 30 ซม.)

{
  "dashboard_id": "8",
  "reflex": "OBSTACLE_DETECTED", // ประเภทของการกระตุ้น
  "sensor": "ULTRASONIC_FRONT",
  "distance": 15,                // ค่าที่กระตุ้นการตอบสนอง
  "action_taken": "STOP"         // การดำเนินการอัตโนมัติโดย ESP32 (ถ้ามี)
}
ผลลัพธ์: - ปลุก AI จากโหมดหลับ [ZZZ] - ตั้งค่าอารมณ์เป็น ALERT - บันทึก "Reflex Log" ทันทีใน Hub


📥 เหตุการณ์ขาเข้า (Genesis -> ESP32)

1. robot_command (คำสั่งจาก AI)

คำสั่งที่สร้างโดย LLM ตามการใช้เหตุผลระดับสูง

{
  "action": "FORWARD",  // FORWARD, BACKWARD, LEFT, RIGHT, STOP, SCAN
  "speed": 200,         // 0-255 (ระบุหรือไม่ก็ได้)
  "duration": 1000      // มิลลิวินาที (ระบุหรือไม่ก็ได้)
}

2. set_state (บังคับสถานะ)

ใช้สำหรับเขียนทับการตั้งค่าฮาร์ดแวร์

{
  "mode": "STEALTH",    // NORMAL, STEALTH, TURBO
  "led_color": "#ff0000"
}


⚡ ตรรกะพลังงานและการหลับ (Energy & Sleep Logic)

  • แบตเตอรี่ < 10%: ESP32 จะส่ง telemetry ช้าลงเพื่อประหยัดพลังงาน
  • Genesis Sleep [ZZZ]: ESP32 ยังคงทำงานตามปกติ แต่รับรู้ว่า AI ออฟไลน์อยู่
  • การปลุก (Wake Up): เหตุการณ์ reflex ใดๆ ที่ส่งจาก ESP32 จะบังคับให้ Genesis Core ตื่นขึ้น