fix ublox gps module message bug in uhd
for the usrp compatible gpsdo using ublox gps module there is a problem if you want to use the gps message to fetch time and location. this is the bug in uhd source code that do not recognize ublox gps message. below show how to fix this bug.
first check your uhd version, just run uhd_usrp_probe, it will show uhd version like below
get uhd source:
git clone https://github.com/EttusResearch/uhd.git
get uhd source the same as your preinstall uhd version
cd uhd
git tag
git checkout v3.14.1.1
here my version is 3.14.1.1 so i checkout v3.14.1.1 but you need to modify to your version.
open uhd/host/lib/usrp/gps_ctrl.cpp
modify gp_msg_regex as below:
compile uhd
for ubuntu
sudo apt-get install autoconf automake build-essential ccache cmake cpufrequtils doxygen ethtool \
g++ git inetutils-tools libboost-all-dev libncurses5 libncurses5-dev libusb-1.0-0 libusb-1.0-0-dev \
libusb-dev python3-dev python3-mako python3-numpy python3-requests python3-scipy python3-setuptools \
python3-ruamel.yaml
cd uhd/host
mkdir build
cd build
cmake ..
make
for windows reference this:
after compile you need to replace compiled libuhd to your preinstall libuhd
find your preinstall libuhd:
cd /
sudo find -name libuhd.so
in my case it is /usr/lib/x86_64-linux-gnu/libuhd.so
so just run
cd
cd uhd
sudo cp host/build/lib/libuhd.so /usr/lib/x86_64-linux-gnu/libuhd.so