semuconsulting / pyubx2

Python library for parsing and generating UBX GPS/GNSS protocol messages.
BSD 3-Clause "New" or "Revised" License
173 stars 66 forks source link

I think this could become slightly more higher level. #111

Closed epigramx closed 1 year ago

epigramx commented 1 year ago

I mean you went all the way to abstracting it with attributes out of the messages it receives and sends and it remains in need of checking the documentation on the protocols in most cases. What I mean is methods like "just turn off the messages of class X and ID Y"; or "turn on messages if their port type is USB"; it's already great just mentioning it feels it can be more.

semuadmin commented 1 year ago

Sorry @epigramx I'm not entirely clear what the issue is here?

pyubx2 is a UBX parser and generation utility library - it's not an end-user application. If you need higher level functionality - like for example the ability to turn on or off all UBX messages of a certain category - then it's a relatively simple matter to build this yourself using this library. There are plenty of examples in the /examples folder, but if you need specific guidance, raise a query in the Discussions channel and we'll do our best to assist.

PyGPSClient is an example of an end-user application which uses the pyubx2 library, and it does have the functionality you're describing as well as the ability to define custom command strings as 'presets'. See the following links for further information:

https://github.com/semuconsulting/PyGPSClient https://github.com/semuconsulting/PyGPSClient#userdefined

In addition, pygnssutils offers a set of command line utilities including a setrate function which allows you to set the rate for a given message using a simple terminal command. Again, if you would like to see additional command line functionality, make a suggestion in the pygnssutils Discussion Channel.