我正在尝试使用 Waveshare SX1262 LoRa hat 制作 Raspberry PICO,以将 LoRa 消息发送到也使用 Waveshare sx1262 LoRa Hat 的 Raspberry Pi。
两种设备的无线电配置不同,我无法在 RPI 中看到 PICO 发送的任何消息。
2 个 PICO 之间可以进行通信,2 个 RPI 之间也可以使用 LoRa 协议进行通信,但不同设备之间不能进行通信。
初始化选项非常不同,我想知道应该使用哪些选项......
Raspberry PICO 配置(使用 https://github.com/ehong-tl/micropySX126X 代码)
sx.begin(freq=923, bw=500.0, sf=12, cr=8, syncWord=0x12,
power=-5, currentLimit=60.0, preambleLength=8,
implicit=False, implicitLen=0xFF,
crcOn=True, txIq=False, rxIq=False,
tcxoVoltage=1.7, useRegulatorLDO=False, blocking=True)
Raspberry Pi 配置(使用 https://www.waveshare.net/w/upload/6/68/SX126X_LoRa_HAT_Code.zip 代码)
node = sx126x.sx126x(serial_num = "/dev/ttyS0",freq=923,addr=101,power=22,rssi=True)
AIR_SPEED = 2400
PACKAGE_SIZE = 240 Bytes
虽然芯片相同,但配置方式却大不相同。
知道如何让两个设备进行通信吗?
提前致谢!
那是因为RPi固件很奇怪,亿字节E22芯片更奇怪。他们生产的这些托管芯片不会发送 LoRa 数据包,并且与常规 LoRa 模块不兼容。
看初始化代码:
node = sx126x.sx126x(serial_num = "/dev/ttyS0", freq=868, addr=0, power=22, rssi=True, air_speed=2400, relay=False)
air_speed=2400参数绝对不是LoRa参数(另一方面LoRa SF和BW参数不存在),因为芯片处于FSK/OOK模式,而不是LoRa模式。它是 RegBitrateMsb/RegBitrateLsb 寄存器,0x02/0x03。所以 RPi hat 绝对无法与普通 LoRa 模块通信,除非您绕过 UART 管理,并将其重新接线为 SPI。
你能让他们沟通吗?