From 11038150d7bf02ad7d9dc878a03c5e0b6fd9fca0 Mon Sep 17 00:00:00 2001 From: Christian Ehlers Date: Wed, 17 Jun 2020 23:43:58 +0200 Subject: [PATCH] Add PyGate documentation Co-Authored-By: Jirka Krepl --- config.toml | 15 ++ content/firmwareapi/pycom/machine/pygate.md | 39 +++ content/firmwareapi/pycom/network/eth.md | 70 +++++ content/tutorials/all/PoE.md | 22 ++ content/tutorials/all/PyGate.md | 278 ++++++++++++++++++++ static/gitbook/assets/PoE-NI.png | Bin 0 -> 49202 bytes 6 files changed, 424 insertions(+) create mode 100644 content/firmwareapi/pycom/machine/pygate.md create mode 100644 content/firmwareapi/pycom/network/eth.md create mode 100644 content/tutorials/all/PoE.md create mode 100644 content/tutorials/all/PyGate.md create mode 100644 static/gitbook/assets/PoE-NI.png diff --git a/config.toml b/config.toml index e797b22..c87af19 100644 --- a/config.toml +++ b/config.toml @@ -359,6 +359,21 @@ theme = "doc-theme" parent = "tutorials@all" weight = 10 +[[menu.main]] + name = "PyGate" + url = "/tutorials/all/PyGate/" + identifier = "tutorials@all@PyGate" + parent = "tutorials@all" + weight = 10 + +[[menu.main]] + name = "PoE" + url = "/tutorials/all/PoE/" + identifier = "tutorials@all@PoE" + parent = "tutorials@all" + weight = 12 + + [[menu.main]] name = "WLAN" url = "/tutorials/all/wlan/" diff --git a/content/firmwareapi/pycom/machine/pygate.md b/content/firmwareapi/pycom/machine/pygate.md new file mode 100644 index 0000000..d7b1e7a --- /dev/null +++ b/content/firmwareapi/pycom/machine/pygate.md @@ -0,0 +1,39 @@ +--- +title: "Pygate" +aliases: + - firmwareapi/pycom/machine/pygate.html + - firmwareapi/pycom/machine/pygate.md + - chapter/firmwareapi/pycom/machine/pygate +--- + +The Pygate is an 8-channel LoRaWAN gateway. Connect a WiPy, Gpy or LoPy4 board to the Pygate and flash the Pygate firmware. See the [Pygate tutorial](/tutorials/all/pygate) to get started. + +## Methods + +#### machine.pygate\_init(buff) + +This function is used to initialize the Pygate + +- `buff`: the data contents of the gateway global config json file + +#### machine.pygate\_deinit() + +This shuts down the concentrator. + +#### machine.callback(trigger, handler=None, arg=None) + +- `trigger`: A trigger event(s) for invoking the callback function `handler`, the triggers/events are: + + `machine.PYGATE_START_EVT` + + `machine.PYGATE_STOP_EVT` + + `machine.MP_QSTR_PYGATE_ERROR_EVT` + +- `handler`: The callback function to be called. When not passed to function, any pre-registered callback will be disabled/removed. + +- `arg`: Optional argument to be passed to the callback function. + +#### machine.events() + +Get the Pygate events diff --git a/content/firmwareapi/pycom/network/eth.md b/content/firmwareapi/pycom/network/eth.md new file mode 100644 index 0000000..2e307de --- /dev/null +++ b/content/firmwareapi/pycom/network/eth.md @@ -0,0 +1,70 @@ +--- +title: "Ethernet" +aliases: + - firmwareapi/pycom/network/eth.html + - firmwareapi/pycom/network/eth.md + - chapter/firmwareapi/pycom/network/eth +--- + +The ETH class enables the use of an ethernet connection via the PyEthernet board plugged into a Pygate. + +--- +*NOTE* : +Ethernet support is only available in the Pygate firmware build. + +--- + +*NOTE2* : +The PyEthernet board is connected via SPI bus 3 and GPIO's 17-19 and 21-23. So this bus and pins cannot be used concurrently with ethernet. This also means that on a LoPy4 with Pygate firmware, the LoRa module of the LoPy4 is disabled, since it is also connected via SPI 3. Of course you can still use the LoRa gateway functionality since this uses the LoRa modules on the the Pygate board itself. + +--- + +## Constructors + +### class network.ETH(id=0, ...) + +Create and configure an ETH object. See init for params of configuration. + +```python +from network import ETH +eth = ETH() +``` + +## Methods + + +### eth.init(hostname=None) + +This function starts the Ethernet interface and enables the ethernet adapter. + +`hostname`: set the interface hostname + +### eth.ifconfig(config=\['dhcp' or configtuple\]) + +With no parameters given, this returns a 4-tuple of (ip, subnet mask, gateway, DNS server). + +Optionally specify the configuration parameter: + +- `config='dhcp'` + +If 'dhcp' is passed as a parameter, then the DHCP client is enabled and the IP parameters are negotiated with the DHCP server. + +- `config=(ip, nm, gw, dns)` + +If the 4-tuple config is given then a static IP is configured. For example: `eth.ifconfig(config=('192.168.0.4', '255.255.255.0', '192.168.0.1', '8.8.8.8'))`. + +### eth.hostname(string) + +Set the interface host name. + +### eth.mac() + +Get the ethernet interface mac address. + +### eth.deinit() + +Shuts down the ethernet interface. + +### eth.isconnected() + +Returns `True` if the ethernet link is up and IP is accquired, `False` otherwise. diff --git a/content/tutorials/all/PoE.md b/content/tutorials/all/PoE.md new file mode 100644 index 0000000..2394a21 --- /dev/null +++ b/content/tutorials/all/PoE.md @@ -0,0 +1,22 @@ +--- +title: "PoE" +aliases: + - tutorials/all/PoE.html + - tutorials/all/PoE.md + - chapter/tutorials/all/PoE +--- + +The PyEthernet module has onboard Power over Ethernet (PoE) power supply. This means that you can power your hardware with only an ethernet cable coming from a power injector. However, since the PoE is non-isolated, you must adhere to the following warning! + +WARNING: + +PoE power supply of PyEthernet module has no galvanic isolation. This means, that in accordance with +IEEE 802.3-2005 standard you must make sure that when powered from PoE power injector there are no other external connections to any part of the module or other hardware where it is installed. Such as USB cable, serial to USB bridge, logic analyser, an oscilloscope, etc. + +As in certain hardware configurations it can lead to unrecoverable damage of not only the PyEthernet module but all hardware connected to it. + +Be aware - violation of that requirement voids Pycom warranty. + +The use of battery with PoE is allowed. + +![](/gitbook/assets/PoE-NI.png) diff --git a/content/tutorials/all/PyGate.md b/content/tutorials/all/PyGate.md new file mode 100644 index 0000000..e29202e --- /dev/null +++ b/content/tutorials/all/PyGate.md @@ -0,0 +1,278 @@ +## Pygate + +The Pygate is an 8-channel LoRaWAN gateway. This page will help you get started with it. + +The Pygate board can have an PyEthernet adapter connected which allows an ethernet connection. The PyEthernet also support PoE. Do check the separate [page and warning for PoE-NI!](/tutorials/all/poe) + +### Quickstart + +To connect your Pygate to a LoRa server, follow these steps: + +1. Attach a WiPy, GPy or LoPy4 to the Pygate. The RGB LED of the development board should be aligned with the USB port of the Pygate. +1. Attach the LoRa Antenna to the Pygate. +1. Flash the Pycom Device with with a firmware build where Pygate functionality is enabled. +1. Create a `config.json` for your Pygate and upload it. +1. Create a `main.py` that creates an uplink (wifi, ethernet or lte) and runs the LoRa packet fowarder. +1. Run the `main.py`. +1. Now it is operational. The communication from other LoRa nodes such as a LoPy4 will now reach the gateway and will receive up and downlink via the PyGate. +1. To stop the Pygate at any time press Ctrl-C on the REPL and run `machine.pygate_deinit()`. It will take a few seconds to stop the gateway tasks and safely power-off the concentrator. + + +Make sure you supply a config matching your region (EU868, US915, etc), e.g. https://github.com/Lora-net/packet_forwarder/tree/master/lora_pkt_fwd/cfg. If you are in EU region, it should be sufficent to update the example below with your GW ID, the LoRa server address and port number. + + +### Example TTN Wifi + +The following example shows the script and json file to run the Pygate over Wifi connecting to [The Things Network](https://www.thethingsnetwork.org/). + +1. log in to https://console.thethingsnetwork.org/ +1. go to Gateways and register a new gateway +1. select "I'm using a legacy packet forwarder" +1. make up a EUI (8 byte hexadecimal value) and register it on the TTN website +1. enter the EUI in your `config.json` under `gateway_ID` (Just enter the hex digits without the "eui-" prefix and without spaces) +1. select your Frequency Plan +1. select a router - also enter the hostname in your `config.json` under `server_address` +1. enter your wifi SSID and password in `main.py` +1. upload `config.json` and `main.py` and reset the board +1. you will see how it creates the uplink connection and then start the LoRa GW. It will print out some debug information while it is running. After some initialization it will print "LoRa GW started" and the LED will turn green. + + + +```python +from network import WLAN +import time +import machine +from machine import RTC +import pycom + +# 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) + +# Connect to a Wifi Network +wlan = WLAN(mode=WLAN.STA) +wlan.connect(ssid='', auth=(WLAN.WPA2, "")) + +while not wlan.isconnected(): + time.sleep(1) + +print("Wifi Connection established") + +# Sync time via NTP server for GW timestamps on Events +rtc = RTC() +rtc.ntp_sync(server="0.pool.ntp.org") + +# Read the GW config file from Filesystem +fp = open('/flash/config.json','r') +buf = fp.read() + +# Start the Pygate +machine.pygate_init(buf) + +``` + +A sample `config.json` file for gateway configuration in EU868 region: + +```json +{ + "SX1301_conf": { + "lorawan_public": true, + "clksrc": 1, + "antenna_gain": 0, + "radio_0": { + "enable": true, + "type": "SX1257", + "freq": 867500000, + "rssi_offset": -164.0, + "tx_enable": true, + "tx_freq_min": 863000000, + "tx_freq_max": 870000000 + }, + "radio_1": { + "enable": true, + "type": "SX1257", + "freq": 868500000, + "rssi_offset": -164.0, + "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": 5, + "rf_power": 9, + "dig_gain": 3 + }, + "tx_lut_1": { + "pa_gain": 0, + "mix_gain": 5, + "rf_power": 9, + "dig_gain": 3 + }, + "tx_lut_2": { + "pa_gain": 0, + "mix_gain": 5, + "rf_power": 9, + "dig_gain": 3 + }, + "tx_lut_3": { + "pa_gain": 0, + "mix_gain": 5, + "rf_power": 9, + "dig_gain": 3 + }, + "tx_lut_4": { + "pa_gain": 0, + "mix_gain": 5, + "rf_power": 9, + "dig_gain": 3 + }, + "tx_lut_5": { + "pa_gain": 0, + "mix_gain": 5, + "rf_power": 9, + "dig_gain": 3 + }, + "tx_lut_6": { + "pa_gain": 0, + "mix_gain": 5, + "rf_power": 9, + "dig_gain": 3 + }, + "tx_lut_7": { + "pa_gain": 0, + "mix_gain": 6, + "rf_power": 11, + "dig_gain": 3 + }, + "tx_lut_8": { + "pa_gain": 0, + "mix_gain": 5, + "rf_power": 13, + "dig_gain": 2 + }, + "tx_lut_9": { + "pa_gain": 0, + "mix_gain": 8, + "rf_power": 14, + "dig_gain": 3 + }, + "tx_lut_10": { + "pa_gain": 0, + "mix_gain": 6, + "rf_power": 15, + "dig_gain": 2 + }, + "tx_lut_11": { + "pa_gain": 0, + "mix_gain": 6, + "rf_power": 16, + "dig_gain": 1 + }, + "tx_lut_12": { + "pa_gain": 0, + "mix_gain": 9, + "rf_power": 17, + "dig_gain": 3 + }, + "tx_lut_13": { + "pa_gain": 0, + "mix_gain": 10, + "rf_power": 18, + "dig_gain": 3 + }, + "tx_lut_14": { + "pa_gain": 0, + "mix_gain": 11, + "rf_power": 19, + "dig_gain": 3 + }, + "tx_lut_15": { + "pa_gain": 0, + "mix_gain": 12, + "rf_power": 20, + "dig_gain": 3 + } + }, + + "gateway_conf": { + "gateway_ID": "XXXXXXXXXXXXXXXX", + "server_address": "router.eu.thethings.network", + "serv_port_up": 1700, + "serv_port_down": 1700, + "keepalive_interval": 10, + "stat_interval": 30, + "push_timeout_ms": 100, + "forward_crc_valid": true, + "forward_crc_error": false, + "forward_crc_disabled": false + } +} +``` diff --git a/static/gitbook/assets/PoE-NI.png b/static/gitbook/assets/PoE-NI.png new file mode 100644 index 0000000000000000000000000000000000000000..02168055dc67f11ba01b83118314ea4cf54038d4 GIT binary patch literal 49202 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 dVX~kP=*=