-
确认TTN应用中的计数器是否正确设置。
-
确认Pycom Lopy4设备是否正确配置,并已成功连接到TTN。
-
使用以下代码示例,将计数器值设置为0,并将其发送到TTN:
from network import LoRa
import socket
import time
# Initialize LoRa in LORAWAN mode.
lora = LoRa(mode=LoRa.LORAWAN)
# create an ABP authentication params
dev_addr = struct.unpack(">l", bytes([0x00, 0x00, 0x00, 0x01]))[0]
nwk_swkey = bytes([0x01, 0x23, 0x45, 0x67, 0x89, 0xAB, 0xCD, 0xEF, 0x01, 0x23, 0x45, 0x67, 0x89, 0xAB, 0xCD, 0xEF])
app_swkey = bytes([0x01, 0x23, 0x45, 0x67, 0x89, 0xAB, 0xCD, 0xEF, 0x01, 0x23, 0x45, 0x67, 0x89, 0xAB, 0xCD, 0xEF])
# join a network using ABP (Activation By Personalization)
lora.join(activation=LoRa.ABP, auth=(dev_addr, nwk_swkey, app_swkey))
# wait until the module has joined the network
while not lora.has_joined():
time.sleep(2.5)
print("Not yet joined...")
# create a LoRa socket
s = socket.socket(socket.AF_LORA, socket.SOCK_RAW)
# set the LoRaWAN data rate
s.setsockopt(socket.SOL_LORA, socket.SO_DR, 5)
# make the socket blocking
s.setblocking(False)
# set the value of the uplink frame counter to 0
s.setsockopt(socket.SOL_LORA, socket.SO_DR, bytearray([0x00, 0x00]))
# send the data to TTN
s.send(b"Hello, World!")
- 检查TTN中的计数器值是否已重新设置为0。如果是,问题已解决;否则,请联系TTN支持团队进行更进一步的详细排查。