Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
65 commits
Select commit Hold shift + click to select a range
32bcd3a
install updated files forgottent during v2.6.3 update
Stefal Feb 20, 2025
0da4a9a
fix stopping str2str_tcp.service when detecting and configuring Gnss …
Stefal Apr 20, 2025
f876489
Detect model during detection
Stefal May 22, 2025
42fc7f6
Fix #471
Stefal May 22, 2025
4d13c6c
Update Unicore_UM980_rtcm3.cfg
Stefal Jun 3, 2025
f35b46c
Update Unicore_UM982_rtcm3.cfg
Stefal Jun 3, 2025
d2b8e08
Fix #471
Stefal Jul 3, 2025
067d64a
Fix #480
Stefal Jul 3, 2025
b1522e8
update changelog
Stefal Jul 3, 2025
8bc05d2
Fix #479
Stefal Jul 3, 2025
6e0da30
fix wrong array length
Stefal Jul 4, 2025
8ef59c7
add a space between brand and model
Stefal Jul 4, 2025
e8b3340
Add UM980 adapter 3d files
Stefal Jul 17, 2025
583b58c
fix manufacturer name during detection
Stefal Jul 17, 2025
9c8642d
add mac address on gui
Stefal Jul 17, 2025
ea3756c
new python packages for debian 13
Stefal Aug 27, 2025
a258b5c
update of leaflet and bootstrap-table javascript libraries
Stefal Aug 27, 2025
8d7fece
update script to install RTKLib 2.5.0
Stefal Aug 27, 2025
6e202ab
update changelog
Stefal Aug 27, 2025
c85d836
With RTKLib-EX 2.5 -msg should be send before the -out parameter
Sep 6, 2025
d29115a
typo
Sep 6, 2025
215a46d
Use variable for RTKLib releases, and mktemp to create a directory fo…
Sep 6, 2025
1709757
exit function if we can't create the tmp directory
Sep 6, 2025
9be8450
Merge pull request #492 from Stefal/python_package_update
Stefal Sep 6, 2025
124d4d0
Merge branch 'dev' into get_model_during_detection
Stefal Sep 7, 2025
b234389
update github action
Sep 7, 2025
87fd016
Merge pull request #493 from Stefal/get_model_during_detection
Stefal Sep 7, 2025
d16123b
Add tcp port addr entry to block external access to the Gnss receiver.
Sep 10, 2025
485ad80
Merge pull request #494 from Stefal/tcp_host
Stefal Sep 10, 2025
94178bb
Add shift click to open browser with ip address
Stefal Sep 11, 2025
fa4a010
fix
Sep 11, 2025
82d1290
update to manage new firmware. need testing with firmware older than …
Sep 11, 2025
4ebc1e2
Add mount name in web page title
Sep 12, 2025
5571118
update changelog
Sep 12, 2025
ac00cf9
Merge pull request #496 from Stefal/station_name_in_title
Stefal Sep 15, 2025
a96d56f
change service type to simple
Sep 16, 2025
20bcc0c
syntax
Sep 16, 2025
dd495dc
Merge pull request #498 from Stefal/unit--switch-forking-to-simple
Stefal Sep 16, 2025
693674e
Add syslogidentifier to systemd services
Sep 19, 2025
a40544c
add silent mode in bootstrap-toggle
Sep 19, 2025
394d6c7
renaming bootstrap-toogle to force reload of the new version
Sep 19, 2025
51c4b83
reset service failed counter before starting it from the web ui
Sep 19, 2025
7216abb
Better toggle buttons behaviour
Sep 19, 2025
11df22c
the unit could be not already loaded. In this case, ResetFailedUnit f…
Sep 19, 2025
5e0c9f6
Merge pull request #503 from Stefal/new_septentrio_firmware
Stefal Oct 26, 2025
cdf2f11
Change U-Blox F9P dynamic model to static
Stefal Oct 29, 2025
6ebce0a
Fix buggy detection :
Stefal Oct 30, 2025
8518f05
use log. to error out messages
Stefal Oct 30, 2025
c01efc8
Type value in logs table for sbf, obs and 2?o files
Stefal Oct 31, 2025
1a3f5b6
Update requirements and link to RTKLib
Stefal Nov 6, 2025
b854844
install avahi-daemon if needed
Stefal Nov 9, 2025
326d60a
update script for 2.7.0
Stefal Nov 9, 2025
d7f4d8f
change from scapy to requests for http get. scapy http layer didn't w…
Stefal Nov 11, 2025
e88f1d6
Compile on Debian bookworm
Nov 11, 2025
555de51
new distribuable release for find_rtkbase on windows
Stefal Nov 11, 2025
6f7005e
/dev/full for systemd-timesyncd disabling
Stefal Nov 26, 2025
af49611
bump version and update changelog with the 2.6.4 release
Stefal Nov 26, 2025
b8ca98b
fix version and add update function
Stefal Nov 26, 2025
28c5882
don't add, but rewrite the avahi service
Stefal Nov 26, 2025
4452c24
manage different settings for Mosaic firmware < or >= 4.15
Stefal Nov 27, 2025
1def5ac
update changelog
Stefal Nov 27, 2025
763157f
Adding rtklib 2.5.0 binaries
Stefal Nov 28, 2025
9af5851
Merge branch 'master' into dev
Stefal Nov 28, 2025
70325ff
fix changelog merge bug
Stefal Nov 28, 2025
b162fd7
Filesystem is not always present in the df output.
Stefal Nov 28, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions .github/workflows/codeql-analysis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ jobs:

# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v1
uses: github/codeql-action/init@v2
with:
languages: ${{ matrix.language }}
# If you wish to specify custom queries, you can do so here or in a config file.
Expand All @@ -50,7 +50,7 @@ jobs:
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
# If this step fails, then you should remove it and run the build manually (see below)
- name: Autobuild
uses: github/codeql-action/autobuild@v1
uses: github/codeql-action/autobuild@v2

# ℹ️ Command-line programs to run using the OS shell.
# 📚 https://git.io/JvXDl
Expand All @@ -64,4 +64,4 @@ jobs:
# make release

- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v1
uses: github/codeql-action/analyze@v2
21 changes: 21 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,25 @@
# Changelog
## [2.7.0] Not Released
### Added
- Now compatible with Septentrio Mosaic-X5 firmware 4.15. Default login/password is `basegnss/basegnss!`.
- GUI -> Settings: Add display of network interface mac address.
- GUI -> Settings: Add Tcp host addr entry to open or block external access to the Gnss receiver. [#490](https://github.com/Stefal/rtkbase/issues/490)
- GUI ->: Add mount name in the web page title. Thanks to @sbonaime [#484](https://github.com/Stefal/rtkbase/issues/484)
- GUI -> Logs: .sbf files get a type in the type column.
- GUI -> Logs: .obs and .2?o files displayed as RINEX in type column.
### Changed
- RTKLib upgraded to release v2.5.0-EX.
- Add Galileo inside rinex preset for Nrcan. [#479](https://github.com/Stefal/rtkbase/issues/479)
- U-Blox ZED-F9P settings : Dynamic model sets to static during configuration. Thanks to @Jef239 [#488](https://github.com/Stefal/rtkbase/issues/488)
### Fixed
- GUI -> Logs: Fix wrong path when using custom data directory. [#471](https://github.com/Stefal/rtkbase/issues/471)
- GUI -> Settings: Better toggle buttons color behaviour.
### Deprecated
- Operating systems older than Debian 12 / Ubuntu 24.04 can't update RTKBase anymore.
- Python release < 3.11 deprecated
### Security
- Update various python module
- Update js library (leaflet, bootstrap-table)

## [2.6.4] - 2025-11-26
### Fixed
Expand Down
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -336,8 +336,8 @@ A gnss receiver with a timepulse output is a very accurate [stratum 0](https://e

```
## Requirements:
Debian base distro >= 11 (Bullseye)
Python >= 3.8
Debian base distro >= 12 (Bookworms)
Python >= 3.11

## History:
See the [changelog](./CHANGELOG.md)
Expand All @@ -346,7 +346,7 @@ See the [changelog](./CHANGELOG.md)
RTKBase is licensed under AGPL 3 (see [LICENSE](./LICENSE) file).

RTKBase uses some parts of other software:
+ [RTKLIB](https://github.com/tomojitakasu/RTKLIB) (BSD-2-Clause)
+ [RTKLIB-EX](https://github.com/rtklibexplorer/RTKLIB) (BSD-2-Clause)
+ [ReachView](https://github.com/emlid/ReachView) (GPL v3)
+ [Flask](https://palletsprojects.com/p/flask/) [Jinja](https://palletsprojects.com/p/jinja/) [Werkzeug](https://palletsprojects.com/p/werkzeug/) (BSD-3-Clause)
+ [Flask SocketIO](https://github.com/miguelgrinberg/Flask-SocketIO) (MIT)
Expand Down
2 changes: 1 addition & 1 deletion archive_and_clean.sh
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ source <( grep '=' ${BASEDIR}/settings.conf )
cd ${datadir}

check_space(){
df -mP ${datadir} | grep -v '^Filesystem' | awk '{ print $4 }'
df -mP ${datadir} | tail -n1 | awk '{ print $4 }'
}

#Check if there is enough available space (default value is more than 500MB), and delete oldest archive if needed.
Expand Down
Binary file added drawing/um980_support.3mf
Binary file not shown.
Binary file added drawing/um980_support.FCStd
Binary file not shown.
Binary file added drawing/um980_support3.3mf
Binary file not shown.
Binary file added drawing/um980_support3.stl
Binary file not shown.
6 changes: 4 additions & 2 deletions receiver_cfg/Septentrio_Mosaic-X5.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,11 @@ setSBFOutput, Stream1, , +BDSRaw+BDSRawB1C+BDSRawB2a+BDSRawB2b
setSBFOutput, Stream1, , +QZSRawL1CA+QZSRawL2C+QZSRawL5
setSBFOutput, Stream1, , +NAVICRaw
setSBFOutput, Stream1, , +GEORawL1+GEORawL5
setSatelliteTracking, -SBAS
setSignalTracking, GPSL1CA+GPSL1PY+GPSL2PY+GPSL2C+GPSL5+GLOL1CA+GLOL2P+GLOL2CA+GLOL3+GALL1BC+GALE6BC+GALE5a+GALE5b+GALE5+GEOL1+GEOL5+BDSB1I+BDSB2I+BDSB3I+BDSB1C+BDSB2a+BDSB2b+QZSL1CA+QZSL2C+QZSL5+QZSL1CB+NAVICL5
setSBFOutput, Stream1, , +PVTGeodetic+ChannelStatus+ReceiverStatus+SatVisibility+ReceiverTime
setPVTMode, Static
setPPSParameters, sec1, Low2High, , UTC
setUSBInternetAccess, on
#END
setUSBInternetAccess, off
setHttpsSettings, HTTP
#END
20 changes: 20 additions & 0 deletions receiver_cfg/Septentrio_Mosaic-X5_4.15.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# Config file for using a Septentrio Mosaic X5 with RTKBase
setSBFOutput, Stream1, USB1
setSBFOutput, Stream1, , , sec1
setSBFOutput, Stream1, , MeasEpoch+MeasExtra+EndOfMeas
setSBFOutput, Stream1, , +GPSRawCA+GPSRawL2C+GPSRawL5
setSBFOutput, Stream1, , +GLORawCA
setSBFOutput, Stream1, , +GALRawFNAV+GALRawINAV+GALRawCNAV
setSBFOutput, Stream1, , +BDSRaw+BDSRawB1C+BDSRawB2a+BDSRawB2b
setSBFOutput, Stream1, , +QZSRawL1CA+QZSRawL2C+QZSRawL5
setSBFOutput, Stream1, , +NAVICRaw
setSBFOutput, Stream1, , +GEORawL1+GEORawL5
setSatelliteTracking, -SBAS
setSignalTracking, GPSL1CA+GPSL1PY+GPSL2PY+GPSL2C+GPSL5+GLOL1CA+GLOL2P+GLOL2CA+GLOL3+GALL1BC+GALE6BC+GALE5a+GALE5b+GALE5+GEOL1+GEOL5+BDSB1I+BDSB2I+BDSB3I+BDSB1C+BDSB2a+BDSB2b+QZSL1CA+QZSL2C+QZSL5+QZSL1CB+NAVICL5
setSBFOutput, Stream1, , +PVTGeodetic+ChannelStatus+ReceiverStatus+SatVisibility+ReceiverTime
setPVTMode, Static
setPPSParameters, sec1, Low2High, , UTC
setUSBInternetAccess, off
setHttpsSettings, HTTP
login, basegnss, basegnss!, RxAdmin, S3pt3ntr10
#END
1 change: 1 addition & 0 deletions receiver_cfg/U-Blox_ZED-F9P_config_info.txt
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ The U-Blox_ZED-F9P_rtkbase.txt config file is based on default settings with the
- NAV-PVT enabled
- NAV-SAT enabled
- NAV-SIG enabled
- CFG-NAVSPG-DYNMODEL Dynamic model sets to static
- NMEA on USB out disabled
- NMEA on UART1 out disabled

1 change: 1 addition & 0 deletions receiver_cfg/U-Blox_ZED-F9P_rtkbase.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -11,3 +11,4 @@ CFG-MSGOUT-UBX_NAV_SAT_USB,1
CFG-MSGOUT-UBX_NAV_SAT_UART1,1
CFG-MSGOUT-UBX_NAV_SIG_USB,1
CFG-MSGOUT-UBX_NAV_SIG_UART1,1
CFG-NAVSPG-DYNMODEL,2
3 changes: 2 additions & 1 deletion receiver_cfg/Unicore_UM980_rtcm3.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -14,4 +14,5 @@ rtcm1087 1
rtcm1097 1
rtcm1107 1
rtcm1117 1
rtcm1127 1
rtcm1127 1
MASK 0
3 changes: 2 additions & 1 deletion receiver_cfg/Unicore_UM982_rtcm3.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -14,4 +14,5 @@ rtcm1087 1
rtcm1097 1
rtcm1107 1
rtcm1117 1
rtcm1127 1
rtcm1127 1
MASK 0
35 changes: 18 additions & 17 deletions run_cast.sh
Original file line number Diff line number Diff line change
Expand Up @@ -13,11 +13,11 @@ in_tcp="tcpcli://localhost:${tcp_port}#${receiver_format}"
#in_ext_tcp is mainly for dev purpose to receive a raw stream from another base
in_ext_tcp="tcpcli://${ext_tcp_source}:${ext_tcp_port}#${receiver_format}"

out_caster_A="ntrips://:${svr_pwd_a}@${svr_addr_a}:${svr_port_a}/${mnt_name_a}#rtcm3 -msg ${rtcm_msg_a} -p ${position}"
out_caster_A="-msg ${rtcm_msg_a} -out ntrips://:${svr_pwd_a}@${svr_addr_a}:${svr_port_a}/${mnt_name_a}#rtcm3 -p ${position}"
#add receiver options if it exists
[[ ! -z "${ntrip_a_receiver_options}" ]] && out_caster_A=""${out_caster_A}" -opt "${ntrip_a_receiver_options}""

out_caster_B="ntrips://:${svr_pwd_b}@${svr_addr_b}:${svr_port_b}/${mnt_name_b}#rtcm3 -msg ${rtcm_msg_b} -p ${position}"
out_caster_B="-msg ${rtcm_msg_b} -out ntrips://:${svr_pwd_b}@${svr_addr_b}:${svr_port_b}/${mnt_name_b}#rtcm3 -p ${position}"
#add receiver options if it exists
[[ ! -z "${ntrip_b_receiver_options}" ]] && out_caster_B=""${out_caster_B}" -opt "${ntrip_b_receiver_options}""

Expand All @@ -29,26 +29,27 @@ if [[ ${local_ntripc_user} == '' ]] && [[ ${local_ntripc_pwd} == '' ]]
local_ntripc_auth='B' #Basic authentification
fi
out_local_caster_source_table="${local_ntripc_mnt_name};rtcm3;${local_ntripc_msg};${receiver_frequency_count};GPS+GLO+GAL+BDS+QZS;NONE;NONE;${array_pos[0]};${array_pos[1]};0;0;RTKBase_${receiver},${version};NONE;${local_ntripc_auth};N;;"
out_local_caster="ntripc://${local_ntripc_user}:${local_ntripc_pwd}@:${local_ntripc_port}/${local_ntripc_mnt_name}:${out_local_caster_source_table}#rtcm3 -msg ${local_ntripc_msg} -p ${position}"
out_local_caster="-msg ${local_ntripc_msg} -out ntripc://${local_ntripc_user}:${local_ntripc_pwd}@:${local_ntripc_port}/${local_ntripc_mnt_name}:${out_local_caster_source_table}#rtcm3 -p ${position}"
#add receiver options if it exists
[[ ! -z "${local_ntripc_receiver_options}" ]] && out_local_caster="${out_local_caster} -opt ${local_ntripc_receiver_options}"
out_tcp="tcpsvr://:${tcp_port}"

out_tcp="tcpsvr://${tcp_host_addr}:${tcp_port}"

out_file="file://${datadir}/${file_name}.${receiver_format}::T::S=${file_rotate_time} -f ${file_overlap_time}"

out_rtcm_svr="tcpsvr://:${rtcm_svr_port}#rtcm3 -msg ${rtcm_svr_msg} -p ${position}"
out_rtcm_svr="-msg ${rtcm_svr_msg} -out tcpsvr://:${rtcm_svr_port}#rtcm3 -p ${position}"
#add receiver options if it exists
[[ ! -z "${rtcm_receiver_options}" ]] && out_rtcm_svr=""${out_rtcm_svr}" -opt "${rtcm_receiver_options}""

out_rtcm_client="tcpcli://${rtcm_client_user}:${rtcm_client_pwd}@${rtcm_client_addr}:${rtcm_client_port}#rtcm3 -msg ${rtcm_client_msg} -p ${position}"
out_rtcm_client="-msg ${rtcm_client_msg} -out tcpcli://${rtcm_client_user}:${rtcm_client_pwd}@${rtcm_client_addr}:${rtcm_client_port}#rtcm3 -p ${position}"
#add receiver options if it exists
[[ ! -z "${rtcm_client_receiver_options}" ]] && out_rtcm_client=""${out_rtcm_client}" -opt "${rtcm_receiver_client_options}""

out_rtcm_udp_svr="udpsvr://:${rtcm_udp_svr_port}#rtcm3 -msg ${rtcm_udp_svr_msg} -p ${position}"
out_rtcm_udp_svr="-msg ${rtcm_udp_svr_msg} -out udpsvr://:${rtcm_udp_svr_port}#rtcm3 -p ${position}"
#add receiver options if it exists
[[ ! -z "${rtcm_udp_svr_receiver_options}" ]] && out_rtcm_udp_svr=""${out_rtcm_udp_svr}" -opt "${rtcm_udp_svr_receiver_options}""

out_rtcm_serial="serial://${out_com_port}:${out_com_port_settings}#rtcm3 -msg ${rtcm_serial_msg} -p ${position}"
out_rtcm_serial="-msg ${rtcm_serial_msg} -out serial://${out_com_port}:${out_com_port_settings}#rtcm3 -p ${position}"
#add receiver options if it exists
[[ ! -z "${rtcm_serial_receiver_options}" ]] && out_rtcm_serial=""${out_rtcm_serial}" -opt "${rtcm_serial_receiver_options}""

Expand All @@ -58,41 +59,41 @@ mkdir -p ${logdir}
out_tcp)
#echo ${cast} -in ${!1} -out $out_tcp
# What is this ${!1} ? It's variable indirection
${cast} -in ${!1} -out ${out_tcp} -b 1 -t ${level} -fl ${logdir}/str2str_tcp.log &
${cast} -in ${!1} -out ${out_tcp} -b 1 -t ${level} -fl ${logdir}/str2str_tcp_$(date "+%F-%T").log
;;

out_caster_A)
#echo ${cast} -in ${!1} -out $out_caster
${cast} -in ${!1} -out ${out_caster_A} -i "${receiver_info}" -a "${antenna_info}" -t ${level} -fl ${logdir}/str2str_ntrip_A.log &
${cast} -in ${!1} ${out_caster_A} -i "${receiver_info}" -a "${antenna_info}" -t ${level} -fl ${logdir}/str2str_ntrip_A.log
;;

out_caster_B)
${cast} -in ${!1} -out ${out_caster_B} -i "${receiver_info}" -a "${antenna_info}" -t ${level} -fl ${logdir}/str2str_ntrip_B.log &
${cast} -in ${!1} ${out_caster_B} -i "${receiver_info}" -a "${antenna_info}" -t ${level} -fl ${logdir}/str2str_ntrip_B.log
;;

out_local_caster)
#echo ${cast} -in ${!1} -out "${out_local_caster}"
${cast} -in ${!1} -out ${out_local_caster} -i "${receiver_info}" -a "${antenna_info}" -t ${level} -fl ${logdir}/str2str_ntrip.log &
${cast} -in ${!1} ${out_local_caster} -i "${receiver_info}" -a "${antenna_info}" -t ${level} -fl ${logdir}/str2str_ntrip.log
;;

out_rtcm_svr)
#echo ${cast} -in ${!1} -out $out_rtcm_svr
${cast} -in ${!1} -out ${out_rtcm_svr} -i "${receiver_info}" -a "${antenna_info}" -t ${level} -fl ${logdir}/str2str_rtcm_svr.log &
${cast} -in ${!1} ${out_rtcm_svr} -i "${receiver_info}" -a "${antenna_info}" -t ${level} -fl ${logdir}/str2str_rtcm_svr.log
;;

out_rtcm_client)
#echo ${cast} -in ${!1} -out $out_rtcm_client
${cast} -in ${!1} -out ${out_rtcm_client} -i "${receiver_info}" -a "${antenna_info}" -t ${level} -fl ${logdir}/str2str_rtcm_client.log &
${cast} -in ${!1} ${out_rtcm_client} -i "${receiver_info}" -a "${antenna_info}" -t ${level} -fl ${logdir}/str2str_rtcm_client.log
;;

out_rtcm_udp_svr)
#echo ${cast} -in ${!1} -out $out_rtcm_udp_svr
${cast} -in ${!1} -out ${out_rtcm_udp_svr} -i "${receiver_info}" -a "${antenna_info}" -t ${level} -fl ${logdir}/str2str_rtcm_udp_svr.log &
${cast} -in ${!1} ${out_rtcm_udp_svr} -i "${receiver_info}" -a "${antenna_info}" -t ${level} -fl ${logdir}/str2str_rtcm_udp_svr.log
;;

out_rtcm_serial)
#echo ${cast} -in ${!1} -out $out_rtcm_serial
${cast} -in ${!1} -out ${out_rtcm_serial} -i "${receiver_info}" -a "${antenna_info}" -t ${level} -fl ${logdir}/str2str_rtcm_serial.log &
${cast} -in ${!1} ${out_rtcm_serial} -i "${receiver_info}" -a "${antenna_info}" -t ${level} -fl ${logdir}/str2str_rtcm_serial.log
;;

out_file)
Expand All @@ -102,7 +103,7 @@ mkdir -p ${logdir}
if [ ${ret} -eq 0 ]
then
mkdir -p ${datadir}
${cast} -in ${!1} -out ${out_file} -t ${level} -fl ${logdir}/str2str_file.log &
${cast} -in ${!1} -out ${out_file} -t ${level} -fl ${logdir}/str2str_file.log
fi
;;

Expand Down
6 changes: 4 additions & 2 deletions settings.conf.default
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@

[general]
# Version
version=2.6.4
version=2.7.0
# Rtkbase upgrade mandatory "checkpoint"
checkpoint_version=2.7.0
checkpoint_version=2.8.0
# User who runs str2str_file service
user=
# NTRIP caster program
Expand Down Expand Up @@ -44,6 +44,8 @@ receiver_firmware=''
receiver_carrier=''
#Antenna info, id, serial number. Without space inside the strings
antenna_info='ADVNULLANTENNA'
#Tcp host address to bind the tcp stream
tcp_host_addr='127.0.0.1'
#tcp port for RAW stream. If you change this value, edit gpsd conf file to reflect the port in DEVICES.
tcp_port='5015'
#ext_tcp_source is mainly for dev purpose to receive a raw stream from another base
Expand Down
Binary file added tools/bin/RTKLIB-2.5.0/aarch64/convbin
Binary file not shown.
Binary file added tools/bin/RTKLIB-2.5.0/aarch64/rtkrcv
Binary file not shown.
Binary file added tools/bin/RTKLIB-2.5.0/aarch64/str2str
Binary file not shown.
Binary file added tools/bin/RTKLIB-2.5.0/armv6l/convbin
Binary file not shown.
Binary file added tools/bin/RTKLIB-2.5.0/armv6l/rtkrcv
Binary file not shown.
Binary file added tools/bin/RTKLIB-2.5.0/armv6l/str2str
Binary file not shown.
Binary file added tools/bin/RTKLIB-2.5.0/armv7l/convbin
Binary file not shown.
Binary file added tools/bin/RTKLIB-2.5.0/armv7l/rtkrcv
Binary file not shown.
Binary file added tools/bin/RTKLIB-2.5.0/armv7l/str2str
Binary file not shown.
Binary file removed tools/bin/rtklib_b34j/aarch64/convbin
Binary file not shown.
Binary file removed tools/bin/rtklib_b34j/aarch64/rtkrcv
Binary file not shown.
Binary file removed tools/bin/rtklib_b34j/aarch64/str2str
Binary file not shown.
Binary file removed tools/bin/rtklib_b34j/armv6l/convbin
Binary file not shown.
Binary file removed tools/bin/rtklib_b34j/armv6l/rtkrcv
Binary file not shown.
Binary file removed tools/bin/rtklib_b34j/armv6l/str2str
Binary file not shown.
Binary file removed tools/bin/rtklib_b34j/armv7l/convbin
Binary file not shown.
Binary file removed tools/bin/rtklib_b34j/armv7l/rtkrcv
Binary file not shown.
Binary file removed tools/bin/rtklib_b34j/armv7l/str2str
Binary file not shown.
4 changes: 2 additions & 2 deletions tools/convbin.sh
Original file line number Diff line number Diff line change
Expand Up @@ -44,14 +44,14 @@ convert_to_rinex_ign_bis() {
"${CONVBIN_PATH}" "${args}"
return $?
}
# Rinex v3.04 - 30s - GPS + GLONASS
# Rinex v3.04 - 30s - GPS + GLONASS + GALILEO
convert_to_rinex_nrcan() {
echo "- CREATING RINEX " "${RINEX_FILE}"
"${CONVBIN_PATH}" "${raw_file}" -v 3.04 -r "${RAW_TYPE}" \
-hc "${RTKBASE_VERSION}" -hm "${MOUNT_NAME}" \
-hp "${ANT_POSITION}" -ha 0000/"${ANT_TYPE}" \
-hr 0000/"${RECEIVER}"/"${REC_VERSION}" \
-f 2 -y E -y J -y S -y C -y I \
-f 2 -y J -y S -y C -y I \
-od -os -oi -ot -ti 30 -tt 0 \
-ro "${REC_OPTION}" -o "${RINEX_FILE}"
return $?
Expand Down
8 changes: 7 additions & 1 deletion tools/find_rtkbase/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,10 @@
# Changelog

## [0.1] - not released
## [0.2] - Not released
### Added
- Shift+click on "open" button open the browser with the RTKBase ip address.
### Changed
- Switch from scapy to requests for http request.

## [0.1] - 2025-02-16
- First release
Binary file modified tools/find_rtkbase/dist/find_rtkbase
Binary file not shown.
Binary file modified tools/find_rtkbase/dist/find_rtkbase.exe
Binary file not shown.
10 changes: 7 additions & 3 deletions tools/find_rtkbase/find_rtkbase.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ def __init__(self, master, ports=[80, 443], allscan=False):
self.master = master
self.ports = ports
self.allscan = allscan
master.title("Find RTKBase v0.1")
master.title("Find RTKBase v0.2")
master.geometry("400x200")
master.columnconfigure(0, weight=1)
master.rowconfigure(0, weight=1)
Expand Down Expand Up @@ -123,12 +123,16 @@ def _after_scan_thread(self):
self.base_buttons_list = ["base" + str(i) + "Button" for i, j in enumerate(self.available_base)]
if len(self.available_base)>0:
for i, base in enumerate(self.available_base):
def action(ip = (base.get('server') or base.get('ip')), port = base.get('port')):
def browser_fqdn(event, ip = (base.get('server') or base.get('ip')), port = base.get('port')):
self.launch_browser(ip, port)
def browser_ip(event, ip = (base.get('ip')), port = base.get('port')):
self.launch_browser(ip, port)

self.base_labels_list[i] = ttk.Label(self.top_frame, text=f"{base.get('server') or base.get('fqdn')} ({base.get('ip')})")
self.base_labels_list[i].grid(column=0, row=i)
self.base_buttons_list[i] = ttk.Button(self.top_frame, text='Open', command=action)
self.base_buttons_list[i] = ttk.Button(self.top_frame, text='Open')
self.base_buttons_list[i].bind("<Button-1>", browser_fqdn)
self.base_buttons_list[i].bind("<Shift-Button-1>", browser_ip)
self.base_buttons_list[i].grid(column=3, row=i)
else:
self.nobase_label.grid()
Expand Down
8 changes: 4 additions & 4 deletions tools/find_rtkbase/scan_network.py
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
#! /usr/bin/env python3
import json
import time
import logging
import argparse
import requests
import scapy.all as scapy
scapy.load_layer("http")
from zeroconf import Zeroconf
Expand Down Expand Up @@ -111,12 +111,12 @@ def get_rtkbase_infos(host_list):
if address is None:
continue
log.debug(f"{address}:{port} Api request")
res = http_request(address, path="/api/v1/infos", port=port)
res = requests.get(f"http://{address}:{port}/api/v1/infos", timeout=10)
log.debug(f"{address}:{port} Api response: {res}")
ans = json.loads(res.load.decode()) if res is not None else None
ans = res.json() if res is not None and res.status_code == 200 else None
if ans:
break
except (TimeoutError, TypeError, ConnectionRefusedError) as e:
except (TimeoutError, TypeError, requests.exceptions.ConnectionError) as e:
log.debug(f"{address}:{port} - {e}")

if ans and ans.get('app') == 'RTKBase':
Expand Down
Loading
Loading