Hello, I am relatively new and have hesitated posted my questions in-case there already was an obvious answer. I have a project where we have an LoRaWAN end-node “B-L072Z-LRWAN1”, which transmits join requests (and data) towards a gateway, which is the SDR (USRP b210). Together, they communicate with a local python server that further goes to chirpstack-gateway-bridge and finally chirpstack. On LoRaWAN frames the join requests get spammed for an eternity without the node ever getting a join accept.
The issue is that we know that chirpstack returns a join accept because of the logs that chirpstack gives out:
Dec 10 16:06:07 asleirdal chirpstack[84434]:
2024-12-10T15:06:07.191753Z INFO up{deduplication_id=c9c6c6bf-75d9-4508-a229-1b5464070168}:
join_request{dev_eui="c10fa6f5f67a26fa"}:
chirpstack::storage::device_keys: Device-nonce validated, join-nonce incremented and stored
dev_eui=c10fa6f5f67a26fa dev_nonce=59102
Dec 10 16:06:07 asleirdal chirpstack[84434]:
2024-12-10T15:06:07.192354Z INFO up{deduplication_id=c9c6c6bf-75d9-4508-a229-1b5464070168}:
join_request{dev_eui="c10fa6f5f67a26fa"}:
chirpstack::storage::device_queue: Device queue flushed
dev_eui=c10fa6f5f67a26fa count=0
Dec 10 16:06:07 asleirdal chirpstack[84434]:
2024-12-10T15:06:07.194416Z INFO up{deduplication_id=c9c6c6bf-75d9-4508-a229-1b5464070168}:
join_request{dev_eui="c10fa6f5f67a26fa"}:
chirpstack::storage::device: Device partially updated
dev_eui=c10fa6f5f67a26fa
Dec 10 16:06:07 asleirdal chirpstack[84434]:
2024-12-10T15:06:07.194744Z INFO up{deduplication_id=c9c6c6bf-75d9-4508-a229-1b5464070168}:
join_request{dev_eui="c10fa6f5f67a26fa"}:
join_accept{downlink_id=3896532843}:
chirpstack::storage::downlink_frame: Downlink-frame saved
downlink_id=3896532843
Dec 10 16:06:07 asleirdal chirpstack[84434]:
2024-12-10T15:06:07.194898Z INFO up{deduplication_id=c9c6c6bf-75d9-4508-a229-1b5464070168}:
join_request{dev_eui="c10fa6f5f67a26fa"}:
join_accept{downlink_id=3896532843}:
chirpstack::gateway::backend::mqtt: Sending downlink frame
region_id=eu868 gateway_id=5680ea3344aeda16
topic=eu868/gateway/5680ea3344aeda16/command/down json=false
Dec 10 16:06:07 asleirdal chirpstack[84434]:
2024-12-10T15:06:07.195442Z INFO chirpstack::integration::mqtt: Publishing event
topic=application/678ae5f3-9e8f-48b6-b687-5ce0f4c6af20/device/c10fa6f5f67a26fa/event/join
It sends a downlink frame, which is handled by the python server, which is pulled with zmq to the SDR, where it finally broadcasts it to the sink with this setup:
And I can see the frames being visible on the waterfall sink, and ive tried a lot of different settings from sample rate, gain to the settings from the SDR itself. But I wonder if there is something more obvious to your eyes than mine that might be the issue, I am very new to this, but we do think we have set up Chirpstack correctly, and that the final part where it is supposed to accept the join request is where it fails.
And we also do think we hit the receive window, and tried adjusting it up and down. It basically starts transmitting around the time the receive window opens up (in which is ~0.2 seconds).
(ignore the frequency numbers, they are not the real values of the frequency itself)
I apologize if this has been asked to death, but I am at my wits end and been searching and trying out different solutions for ages without coming any further. Is there any suggestions on what I should try next (if I haven’t already), I appreciate any thoughts that are given and understand if its too big of a mess to dive into to figure out the real issues. Thank you very much.