Cannot send ACK from GW to endpoint when working as packet forwarder
Home › Forums › Conduit: mLinux Model › Cannot send ACK from GW to endpoint when working as packet forwarder
- This topic has 2 replies, 2 voices, and was last updated 7 years, 1 month ago by Kamil Gardziejczyk.
-
AuthorPosts
-
March 20, 2017 at 2:36 pm #17929Kamil GardziejczykParticipant
Hi,
In one of our projects we want to use Conduit as pocket forwarder for our custom LoRa server. Currently we are able to pass packet from end-device to server through GW, send ACK from server to GW. The problem is with ACK packet that needs to be sent from GW to end-point. We see on spectum analyzer that packet is not sent.
– Currently we operate only on one channel – 868.300 MHz (for upstream and downstream messages).
– Server is configured to not send PULL_ACKs to GW.Packet forwarder configuration:
{ "SX1301_conf": { "radio_0": { "enable": true, "freq": 867500000 }, "radio_1": { "enable": true, "freq": 868500000 }, "chan_multiSF_0": { "enable": true, "radio": 1, "if": -400000 }, "chan_multiSF_1": { "enable": true, "radio": 1, "if": -200000 }, "chan_multiSF_2": { "enable": true, "radio": 1, "if": 0 }, "chan_multiSF_3": { "enable": true, "radio": 0, "if": -400000 }, "chan_multiSF_4": { "enable": true, "radio": 0, "if": -200000 }, "chan_multiSF_5": { "enable": true, "radio": 0, "if": 0 }, "chan_multiSF_6": { "enable": true, "radio": 0, "if": 200000 }, "chan_multiSF_7": { "enable": true, "radio": 0, "if": 400000 }, "chan_Lora_std": { "enable": true, "radio": 1, "if": -200000, "bandwidth": 250000, "spread_factor": 7 }, "chan_FSK": { "enable": true, "radio": 1, "if": 300000, "datarate": 50000, "freq_deviation": 25000 } }, "gateway_conf": { "synch_word": 52, "forward_crc_disabled": false, "forward_crc_error": false, "forward_crc_valid": true, "gateway_ID" : "00:80:00:00:00:00:bf:a3", "keepalive_interval": 12, "push_timeout_ms": 120, "serv_port_down": 1682, "serv_port_up": 1680, "server_address": "our.network.server.com", "stat_interval": 20 } }
Example of sent packet to server and ACK received from server but not forwarded to endpoint. Data is captured using tcpdump on Conduit:
Send:
18:05:17.872973 IP 192.168.0.18.34330 > server.1680: UDP, length 308 E..P0.@.@.......4.>......<.u............{"rxpk":[{"tmst":1860875828,"time":"2017-03-20T17:05:17.872406Z","chan":1," rfch":1,"freq":868.300000,"stat":1,"modu":"LORA","datr":"SF12BW125","codr":"4/5","lsnr":8.5,"rssi":-33,"size":72,"d ata":"gAEjAhSAAgABLMCae8tpgKwL+O9jeYTGJh2lfcxy+tiefr9FC+eHgLCSzeivfgpOjJ0ruIPUMxrmhDuyJ+uNE4JtsNPvhMag"}]}
ACK:
18:05:17.943083 IP server.37179 > 192.168.0.18.1682: UDP, length 190 E.....@.-.L.4.>......;..........{"txpk":{"tmst":1861876068,"chan":1,"rfch":0,"freq":868.300000,"imme":0,"ipol":true,"modu":"LORA","powe":14,"datr":"SF12BW125","codr":"4/5","size":18,"data":"YAEjAhSligEDUj8AAQFONH6Z"}}.
Logs for this packet:
##### 2017-03-20 18:05:21 GMT ##### ### [UPSTREAM] ### # RF packets received by concentrator: 1 # CRC_OK: 100.00%, CRC_FAIL: 0.00%, NO_CRC: 0.00% # RF packets forwarded: 1 (72 bytes) # PUSH_DATA datagrams sent: 1 (308 bytes) # PUSH_DATA acknowledged: 0.00% ### [DOWNSTREAM] ### # PULL_DATA sent: 2 (0.00% acknowledged) # PULL_RESP(onse) datagrams received: 0 (0 bytes) # RF packets sent to concentrator: 0 (0 bytes) # TX errors: 0 ##### END #####
Conduit FW version: 1.3.3
admin@mtcdt:~# cat /etc/mlinux-version
mLinux 3.2.0
Built from branch: (detachedfrom7745024)
Revision: 7745024bea525004d22c4a83761916b1315bedccadmin@mtcdt:~# tail -100 /var/log/lora-pkt-fwd-1.log
Version: 1.4.1
*** Lora concentrator HAL library version info ***
Version: 1.7.0; Options: ftdi sx1301 sx1257 full mtac-lora private;
***Did we miss some configuration that determines how downstream packet is forwarded to end-point?
March 20, 2017 at 3:24 pm #17938Jason ReissKeymasterI would expect a pull response from the network server to be logged.
# PULL_DATA sent: 2 (0.00% acknowledged) # PULL_RESP(onse) datagrams received: 0 (0 bytes) # RF packets sent to concentrator: 0 (0 bytes)
Check that you are following the packet forwarder downlink protocol correctly.
https://github.com/Lora-net/packet_forwarder/blob/master/PROTOCOL.TXTOutput from successful TX
##### 2019-01-13 04:58:21 GMT ##### ### [UPSTREAM] ### # RF packets received by concentrator: 1 # CRC_OK: 100.00%, CRC_FAIL: 0.00%, NO_CRC: 0.00% # RF packets forwarded: 1 (23 bytes) # PUSH_DATA datagrams sent: 1 (204 bytes) # PUSH_DATA acknowledged: 0.00% ### [DOWNSTREAM] ### # PULL_DATA sent: 2 (100.00% acknowledged) # PULL_RESP(onse) datagrams received: 1 (259 bytes) # RF packets sent to concentrator: 1 (17 bytes) # TX errors: 0 ##### END #####
March 25, 2017 at 1:05 am #18004Kamil GardziejczykParticipantHi,
Yes. That was the root cause. Now it works.
Thanks! -
AuthorPosts
- You must be logged in to reply to this topic.