pygate, wipy & TTN no data
-
Hello,
I think I did everything ok, as on the manuals, but gateway is still disconected on TTNOn my pygate I have:
boot. py# boot.py -- run on boot-up import machine import pycom from _pybytes import Pybytes from _pybytes_config import PybytesConfig # We want to save a little bit power # Disable Heartbeat LED pycom.heartbeat_on_boot(False) # Enable Pybytes pybytes_conf = PybytesConfig().read_config() pybytes = Pybytes(pybytes_conf) pybytes.start() # disable debug messages machine.pygate_debug_level(1) # Proceed with main.py machine.main('main.py')global_conf.json (downloaded from TTN);
{ "SX1301_conf": { "lorawan_public": true, "clksrc": 1, "antenna_gain": 0, "radio_0": { "enable": true, "type": "SX1257", "freq": 867500000, "rssi_offset": -166, "tx_enable": true, "tx_freq_min": 863000000, "tx_freq_max": 870000000 }, "radio_1": { "enable": true, "type": "SX1257", "freq": 868500000, "rssi_offset": -166, "tx_enable": false }, "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, "bandwidth": 125000, "datarate": 50000 }, "tx_lut_0": { "pa_gain": 0, "mix_gain": 8, "rf_power": -6, "dig_gain": 0 }, "tx_lut_1": { "pa_gain": 0, "mix_gain": 10, "rf_power": -3, "dig_gain": 0 }, "tx_lut_2": { "pa_gain": 0, "mix_gain": 12, "rf_power": 0, "dig_gain": 0 }, "tx_lut_3": { "pa_gain": 1, "mix_gain": 8, "rf_power": 3, "dig_gain": 0 }, "tx_lut_4": { "pa_gain": 1, "mix_gain": 10, "rf_power": 6, "dig_gain": 0 }, "tx_lut_5": { "pa_gain": 1, "mix_gain": 12, "rf_power": 10, "dig_gain": 0 }, "tx_lut_6": { "pa_gain": 1, "mix_gain": 13, "rf_power": 11, "dig_gain": 0 }, "tx_lut_7": { "pa_gain": 2, "mix_gain": 9, "rf_power": 12, "dig_gain": 0 }, "tx_lut_8": { "pa_gain": 1, "mix_gain": 15, "rf_power": 13, "dig_gain": 0 }, "tx_lut_9": { "pa_gain": 2, "mix_gain": 10, "rf_power": 14, "dig_gain": 0 }, "tx_lut_10": { "pa_gain": 2, "mix_gain": 11, "rf_power": 16, "dig_gain": 0 }, "tx_lut_11": { "pa_gain": 3, "mix_gain": 9, "rf_power": 20, "dig_gain": 0 }, "tx_lut_12": { "pa_gain": 3, "mix_gain": 10, "rf_power": 23, "dig_gain": 0 }, "tx_lut_13": { "pa_gain": 3, "mix_gain": 11, "rf_power": 25, "dig_gain": 0 }, "tx_lut_14": { "pa_gain": 3, "mix_gain": 12, "rf_power": 26, "dig_gain": 0 }, "tx_lut_15": { "pa_gain": 3, "mix_gain": 14, "rf_power": 27, "dig_gain": 0 } }, "gateway_conf": { "gateway_ID": "2462ABFFFEF4Dxxx", "server_address": "eu1.cloud.thethings.network", "serv_port_up": 1700, "serv_port_down": 1700, "servers": [ { "gateway_ID": "2462ABFFFEF4Dxxx", "server_address": "eu1.cloud.thethings.network", "serv_port_up": 1700, "serv_port_down": 1700, "serv_enabled": true } ] } }main. py
from network import WLAN import time import machine from machine import RTC import pycom print('\nStarting LoRaWAN concentrator') # Disable Hearbeat pycom.heartbeat(False) # Define callback function for Pygate events def machine_cb (arg): evt = machine.events() if (evt & machine.PYGATE_START_EVT): # Green pycom.rgbled(0x103300) elif (evt & machine.PYGATE_ERROR_EVT): # Red pycom.rgbled(0x331000) elif (evt & machine.PYGATE_STOP_EVT): # RGB off pycom.rgbled(0x000000) # register callback function machine.callback(trigger = (machine.PYGATE_START_EVT | machine.PYGATE_STOP_EVT | machine.PYGATE_ERROR_EVT), handler=machine_cb) print('Connecting to WiFi...', end='') # Connect to a Wifi Network wlan = WLAN(mode=WLAN.STA) wlan.connect(ssid='<SSID>', auth=(WLAN.WPA2, "<PASSWORD>")) while not wlan.isconnected(): print('.', end='') time.sleep(1) print(" OK") # Sync time via NTP server for GW timestamps on Events print('Syncing RTC via ntp...', end='') rtc = RTC() rtc.ntp_sync(server="pool.ntp.org") while not rtc.synced(): print('.', end='') time.sleep(.5) print(" OK\n") # Read the GW config file from Filesystem with open('/flash/global_config.json','r') as fp: buf = fp.read() # Start the Pygate machine.pygate_init(buf) # disable degub messages # machine.pygate_debug_level(1)pybytes_config.json

I folow manuals and create in TTN Aplication and gateway:

and to mention, when I restart pygate I get this:
>>> WMAC: 2462ABF4Dxxx Firmware: 1.20.2.r6 Pybytes: 1.7.1 WMAC: 2462ABF4Dxxx Firmware: 1.20.2.r6 Pybytes: 1.7.1 Initialized watchdog for WiFi and LTE connection with timeout 1260000 ms WiFi connection established Connected to MQTT mqtt.pybytes.pycom.io Pybytes connected successfully (using the built-in pybytes library) Traceback (most recent call last): File "boot.py", line 16, in <module> AttributeError: 'module' object has no attribute 'pygate_debug_level' Starting LoRaWAN concentrator Traceback (most recent call last): File "main.py", line 25, in <module> AttributeError: 'module' object has no attribute 'callback' Pycom MicroPython 1.20.2.r6 [v1.11-c5a0a97] on 2021-10-28; WiPy with ESP32 Pybytes Version: 1.7.1 Type "help()" for more information. >>>What did I do wrong?
-
@Gregor-Leban did you flash the WiPy with the Pygate version of the firmware? Use the firmware upgrade tool and make sure you pick the right version.
-
Now I did it again. But I'm still disconected on TTN gateway



Connecting to COM3... WMAC: 2462ABF4Dxxx Firmware: 1.20.2.r6 Pybytes: 1.7.1 Initialized watchdog for WiFi and LTE connection with timeout 1260000 ms WiFi connection established Connected to MQTT mqtt.pybytes.pycom.io Pybytes connected successfully (using the built-in pybytes library) Pybytes configuration read from /flash/pybytes_config.json Starting LoRaWAN concentrator Connecting to WiFi... OK Syncing RTC via ntp...... OK Traceback (most recent call last): File "main.py", line 48, in <module> OSError: [Errno 2] ENOENT Pycom MicroPython 1.20.2.r6 [v1.11-c5a0a97] on 2021-10-28; WiPy with ESP32 Pybytes Version: 1.7.1 Type "help()" for more information. -
@Gregor-Leban it does look better now. You must be missing the global_config.json (not global_conf.json).
-
@jcaron
wii that was it.
I can’t tell you how happy I am that after many days of trying it finally works! : D
Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better 💗
Register Login