diff --git a/rootfs/etc/s6-overlay/scripts/gpsd_mlat_restart b/rootfs/etc/s6-overlay/scripts/gpsd_mlat_restart index bd815ef..2e8888f 100755 --- a/rootfs/etc/s6-overlay/scripts/gpsd_mlat_restart +++ b/rootfs/etc/s6-overlay/scripts/gpsd_mlat_restart @@ -19,18 +19,17 @@ source /scripts/common -# Check every 60 secs if GPSD has been enabled -if [[ ! -f /run/readsb/gpsd.json ]] || [[ "$(jq -r .lat /run/readsb/gpsd.json)" == "null" ]]; then - sleep 60 & wait $! -fi - -# Then wait until all mlat-client instances have started +# Wait until all mlat-client instances have started while [[ ! -f /run/.all_mlatclient_instances_have_started ]]; do sleep 5 & wait $! done - rm -f /run/.all_mlatclient_instances_have_started +# Check every 60 secs if GPSD has been enabled +while [[ ! -f /run/readsb/gpsd.json ]] || [[ "$(jq -r .lat /run/readsb/gpsd.json)" == "null" ]]; do + sleep 60 & wait $! +done + # Now wait a bit to allow GPS to establish itself sleep "${GPSD_INITIAL_WAIT:-60}"