Pygate with gpy LTE uplink

Hello,

i have changed a stabel working gateway combination wipy on pygate to a gpy with lte uplink instead of wifi.

After boot the configuration is working as on wifi and forwading packets.
But after some minutes it stop forwarding the packets. The green status led for the concentrator status remains on for several hours until it switches of.

Perhabs someone can have a look at the console output and give a suggestion how to further debug.

Click to see the full logs
OKattaching..attached!
connecting [##] connected!
[5782] LORAPF_INFO_:lora_gw_init() start fh=339844 high=9444 LORA_GW_STACK_SIZE=15000
[5784] LORAPF_INFO_:lora_gw_init() done fh=324840 high=9444
Pycom MicroPython 1.20.2.r4 [v1.11-ffb0e1c] on 2021-01-12; GPy with ESP32
Type "help()" for more information.
>>> [5794] LORAPF_INFO_:*** Packet Forwarder for Lora PicoCell Gateway ***
Version: undefined
[5802] LORAPF_INFO_:lorapf *** Lora concentrator HAL library version info ***
Version: " 0.2.3 ";
[5811] LORAPF_INFO_:[main] Time is not set.
[5815] LORAPF_INFO_:[main] Waiting for system time to be set... (1/10)
[277541625] LORAPF_INFO_:[main] Little endian host
[277541658] LORAPF_INFO_:[main] lorawan_public 1, clksrc 1
lgw_board_setconf:592: Note: board configuration; lorawan_public:1, clksrc:1
[277541659] LORAPF_INFO_:[main] antenna_gain 0 dBi
[277541667] LORAPF_INFO_:[main] Configuring TX LUT with 16 indexes
[277541670] LORAPF_INFO_:[main] radio 0 enabled (type SX1257), center frequency 867500000, RSSI offset -163.999996, tx enabled 1
lgw_rxrf_setconf:626: Note: rf_chain 0 configuration; en:1 freq:867500000 rssi_offset:-164.000000 radio_type:2 tx_enable:1
[277541692] LORAPF_INFO_:[main] radio 1 enabled (type SX1257), center frequency 868500000, RSSI offset -163.999996, tx enabled 0
lgw_rxrf_setconf:626: Note: rf_chain 1 configuration; en:1 freq:868500000 rssi_offset:-164.000000 radio_type:2 tx_enable:0
[277541714] LORAPF_INFO_:[main] Lora multi-SF channel 0>  radio 1, IF -400000 Hz, 125 kHz bw, SF 7 to 12
lgw_rxif_setconf:745: Note: LoRa 'multi' if_chain 0 configuration; en:1 freq:-400000 SF_mask:0x7e
[277541731] LORAPF_INFO_:[main] Lora multi-SF channel 1>  radio 1, IF -200000 Hz, 125 kHz bw, SF 7 to 12
lgw_rxif_setconf:745: Note: LoRa 'multi' if_chain 1 configuration; en:1 freq:-200000 SF_mask:0x7e
[277541749] LORAPF_INFO_:[main] Lora multi-SF channel 2>  radio 1, IF 0 Hz, 125 kHz bw, SF 7 to 12
lgw_rxif_setconf:745: Note: LoRa 'multi' if_chain 2 configuration; en:1 freq:0 SF_mask:0x7e
[277541766] LORAPF_INFO_:[main] Lora multi-SF channel 3>  radio 0, IF -400000 Hz, 125 kHz bw, SF 7 to 12
lgw_rxif_setconf:745: Note: LoRa 'multi' if_chain 3 configuration; en:1 freq:-400000 SF_mask:0x7e
[277541784] LORAPF_INFO_:[main] Lora multi-SF channel 4>  radio 0, IF -200000 Hz, 125 kHz bw, SF 7 to 12
lgw_rxif_setconf:745: Note: LoRa 'multi' if_chain 4 configuration; en:1 freq:-200000 SF_mask:0x7e
[277541802] LORAPF_INFO_:[main] Lora multi-SF channel 5>  radio 0, IF 0 Hz, 125 kHz bw, SF 7 to 12
lgw_rxif_setconf:745: Note: LoRa 'multi' if_chain 5 configuration; en:1 freq:0 SF_mask:0x7e
[277541818] LORAPF_INFO_:[main] Lora multi-SF channel 6>  radio 0, IF 200000 Hz, 125 kHz bw, SF 7 to 12
lgw_rxif_setconf:745: Note: LoRa 'multi' if_chain 6 configuration; en:1 freq:200000 SF_mask:0x7e
[277541836] LORAPF_INFO_:[main] Lora multi-SF channel 7>  radio 0, IF 400000 Hz, 125 kHz bw, SF 7 to 12
lgw_rxif_setconf:745: Note: LoRa 'multi' if_chain 7 configuration; en:1 freq:400000 SF_mask:0x7e
[277541854] LORAPF_INFO_:[main] Lora std channel> radio 1, IF -200000 Hz, 250000 Hz bw, SF 7
lgw_rxif_setconf:719: Note: LoRa 'std' if_chain 8 configuration; en:1 freq:-200000 bw:2 dr:2
[277541870] LORAPF_INFO_:[main] FSK channel> radio 1, IF 300000 Hz, 125000 Hz bw, 50000 bps datarate
lgw_rxif_setconf:775: Note: FSK if_chain 9 configuration; en:1 freq:300000 bw:3 dr:50000 (50000 real dr) sync:0xc194c1
[277541924] LORAPF_INFO_:[main] gateway MAC address is configured to lX
[277541925] LORAPF_INFO_:[main] server hostname or IP address is configured to "router.eu.thethings.network"
[277541929] LORAPF_INFO_:[main] upstream port is configured to "1700"
[277541935] LORAPF_INFO_:[main] downstream port is configured to "1700"
[277541941] LORAPF_INFO_:[main] downstream keep-alive interval is configured to 10 seconds
[277541949] LORAPF_INFO_:[main] statistics display interval is configured to 30 seconds
[277541957] LORAPF_INFO_:[main] upstream PUSH_DATA time-out is configured to 200 ms
[277541964] LORAPF_INFO_:[main] packets received with a valid CRC will be forwarded
[277541971] LORAPF_INFO_:[main] packets received with a CRC error will NOT be forwarded
[277541979] LORAPF_INFO_:[main] packets received with no CRC will NOT be forwarded
[277541989] LORAPF_INFO_:[main] found global configuration file and parsed correctly
lgw_calibrate_sx125x:511: Note: calibration started (time: 2300 ms)
lgw_calibrate_sx125x:532: Note: calibration finished (status = 0xBF)
lgw_calibrate_sx125x:569: calibration a_i = 80
lgw_calibrate_sx125x:569: calibration a_i = 62
lgw_calibrate_sx125x:569: calibration a_i = 49
lgw_calibrate_sx125x:569: calibration a_i = 43
lgw_calibrate_sx125x:569: calibration a_i = 33
lgw_calibrate_sx125x:569: calibration a_i = 26
lgw_calibrate_sx125x:569: calibration a_i = 21
lgw_calibrate_sx125x:569: calibration a_i = 16
lgw_calibrate_sx125x:511: Note: calibration started (time: 2300 ms)
lgw_calibrate_sx125x:532: Note: calibration finished (status = 0xBF)
lgw_calibrate_sx125x:569: calibration a_i = 43
lgw_calibrate_sx125x:569: calibration a_i = 33
lgw_calibrate_sx125x:569: calibration a_i = 26
lgw_calibrate_sx125x:569: calibration a_i = 21
lgw_calibrate_sx125x:569: calibration a_i = 17
lgw_calibrate_sx125x:569: calibration a_i = 13
lgw_calibrate_sx125x:569: calibration a_i = 11
lgw_calibrate_sx125x:569: calibration a_i = 9
Info: Initialising AGC firmware...
Info: putting back original RADIO_SELECT value
[277549267] LORAPF_INFO_:[main] concentrator started, packet can now be received
7[277549268] LORAPF_INFO_:[jit ]oRa G775star27ted
5 start
49249268] LORAP[277549273]68] LORAPF_IF_INFO_:[up LORAPF_INFONFO_:[down]  ] start
_:[ts  ] sta start
rt
[277557233] LORAPF_INFO_:[up  ] received pkt from mote: 26012EF0 (fcnt=1592/638), RSSI -49.0
[277557338] LORAPF_WARN_:[up  ] PUSH_ACK recieve timeout 0
[277557438] LORAPF_WARN_:[up  ] PUSH_ACK recieve timeout 1
[277579271] LORAPF_INFO_:[main] report
##### 2021-01-17 13:31:55 GMT #####
### [UPSTREAM] ###
# RF packets received by concentrator: 2
# CRC_OK: 50.00%, CRC_FAIL: 50.00%, NO_CRC: 0.00%
# RF packets forwarded: 1 (36 bytes)
# PUSH_DATA datagrams sent: 1 (221 bytes)
# PUSH_DATA acknowledged: 0.00%
### [DOWNSTREAM] ###
# PULL_DATA sent: 3 (100.00% acknowledged)
# PULL_RESP(onse) datagrams received: 0 (0 bytes)
# RF packets sent to concentrator: 0 (0 bytes)
# TX errors: 0
### [JIT] ###
[jit] queue is empty
### [GPS] ###
# GPS sync is disabled
##### END #####
[277579344] LORAPF_WARN_:[up  ] ignored out-of sync PUSH_ACK packet buff_ack[0:0] != token[0:2]
[277579445] LORAPF_WARN_:[up  ] PUSH_ACK recieve timeout 1
[277589850] LORAPF_INFO_:[up  ] received pkt from mote: 26012EF0 (fcnt=1593/639), RSSI -63.0
[277589855] LORAPF_WARN_:[up  ] ignored out-of sync PUSH_ACK packet buff_ack[0:2] != token[0:3]
[277589956] LORAPF_WARN_:[up  ] PUSH_ACK recieve timeout 1
[277609310] LORAPF_INFO_:[main] report
##### 2021-01-17 13:32:25 GMT #####
### [UPSTREAM] ###
# RF packets received by concentrator: 1
# CRC_OK: 100.00%, CRC_FAIL: 0.00%, NO_CRC: 0.00%
# RF packets forwarded: 1 (36 bytes)
# PUSH_DATA datagrams sent: 2 (332 bytes)
# PUSH_DATA acknowledged: 0.00%
### [DOWNSTREAM] ###
# PULL_DATA sent: 3 (100.00% acknowledged)
# PULL_RESP(onse) datagrams received: 0 (0 bytes)
# RF packets sent to concentrator: 0 (0 bytes)
# TX errors: 0
### [JIT] ###
[jit] queue is empty
### [GPS] ###
# GPS sync is disabled
##### END #####
[277609362] LORAPF_WARN_:[up  ] ignored out-of sync PUSH_ACK packet buff_ack[0:3] != token[0:4]
[277609463] LORAPF_WARN_:[up  ] PUSH_ACK recieve timeout 1
[277622519] LORAPF_INFO_:[up  ] received pkt from mote: 26012EF0 (fcnt=1594/63A), RSSI -69.0
[277622524] LORAPF_WARN_:[up  ] ignored out-of sync PUSH_ACK packet buff_ack[0:4] != token[0:6]
[277622625] LORAPF_WARN_:[up  ] PUSH_ACK recieve timeout 1
[277639349] LORAPF_INFO_:[main] report
##### 2021-01-17 13:32:55 GMT #####
### [UPSTREAM] ###
# RF packets received by concentrator: 5
# CRC_OK: 20.00%, CRC_FAIL: 80.00%, NO_CRC: 0.00%
# RF packets forwarded: 1 (36 bytes)
# PUSH_DATA datagrams sent: 2 (332 bytes)
# PUSH_DATA acknowledged: 0.00%
### [DOWNSTREAM] ###
# PULL_DATA sent: 3 (100.00% acknowledged)
# PULL_RESP(onse) datagrams received: 0 (0 bytes)
# RF packets sent to concentrator: 0 (0 bytes)
# TX errors: 0
### [JIT] ###
[jit] queue is empty
### [GPS] ###
# GPS sync is disabled
##### END #####
[277639431] LORAPF_WARN_:[up  ] ignored out-of sync PUSH_ACK packet buff_ack[0:6] != token[0:8]
[277639532] LORAPF_WARN_:[up  ] PUSH_ACK recieve timeout 1
[277655138] LORAPF_INFO_:[up  ] received pkt from mote: 26012EF0 (fcnt=1595/63B), RSSI -68.0
[277655142] LORAPF_WARN_:[up  ] ignored out-of sync PUSH_ACK packet buff_ack[0:8] != token[0:9]
[277655243] LORAPF_WARN_:[up  ] PUSH_ACK recieve timeout 1
[277669388] LORAPF_INFO_:[main] report
##### 2021-01-17 13:33:25 GMT #####
### [UPSTREAM] ###
# RF packets received by concentrator: 2
# CRC_OK: 50.00%, CRC_FAIL: 50.00%, NO_CRC: 0.00%
# RF packets forwarded: 1 (36 bytes)
# PUSH_DATA datagrams sent: 2 (332 bytes)
# PUSH_DATA acknowledged: 0.00%
### [DOWNSTREAM] ###
# PULL_DATA sent: 3 (66.67% acknowledged)
# PULL_RESP(onse) datagrams received: 0 (0 bytes)
# RF packets sent to concentrator: 0 (0 bytes)
# TX errors: 0
### [JIT] ###
[jit] queue is empty
### [GPS] ###
# GPS sync is disabled
##### END #####
[277669449] LORAPF_WARN_:[up  ] ignored out-of sync PUSH_ACK packet buff_ack[0:9] != token[0:10]
[277669550] LORAPF_WARN_:[up  ] PUSH_ACK recieve timeout 1
[277687755] LORAPF_INFO_:[up  ] received pkt from mote: 26012EF0 (fcnt=1596/63C), RSSI -63.0
[277687761] LORAPF_WARN_:[up  ] ignored out-of sync PUSH_ACK packet buff_ack[0:10] != token[0:11]
[277687861] LORAPF_WARN_:[up  ] PUSH_ACK recieve timeout 1
[277699427] LORAPF_INFO_:[main] report
##### 2021-01-17 13:33:55 GMT #####
### [UPSTREAM] ###
# RF packets received by concentrator: 1
# CRC_OK: 100.00%, CRC_FAIL: 0.00%, NO_CRC: 0.00%
# RF packets forwarded: 1 (36 bytes)
# PUSH_DATA datagrams sent: 2 (332 bytes)
# PUSH_DATA acknowledged: 0.00%
### [DOWNSTREAM] ###
# PULL_DATA sent: 3 (100.00% acknowledged)
# PULL_RESP(onse) datagrams received: 0 (0 bytes)
# RF packets sent to concentrator: 0 (0 bytes)
# TX errors: 0
### [JIT] ###
[jit] queue is empty
### [GPS] ###
# GPS sync is disabled
##### END #####
[277699467] LORAPF_WARN_:[up  ] ignored out-of sync PUSH_ACK packet buff_ack[0:11] != token[0:12]
[277699574] LORAPF_WARN_:[up  ] PUSH_ACK recieve timeout 1
[277717129] LORAPF_INFO_:[up  ] received pkt from mote: 26012D6D (fcnt=24/18), RSSI -37.0
[277717134] LORAPF_WARN_:[up  ] ignored out-of sync PUSH_ACK packet buff_ack[0:12] != token[0:13]
[277717235] LORAPF_WARN_:[up  ] PUSH_ACK recieve timeout 1
[277720390] LORAPF_INFO_:[up  ] received pkt from mote: 26012EF0 (fcnt=1597/63D), RSSI -40.0
[277720395] LORAPF_WARN_:[up  ] ignored out-of sync PUSH_ACK packet buff_ack[0:13] != token[0:14]
[277720496] LORAPF_WARN_:[up  ] PUSH_ACK recieve timeout 1
[277729466] LORAPF_INFO_:[main] report
##### 2021-01-17 13:34:25 GMT #####
### [UPSTREAM] ###
# RF packets received by concentrator: 2
# CRC_OK: 100.00%, CRC_FAIL: 0.00%, NO_CRC: 0.00%
# RF packets forwarded: 2 (60 bytes)
# PUSH_DATA datagrams sent: 3 (538 bytes)
# PUSH_DATA acknowledged: 0.00%
### [DOWNSTREAM] ###
# PULL_DATA sent: 3 (100.00% acknowledged)
# PULL_RESP(onse) datagrams received: 0 (0 bytes)
# RF packets sent to concentrator: 0 (0 bytes)
# TX errors: 0
### [JIT] ###
[jit] queue is empty
### [GPS] ###
# GPS sync is disabled
##### END #####
[277729552] LORAPF_WARN_:[up  ] ignored out-of sync PUSH_ACK packet buff_ack[0:14] != token[0:15]
[277729653] LORAPF_WARN_:[up  ] PUSH_ACK recieve timeout 1
[277743858] LORAPF_INFO_:[up  ] received pkt from mote: 26012D6D (fcnt=25/19), RSSI -41.0
[277743863] LORAPF_WARN_:[up  ] ignored out-of sync PUSH_ACK packet buff_ack[0:15] != token[0:16]
[277753052] LORAPF_INFO_:[up  ] received pkt from mote: 26012EF0 (fcnt=1598/63E), RSSI -51.0
[277753156] LORAPF_WARN_:[up  ] PUSH_ACK recieve timeout 0
[277759505] LORAPF_INFO_:[main] report
##### 2021-01-17 13:34:55 GMT #####
### [UPSTREAM] ###
# RF packets received by concentrator: 3
# CRC_OK: 66.67%, CRC_FAIL: 33.33%, NO_CRC: 0.00%
# RF packets forwarded: 2 (60 bytes)
# PUSH_DATA datagrams sent: 3 (538 bytes)
# PUSH_DATA acknowledged: 66.67%
### [DOWNSTREAM] ###
# PULL_DATA sent: 3 (100.00% acknowledged)
# PULL_RESP(onse) datagrams received: 0 (0 bytes)
# RF packets sent to concentrator: 0 (0 bytes)
# TX errors: 0
### [JIT] ###
[jit] queue is empty
### [GPS] ###
# GPS sync is disabled
##### END #####
[277759679] LORAPF_WARN_:[up  ] PUSH_ACK recieve timeout 0
[277759779] LORAPF_WARN_:[up  ] PUSH_ACK recieve timeout 1
´´´´

Perhaps it is an not matching dataplan or just to big latency.
I am unsure about the real meaning and source of the repeating

[277759679] LORAPF_WARN_:[up ] PUSH_ACK recieve timeout 0
[277759779] LORAPF_WARN_:[up ] PUSH_ACK recieve timeout 1

Can anybody help me out?

A small improvement could be achieved by changing the lte.attach command.
In the first configuration the LTE band was defined. Without the band definition the gateway work approximatly for 3 hours.
lte.attach, lte.detatch or any other lte. command generates a system error.
As first workaround i will try to configure a watchdog timer.
Any other suggestion for a bestter is welcome.

It seems to me that with the current firmware it is not possible to achieve stable operation of the pygate with gpy and LTE uplink.
Depending on the method of detecting broken connections, the gateway was functional from a few minutes to a few hours. In the end it always got stuck with a modem error and couldn’t reset itself.

If someone is looking for a basically working configuration, I can recommend the following Github repository:

If I have new knowledge and solutions I will add it here.

1 Like

I’ve seen that happen with a different LTE modem hanging off a different computer, ultimately we built in a way to power cycle the modem if it gets really stuck.

Pycom released a new firmware for the modem:

With this firmware the gateway is running stable since one week. Only one minor outage propably during maintenance of the network service provider.
But gladly the modem recovered connection without manual interaction.
Just a first feedback with a little bit of hope for a cheap cellular uplinked gateway.

1 Like