From 063f22c93c6b40cafc7af1fb618a3e60771c4913 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 22 Jun 2024 00:13:19 +0000 Subject: [PATCH 01/10] build(deps): bump peter-evans/create-pull-request from 6.0.5 to 6.1.0 Bumps [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request) from 6.0.5 to 6.1.0. - [Release notes](https://github.com/peter-evans/create-pull-request/releases) - [Commits](https://github.com/peter-evans/create-pull-request/compare/v6.0.5...v6.1.0) --- updated-dependencies: - dependency-name: peter-evans/create-pull-request dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- .github/workflows/pre-commit-updates.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/pre-commit-updates.yaml b/.github/workflows/pre-commit-updates.yaml index bfc1ca8..ce23ae3 100644 --- a/.github/workflows/pre-commit-updates.yaml +++ b/.github/workflows/pre-commit-updates.yaml @@ -13,7 +13,7 @@ jobs: with: fetch-depth: 0 - uses: vrslev/pre-commit-autoupdate@v1.0.0 - - uses: peter-evans/create-pull-request@v6.0.5 + - uses: peter-evans/create-pull-request@v6.1.0 with: branch: pre-commit-autoupdate title: "chore(deps): Update pre-commit hooks" From 5289f495061bacc11c2a7d8f6474375ca48427d1 Mon Sep 17 00:00:00 2001 From: Fred Clausen <43556888+fredclausen@users.noreply.github.com> Date: Sun, 23 Jun 2024 02:18:50 -0600 Subject: [PATCH 02/10] update pre-commit actions --- .github/workflows/pre-commit-updates.yaml | 20 +++++++------------- 1 file changed, 7 insertions(+), 13 deletions(-) diff --git a/.github/workflows/pre-commit-updates.yaml b/.github/workflows/pre-commit-updates.yaml index ce23ae3..bfd1981 100644 --- a/.github/workflows/pre-commit-updates.yaml +++ b/.github/workflows/pre-commit-updates.yaml @@ -6,19 +6,13 @@ on: - cron: 0 0 * * 0 jobs: - update: + pre-commit-update: runs-on: ubuntu-latest + name: Updates steps: - - uses: actions/checkout@v4.1.7 + - name: Checkout + uses: actions/checkout@v4.1.7 + - name: Update pre-commit hooks + uses: brokenpip3/action-pre-commit-update@0.0.1 with: - fetch-depth: 0 - - uses: vrslev/pre-commit-autoupdate@v1.0.0 - - uses: peter-evans/create-pull-request@v6.1.0 - with: - branch: pre-commit-autoupdate - title: "chore(deps): Update pre-commit hooks" - commit-message: "chore(deps): Update pre-commit hooks" - body: Update pre-commit hooks - labels: dependencies - delete-branch: True - assignees: "fredclausen" + github-token: ${{ secrets.GITHUB_TOKEN }} From b567f4966e59f102ad5e91579e0753c856f45cbd Mon Sep 17 00:00:00 2001 From: Fred Clausen <43556888+fredclausen@users.noreply.github.com> Date: Tue, 25 Jun 2024 16:04:46 -0600 Subject: [PATCH 03/10] remove DS store and ignore --- .DS_Store | Bin 6148 -> 0 bytes .gitignore | 1 + 2 files changed, 1 insertion(+) delete mode 100644 .DS_Store create mode 100644 .gitignore diff --git a/.DS_Store b/.DS_Store deleted file mode 100644 index 45c76741d61fe51257dba4e49f7857433926f6a6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6148 zcmeHKy-ve05I%>Lr9$wM_J8WB+jWlRpxY!LRd4kQr^=NTTOUW})6*DME- zYWS}V@ViUtgcfv1ZT$XTPy4>c6-8OQ61MEAy*&Q-d_Rx<)vx~LZSUJiu8>OmbWaXf zOEagGRR)xSn1Q`;JL2>IVtf4`C+VFspbYF3 z112q|#RQKeXY1hM_^h?i8I* Date: Sat, 29 Jun 2024 13:47:24 +0200 Subject: [PATCH 04/10] GPSD_DEBUG env var (#106) --- README.md | 2 ++ rootfs/etc/s6-overlay/scripts/readsb | 4 ++++ 2 files changed, 6 insertions(+) diff --git a/README.md b/README.md index e00d45b..aa71595 100644 --- a/README.md +++ b/README.md @@ -801,6 +801,8 @@ This will: - configure the ultrafeeder docker container to read GPSD data - configure the ultrafeeder container so the hostname `host.docker.internal` always resolves to the IP address of the underlying machine (where `gpsd` is running) +If you have any issues, readsb will use verbose output if you add the `GPSD_DEBUG=true` as an environment variable. + ### Optional parameters regulating the restart of `mlat-client` when the location changes The following parameters are all optional and are subject to change. You don't need to set them unless you want to change the default behavior: diff --git a/rootfs/etc/s6-overlay/scripts/readsb b/rootfs/etc/s6-overlay/scripts/readsb index 8536ea6..3939374 100755 --- a/rootfs/etc/s6-overlay/scripts/readsb +++ b/rootfs/etc/s6-overlay/scripts/readsb @@ -139,6 +139,10 @@ if [ -n "${READSB_DEBUG}" ]; then READSB_CMD+=("--debug=$READSB_DEBUG") fi +if chk_enabled "$GPSD_DEBUG"; then + READSB_CMD+=("--devel=debugGPS") +fi + # Handle --write-state-only-on-exit if chk_enabled "${READSB_WRITE_STATE_ONLY_ON_EXIT}"; then READSB_CMD+=("--write-state-only-on-exit") From 4633416316cee8d4c812fc91f2704437635c2d24 Mon Sep 17 00:00:00 2001 From: kx1t Date: Sat, 29 Jun 2024 11:47:27 -0400 Subject: [PATCH 05/10] add MLAT troubleshooting section to README --- README.md | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/README.md b/README.md index aa71595..40f1562 100644 --- a/README.md +++ b/README.md @@ -21,6 +21,7 @@ - [Alternate Configuration Method with `READSB_NET_CONNECTOR`](#alternate-configuration-method-with-readsb_net_connector) - [Optional Networking Parameters](#optional-networking-parameters) - [MLAT configuration](#mlat-configuration) + - [MLAT troubleshooting](#mlat-troubleshooting) - [Configuring the built-in MLAT Hub](#configuring-the-built-in-mlat-hub) - [Web Gui (`tar1090`) Configuration](#web-gui-tar1090-configuration) - [`tar1090` Core Configuration](#tar1090-core-configuration) @@ -436,6 +437,34 @@ Note - the optional parameters can be given in any order. The `MLAT_USER` parameter is passed to the MLAT Client and server, and will show up as a "friendly" name on MLAT related stats at your MLAT aggregator. This parameter can only contain alphanumeric (a-z, A-Z, 0-9) characters, dashes (-), or underscores (_). +#### MLAT troubleshooting + +Sometimes, MLAT appears not to be working correctly and you will see messages with high `bad_sync_timeout` values, like this: + +```text +[2024-06-29 11:31:20.385][mlat-client][in.adsb.lol] peer_count: 15 outlier_percent: 4.6 bad_sync_timeout: 870 +``` + +Here are a few things you may want to try to fix this: + +- Ensure your longitude, latitude, and altitude are ACCURATE +- Make sure your device's clock is synced continuously with a reliable NTP service. We recommend `chronyd` over `systemd.timesyncd` +- Do not try to send MLAT data from a centralized instance when you are using a remote receiver. Instead, feed MLAT directly from the remote station +- On Raspberry Pi 3/3B+, disable HealthCheck by adding the following to the ultrafeeder service section in your `docker-compose.yml` file. (This has to do with docker resource spikes that mess with MLAT timing on slower machines like the Pi3/3B+) : + + ```yaml + ultrafeeder: + ... + healthcheck: + disable: true + ``` + +- MLAT often fails when you run your receiver on a Virtual Machine rather than directly on the hardware. Avoid virtual machines (including ProxMox and container-in-container setups) or disable MLAT on them +- For FlightAware MLAT, make sure that your location and altitude are PRECISELY defined in your dashboard on the FlightAware website +- Never, ever, ever resend MLAT results back to ADSB or MLAT aggregators. Please DO NOT. This will ensure your data is discarded and may get you banned from the aggregator +- If you feed your data to multiple aggregators, please do not enable MLAT for FlightRadar24 (per their request). Note that MLAT for FR24 using our containerized setup is disabled by default + + #### Configuring the built-in MLAT Hub An "MLAT Hub" is an aggregator of MLAT results from several sources. Since the container is capable of sending MLAT data to multiple ADSB aggregators (like adsb.lol/fi/one, etc), we built in a capability to: From ab0e23b268e5dc0c4bfebab94fd36f5add0d41d2 Mon Sep 17 00:00:00 2001 From: fredclausen Date: Sun, 30 Jun 2024 01:39:52 +0000 Subject: [PATCH 06/10] [create-pull-request] automated change --- .pre-commit-config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 8bb5c61..cd7fbe7 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -41,7 +41,7 @@ repos: - id: shellcheck - repo: https://github.com/sirosen/check-jsonschema - rev: 0.28.5 + rev: 0.28.6 hooks: - id: check-github-actions - id: check-github-workflows From 83cc9132cff893a3a9aa318a22a25fdfa644c59e Mon Sep 17 00:00:00 2001 From: Matthias Wirth Date: Thu, 4 Jul 2024 19:32:55 +0200 Subject: [PATCH 07/10] fix: use chk_enabled to determine if TAR1090_ENABLE_AC_DB is enabled --- rootfs/etc/s6-overlay/scripts/readsb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rootfs/etc/s6-overlay/scripts/readsb b/rootfs/etc/s6-overlay/scripts/readsb index 3939374..95eef4e 100755 --- a/rootfs/etc/s6-overlay/scripts/readsb +++ b/rootfs/etc/s6-overlay/scripts/readsb @@ -276,7 +276,7 @@ if [[ -n "$READSB_NET_VRS_PORT" ]]; then fi # make sure the db file exists, and if it does, use it -if [[ "$TAR1090_ENABLE_AC_DB" == "true" ]]; then +if chk_enabled "$TAR1090_ENABLE_AC_DB"; then if [[ -e $TAR1090_UPDATE_DIR/aircraft.csv.gz ]]; then READSB_CMD+=("--db-file=$TAR1090_UPDATE_DIR/aircraft.csv.gz") elif [[ -e $TAR1090_INSTALL_DIR/aircraft.csv.gz ]]; then From 141cea77b78d740b6a28af81acc29c3fdf687c01 Mon Sep 17 00:00:00 2001 From: goofball222 Date: Fri, 12 Jul 2024 17:45:34 -0700 Subject: [PATCH 08/10] Update README.md Add info on URL_AIRSPY & example --- README.md | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index 40f1562..583ec76 100644 --- a/README.md +++ b/README.md @@ -647,6 +647,7 @@ Note - due to design limitations of `readsb`, the `tar1090` graphical interface | `GRAPHS1090_DISABLE_CHART_DISK_IOPS` | Set to `true` to disable the GRAPHS1090 Disk IOPS chart | Unset | | `GRAPHS1090_DISABLE_CHART_DISK_BANDWIDTH` | Set to `true` to disable the GRAPHS1090 Disk Bandwidth chart | Unset | | `ENABLE_AIRSPY` | Optional, set to any non-empty value if you want to enable the special AirSpy graphs. See below for additional configuration requirements | Unset | +| `URL_AIRSPY` | Optional, set to the URL where the airspy stats are available, for example `http://airspy_adsb` | Unset | #### Enabling UAT data @@ -655,30 +656,26 @@ ADS-B over UAT data is transmitted in the 978 MHz band, and this is used in the 1. Set the following environment parameters: ```yaml -- URL_978=http://dump978/skyaware978 + - ENABLE_978=yes + - URL_978=http://dump978/skyaware978 ``` 2. Install the [`docker-dump978` container](https://github.com/sdr-enthusiasts/docker-dump978). Note - only containers downloaded/deployed on/after Feb 8, 2023 will work. -Note that you **must** configure `URL_978` to point at a working skyaware978 website with `aircraft.json` data feed. This means that the URL `http://dump978/skyaware978/data/aircraft.json` must return valid JSON data to this `tar1090` container. +Note that you \*_must_- configure `URL_978` to point at a working skyaware978 website with `aircraft.json` data feed. This means that the URL `http://dump978/skyaware978/data/aircraft.json` must return valid JSON data to this `tar1090` container. #### Enabling AirSpy graphs Users of AirSpy devices can enable extra `graphs1090` graphs by configuring the following: -- Set the following environment parameter: +1. Set the following environment parameters: ```yaml - ENABLE_AIRSPY=yes + - URL_AIRSPY=http://airspy_adsb ``` -- To provide the container access to the AirSpy statistics, map a volume in your `docker-compose.yml` file as follows: - -```yaml - volumes: - - /run/airspy_adsb:/run/airspy_adsb - ... -``` +2. Install the [`airspy_adsb` container](https://github.com/sdr-enthusiasts/airspy_adsb). Note - only containers downloaded/deployed on/after May 9th, 2024 will work with this method. #### Enabling Disk IO and IOPS data From 19de2e54291ac4244691ff96508c4a26820c9eee Mon Sep 17 00:00:00 2001 From: fredclausen Date: Sun, 14 Jul 2024 01:42:33 +0000 Subject: [PATCH 09/10] [create-pull-request] automated change --- .pre-commit-config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index cd7fbe7..74c6dd1 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -41,7 +41,7 @@ repos: - id: shellcheck - repo: https://github.com/sirosen/check-jsonschema - rev: 0.28.6 + rev: 0.29.0 hooks: - id: check-github-actions - id: check-github-workflows From e62e68c144930839eab8504b15c6abbe57d0dd53 Mon Sep 17 00:00:00 2001 From: Matthias Wirth Date: Sat, 20 Jul 2024 21:28:13 +0200 Subject: [PATCH 10/10] start mlathub if an mlathub entry is specified in ultrafeeder config --- rootfs/etc/s6-overlay/scripts/mlathub | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rootfs/etc/s6-overlay/scripts/mlathub b/rootfs/etc/s6-overlay/scripts/mlathub index 5b36846..1efda3a 100755 --- a/rootfs/etc/s6-overlay/scripts/mlathub +++ b/rootfs/etc/s6-overlay/scripts/mlathub @@ -29,7 +29,7 @@ if ! [[ "$LOGLEVEL" =~ ^(verbose|error|none)$ ]]; then LOGLEVEL="verbose" fi -if [[ -z "${MLAT_CONFIG}" ]] && [[ -z "$MLATHUB_NET_CONNECTOR" ]]; then +if [[ -z "${MLAT_CONFIG}" ]] && [[ -z "$MLATHUB_NET_CONNECTOR" ]] && [[ ${#MLATHUB_CONF_ARR[@]} == 0 ]]; then "${s6wrap[@]}" --args echo "No MLAT servers have been defined in MLAT_CONFIG and no external sources have been defined in MLATHUB_NET_CONNECTOR - no need to start MLATHUB" exec sleep infinity fi