มือถือเชื่อมต่อ ESP32 Bluetooth Ep.1 | โมดูล LED 8 bit


ESP 32 : WROOM-32 มี 30 pins
Module : LED 8 Bits


React-Native App


การต่อสายไฟ




อธิบายการเชื่อมต่อรับส่งข้อมูล BLE เบื้องต้น 

    การเชื่อมต่อ Bluetooth และรับส่งข้อมูลระหว่าง Smart Phone กับ ESP32
จะมีหลักๆ 2 ส่วน
1.Peripheral หรือ Server
2.Central หรือ Client

1.Peripheral จะเป็นอุปกรณ์ต่างๆ ในที่นี้ ESP32 ทำหน้าที่เป็น Peripheral
ESP32 จะมีการบรรจุ Service และ Characteristic ในส่วนที่เกี่ยวข้องกับงานนั้นๆ
2.Central จะเป็นตัวที่จะคอยค้นหาและเชื่อมต่อเพื่อรับหรือส่งข้อมูล ในที่นี้คือ Smart Phone
ขั้นตอนจะแบ่งเป็น 4 ขั้นตอนดังนี้
1.ESP32 จะเปิด Advertising และแนบข้อมูลที่เกี่ยวข้อง เช่น ชื่ออุปกรณ์ เพื่อให้ Smart Phone สามารถที่จะ Scan หาเจอ
2.Smart Phone ทำการ Scan จะพบอุปกรณ์ที่อยู่รอบ ๆ ว่ามีอุปกรณ์ใดบ้าง ในที่นี้จะเจอ ESP32 จะได้ข้อมูลชื่ออุปกรณ์ Address ความแรงสัญญาณ และรายละเอียดที่เกี่ยวข้องกับอุปกรณ์
3.Smart Phone ขอเชื่อมต่อ ESP32 
4.เมื่อเชื่อมต่อได้แล้ว Smart Phone จะขอข้อมูล Service จาก ESP32 ใน Service จะประกอบไฟด้วย Characteristic ซึ่งเป็นคุณลักษณะข้อมูลต่างๆ ที่เกี่ยวข้องกับ Service
Service และ Characteristic จะใช้ UUID (Universally Unique Identifier) เพื่อบ่งบอกความเป็นตัวตนของข้อมูลนั้นๆ มีความยาว 128 บิต
5.ยกเลิกการเชื่อมต่อ เมื่อไม่ต้องการใช้งาน


Service และ Characteristic

    ในบทความนี้ ESP32 จะเชื่อมต่อกับของโมดูล LED 8 bits จะมี Service จำนวน 1 Service ใน Service จะครอบคลุมการอ่านเขียน LED ทั้ง 8 ดวง จะมี Characteristic จำนวน 9 Characteristic หรือหน่วยย่อยของข้อมูล คือ สามารถเข้าถึง LED1 ถึง LED8 และ Characteristic ที่ 9 คือ Status ข้อมูลล่าสุดของ LED ทั้ง 8 ดวง 
Service  และ Characteristic จะผูกกับหมายเลข UUID ดังนี้

ในบทความมี 1 Service คือ SERVICE_UUID_LED

ชื่อ Service

UUID

SERVICE_UUID_LED

4fafc201-1fb5-459e-8fcc-c5c9c331914b

แต่ละ TAG หมายเลข UUID จะไม่ซ้ำกันในคลิปนี้มี 9 Characteristic ดังตาราง


ชื่อ Characteristic

UUID

CHARACTERISTIC_UUID_LED1

beb5483e-36e1-4688-b7f5-ea07361b26a7

CHARACTERISTIC_UUID_LED2

beb5483e-36e1-4688-b7f5-ea07361b26a8

CHARACTERISTIC_UUID_LED3

beb5483e-36e1-4688-b7f5-ea07361b26a9

CHARACTERISTIC_UUID_LED4

beb5483e-36e1-4688-b7f5-ea07361b26aa

CHARACTERISTIC_UUID_LED5

beb5483e-36e1-4688-b7f5-ea07361b26ab

CHARACTERISTIC_UUID_LED6

beb5483e-36e1-4688-b7f5-ea07361b26ac

CHARACTERISTIC_UUID_LED7

beb5483e-36e1-4688-b7f5-ea07361b26ad

CHARACTERISTIC_UUID_LED8

beb5483e-36e1-4688-b7f5-ea07361b26ae

CHARACTERISTIC_UUID_LED_STATE

beb5483e-36e1-4688-b7f5-ea07361b26af

 







ความคิดเห็น

โพสต์ยอดนิยมจากบล็อกนี้

ESP32 กับ โมดูลวัดอุณหภูมิ DS18B20

ESP32 with HC-SR04 Ultrasonic