LoPy4 class C node receives downlinks only on 869.525 MHz. How to change that?


I have a pycom LoPy4 device where I run ABP LoraWAN Class C node. I noticed that it can receive downlinks only on 869.525 MHz frequency.

When I change RX2 frequency to another value (both on the ChirpStack device profile and in the chirpstack-network-server.toml configuration file) my LoRaWAN gateway (it’s also LoPy4 running pycom nanogateway code) generates a downlink with the new frequency, but I can’t see those downlinks on my LoRaWAN node. Would appreciate if you have any suggestions on how to solve that issue.



I’m not sure about class C, but you can try this:

  1. Start with 869.525 and make sure the device is receiving downlinks. I would suggest using LoRaWAN frames log for this
  2. Change RX2 frequency in .toml file only (leave 869525000 in device profile) and restart chirpstack-network-server
  3. Send downlink to device
  4. Check the downlink frame log and response from device if possible

This way the server should send new RX2 channel config in downlink frame (point 3) but thing is it should send it on the original RX2 frequency, so the device can receive it. Then the device should accept new config and start receving on new frequency while the server will send next downlink on new frequency too.
Ideally the device should send and uplink with new channel config confirmation.

But again, I know this works for class A device and I did not test any C class at all.