I have been looking around for a golang implementation for binary communication with the u-blox M8-series GPS receivers via the I2C-bus. No luck so far.
I have written an implementation using the USB port and NMEA messages but I fear that will turn out to be a bit slow for my application.
After reading the specs for the u-blox (in may case the GPS is a part of the RY836AI board), I’m under the impression that the implementation will not be as trivial as the ordinary i2c-bus communication especially if using binary communication rather than the lengthy NMEA messages.
Before I spend my fast-moving youth on this project, I turn to you helpful people here. Any takers?
I am using the https://periph.io/ project for I2C communication both for the Raspberry Pi and to some extent the Rock64 as I think the devs behind it is very committed to high quality and good architecture.
The iNav project is indeed interesting as is the stratux implementation.
what is your platform ? if you are on something like Raspberry Pi, Beaglebone or any other “little” board like that, it could be easy because you got an hardware I2C interface and there are some code existing already. if you are on a regular PC, you need an hardware interface. eventually FTDI should have things like that, to connect to an USB port. and then they have drivers and examples, but you will probably have to make the golang binding…
(if you search " golang ftdi" on Google there are several replies, so maybe there’s already something…)