กลับไปหน้ารวมไฟล์
lora-e5-mini-tutorial-747444.md

ได้บอร์ด STM32 LoRa ตัวเทพมาครับ ปรากฎว่ามันเชื่อมกับ TTN ง่ายซะจนผมต้องทำคลิปสอนสั้นๆลง YouTube เลย

ง่ายมากเลย หวังว่าน้องๆจะชอบนะ!

Extreme Range Endpoints: มาดูสถาปัตยกรรมของ Seeed LoRa-E5 Mini กัน

Wi-Fi แบบเดิมๆเนี่ย พอเลย 50 เมตรไปก็แทบจะใช้การไม่ได้แล้ว ส่วนเครือข่าย Cellular ทั่วไปก็ต้องจ่ายค่าซิมรายเดือนแบบเจ็บปวด! LoRa-E5 mini ตัวนี้มาทำลายข้อจำกัดเรื่องการส่งข้อมูลระยะไกลให้แหลก ด้วยการใช้โปรโตคอล LoRaWAN (Long Range Wide Area Network)! มันทำงานบนแถบความถี่ Industrial/Scientific/Medical (ISM) ที่ต่ำมาก (เช่น 868MHz EU / 915MHz US) สถาปัตยกรรมขั้นสูงสุดๆนี้ขับเคลื่อนด้วยชิป STM32WLE5JC แบบโมโนลิธิค! โดยให้ Arduino ทำหน้าที่เป็น Master สั่งงาน SoC ของ LoRa-E5 ผ่าน UART Serial ด้วย AT-Commands ง่ายๆ เพื่อให้มันจัดการการส่งสัญญาณแบบ Chirp-Spread-Spectrum ที่โคตรจะซับซ้อนและมีการเข้ารหัส พร้อมยิงค่าจากเซนเซอร์ไปไกลถึง 5 กิโลเมตรทะลุผ่านแม้แต่ป่าทึบ ตรงเข้าไปยัง The Things Network (TTN) ได้เลย!

Serial AT-Command Execution Pipeline

LoRa-E5 ตัวนี้จัดการเรื่อง Nightmare อย่างการ Handshake แบบ LoRaWAN ที่มีการเข้ารหัส AES-128 ได้เองอัตโนมัติบน ARM Cortex-M4 ข้างใน! Arduino แค่คอยกำกับมันโดยส่งสตริงคำสั่งเฉพาะไป!

  1. Arduino คุยกับ E5 mini ผ่าน Hardware หรือ Software Serial
  2. ส่งคำสั่งเริ่มต้นที่ขาดไม่ได้คือ AT+JOIN (Over The Air Activation - OTAA)
  3. โมดูลจะทำการยืนยันตัวตนด้วย Hash ที่เข้ารหัสกับ Gateway ของ TTN แบบเงียบๆ (แต่จริงๆแล้วมันดุมาก)
  4. ถ้าผ่าน Arduino ก็สามารถยิงข้อมูล Hex ดิบๆ ตรงๆ ด้วยคำสั่ง AT+CMSGHEX=... ได้เลย
#include <SoftwareSerial.h>
SoftwareSerial LoRaSerial(2, 3); // TX, RX Interface!

void setup() {
  Serial.begin(9600);
  LoRaSerial.begin(9600); // Boot the E5-Mini UART matrix!
  
  // Set the specific cryptographic LoRaWAN AppEUI / DevEUI Keys!
  LoRaSerial.println("AT+ID=AppEui,\"0102030405060708\"");
  delay(100);
  LoRaSerial.println("AT+KEY=APPKEY,\"01010101010101010101010101010101\"");
  
  // Violently demand an OTAA Gateway Join handshake!
  LoRaSerial.println("AT+JOIN"); 
  delay(5000); // It takes seconds for RF waves to travel to the Gateway and back!
}

void loop() {
  // Blast Hexadecimal representation of "Temperature: 28" (0x1C) over 5 Kilometers!
  LoRaSerial.println("AT+CMSGHEX=1C"); 
  delay(60000); // 1-minute deep sleep constraints specifically for regional Duty-Cycle Laws!
}

LoRaWAN The Things Network (TTN) Cloud Dashboarding

รู้มั้ยว่าน้อง LoRa node มันไม่ได้คุยกันเองตรงๆ นะ! มันส่งสัญญาณไปหาโครงสร้างพื้นฐานระดับเมืองเลยต่างหาก!

  • สัญญาณ "ปิ๊ง" นี่บินไปไกลเป็นกิโลเมตร จนโดนสกัดกั้น (ในทางที่ดี) โดย The Things Network (TTN) LoRa Gateway สาธารณะ ที่มักจะติดตั้งอยู่บนตึกสูงๆ ในเมือง
  • จากนั้น Gateway ก็จะส่งข้อมูลที่เข้ารหัสแล้วต่อ ผ่านอินเทอร์เน็ตธรรมดา (ผ่านสายไฟเบอร์ออปติกนับไม่ถ้วน) ไปยังระบบคลาวด์
  • หน้าที่ของเราคือล็อกอินเข้า TTN Cloud Console ถอดรหัสข้อมูล AES payload แล้วก็โยนข้อมูลดิบๆ ผ่าน WebHook ตรงเข้าไปแสดงผลบนแดชบอร์ดสวยๆ ใน Ubidots หรือ Thingspeak ได้อย่างราบรื่น!

อุปกรณ์ขั้นสูงสำหรับ LPWAN Telemetry

  • Arduino Uno/Nano (หรือจะใช้ LoRa-E5 Mini แบบสแตนด์อโลนเลยก็ได้ โดยโปรแกรมลงไปที่ตัวประมวลผล STM32 ในตัวมันเองผ่าน STM32CubeIDE!)
  • บอร์ดพัฒนา Seeed Studio LoRa-E5 mini (เป็นโมดูลที่รับคำสั่ง AT command แบบเป๊ะๆ ได้มาตรฐานครบ!)
  • สายอากาศ (Antenna) ขนาดใหญ่ ความถี่ 915MHz / 868MHz (สำคัญมาก! ถ้าบูตโมดูลหรือส่งสัญญาณแรงๆ โดยที่ยังไม่ได้ต่อสายอากาศให้แน่นหนา วงจรขยายสัญญาณ RF ด้านในอาจไหม้ได้ในทันที!)
  • บัญชี TTN หรือ Helium Carrier ที่เปิดใช้งานแล้ว (เอาไว้ตั้งค่า cryptographic parameters สำคัญอย่าง Application EUI กับ Device EUI ให้ลงตัว!)

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

apps:
  - "1x WCHSerialPort"
author: "cstram"
category: "Wireless & IoT"
components:
  - "1x LoRa-E5 mini"
description: "Ultra-long-range LPWAN telemetry! Eradicate cellular architecture costs completely by constructing a natively self-contained Seeed Studio LoRa-E5 endpoint, violently injecting low-power UART AT-Commands into macroscopic LoRaWAN terrestrial gateways."
difficulty: "Advanced"
documentationLinks: []
downloadableFiles: []
encryptedPayload: "U2FsdGVkX1+Qqe2Zgx6oNv4d0QmuXW3U8/itoW4aEmbq5RtwypT7lHjZrdaIB9z6cDGUnOgiIqkNV48BisaGcISEKnD2l0ri7gR30v5J+Zg="
heroImage: "https://cdn.jsdelivr.net/gh/bigboxthailand/arduino-assets@main/images/projects/lora-e5-mini-tutorial-747444_cover.jpg"
lang: "en"
likes: 0
passwordHash: "de54da438eca1c74cefe16d115d57a97f267a293a9b6b78bfb58647540b693c9"
price: 1999
seoDescription: "Learn how to connect the LoRa-E5 board to TheThingsNetwork (TTN) easily without writing any code. Simple step-by-step LoRa-E5 tutorial."
tags:
  - "stm32"
  - "stm"
  - "lorae5mini"
  - "lora"
title: "ติวติดตั้ง LoRa-E5 mini งานง่ายแต่หล่อ ส่งข้อมูลได้แบบเทพๆ"
tools: []
videoLinks:
  - "https://www.youtube.com/embed/L_acKpwNvnc"
views: 6101