Heltec V.2 LoRa TX,RX ด้วย MicroPython

Somsak Lima
2 min readSep 27, 2024

--

ขอเน้นว่าเป็น LoRa ไม่ใช่ LoRaWAN เอาไว้ทดสอบ Board Heltec ด้วยการส่งคลื่น LoRa แบบง่ายๆ

ให้ Copy ไฟล์ทั้งหมดจาก https://github.com/readcoil/heltec-lora-micropython ให้แก้ความถี่ในไฟล์ Config.py เป็น 923E6

Heltec LoRa V.2 ใช้ Chip LoRa ของ Semtech เบอร์ SX1276

Pin ที่ใช้กับ Heltec LoRa V.2

    'miso':19,
'mosi':27,
'ss':18,
'sck':5,
'dio_0':26,
'reset':14,
'led':25,

แล้วใว่ใน Heltec สองตัว

ตัวอย่างไฟล์ทั้งหมดบน Heltec หลังจาก Copy ลงไปแล้ว

ตัวแรก

#import LoRaDuplexCallback
#import LoRaPingPong
#import LoRaSender
from examples import LoRaSender
from examples import LoRaReceiver

from config import *
from machine import Pin, SoftSPI
from sx127x import SX127x

device_spi = SoftSPI(baudrate = 10000000,
polarity = 0, phase = 0, bits = 8, firstbit = SoftSPI.MSB,
sck = Pin(device_config['sck'], Pin.OUT, Pin.PULL_DOWN),
mosi = Pin(device_config['mosi'], Pin.OUT, Pin.PULL_UP),
miso = Pin(device_config['miso'], Pin.IN, Pin.PULL_UP))

lora = SX127x(device_spi, pins=device_config, parameters=lora_parameters)

#example = 'sender'
example = 'receiver'

if __name__ == '__main__':
if example == 'sender':
LoRaSender.send(lora)
if example == 'receiver':
LoRaReceiver.receive(lora)

ตรง Example เอา # หน้า receiver ออก จะเป็นตัวรับ

ตอน run จะมีการ test หน้าจอ OLED และจะไปหยุดหน้าจอมืดๆ

Heltec อีกตัวให้ เอา # หน้า sender ออก

เมื่อ Run ตัว Sender จะเห็นตัวอย่างข้อความดังนี้ (จอ OLED จะไม่เห็นข้อความอะไร)

แล้วตัว Receiver เมื่อรับได้ Led สีขาวที่ตัวรับจะกระพริบ จะเห็นข้อความ

pkt: b’Hello (0)

ที่ส่งมาและตัวเลขในวงเล็บจะขึ้นไปเรื่อยๆ ตาม Packet ที่รับได้

มีอีก Lib Download ได้ที่ https://github.com/readcoil/heltec-lora-micropython

ใน Main ตั้งได้ 3 Mode คือ sensor, relay, gateway (# ข้างหลังดูแล้วอาจจะสับสนได)้

node = "gateway" #sender/relay/gateway

--

--

Somsak Lima
Somsak Lima

Written by Somsak Lima

สนับสนุนและส่งเสริมให้ผู้สนใจสามารถใช้งานเทคโนโลยี LoRa และ LoRaWAN ได้ โดยนำความรู้ที่ได้ไปต่อยอดเพื่อใช้งาน

No responses yet