Skip to main content

QZS L6 Tool: quasi-zenith satellite L6-band tool, ver.0.1.9

QZS L6 Tool

日本語

Summary

  • This set of tools displays GNSS (Global Navigation Satellite System) messages and extracts specific formatted data from the raw data of GNSS receivers, for example, RTCM format and Michibiki L6 format.
  • The suite consists of Python code that receives the messages via standard input, and the conversion results are sequentially outputted to the standard output. The use of standard error output is also possible as needed.
  • It is designed to be used in conjunction with tools such as nc of netcat, and str2str of RTKLIB.
  • Initially, it aimed to display the content of augmentation messages broadcasted by the quasi-zenith satellite Michibiki (QZS) in the L6 frequency band, including CLAS and MADO. However, it is now also capable of displaying Galileo HAS messages.
  • Semantic versioning has been applied since 2024-08-11.
  • Release note

Operating Environment

  • It is intended for use on the command line of Linux or macOS.
  • Python 3.10 or later is required.
  • With a Docker environment such as Docker Desktop, this tool can also be used on Windows, macOS, Linux, and Raspberry Pi OS inside a Linux container. The Docker image includes the Python runtime, nc, and str2str from RTKLIB 2.4.3 b34.

Installing from PyPI

python3 -m pip install qzsl6tool
qzsl6read.py < sample/2022001A.l6
str2str -in ntrip://ntrip.rnav.info.hiroshima-cu.ac.jp:80/OEM7 2>/dev/null | rtcmread.py

The PyPI package installs the required Python dependencies such as bitstring, galois, and numpy. External command-line tools such as nc and RTKLIB str2str should be installed separately when needed.

Building a Docker image

docker build -t qzsl6tool .

Executing a docker image

docker run -it --rm qzsl6tool "cd /root/qzsl6tool/test; ./do_test.sh"
docker run -it --rm qzsl6tool "qzsl6read.py < /root/qzsl6tool/sample/2022001A.l6"
docker run -it --rm qzsl6tool "str2str -in ntrip://ntrip.rnav.info.hiroshima-cu.ac.jp:80/OEM7 2>/dev/null | rtcmread.py"
docker run -it --rm -v .:/mnt qzsl6tool "qzsl6read.py < my_l6_data.l6"

When handling GNSS binary data on Windows, do not pass the binary stream through cmd.exe or PowerShell pipes. Keep input acquisition and the processing pipeline inside the container like above.

Those who use Windows Git CLI, please execute git config --global core.autocrlf input before cloning this repository. This is to avoid CR inclusion in line ends of a Python code.

Satellite Signal Display

display code
RTCM rtcmread.py
QZSS L6 qzsl6read.py
QZSS L1S qzsl1sread.py
Galileo I/NAV galinavread.py
Galileo HAS gale6read.py
BeiDou PPP-B2b bdsb2read.py

RTCM Format Conversion

conversion code
QZS L6 → RTCM message type 4050 l6rtcm4050.py

GNSS Receiver Data Conversion

GNSS receiver code QZS L6 SBAS / QZS L1S Galileo HAS Galileo I/NAV BeiDou B2b GLONASS L1OF BeiDou B1I
Allystar HD9310 option C alstread.py -l option
Pocket SDR psdrread.py -l option -e option -i option -b option
NovAtel OEM729 novread.py -e option
Septentrio mosaic-X5 septread.py -e option -b option
Septentrio mosaic-CLAS septread.py -l option
u-blox ZED-F9P ubxread.py --l1s option -i option --l1of option --b1i option

Time & Coordinate Conversion

conversion code
GPS time, GST, BST → UTC time gps2utc.py
UTC time → GPS time, GST, BST utc2gps.py
LLH → ECEF llh2ecef.py
ECEF → LLH ecef2llh.py

Directory Structure

├── c/               (contributed C source code)
├── dist/            (PyPI build artifacts; generated, not tracked by git)
├── docs/            (documentation directory)
├── python/          (Python source code directory)
├── sample/          (sample data directory)
├── test/            (test tool directory)
├── typings/         (local type stubs for pyright/Pylance)
├── CLAUDE.md        (documentation for Claude)
├── Dockerfile       (Docker image production procedure)
├── license.txt      (license description)
├── pyproject.toml   (configuration for PyPI)
├── readme-en.md     (this file, English document)
├── readme.md        (Japanese document)
├── release_note.md  (release note)
├── requirements.txt (declaration of Python package dependencies)
└── SECURITY.md      (description of reporting security vulnerabilities responsibly)

License

This project is licensed under the BSD 2-clause license.

Users are permitted to use this program for commercial and non-commercial purposes, with or without modification, but this copyright notice is required. The function rtk_crc24q() in librtcm.py utilizes the achievements of RTKLIB ver.2.4.3b34.

Copyright (c) 2022-2026 by Satoshi Takahashi
Copyright (c) 2007-2020 by Tomoji TAKASU

Metadata

Release files for qzsl6tool 0.1.9

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for qzsl6tool 0.1.9
File Size Uploaded
qzsl6tool-0.1.9.tar.gz 111.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for qzsl6tool 0.1.9
File Interpreter ABI Platform
qzsl6tool-0.1.9-py3-none-any.whl Python 3 none any Details

Total release size: 301.8 kB

Release files / qzsl6tool-0.1.9.tar.gz

Download URL qzsl6tool-0.1.9.tar.gz
Size 111.7 kB
Tags Source
SHA-256 checksum
How to use checksums
aa9ab3185a08292cd9884b42f866264291574b57d66789a838924bd4811a8f53
BLAKE2b-256 checksum
How to use checksums
e6bfe330af25d89dea7b7f812d60634433eba2c072cb1be76fc76320aca09d23
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.10.10

Release files / qzsl6tool-0.1.9-py3-none-any.whl

Download URL qzsl6tool-0.1.9-py3-none-any.whl
Size 190.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
a620296e001a288fc0f71bae78d6cb671f26c1c020de60506aa4c73319fc90eb
BLAKE2b-256 checksum
How to use checksums
706d3562d0f39d2f4d79e6e6e219c70305bfcf97c73652a5b0f329ecabef2e4e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.10.10

Release history Release notifications | RSS feed

0.1.11

2 release files

0.1.10

2 release files

This release

0.1.9 This release

2 release files

0.1.8

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page