semuconsulting / pyrtcm

Python library for parsing RTCM 3 protocol messages.
BSD 3-Clause "New" or "Revised" License
75 stars 23 forks source link

NTRIP RTCM3 message parsing fails with KeyError in `pyrtcm` with certain caster streams #10

Closed semudev2 closed 2 years ago

semudev2 commented 2 years ago

NTRIP RTCM3 message parsing fails with KeyError in pyrtcm with certain caster streams:

e.g. ntrip.data.gnss.ga.gov.au/CAS100ATA0

Seems to be a problem in the cell2rpn routine in rtcmhelpers.py which maps satellite and signal IDs to MSM message group attributes- possibly incorrect index range?

PyGPSClient version 1.3.7 pyrtcm version 0.2.8

Exception in Tkinter callback
Traceback (most recent call last):
  File "/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/tkinter/__init__.py", line 1921, in __call__
    return self.func(*args)
  File "/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/pygpsclient/app.py", line 533, in on_read
    self.process_data(raw_data, parsed_data)
  File "/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/pygpsclient/app.py", line 620, in process_data
    self.frm_console.update_console(raw_data, parsed_data)
  File "/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/pygpsclient/console_frame.py", line 115, in update_console
    data = str(parsed_data)
  File "/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/pyrtcm/rtcmmessage.py", line 267, in __str__
    prn, sig = cells[att2idx(att)]
KeyError: 10