diff --git a/config.toml b/config.toml index b90fc47..64322f0 100644 --- a/config.toml +++ b/config.toml @@ -310,11 +310,25 @@ theme = "doc-theme" parent = "pytrackpysense" weight = 20 +[[menu.main]] + name = "Pytrack 2.0 X" + url = "/pytrackpysense/apireference/pytrack2/" + identifier = "pytrackpysense@apireference@pytrack2" + parent = "pytrackpysense@apireference" + weight = 10 + [[menu.main]] name = "Pytrack" url = "/pytrackpysense/apireference/pytrack/" identifier = "pytrackpysense@apireference@pytrack" parent = "pytrackpysense@apireference" + weight = 20 + +[[menu.main]] + name = "Pysense 2.0 X" + url = "/pytrackpysense/apireference/pysense2/" + identifier = "pytrackpysense@apireference@pysense2" + parent = "pytrackpysense@apireference" weight = 10 [[menu.main]] @@ -361,10 +375,10 @@ theme = "doc-theme" [[menu.main]] name = "PyGate" - url = "/tutorials/all/PyGate/" - identifier = "tutorials@all@PyGate" - parent = "tutorials@all" - weight = 10 + url = "/tutorials/PyGate/" + identifier = "tutorials@PyGate" + parent = "tutorials" + weight = 1 [[menu.main]] name = "PoE" diff --git a/content/pytrackpysense/_index.md b/content/pytrackpysense/_index.md index c7dad10..a9ac73e 100644 --- a/content/pytrackpysense/_index.md +++ b/content/pytrackpysense/_index.md @@ -4,38 +4,65 @@ aliases: - pytrackpysense/introduction.html - pytrackpysense/introduction.md - chapter/pytrackpysense + - expansion3/introduction.html + - expansion3/introduction.md + - chapter/expansion3 disable_breadcrumbs: true --- -In addition to the Expansion Board, Pycom also offers three additional sensor boards, which are ideal for quickly building a fully functioning IoT solution! Whether the application is environment sensing or asset tracking, these additional boards support a variety of sensors. +In addition to the Expansion Board, Pycom also offers three additional types of sensor boards, which are ideal for quickly building a fully functioning IoT solution! Whether the application is environment sensing or asset tracking, these additional boards support a variety of sensors. New versions of the Pytrack and Pysense are now available with additional features: -## Pytrack +## Pytrack 2.0 X + +Pytrack 2.0 X is an improved location enabled version of the Expansion Board, intended for use in GPS applications such as asset tracking or monitoring. + +![](/gitbook/assets/pytrack20X.png) + +## New Features on Pytrack 2.0 X + +* External 6 pin connector to add new Pycom sensor range Pynodes. You can technically have upto 256 nodes connected in a daisy chain (data bus) although we are sure you would never reach that number +* SMA connector for External active / passive GPS antennas when the built-in GPS antenna needs a boost! +* circuity to enable full power down of module for hard resets without needing to put module in Deep sleep. +* safeboot button for when things go wrong + +## Pysense 2.0 X + +Pysense 2.0 X is an improved sensor packed version of the Expansion Board, intended for use in environment sensing applications such as temperature, humidity monitoring, and light sensing. + +![](/gitbook/assets/pysense20X.png) + +## New Features on Pysense 2.0 X + +* External 6 pin connector to add new Pycom sensor range Pynodes (Coming Soon!) +* A new circuity to enable full power down of module for hard resets without needing to put module in Deep sleep. +* Enhanced isolation of onboard sensors to improve reliability of sensor reporting. +* New safeboot button for when things go wrong + +## Pytrack 1 Pytrack is a location enabled version of the Expansion Board, intended for use in GPS applications such as asset tracking or monitoring. -![](/gitbook/assets/pytrack%20%281%29.png) +![](/gitbook/assets/pytrack.png) ### Features & Hardware The Pytrack is has a number of features including GPS, 3-Axis Accelerometer and Battery Charger. See the list below for detailed specifics about each sensor, including datasheets. * Serial USB -* 3-Axis Accelerometer ([LIS2HH12](/pytrackpysense/apireference/pytrack.md#3-axis-accelerometer-lis-2-hh-12)) +* 3-Axis Accelerometer ([LIS2HH12](apireference/pytrack.md#3-axis-accelerometer-lis-2-hh-12)) * Battery Charger (BQ24040 with JST connector) -* GPS and GLONASS ([L76-L](/pytrackpysense/apireference/pytrack.md#gps-with-glonass-quectel-l-76-l-gnss)) +* GPS and GLONASS ([L76-L](apireference/pytrack.md#gps-with-glonass-quectel-l-76-l-gnss)) * MicroSD Card Reader All of the included sensors are connected to the Pycom device via the I2C interface. These pins are located at `P22` (SDA) and `P21` (SCL). -You can find the datasheet and more info here: +You can find the datasheet and more info here: {{% refname "../datasheets/boards/pytrack.md" %}} -{{% refname "/datasheets/boards/pytrack" %}}s - -## Pysense +## Pysense 1 Pysense is a sensor packed version of the Expansion Board, intended for use in environment sensing applications such as temperature, humidity monitoring, and light sensing. -![](/gitbook/assets/pysense%20%281%29.png) +![](/gitbook/assets/pysense.png) ### Features & Hardware @@ -51,23 +78,21 @@ The Pysense is packed with a number of sensors and hardware, see the list below All of the included sensors are connected to the Pycom device via the I2C interface. These pins are located at `GPI09` (SDA) and `GPI08` (SCL). -You can find the datasheet and more info here: - -{{% refname "../datasheets/boards/pysense.md" %}} +You can find the datasheet and more info here: {{% refname "../datasheets/boards/pysense.md" %}} ## Pyscan Pyscan is a RFID-NFC enabled version of the Expansion Board, intended for use in scanning applications, such as RFID/NFC readers. -![](/gitbook/assets/pyscan-new%20%281%29.png) +![](/gitbook/assets/pyscan.png) ### Features & Hardware The Pyscan is packed with a number of sensors and hardware, see the list below for detailed specifics about each sensor, including datasheets. -* 3-Axis Accelerometer ([LIS2HH12](/pytrackpysense/apireference/pyscan.md#3-axis-accelerometer-lis-2-hh-12)) -* Digital Ambient Light Sensor ([LTR-329ALS-01](/pytrackpysense/apireference/pyscan.md#digital-ambient-light-sensor-ltr-329-als-01)) -* RFID-NFC Chip ([MFRC63002HN](/pytrackpysense/apireference/pyscan.md#pyscan-nfc-library-mfrc-6300)) +* 3-Axis Accelerometer ([LIS2HH12](apireference/pyscan.md#3-axis-accelerometer-lis-2-hh-12)) +* Digital Ambient Light Sensor ([LTR-329ALS-01](apireference/pyscan.md#digital-ambient-light-sensor-ltr-329-als-01)) +* RFID-NFC Chip ([MFRC63002HN](apireference/pyscan.md#pyscan-nfc-library-mfrc-6300)) * Serial USB * Battery Charger (BQ24040 with JST connector) * MicroSD Card Reader @@ -75,6 +100,4 @@ The Pyscan is packed with a number of sensors and hardware, see the list below f All of the included sensors are connected to the Pycom device via the I2C interface. These pins are located at `P22` (SDA) and `P21` (SCL). -You can find the datasheet and more info here: - -{{% refname "../datasheets/boards/pyscan.md" %}} +You can find the datasheet and more info here: {{% refname "../datasheets/boards/pyscan.md" %}} diff --git a/content/pytrackpysense/apireference/_index.md b/content/pytrackpysense/apireference/_index.md index 2a42b5e..34e32cf 100644 --- a/content/pytrackpysense/apireference/_index.md +++ b/content/pytrackpysense/apireference/_index.md @@ -5,3 +5,7 @@ aliases: To simplify usability, APIs for the libraries have been created, abstracting away the low level interactions with the sensors. The next following pages refer to the respective libraries for the Pytrack, Pysense, and Pyscan. +{{% hint style="info" %}} +Please note that updated libraries are available for the Pytrack 2.0 X and Pysense 2.0 X in the pytrack-2 and pysense-2 directories on GitHub. +These new libraries will allow you to use the new additional features. +{{% /hint %}} diff --git a/content/pytrackpysense/apireference/pysense2.md b/content/pytrackpysense/apireference/pysense2.md new file mode 100644 index 0000000..29062b9 --- /dev/null +++ b/content/pytrackpysense/apireference/pysense2.md @@ -0,0 +1,128 @@ +--- +title: "Pysense 2.0 X" +aliases: + - pytrackpysense/apireference/pysense2.html + - pytrackpysense/apireference/pysense2.md + - chapter/pytrackpysense/apireference/pysense2 +--- + +This chapter describes the various libraries which are designed for the Pysense board. This includes details about the various methods and classes available for each of the Pysense's sensors. + +## 3-Axis Accelerometer (LIS2HH12) + +Pysense has a 3-Axis Accelerometer that provides outputs for acceleration as well as roll, pitch and yaw. + +### Constructors + +#### class LIS2HH12(pysense = None, sda = 'P22', scl = 'P21') + +Creates a `LIS2HH12` object, that will return values for acceleration, roll, pitch and yaw. Constructor must be passed a Pysense or I2C object to successfully construct. + +### Methods + +#### LIS2HH12.acceleration() + +Read the acceleration from the `LIS2HH12`. Returns a **tuple** with the 3 values of acceleration (G). + +#### LIS2HH12.roll() + +Read the current roll from the `LIS2HH12`. Returns a **float** in degrees in the range -180 to 180. + +#### LIS2HH12.pitch() + +Read the current pitch from the `LIS2HH12`. Returns a **float** in degrees in the range -90 to 90. Once the board tilts beyond this range the values will repeat. This is due to a lack of yaw measurement, making it not possible to know the exact orientation of the board. + +## Digital Ambient Light Sensor (LTR-329ALS-01) + +Pysense has a dual light sensor that provides outputs for external light levels in lux. See the datasheet for more information about the wavelengths of the two sensors. + +### Constructors + +#### class LTR329ALS01(pysense = None, sda = 'P22', scl = 'P21', gain = ALS\_GAIN\_1X, integration = ALS\_INT\_100, rate = ALS\_RATE\_500) + +Creates a `LTR329ALS01` object, that will return values for light in lux. Constructor must be passed a Pysense or I2C object to successfully construct. + +### Methods + +#### LTR329ALS01.light() + +Read the light levels of both `LTR329ALS01` sensors. Returns a **tuple** with two values for light levels in lux. + +### Arguments + +The following arguments may be passed into the constructor. + +* gain: `ALS_GAIN_1X`,`ALS_GAIN_2X`, `ALS_GAIN_4X`, `ALS_GAIN_8X`, `ALS_GAIN_48X`, `ALS_GAIN_96X` +* integration: `ALS_INT_50`, `ALS_INT_100`, `ALS_INT_150`, `ALS_INT_200`, `ALS_INT_250`, `ALS_INT_300`, `ALS_INT_350`, `ALS_INT_400` +* rate: `ALS_RATE_50`, `ALS_RATE_100`, `ALS_RATE_200`, `ALS_RATE_500`, `ALS_RATE_1000`, `ALS_RATE_2000` + +## Humidity and Temperature Sensor (SI7006A20) + +Pysense has a Humidity and Temperature sensor that provides values of relative humidity and external temperature. + +### Constructors + +#### class SI7006A20(pysense = None, sda = 'P22', scl = 'P21') + +Creates a `SI7006A20` object, that will return values for humidity (%) and temperature ('C). Constructor must be passed a Pysense or I2C object to successfully construct. + +### Methods + +#### SI7006A20.humidity() + +Read the relative humidity of the `SI7006A20`. Returns a **float** with the percentage relative humidity. + +#### SI7006A20.temperature() + +Read the external temperature of the `SI7006A20`. Returns a **float** with the temperature. + +## Barometric Pressure Sensor with Altimeter (MPL3115A2) + +Pysense has a Barometric Pressure sensor that provides readings for pressure, altitude as well as an additional temperature sensor. + +### Constructors + +#### class MPL3115A2(pysense = None, sda = 'P22', scl = 'P21', mode = PRESSURE) + +Creates a `MPL3115A2` object, that will return values for pressure (Pa), altitude (m) and temperature ('C). Constructor must be passed a Pysense or I2C object to successfully construct. + +### Methods + +#### MPL3115A2.pressure() + +Read the atmospheric pressure of the `MPL3115A2`. Returns a **float** with the pressure in (Pa). + +#### MPL3115A2.altitude() + +Read the altitude of the `MPL3115A2`. Returns a **float** with the altitude in (m). + +#### MPL3115A2.temperature() + +Read the temperature of the `MPL3115A2`. Returns a **float** with the temperature in ('C). + +### Arguments + +The following arguments may be passed into the constructor. + +* mode: `PRESSURE`, `ALTITUDE` + +### Constructors + +#### class Pytrack(i2c=None, sda='P22', scl='P21') + +Initialise I2C communication with the supervisor MCU + +### Methods + +#### Pysense.sd_power(enabled=True) + +This command allows switching the power supply for the SD card (VCC + PullUP resistors) + +#### Pysense.sensor_power(enabled=True) + +This command allows switching the power supply for the onboard sensors and any sensors connected through the external 6-pin connector + + +{{% hint style="info" %}} +Please note that more functionality is being added weekly to these libraries. If a required feature is not available, feel free to contribute with a pull request at the [Libraries GitHub repository](https://github.com/pycom/pycom-libraries) +{{% /hint %}} diff --git a/content/pytrackpysense/apireference/pytrack2.md b/content/pytrackpysense/apireference/pytrack2.md new file mode 100644 index 0000000..48a9ee0 --- /dev/null +++ b/content/pytrackpysense/apireference/pytrack2.md @@ -0,0 +1,84 @@ +--- +title: "Pytrack 2.0 X" +aliases: + - pytrackpysense/apireference/pytrack2.html + - pytrackpysense/apireference/pytrack2.md + - chapter/pytrackpysense/apireference/pytrack2 +--- + +This chapter describes the various libraries which are designed for the Pytrack board. This includes details about the various methods and classes available for each of the Pytrack's sensors. + +## 3-Axis Accelerometer (LIS2HH12) + +Pytrack has a 3-Axis Accelerometer that provides outputs for acceleration as well as roll, pitch and yaw. + +### Constructors + +#### class LIS2HH12(pytrack = None, sda = 'P22', scl = 'P21') + +Creates a `LIS2HH12` object, that will return values for acceleration, roll, pitch and yaw. Constructor must be passed a Pytrack or I2C object to successfully construct. + +### Methods + +#### LIS2HH12.acceleration() + +Read the acceleration from the `LIS2HH12`. Returns a **tuple** with the 3 values of acceleration (G). + +#### LIS2HH12.roll() + +Read the current roll from the `LIS2HH12`. Returns a **float** in degrees in the range -180 to 180. + +#### LIS2HH12.pitch() + +Read the current pitch from the `LIS2HH12`. Returns a **float** in degrees in the range -90 to 90. Once the board tilts beyond this range the values will repeat. This is due to a lack of yaw measurement, making it not possible to know the exact orientation of the board. + +## GPS with GLONASS (Quectel L76-L GNSS) + +Pytrack has a GPS (with GLONASS) that provides outputs longitude/latitude, speed and other information about the Pytrack's location. + +### Constructors + +#### class L76GNSS(pytrack = None, sda = 'P22', scl = 'P21', timeout = None) + +Creates a `L76GNSS` object, that will return values for longitude and latitude. Constructor must be passed a Pytrack or I2C object to successfully construct. Set the `timeout` to a time period (in seconds) for the GPS to search for a lock. If a lock is not found by the time the `timeout` has expired, the `coordinates` method will return `(None, None)`. + +### Methods + +#### L76GNSS.coordinates(debug = False) + +Read the longitude and latitude from the `L76GNSS`. Returns a **tuple** with the longitude and latitude. With `debug` set to `True` the output from the GPS is verbose. + +#### L76GNSS.dump_nmea() + +Continuously print nmea sentences received from the `L76GNSS` to the REPL. This is useful if you want to use a graphical tool over UART to visualise GPS reception + +#### L76GNSS.write() + +Send commands to the `L76GNSS`. This function should only be used if advised by Pycom for a specific purpose. + +## Pytrack class to control supervisor MCU + +### Constructors + +#### class Pytrack(i2c=None, sda='P22', scl='P21') + +Initialise I2C communication with the supervisor MCU + +### Methods + +#### Pytrack.sd_power(enabled=True) + +This command allows switching the power supply for the SD card (VCC + PullUP resistors). + +#### Pytrack.sensor_power(enabled=True) + +This command allows switching the power supply for the GPS module and any sensors connected through the external 6-pin connector. + +#### Pytrack.gps_standby(enabled=True) + +This command allows switching the GPS module into stand-by mode. The GPS module is no longer accessible via I2C in this case. + + +{{% hint style="info" %}} +Please note that more functionality is being added regularly to these libraries. If a required feature is not available, feel free to contribute with a pull request at the [Libraries GitHub repository](https://github.com/pycom/pycom-libraries) +{{% /hint %}} diff --git a/content/pytrackpysense/installation/_index.md b/content/pytrackpysense/installation/_index.md index 63ecd19..29b430d 100644 --- a/content/pytrackpysense/installation/_index.md +++ b/content/pytrackpysense/installation/_index.md @@ -5,3 +5,7 @@ aliases: As the development for these devices are on going with additional features being added, every week, it is essential to ensure you frequently check for updates on the Pytrack/Pysense/Pyscan. As well as updating the device firmware, it is important to check the [GitHub repository](https://github.com/pycom/pycom-libraries) for the respective library files as they as also being updated, to include additional features/functionality. +{{% hint style="info" %}} +Please note that updated libraries are available for the Pytrack 2.0 X and Pysense 2.0 X in the pytrack-2 and pysense-2 directories on GitHub. +These new libraries will allow you to use the new additional features. +{{% /hint %}} diff --git a/content/pytrackpysense/installation/drivers.md b/content/pytrackpysense/installation/drivers.md index 9219108..52a5c33 100644 --- a/content/pytrackpysense/installation/drivers.md +++ b/content/pytrackpysense/installation/drivers.md @@ -6,7 +6,7 @@ aliases: - chapter/pytrackpysense/installation/drivers --- -Pytrack and Pysense will work out of the box for Windows 8/10/+, macOS as well as Linux. If using Windows 7, drivers to support the boards will need to be installed. +Pytrack and Pysense will work out of the box for Windows 8/10/+ (please download the correct driver through Windows Update), macOS as well as Linux. If using Windows 7, drivers to support the boards will need to be installed. Please follow the instructions below to install the required drivers. @@ -14,7 +14,9 @@ Please follow the instructions below to install the required drivers. Please download the driver software from the link below. -[Pytrack/Pysense/Pyscan/Expansion Board 3 Driver](https://docs.pycom.io/pytrackpysense/installation/pycom.inf) +[Unsigned driver for Windows 7 compatible with Pycom products](/gitbook/assets/pycom.inf.zip) +Please note that this driver is not suitable for the Expansion Board 1 & 2. +As these drivers are not signed, you may need to disable driver signing enforcement in your Windows operating system. ## Installation @@ -24,7 +26,7 @@ First navigate open the Windows start menu and search/navigate to `Device Manage Right click the device and select `Update Driver Software`. -![](/gitbook/assets/win7-2%20%281%29.png) +![](/gitbook/assets/win7-2.png) Select the option to **Browse my computer for driver software**. @@ -32,15 +34,15 @@ Select the option to **Browse my computer for driver software**. Next you will need to navigate to where you downloaded the driver to (e.g. **Downloads** Folder). -![](/gitbook/assets/win7-4%20%281%29.png) +![](/gitbook/assets/win7-4.png) Specify the folder in which the drivers are contained. If you haven't extracted the `.zip` file, please do this before selecting the folder. -![](/gitbook/assets/win7-5%20%281%29.png) +![](/gitbook/assets/win7-5.png) You may receive a warning, suggesting that windows can't verify the publisher of this driver. Click `Install this driver software anyway` as this link points to our official driver. -![](/gitbook/assets/win7-6%20%281%29.png) +![](/gitbook/assets/win7-6.png) If the installation was successful, you should now see a window specifying that the driver was correctly installed. diff --git a/content/pytrackpysense/installation/firmware.md b/content/pytrackpysense/installation/firmware.md index 6f15764..4e50c5d 100644 --- a/content/pytrackpysense/installation/firmware.md +++ b/content/pytrackpysense/installation/firmware.md @@ -8,10 +8,14 @@ aliases: To update the firmware on the Pysense/Pytrack/Pyscan/Expansion Board v3, please see the following instructions. The firmware of Pysense/Pytrack/Pyscan/Expansion Board v3 can be updated via the USB port using the terminal tool, `DFU-util`. +{{% hint style="danger" %}} +There is currently **no firmware update** released for the new **Pytrack 2.0 X** and **Pysense 2.0 X**. Please do not try to flash these boards with firmware released for the old Version 1 hardware revision. The hardware revision is printed on the bottom of the shield. +{{% /hint %}} + The latest firmware DFU file can be downloaded from the links below: -* [Pytrack DFU](https://software.pycom.io/findupgrade?key=pytrack.dfu&type=all&redirect=true) -* [Pysense DFU](https://software.pycom.io/findupgrade?key=pysense.dfu&type=all&redirect=true) +* [Pytrack 1 DFU](https://software.pycom.io/findupgrade?key=pytrack.dfu&type=all&redirect=true) +* [Pysense 1 DFU](https://software.pycom.io/findupgrade?key=pysense.dfu&type=all&redirect=true) * [Expansion Board DFU v3.0](https://software.pycom.io/findupgrade?key=expansion3.dfu&type=all&redirect=true) * [Expansion Board DFU v3.1](https://software.pycom.io/findupgrade?key=expansion31.dfu&type=all&redirect=true) @@ -160,4 +164,3 @@ For exemple, a Pytrack board is visible as either: * this is bootloader mode (`f014` is USB PID), active just for 7-8 seconds, if the reset button was just pressed before plugging USB connector. * `Bus 020 Device 005: ID 04d8:f013 Microchip Technology Inc. Pytrack Serial: Pyabcde0` * this is normal, application mode (`f013` is USB PID), this means the bootloader verified application partition and it boot-up correctly. - diff --git a/content/pytrackpysense/installation/libraries.md b/content/pytrackpysense/installation/libraries.md index 205df95..998ebef 100644 --- a/content/pytrackpysense/installation/libraries.md +++ b/content/pytrackpysense/installation/libraries.md @@ -10,11 +10,16 @@ To utilise the sensors on the Pytrack and Pysense, Pycom has written libraries t [GitHub Repository](https://github.com/pycom/pycom-libraries) +{{% hint style="info" %}} +Please note that updated libraries are available for the Pytrack 2.0 X and Pysense 2.0 X in the pytrack-2 and pysense-2 directories on GitHub. +These new libraries will allow you to use the new additional features. +{{% /hint %}} + Download the repository as a `.zip` file, navigate to the correct device (Pysense/Pytrack), extract the files and then upload the desired files to the device in the instructions below. ## Uploading the Libraries to a Device -These libraries should be uploaded to a device (LoPy, SiPy, WiPy 2.0, etc.) in the same process as a standard MicroPython library. The various `.py` files should be placed into the `/lib` folder on the device. For example, if using the Pysense and the user wishes to enable the only Accelerometer and the Light Sensor, they should place the following `.py` files into the device's `/lib` folder: +These libraries should be uploaded to a device (LoPy, SiPy, WiPy 3.0, etc.) in the same process as a standard MicroPython library. The various `.py` files should be placed into the `/lib` folder on the device. For example, if using the Pysense and the user wishes to enable the only Accelerometer and the Light Sensor, they should place the following `.py` files into the device's `/lib` folder: ```text - pysense.py @@ -24,7 +29,7 @@ These libraries should be uploaded to a device (LoPy, SiPy, WiPy 2.0, etc.) in t Add as many or as few of the libraries that are required. -In addition to the Pysense or Pytrack specific libraries, you also need to upload the `pycoproc.py` file from the `_lib/pycoproc_` folder inside the libraries archive. +In addition to the Pysense or Pytrack specific libraries, for hardware version 1.x boards you also need to upload the `pycoproc.py` file from the `_lib/pycoproc_` folder inside the libraries archive. For the Pytrack 2.0 X and Pysense 2.0 X, the pycoproc.py file is included in the pytrack-2 and pysense-2 directories to avoid confusion over which library to use. {{% hint style="info" %}} The Pytrack and Pysense boards behave the same as the Expansion Board. `Upload`, `Run` and upload code to Pycom modules via the Pymakr Plugin, in exactly the same process. @@ -44,4 +49,3 @@ lt = LTR329ALS01(py) print(lt.light()) ``` - diff --git a/content/pytrackpysense/introduction.md b/content/pytrackpysense/introduction.md index 9362118..526f216 100644 --- a/content/pytrackpysense/introduction.md +++ b/content/pytrackpysense/introduction.md @@ -6,13 +6,39 @@ aliases: - chapter/pytrackpysense --- -In addition to the Expansion Board, Pycom also offers three additional sensor boards, which are ideal for quickly building a fully functioning IoT solution! Whether the application is environment sensing or asset tracking, these additional boards support a variety of sensors. +In addition to the Expansion Board, Pycom also offers three additional types of sensor boards, which are ideal for quickly building a fully functioning IoT solution! Whether the application is environment sensing or asset tracking, these additional boards support a variety of sensors. New versions of the Pytrack and Pysense are now available with additional features: -## Pytrack +## Pytrack 2.0 X + +Pytrack 2.0 X is an improved location enabled version of the Expansion Board, intended for use in GPS applications such as asset tracking or monitoring. + +![](/gitbook/assets/pytrack20X.png) + +## New Features on Pytrack 2.0 X + +* External 6 pin connector to add new Pycom sensor range Pynodes. You can technically have upto 256 nodes connected in a daisy chain (data bus) although we are sure you would never reach that number +* SMA connector for External active / passive GPS antennas when the built-in GPS antenna needs a boost! +* circuity to enable full power down of module for hard resets without needing to put module in Deep sleep. +* safeboot button for when things go wrong + +## Pysense 2.0 X + +Pysense 2.0 X is an improved sensor packed version of the Expansion Board, intended for use in environment sensing applications such as temperature, humidity monitoring, and light sensing. + +![](/gitbook/assets/pysense20X.png) + +## New Features on Pysense 2.0 X + +* External 6 pin connector to add new Pycom sensor range Pynodes (Coming Soon!) +* A new circuity to enable full power down of module for hard resets without needing to put module in Deep sleep. +* Enhanced isolation of onboard sensors to improve reliability of sensor reporting. +* New safeboot button for when things go wrong + +## Pytrack 1 Pytrack is a location enabled version of the Expansion Board, intended for use in GPS applications such as asset tracking or monitoring. -![](/gitbook/assets/pytrack%20%281%29.png) +![](/gitbook/assets/pytrack.png) ### Features & Hardware @@ -26,15 +52,13 @@ The Pytrack is has a number of features including GPS, 3-Axis Accelerometer and All of the included sensors are connected to the Pycom device via the I2C interface. These pins are located at `P22` (SDA) and `P21` (SCL). -You can find the datasheet and more info here: +You can find the datasheet and more info here: {{% refname "../datasheets/boards/pytrack.md" %}} -{{% refname "../datasheets/boards/pytrack.md" %}} - -## Pysense +## Pysense 1 Pysense is a sensor packed version of the Expansion Board, intended for use in environment sensing applications such as temperature, humidity monitoring, and light sensing. -![](/gitbook/assets/pysense%20%281%29.png) +![](/gitbook/assets/pysense.png) ### Features & Hardware @@ -50,15 +74,13 @@ The Pysense is packed with a number of sensors and hardware, see the list below All of the included sensors are connected to the Pycom device via the I2C interface. These pins are located at `GPI09` (SDA) and `GPI08` (SCL). -You can find the datasheet and more info here: - -{{% refname "../datasheets/boards/pysense.md" %}} +You can find the datasheet and more info here: {{% refname "../datasheets/boards/pysense.md" %}} ## Pyscan Pyscan is a RFID-NFC enabled version of the Expansion Board, intended for use in scanning applications, such as RFID/NFC readers. -![](/gitbook/assets/pyscan-new%20%281%29.png) +![](/gitbook/assets/pyscan.png) ### Features & Hardware @@ -74,7 +96,4 @@ The Pyscan is packed with a number of sensors and hardware, see the list below f All of the included sensors are connected to the Pycom device via the I2C interface. These pins are located at `P22` (SDA) and `P21` (SCL). -You can find the datasheet and more info here: - -{{% refname "../datasheets/boards/pyscan.md" %}} - +You can find the datasheet and more info here: {{% refname "../datasheets/boards/pyscan.md" %}} diff --git a/content/tutorials/all/PyGate.md b/content/tutorials/PyGate.md similarity index 78% rename from content/tutorials/all/PyGate.md rename to content/tutorials/PyGate.md index e29202e..d0604c8 100644 --- a/content/tutorials/all/PyGate.md +++ b/content/tutorials/PyGate.md @@ -2,23 +2,29 @@ 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) +{{% hint style="info" %}} +While the Pygate shield has the radio chips required to act as a LoRaWAN gateway, it will require a WiPy3, GPy or LoPy4 to run the LoRaWAN gateway software and provide connectivity to the LoRaWAN server (TTN / ChirpStack etc.) via WiFi, Ethernet (with the optional PyEthernet adapter) or LTE-M (a GPy with a mobile subscription is required for LTE-M connectivity). +{{% /hint %}} + +A USB connection is recommended for the initial firmware update of the Pycom development module (WiPy 3, GPy, LoPy4) and to upload the configuration & start-up script. The module can be updated over the air via WiFi / LTE-M (depending on network capabilities) or via Ethernet connection which allows installation of the gateway in remote locations. + +The Pygate board can have the PyEthernet adapter connected which allows an Ethernet connection. The PyEthernet also supports PoE. Please check the separate [page and warning for PoE-NI!](/tutorials/all/poe) ### Quickstart -To connect your Pygate to a LoRa server, follow these steps: +To connect your Pygate to a LoRa server, please 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 a WiPy 3, GPy or LoPy 4 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. Flash the Pycom Device with with a firmware build where Pygate functionality is enabled. In the firmware update tool, please choose pygate as the firmware type. +1. Create a `config.json` for your Pygate and upload it (please check the template further below). +1. Create a `main.py` that creates an uplink (wifi, ethernet or lte) and runs the LoRa packet forwarder (see example below). +1. Run the `main.py`. This file is automatically execute every time the module resets. +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 messages 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. +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 sufficient to update the example below with your GW ID, the LoRa server address and port number. ### Example TTN Wifi diff --git a/static/gitbook/assets/pycom.inf.zip b/static/gitbook/assets/pycom.inf.zip new file mode 100644 index 0000000..f1a8d05 Binary files /dev/null and b/static/gitbook/assets/pycom.inf.zip differ diff --git a/static/gitbook/assets/pyscan.png b/static/gitbook/assets/pyscan.png index dc4a851..01d34b2 100644 Binary files a/static/gitbook/assets/pyscan.png and b/static/gitbook/assets/pyscan.png differ diff --git a/static/gitbook/assets/pysense.png b/static/gitbook/assets/pysense.png index 25ee421..80b9f30 100644 Binary files a/static/gitbook/assets/pysense.png and b/static/gitbook/assets/pysense.png differ diff --git a/static/gitbook/assets/pysense20X.png b/static/gitbook/assets/pysense20X.png new file mode 100644 index 0000000..926f5e7 Binary files /dev/null and b/static/gitbook/assets/pysense20X.png differ diff --git a/static/gitbook/assets/pytrack.png b/static/gitbook/assets/pytrack.png index 17a0415..39c4d2d 100644 Binary files a/static/gitbook/assets/pytrack.png and b/static/gitbook/assets/pytrack.png differ diff --git a/static/gitbook/assets/pytrack20X.png b/static/gitbook/assets/pytrack20X.png new file mode 100644 index 0000000..08e85fd Binary files /dev/null and b/static/gitbook/assets/pytrack20X.png differ