Skip to content

Commit

Permalink
Merge pull request #160 from semuconsulting/RC-1.2.47
Browse files Browse the repository at this point in the history
Rc 1.2.47
  • Loading branch information
semuadmin authored Oct 10, 2024
2 parents 885c944 + aca89c6 commit d3a9726
Show file tree
Hide file tree
Showing 14 changed files with 98 additions and 17 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/checkpr.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: [3.8, 3.9, "3.10", "3.11", "3.12", "3.13.0-beta.3"]
python-version: [3.9, "3.10", "3.11", "3.12", "3.13.0-rc.3"]

steps:
- uses: actions/checkout@v4
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: [3.8, 3.9, "3.10", "3.11", "3.12", "3.13.0-beta.3"]
python-version: [3.9, "3.10", "3.11", "3.12", "3.13.0-rc.3"]

steps:
- uses: actions/checkout@v4
Expand Down
34 changes: 34 additions & 0 deletions .readthedocs.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
# Read the Docs configuration file for Sphinx projects
# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details

# Required
version: 2

# Set the OS, Python version and other tools you might need
build:
os: ubuntu-22.04
tools:
python: "3.12"
# You can also specify other tool versions:
# nodejs: "20"
# rust: "1.70"
# golang: "1.20"

# Build documentation in the "docs/" directory with Sphinx
sphinx:
configuration: docs/conf.py
# You can configure Sphinx to use a different builder, for instance use the dirhtml builder for simpler URLs
# builder: "dirhtml"
# Fail on all warnings to avoid broken references
# fail_on_warning: true
# Optionally build your docs in additional formats such as PDF and ePub
# formats:
# - pdf
# - epub

# Optional but recommended, declare the Python requirements required
# to build your documentation
# See https://docs.readthedocs.io/en/stable/guides/reproducible-builds.html
python:
install:
- requirements: docs/requirements.txt
2 changes: 1 addition & 1 deletion .vscode/settings.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,5 +4,5 @@
"editor.formatOnSave": true,
"modulename": "${workspaceFolderBasename}",
"distname": "${workspaceFolderBasename}",
"moduleversion": "1.2.46",
"moduleversion": "1.2.47",
}
4 changes: 2 additions & 2 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ If you're adding or amending UBX payload definitions or configuration database k
## Coding conventions

* This is open source software. Code should be as simple and transparent as possible. Favour clarity over brevity.
* The code should be compatible with Python >= 3.8.
* The code should be compatible with Python >= 3.9.
* The core code should be as generic and reusable as possible. We endeavour to limit the amount of processing dedicated to specific UBX message types, though this is sometimes unavoidable.
* Avoid external library dependencies unless there's a compelling reason not to.
* We use and recommend [Visual Studio Code](https://code.visualstudio.com/) with the [Python Extension](https://marketplace.visualstudio.com/items?itemName=ms-python.python) for development and testing.
Expand All @@ -37,7 +37,7 @@ Please write unitttest examples for new code you create and add them to the `/te

We test on the following platforms using a variety of u-blox devices from Generation 7 throught Generation 10:
* Windows 11
* MacOS (Ventura & Sonoma, Intel & Apple Silicon)
* MacOS (Intel & Apple Silicon)
* Linux (Ubuntu 22.04 LTS Jammy Jellyfish, 24.04 LTS Noble Numbat)
* Raspberry Pi OS (32-bit & 64-bit)

Expand Down
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ This is an independent project and we have no affiliation whatsoever with u-blox

The library implements a comprehensive set of inbound (SET/POLL) and outbound (GET) messages for u-blox GPS/GNSS devices from [generation 6 through generation 10](https://www.u-blox.com/en/positioning-chips-and-modules), but is readily [extensible](#extensibility). Refer to `UBX_MSGIDS` in [ubxtypes_core.py](https://github.com/semuconsulting/pyubx2/blob/master/src/pyubx2/ubxtypes_core.py) for the complete dictionary of messages currently supported. UBX protocol information sourced from public domain u-blox Interface Specifications © 2013-2021, u-blox AG.

Sphinx API Documentation in HTML format is available at [https://www.semuconsulting.com/pyubx2](https://www.semuconsulting.com/pyubx2).
Sphinx API Documentation in HTML format is available at [Read the Docs](https://pyubx2.readthedocs.io/).

Contributions welcome - please refer to [CONTRIBUTING.MD](https://github.com/semuconsulting/pyubx2/blob/master/CONTRIBUTING.md). Feel free to discuss any proposed changes beforehand in the [Discussion Channel](https://github.com/semuconsulting/pyubx2/discussions/categories/ideas).

Expand All @@ -49,7 +49,7 @@ Contributions welcome - please refer to [CONTRIBUTING.MD](https://github.com/sem
[![PyPI version](https://img.shields.io/pypi/v/pyubx2.svg?style=flat)](https://pypi.org/project/pyubx2/)
![PyPI downloads](https://img.shields.io/pypi/dm/pyubx2.svg?style=flat)

`pyubx2` is compatible with Python 3.8 - 3.13 and has no third-party library dependencies.
`pyubx2` is compatible with Python 3.9 - 3.13 and has no third-party library dependencies.

In the following, `python3` & `pip` refer to the Python 3 executables. You may need to substitute `python` for `python3`, depending on your particular environment (*on Windows it's generally `python`*).

Expand Down
7 changes: 7 additions & 0 deletions RELEASE_NOTES.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,12 @@
# pyubx2 Release Notes

### RELEASE 1.2.47

ENHANCEMENTS:

1. Add 37 additional config database keys for F9P HPG 1.50 (FYI UBX NAV-TIMETRUSTED message type 0x0164 added in this firmware version, but definition not yet publicly documented).
1. Drop active support for Python 3.8, which is now End of Life.

### RELEASE 1.2.46

ENHANCEMENTS:
Expand Down
15 changes: 14 additions & 1 deletion docs/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,20 @@
html_static_path = ["_static"]
html_last_updated_fmt = "%b %d %Y"
html_theme_options = {
"display_version": True,
"logo_only": False,
"prev_next_buttons_location": "bottom",
"style_external_links": False,
"vcs_pageview_mode": "",
"style_nav_header_background": "white",
"flyout_display": "hidden",
"version_selector": True,
"language_selector": True,
# Toc options
"collapse_navigation": True,
"sticky_navigation": True,
"navigation_depth": 4,
"includehidden": True,
"titles_only": False,
}

autodoc_default_options = {
Expand Down
1 change: 1 addition & 0 deletions docs/requirements.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
sphinx-rtd-theme
15 changes: 7 additions & 8 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,10 @@ name = "pyubx2"
authors = [{ name = "semuadmin", email = "semuadmin@semuconsulting.com" }]
maintainers = [{ name = "semuadmin", email = "semuadmin@semuconsulting.com" }]
description = "UBX protocol parser and generator"
version = "1.2.46"
version = "1.2.47"
license = { file = "LICENSE" }
readme = "README.md"
requires-python = ">=3.8"
requires-python = ">=3.9"
classifiers = [
"Operating System :: OS Independent",
"Development Status :: 5 - Production/Stable",
Expand All @@ -22,7 +22,6 @@ classifiers = [
"Intended Audience :: Science/Research",
"Intended Audience :: End Users/Desktop",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
Expand All @@ -34,11 +33,11 @@ classifiers = [
"Topic :: Scientific/Engineering :: GIS",
]

dependencies = ["pynmeagps >= 1.0.42", "pyrtcm >= 1.1.1"]
dependencies = ["pynmeagps >= 1.0.43", "pyrtcm >= 1.1.2"]

[project.urls]
homepage = "https://github.com/semuconsulting/pyubx2"
documentation = "https://www.semuconsulting.com/pyubx2/"
documentation = "https://pyubx2.readthedocs.io/"
repository = "https://github.com/semuconsulting/pyubx2"
changelog = "https://github.com/semuconsulting/pyubx2/blob/master/RELEASE_NOTES.md"

Expand All @@ -56,10 +55,10 @@ test = [
]

[tool.black]
target-version = ['py38']
target-version = ['py39']

[tool.isort]
py_version = 38
py_version = 39
profile = "black"

[tool.bandit]
Expand All @@ -70,7 +69,7 @@ skips = []
jobs = 0
reports = "y"
recursive = "y"
py-version = "3.8"
py-version = "3.9"
fail-under = "9.8"
fail-on = "E,F"
clear-cache-post-run = "y"
Expand Down
2 changes: 1 addition & 1 deletion src/pyubx2/_version.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,4 +8,4 @@
:license: BSD 3-Clause
"""

__version__ = "1.2.46"
__version__ = "1.2.47"
17 changes: 17 additions & 0 deletions src/pyubx2/ubxtypes_configdb.py
Original file line number Diff line number Diff line change
Expand Up @@ -90,6 +90,9 @@
"CFG_BATCH_WARNTHRS": (0x30260016, U2),
"CFG_BDS_USE_GEO_PRN": (0x10340014, L),
"CFG_BDS_USE_PRN_1_TO_5": (0x10340014, L), # aka CFG_BDS_USE_GEO_PRN
"CFG_GAL_OSNMA_MINTAGLENGTH": (0x20350007, U1),
"CFG_GAL_OSNMA_TIMESYNC": (0x10350009, L),
"CFG_GAL_USE_OSNMA": (0x10350005, L),
"CFG_GEOFENCE_CONFLVL": (0x20240011, E1),
"CFG_GEOFENCE_FENCE1_LAT": (0x40240021, I4),
"CFG_GEOFENCE_FENCE1_LON": (0x40240022, I4),
Expand Down Expand Up @@ -689,6 +692,11 @@
"CFG_MSGOUT_UBX_NAV_TIMEQZSS_UART1": (0x20910387, U1),
"CFG_MSGOUT_UBX_NAV_TIMEQZSS_UART2": (0x20910388, U1),
"CFG_MSGOUT_UBX_NAV_TIMEQZSS_USB": (0x20910389, U1),
"CFG_MSGOUT_UBX_NAV_TIMETRUSTED_I2C": (0x209103A8, U1),
"CFG_MSGOUT_UBX_NAV_TIMETRUSTED_SPI": (0x209103AC, U1),
"CFG_MSGOUT_UBX_NAV_TIMETRUSTED_UART1": (0x209103A9, U1),
"CFG_MSGOUT_UBX_NAV_TIMETRUSTED_UART2": (0x209103AA, U1),
"CFG_MSGOUT_UBX_NAV_TIMETRUSTED_USB": (0x209103AB, U1),
"CFG_MSGOUT_UBX_NAV_TIMEUTC_I2C": (0x2091005B, U1),
"CFG_MSGOUT_UBX_NAV_TIMEUTC_SPI": (0x2091005F, U1),
"CFG_MSGOUT_UBX_NAV_TIMEUTC_UART1": (0x2091005C, U1),
Expand Down Expand Up @@ -921,6 +929,11 @@
"CFG_MSGOUT_UBX_SEC_ECSIGN_UART1": (0x2091034B, U1),
"CFG_MSGOUT_UBX_SEC_ECSIGN_UART2": (0x2091034C, U1),
"CFG_MSGOUT_UBX_SEC_ECSIGN_USB": (0x2091034D, U1),
"CFG_MSGOUT_UBX_SEC_OSNMA_I2C": (0x209106CA, U1),
"CFG_MSGOUT_UBX_SEC_OSNMA_SPI": (0x209106CE, U1),
"CFG_MSGOUT_UBX_SEC_OSNMA_UART1": (0x209106CB, U1),
"CFG_MSGOUT_UBX_SEC_OSNMA_UART2": (0x209106CC, U1),
"CFG_MSGOUT_UBX_SEC_OSNMA_USB": (0x209106CD, U1),
"CFG_MSGOUT_UBX_SEC_SIG_I2C": (0x20910634, U1),
"CFG_MSGOUT_UBX_SEC_SIG_SPI": (0x20910638, U1),
"CFG_MSGOUT_UBX_SEC_SIG_UART1": (0x20910635, U1),
Expand Down Expand Up @@ -951,6 +964,7 @@
"CFG_MSGOUT_UBX_TIM_VRFY_UART1": (0x20910093, U1),
"CFG_MSGOUT_UBX_TIM_VRFY_UART2": (0x20910094, U1),
"CFG_MSGOUT_UBX_TIM_VRFY_USB": (0x20910095, U1),
"CFG_NAV2_NAVSPG_ONLY_AUTHDATA": (0x10170003, L),
"CFG_NAV2_OUT_ENABLED": (0x10170001, L),
"CFG_NAV2_SBAS_USE_INTEGRITY": (0x10170002, L),
"CFG_NAVHPG_DGNSSMODE": (0x20140011, E1),
Expand Down Expand Up @@ -992,6 +1006,8 @@
"CFG_NAVSPG_INFIL_MINSVS": (0x201100A1, U1),
"CFG_NAVSPG_INFIL_NCNOTHRS": (0x201100AA, U1),
"CFG_NAVSPG_INIFIX3D": (0x10110013, L),
"CFG_NAVSPG_MAX_TIMETRUSTED_ACC": (0x301100DE, U2),
"CFG_NAVSPG_ONLY_AUTHDATA": (0x101100DD, L),
"CFG_NAVSPG_OUTFIL_FACC": (0x301100B5, U2),
"CFG_NAVSPG_OUTFIL_PACC": (0x301100B3, U2),
"CFG_NAVSPG_OUTFIL_PDOP": (0x301100B1, U2),
Expand Down Expand Up @@ -1103,6 +1119,7 @@
"CFG_SEC_CFG_LOCK_UNLOCKGRP2": (0x30F6000B, U2),
"CFG_SEC_CFG_LOCK": (0x10F60009, L),
"CFG_SEC_JAMDET_SENSITIVITY_HI": (0x10F60051, L),
"CFG_SEC_SPOOFDET_SIM_SIG_DIS": (0x10F6005D, L),
"CFG_SFCORE_HNR_RATE": (0x2008001A, U1),
"CFG_SFCORE_USE_SF": (0x10080001, L),
"CFG_SFIMU_ACCEL_ACCURACY": (0x30060018, U2),
Expand Down
1 change: 1 addition & 0 deletions src/pyubx2/ubxtypes_core.py
Original file line number Diff line number Diff line change
Expand Up @@ -341,6 +341,7 @@
b"\x01\x26": "NAV-TIMELS",
b"\x01\x63": "NAV-TIMENAVIC",
b"\x01\x27": "NAV-TIMEQZSS",
# b"\x01\x64": "NAV-TIMETRUSTED", # not publicly documented
b"\x01\x21": "NAV-TIMEUTC",
b"\x01\x11": "NAV-VELECEF",
b"\x01\x12": "NAV-VELNED",
Expand Down
9 changes: 9 additions & 0 deletions src/pyubx2/ubxtypes_get.py
Original file line number Diff line number Diff line change
Expand Up @@ -2912,6 +2912,15 @@
),
"tAcc": U4,
},
# nominal definition, excluded from public HPG 1.50 interface manual:
# "NAV-TIMETRUSTED": {
# "group": (
# "None",
# {
# "data": X1,
# },
# ),
# },
"NAV-TIMEUTC": {
"iTOW": U4,
"tAcc": U4,
Expand Down

0 comments on commit d3a9726

Please sign in to comment.