ENHANCEMENTS:
- Add experimental functionality to decode RXM-SFRBX navigation data dwrds on a single-pass basis. Primarily intended to demonstrate a possible approach which is consistent with core
pyubx2
processing style. Currently only handles GPS data but would be expanded to handle other GNSS if taken forward. - NB:
pyubx2
will continue to output parsed UBX data as individualUBXMessage
objects. There are no plans to enhancepyubx2
to aggregate time series data across multiple RXM-SFRBX messages or to perform conversion to other output formats e.g. RINEX, though such functionality could always be developed as a separate application of thepyubx2
library. - Add Python 3.10 to list of supported Python 3 editions (no code changes were required).
ENHANCEMENTS:
- Extend POLL message types to include NAV - thanks for Nerolf05 for contribution.
- Add bitfield definitions for TIM (timing) GET messages.
FIXES:
- Fix payload for LOG-FINDTIME SET message (incorrect u-blox documentation) - thanks to qcabrol for contribution.
ENHANCEMENTS:
- Add bitfield definitions for ESF External Sensor Fusion, HNR High Rate Navigation and LOG messages.
FIXES:
- Fix ESF-MEAS parsing with calibTtagValid flag setting (if calibTtagValid = 1, the final dataField contains the calibTtag).
- Fix NAV-SAT 'flags' bitfield parsing.
ENHANCEMENTS:
- Added new optional boolean keyword argument
parsebitfield
toUBXReader
andUBXMessage
constructors andUBXReader.parse()
static method. If True (the default),pyubx2
parses bitfields (type 'X' attributes) as individual bit flags. If False, bitfields are left as byte sequences (i.e. same behaviour aspyubx2
<=1.0.16)
ENHANCEMENTS:
-
New functionality added in
ubxmessage.py
to parse individual bit flags in bitfield ('X' type) attributes, where defined. For example, the NAV-PVT attributevalid
(X1) is now parsed as four individual bit flags:validDate
(U1),validTime
(U1),fullyResolved
(U1) andvalidMag
(U1). -
CFG, NAV & MON payload definitions updated in
ubxtypes_get.py
andubxtypes_set.py
to model bitfield ('X' type) attributes as groups of individual bit flags. Payload definitions for other message categories (MGA, RXM, etc.) will be updated in a subsequent release (contributions welcome). -
UBX messages can also be created using individual bit flag keywords.
-
NB: If you're using the associated graphical client PyGPSClient, this will need to be upgraded to v1.1.0 to accommodate the pyubx2 changes.
ENHANCEMENTS:
-
Message filter option added to ubxdump command line utility. See README for usage.
-
New payload attribute type "A" added for byte arrays (e.g. MON-SPAN spectrum attribute).
-
For ease of processing and charting, MON-SPAN spectrum attribute now parsed as a single array of integers per Rf block e.g.
spectrum_01[]
rather than as 256 separate integers per Rf block e.g.spectrum_01_01
,spectrum_01_02
, etc.
ENHANCEMENTS:
- The ubxdump.py example has been moved into the pyubx2cli module and configured as a setup entry point. It is now available as a simple command line utility. See README for usage.
ENHANCEMENTS:
- Additional configuration parameters added for NEO-D9S, ZED-F9K, ZED-F9P & ZED-F9R Receivers: CFG_NAVHPG, CFG_PMP, CFG_RTCM, CFG_SFCORE, CFG_SFIMU, CFG_SFODO
FIXES:
- CFG-DAT SET payload definition corrected.
FIXES:
- Fix CFG-NAVX5 payload definition - thanks to Nerolf05 for contribution.
FIXES:
- Fix NAV-RELPOSNED payload definition - thanks to nikitamankovskii for contribution.
FIXES:
- Fix typo error in NAV-SBAS payload - thanks to Nerofl05 for contribution.
ENHANCEMENTS:
- Add msgmode getter method to
ubxmessage.py
- - thanks to Nerofl05 for contribution.
ENHANCEMENTS:
- Add CFG_BDS_USE_PRN_1_TO_5 to list of configuration keyIDs in ubxtypes_configdb.py - thanks to Nerolf05 for contribution.
FIXES:
- Fix incorrect CFG-TMODE configuration keyIDs in ubxtypes_configdb.py.
ENHANCEMENTS:
- Add following GET/SET message types: CFG-ESFALG, CFG-ESFA, CFG-ESFG, CFG-ESFWT, CFG-HNR, CFG-SENIF, CFG-SLAS
FIXES:
- Fix incorrect HNR-PVT payload definition
ENHANCEMENTS:
- Addition CFG-SIGNAL L2 keys added to
ubxtypes_configdb.py
- thanks to horace1024 for contribution.
ENHANCEMENTS:
- UBXReader updated to accept **kwargs: 'ubxonly' and 'msgmode'. Will continue to accept *args for backwards compatibility, but these are now deprecated and may be removed in future versions.
- Minor enhancements to nominal value assignments - floats will now get nominal value of 0.0.
ENHANCEMENTS:
- Added additional helper method
get_bits()
to find value of specified (masked) bit(s) in a UBX bitfield ('X') attribute. See docstring for usage. - Docstrings updated.
Some refactoring of static and helper methods. Improved Sphinx-compliant docstrings.
ENHANCEMENTS:
- Static parse() method moved from UBXMessage to UBXReader. NB: If you were invoking parse() indirectly via the
UBXReader.read()
method, the change is transparent. If you were invokingUBXMessage.parse()
directly, this will need to be changed toUBXReader.parse()
. NB: If you're using PyGPSClient, this will need to be updated to v0.2.27-beta. - Static
calc_checksum()
andisvalid_checksum()
methods moved from UBXMessage to ubxhelpers.py as stand-alone methods. - Minor enhancements to mixed data stream validation and exception reporting.
- Docstrings updated for better sphinx-apidoc compliance.
FIXES:
- Fixed bug in UBXReader.read() which cause looping with certain mixed protocol streams.
Code streamlining.
- De-duplicate CFG-MSG definitions in ubxtypes_core.py. Definitions UBX_CONFIG_CATEGORIES & UBX_CONFIG_MESSAGES are now incorporated into UBX_CLASSES & UBX_MSGIDS. NB: PyGPSClient GUI will require update to v0.2.23.
- Update development status to Production/Stable.
Marked to major version 1.0.0.