Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/build_documentation.yml
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ jobs:
python-version: 3.x

- name: Install Python dependencies
run: pip install mkdocs-monorepo-plugin mkdocs-redirects mkdocs-git-revision-date-localized-plugin mkdocs-git-committers-plugin-2 Pillow 'mkdocs-material[imaging]'
run: pip install -r requirements.txt

- name: Set up build cache
run: echo "cache_id=$(date --utc '+%V')" >> $GITHUB_ENV
Expand Down
65 changes: 65 additions & 0 deletions .github/workflows/update_documentation.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
name: Build Documentation

# Allows you to run this workflow manually from the Actions tab
on:
workflow_dispatch:
branches: ["main"]

# Allows this workflow to run automatically on pushes/commits
# on:
# push:
# branches: ["main"]

# Sets permissions of the GITHUB_TOKEN to allow files to be committed to gh-pages branch
permissions:
contents: write


jobs:
deploy:
runs-on: ubuntu-latest

steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
submodules: recursive
fetch-depth: 0
sparse-checkout: |
docs/modules.md
docs/carriers.md
docs/system_overview.md
docs/resources.md
flex_boards/
overrides/.icons/

- name: Update submodules
run: |
git submodule update --init --recursive
git submodule update --recursive --remote

- name: Install pgnquant for optimize plugin
run: sudo apt-get install pngquant

- name: Set up Python runtime
uses: actions/setup-python@v5
with:
python-version: 3.x

- name: Install Python dependencies
run: pip install -r requirements.txt

- name: Set up build cache
run: echo "cache_id=$(date --utc '+%V')" >> $GITHUB_ENV
- uses: actions/cache@v4
with:
key: mkdocs-material-${{ env.cache_id }}
path: .cache
restore-keys: |
mkdocs-material-

- name: Install Insiders build
env:
MKDOCS_TOKEN: ${{ secrets.MKDOCS_SECRET }}
run: pip install git+https://${MKDOCS_TOKEN}@github.com/squidfunk/mkdocs-material-insiders.git
- run: mkdocs gh-deploy --force
2 changes: 1 addition & 1 deletion docs/modules.md
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@
</article>


- **SparkPNT GNSS Flex Module - ZED-X20P & IM19 IMU**
- **SparkPNT GNSS Flex Module - ZED-X20P**

---

Expand Down
11 changes: 4 additions & 7 deletions docs/resources.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,10 +33,10 @@
- Component Documentation
- :fontawesome-solid-file-pdf: [Product Specifications](SparkPNT_GNSS_Flex_Module_LG290P/assets/component_documentation/Quectel_LG290P03_GNSS_Module_Specification_V1.2.pdf)
- :fontawesome-solid-file-pdf: [Protocol Specification](SparkPNT_GNSS_Flex_Module_LG290P/assets/component_documentation/quectel_lg290p03lgx80p03_gnss_protocol_specification_v1-1.pdf)
- :fontawesome-solid-file-pdf: [RTK Application Note](SparkPNT_GNSS_Flex_Module_LG290P/assets/component_documentation/quectel_lg290p03lgx80p03_rtk_application_note_v1-1.pdf)
- :fontawesome-solid-file-pdf: [Base Station Mode Application Note](SparkPNT_GNSS_Flex_Module_LG290P/assets/component_documentation/quectel_lg290p03lgx80p_series_base_station_mode_application_note_v1-1.pdf)
- :fontawesome-solid-file-pdf: [Hardware Design](SparkPNT_GNSS_Flex_Module_LG290P/assets/component_documentation/quectel_lg290p03_hardware_design_v1-1.pdf)
- :fontawesome-solid-file-pdf: [Firmware Upgrade Guide](SparkPNT_GNSS_Flex_Module_LG290P/assets/component_documentation/quectel_lg290p03lgx80p03_firmware_upgrade_guide_v1-1.pdf)
- :fontawesome-solid-file-pdf: [Application Note - RTK Corrections](SparkPNT_GNSS_Flex_Module_LG290P/assets/component_documentation/quectel_lg290p03lgx80p03_rtk_application_note_v1-1.pdf)
- :fontawesome-solid-file-pdf: [Application Note - Base Station](SparkPNT_GNSS_Flex_Module_LG290P/assets/component_documentation/quectel_lg290p03lgx80p_series_base_station_mode_application_note_v1-1.pdf)
- :material-youtube: [Product Showcase](https://youtu.be/r-bhOLv4zsk)


Expand All @@ -49,9 +49,6 @@
- :fontawesome-solid-file-pdf: [Board Dimensions](SparkPNT_GNSS_Flex_Module_DAN-F10N/assets/board_files/dimensions.pdf)
- :material-folder-zip: [KiCad Files](SparkPNT_GNSS_Flex_Module_DAN-F10N/assets/board_files/kicad_files.zip)
- :material-cube-outline: [STEP File](SparkPNT_GNSS_Flex_Module_DAN-F10N/assets/3d_model/cad_model.step)
- :fontawesome-solid-computer: [u-center 2 Software](https://www.u-blox.com/en/product/u-center)
- :material-cloud-download: [Download](https://u-center2-updates.u-blox.com/u-center2-installer.exe)
- :material-book-open-variant: [User Manual](https://www.u-blox.com/en/info/u-center-2-user-guide)
- Component Documentation
- :fontawesome-solid-file-pdf: [Datasheet](https://content.u-blox.com/sites/default/files/documents/DAN-F10N_DataSheet_UBXDOC-963802114-13074.pdf)
- :fontawesome-solid-file-pdf: [Product Summary](https://content.u-blox.com/sites/default/files/documents/DAN-F10N_ProductSummary_UBXDOC-963802114-13162.pdf)
Expand All @@ -78,10 +75,10 @@
- LG290P GNSS Module
- :fontawesome-solid-file-pdf: [Product Specifications](SparkPNT_GNSS_Flex_Module_LG290P-Tilt/assets/component_documentation/Quectel_LG290P03_GNSS_Module_Specification_V1.2.pdf)
- :fontawesome-solid-file-pdf: [Protocol Specification](SparkPNT_GNSS_Flex_Module_LG290P-Tilt/assets/component_documentation/quectel_lg290p03lgx80p03_gnss_protocol_specification_v1-1.pdf)
- :fontawesome-solid-file-pdf: [RTK Application Note](SparkPNT_GNSS_Flex_Module_LG290P-Tilt/assets/component_documentation/quectel_lg290p03lgx80p03_rtk_application_note_v1-1.pdf)
- :fontawesome-solid-file-pdf: [Base Station Mode Application Note](SparkPNT_GNSS_Flex_Module_LG290P-Tilt/assets/component_documentation/quectel_lg290p03lgx80p_series_base_station_mode_application_note_v1-1.pdf)
- :fontawesome-solid-file-pdf: [Hardware Design](SparkPNT_GNSS_Flex_Module_LG290P-Tilt/assets/component_documentation/quectel_lg290p03_hardware_design_v1-1.pdf)
- :fontawesome-solid-file-pdf: [Firmware Upgrade Guide](SparkPNT_GNSS_Flex_Module_LG290P-Tilt/assets/component_documentation/quectel_lg290p03lgx80p03_firmware_upgrade_guide_v1-1.pdf)
- :fontawesome-solid-file-pdf: [Application Note - RTK Corrections](SparkPNT_GNSS_Flex_Module_LG290P-Tilt/assets/component_documentation/quectel_lg290p03lgx80p03_rtk_application_note_v1-1.pdf)
- :fontawesome-solid-file-pdf: [Application Note - Base Station](SparkPNT_GNSS_Flex_Module_LG290P-Tilt/assets/component_documentation/quectel_lg290p03lgx80p_series_base_station_mode_application_note_v1-1.pdf)
- IM19 Attitude Module
- :fontawesome-solid-file-pdf: [Datasheet](./assets/component_documentation/IM19.pdf)
- :fontawesome-solid-file-pdf: [Integration Guide](./assets/component_documentation/IM19EI_v1.4.1.pdf)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -157,11 +157,12 @@ The DAN-F10N GNSS module comes with a 20 x 20 x 8 mm, integrated, Right Hand Cir

<div class="grid cards" markdown>

<div markdown>
<div style="text-align: center;" markdown>

<article class="video-500px" style="text-align: center; margin: auto;" markdown>
<iframe src="https://www.youtube.com/embed/7_Pxe2rVFIQ" title="u-blox F10 GNSS platform for meter-level accuracy in urban environments" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
![QR code](./assets/img/qr_code/video-ublox_f10.png){ .qr width="85" }

<article class="video-500px" style="margin: auto;" markdown>
<iframe src="https://www.youtube.com/embed/7_Pxe2rVFIQ" title="u-blox F10 GNSS platform for meter-level accuracy in urban environments" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
</article>

</div>
Expand Down Expand Up @@ -366,6 +367,7 @@ The GNSS Flex system is designed around two 2x10-pin, 2mm pitch headers used mat


<div markdown>

Below, are the features that are available from the DAN-F10N GNSS receiver.

<article class="annotate" markdown>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -190,7 +190,7 @@ Before users can connect to the DAN-F10N GNSS Flex module, they will need to spe

## Arduino IDE
!!! tip
For first-time users, who have never programmed before and are looking to use the Arduino IDE, we recommend beginning with the <a href="https://www.sparkfun.com/products/15631">SparkFun Inventor's Kit (SIK)</a>, which is designed to help users get started programming with the Arduino IDE.
For first-time users, who have never programmed before and are looking to use the Arduino IDE, we recommend beginning with the <a href="https://www.sparkfun.com/sparkfun-inventor-s-kit-for-arduino-uno-v4-1.html">SparkFun Inventor's Kit (SIK)</a>, which is designed to help users get started programming with the Arduino IDE.

Most users may already be familiar with the Arduino IDE and its use. However, for those of you who have never heard the name *Arduino* before, feel free to check out the [Arduino website](https://www.arduino.cc/en/Guide/HomePage). To get started with using the Arduino IDE, check out our tutorials below:

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -157,15 +157,15 @@ The LG290P GNSS Flex module has the following features:



## LG290P GNSS Module
## LG290P GNSS Receiver
One of the centerpieces of the GNSS Flex module, is the [LG290P GNSS module](./assets/component_documentation/quectel_lg290p03_hardware_design_v1-1.pdf) from [Quectel](https://www.quectel.com/). The LG290P is a low-power, multi-band, multi-constellation GNSS receiver capable of delivering centimeter-level precision at high update rates. The built-in NIC anti-jamming unit provides professional-grade interference signal detection and elimination algorithms, which effectively mitigate against multiple narrow-band interference sources and significantly improves the signal reception performance in complex electromagnetic environments. With its performance advantages of high-precision and power consumption, this board is an ideal choice for high-precision navigation applications, such as intelligent robots, UAVs, precision agriculture, mining, surveying, and autonomous navigation.


<div class="grid cards" markdown>

<div style="text-align: center;" markdown>

![QR code to product video](./assets/img/qr_code/video-quectel_lg290p.png){ .qr width="85px" }
![QR code to product video](./assets/img/qr_code/video-lg290p.png){ .qr width="85px" }

<article class="video-500px" style="margin: auto;" markdown>
<iframe src="https://player.vimeo.com/video/1000742664?dnt=1&amp;app_id=122963" title="Quectel: Product Intro for LG290P GNSS Module" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
Expand Down Expand Up @@ -545,6 +545,7 @@ The GNSS Flex system is designed around two 2x10-pin, 2mm pitch headers used mat


<div markdown>

Below, are the features that are available from the LG290P GNSS receiver.

<article class="annotate" markdown>
Expand Down Expand Up @@ -855,7 +856,7 @@ Below, are the features that are available from the IM19 attitude module.


=== "LED Output"
The `RTK` [PTH](https://en.wikipedia.org/wiki/Through-hole_technology "Plated Through Holes") pin operates as both the `RTK_LED` status indicator for the RTK positioning and `ANT_ON` power control for the external LNA or active antenna power.
The `RTK` pin operates as both the `RTK_LED` status indicator for the RTK positioning and `ANT_ON` power control for the external LNA or active antenna power.


<figure markdown>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -106,7 +106,7 @@ In the QGNSS software, users can click on the ++"Advance"++ button, at the botto


??? example "Example - `PQTMCFGUART` Message"
As an example, try utilizing the `PQTMCFGUART` PQTM message. Enter `$PQTMCFGUART,R*` into the **Data Input*** field of the QConsole. DOn't forget to select the `NMEA` and `CRLF` options from ++"Advance"++ settings menu. If entered and configured properly, the value `36` should pop up in the **Checksum** field of the QConsole; then, click on the <kbd>:material-send:</kbd> button to send the message.
As an example, try utilizing the `PQTMCFGUART` PQTM message. Enter `$PQTMCFGUART,R*` into the **Data Input** field of the QConsole. DOn't forget to select the `NMEA` and `CRLF` options from ++"Advance"++ settings menu. If entered and configured properly, the value `36` should pop up in the **Checksum** field of the QConsole; then, click on the <kbd>:material-send:</kbd> button to send the message.


``` bash
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,9 @@
</article>


- This SparkPNT GNSS Flex module features the Quectel LG290P GNSS receiver. The LG290P module is a quad-band, multi-constellation, high-precision, RTK GNSS receiver. The module can simultaneously receive signals from the `L1`, `L2`, `L5`, and `L6`/`E6` frequency bands of the GPS, GLONASS, Galileo, BDS, QZSS, and NavIC GNSS constellations. In addition, the module supports SBAS augmentation systems (WASS, EGNOS, BDSBAS, MSAS, GAGAN, and SDCM), PPP services (Feature is still under development) (BDS PPP-B2b, QZSS CLAS, MADOCA-PPP, and Galileo HAS), RTCM, and RTK corrections for precision navigation with a fast convergence time and reliable performance.
- SparkPNT GNSS Flex modules are plug-in boards featuring different GNSS receivers. They are designed to be easily swapped for repairs and pin-compatible for upgrades. The boards have two 2x10-pin, 2mm pitch female headers connecting to carrier boards. For the LG290P GNSS receiver, these pins will break out the USB, UART (x3), and I^2^C* interfaces, along with the PPS and event signals using a standardized pinout.

This SparkPNT GNSS Flex module features the Quectel LG290P GNSS receiver. The LG290P module is a quad-band, multi-constellation, high-precision, RTK GNSS receiver. The module can simultaneously receive signals from the `L1`, `L2`, `L5`, and `L6`/`E6` frequency bands of the GPS, GLONASS, Galileo, BDS, QZSS, and NavIC GNSS constellations. In addition, the module supports SBAS augmentation systems (WASS, EGNOS, BDSBAS, MSAS, GAGAN, and SDCM), PPP services (Feature is still under development) (BDS PPP-B2b, QZSS CLAS, MADOCA-PPP, and Galileo HAS), RTCM, and RTK corrections for precision navigation with a fast convergence time and reliable performance.

The built-in NIC anti-jamming unit provides professional-grade interference signal detection and elimination algorithms, effectively mitigating multiple narrow-band interference sources and significantly improving signal reception performance in complex electromagnetic environments. Additionally, the embedded algorithms ensure reliable positioning in complex scenarios such as urban environments and deep tree cover.

Expand Down Expand Up @@ -145,15 +147,15 @@ The LG290P GNSS Flex module has the following features:



## LG290P GNSS
## LG290P GNSS Receiver
The centerpiece of the LG290P GNSS Flex module, is the [LG290P GNSS module](./assets/component_documentation/quectel_lg290p03_hardware_design_v1-1.pdf) from [Quectel](https://www.quectel.com/). The LG290P is a low-power, multi-band, multi-constellation GNSS receiver capable of delivering centimeter-level precision at high update rates. The built-in NIC anti-jamming unit provides professional-grade interference signal detection and elimination algorithms, which effectively mitigate against multiple narrow-band interference sources and significantly improves the signal reception performance in complex electromagnetic environments. With its performance advantages of high-precision and power consumption, this board is an ideal choice for high-precision navigation applications, such as intelligent robots, UAVs, precision agriculture, mining, surveying, and autonomous navigation.


<div class="grid cards" markdown>

<div style="text-align: center;" markdown>

![QR code to product video](./assets/img/qr_code/video-quectel_lg290p.png){ .qr width="85px" }
![QR code to product video](./assets/img/qr_code/video-lg290p.png){ .qr width="85px" }

<article class="video-500px" style="margin: auto;" markdown>
<iframe src="https://player.vimeo.com/video/1000742664?dnt=1&amp;app_id=122963" title="Quectel: Product Intro for LG290P GNSS Module" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
Expand Down Expand Up @@ -423,6 +425,7 @@ The GNSS Flex system is designed around two 2x10-pin, 2mm pitch headers used mat


<div markdown>

Below, are the features that are available from the LG290P GNSS receiver.

**Supported Interfaces:**
Expand All @@ -441,7 +444,7 @@ Below, are the features that are available from the LG290P GNSS receiver.


=== "UART Ports"
The LG290P GNSS has three UART ports, which can be operated and configured separately.
The LG290P GNSS receiver has three UART ports, which can be operated and configured separately.

<div class="grid" markdown>

Expand Down Expand Up @@ -625,7 +628,7 @@ Below, are the features that are available from the LG290P GNSS receiver.


=== "LED Output"
The `RTK` [PTH](https://en.wikipedia.org/wiki/Through-hole_technology "Plated Through Holes") pin operates as both the `RTK_LED` status indicator for the RTK positioning and `ANT_ON` power control for the external LNA or active antenna power.
The `RTK` pin operates as both the `RTK_LED` status indicator for the RTK positioning and `ANT_ON` power control for the external LNA or active antenna power.


<figure markdown>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -101,7 +101,7 @@ In the QGNSS software, users can click on the ++"Advance"++ button, at the botto

<figure markdown>
[![QConsole Toolbar](./assets/img/hookup_guide/qgnss-toolbar.gif){ width="400" }](./assets/img/hookup_guide/qgnss-toolbar.gif "Click to enlarge")
<figcaption markdown> ++"Right-click"++ on the mouse and select the `Show Tool` option, inside the QConsole.</figcaption>
<figcaption markdown>++"Right-click"++ on the mouse and select the `Show Tool` option, inside the QConsole.</figcaption>
</figure>


Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@
</article>

- <a href="https://www.sparkfun.com/sparkpnt-gnss-flex-module-zed-x20p-im19-imu.html">
**SparkPNT GNSS Flex Module - ZED-X20P w/ IM19 IMU**<br>
**SparkPNT GNSS Flex Module - ZED-X20P & IM19 IMU**<br>
**SKU:** GPS-28997

---
Expand Down Expand Up @@ -185,19 +185,20 @@ With its very high update rate, the ZED-X20P module is ideal for control applica

<div class="grid cards" markdown>

<div markdown>
<div style="text-align: center;" markdown>

![QR code to play video](./assets/img/qr_code/video-zed-x20p.png){ .qr width="85px" }

<article class="video-500px" style="margin: auto;" markdown>
<iframe src="https://www.youtube.com/embed/dRFR38xS2b4" title="u-blox launches the ZED-X20P. Our first all-band, global GNSS module." frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
![QR code to play video](./assets/img/qr_code/video-ublox_x20.png){ .qr }
</article>

</div>


- <figure markdown>
[![ZED-X20P module](./assets/img/hookup_guide/ZED-X20P.png){ width="400" }](./assets/img/hookup_guide/ZED-X20P.png "Click to enlarge")
<figcaption markdown>The ZED-X20P module on the breakout board.</figcaption>
<figcaption markdown>The ZED-X20P module on the ZED-X20P GNSS Flex module.</figcaption>
</figure>

</div>
Expand Down Expand Up @@ -633,6 +634,7 @@ The GNSS Flex system is designed around two 2x10-pin, 2mm pitch headers used mat


<div markdown>

Below, are the features that are available from the ZED-X20P GNSS receiver.

<article class="annotate" markdown>
Expand Down
Loading