mirror of
https://github.com/mtan93/homeassistant-addons.git
synced 2026-03-08 05:21:51 +00:00
Add ADS-B Multi Portal Feeder (#51)
This commit is contained in:
@@ -6,6 +6,12 @@ _Everything here is ment to be **experimental**. Happy to see feedback!_
|
|||||||
|
|
||||||
Home Assistant Addon repository containing
|
Home Assistant Addon repository containing
|
||||||
|
|
||||||
|
## <img src="adsb-multi-portal-feeder/icon.png" width="40px"> ADB-S Multi Portal Feeder
|
||||||
|
|
||||||
|
Observe flight traffic using some cheap ADB-S USB-Stick and feed towards FlightRadar24 and FlightAware.
|
||||||
|
|
||||||
|
Based on the incredible [docker-fr24feed-piaware-dump1090](https://github.com/Thom-x/docker-fr24feed-piaware-dump1090) docker image by [Thom-x](https://github.com/Thom-x).
|
||||||
|
|
||||||
## <img src="eufy-ha-mqtt-bridge/icon.png" width="40px"> Eufy Home Assistant MQTT Bridge ([matijse/eufy-ha-mqtt-bridge](https://github.com/matijse/eufy-ha-mqtt-bridge))
|
## <img src="eufy-ha-mqtt-bridge/icon.png" width="40px"> Eufy Home Assistant MQTT Bridge ([matijse/eufy-ha-mqtt-bridge](https://github.com/matijse/eufy-ha-mqtt-bridge))
|
||||||
|
|
||||||
Forwards Eufy Security push notifications to Home Assistant via MQTT.
|
Forwards Eufy Security push notifications to Home Assistant via MQTT.
|
||||||
|
|||||||
5
adsb-multi-portal-feeder/CHANGELOG.md
Normal file
5
adsb-multi-portal-feeder/CHANGELOG.md
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
# Changelog
|
||||||
|
|
||||||
|
## [1.0.0] - 2021-01-03
|
||||||
|
|
||||||
|
- Initial release
|
||||||
22
adsb-multi-portal-feeder/Dockerfile
Normal file
22
adsb-multi-portal-feeder/Dockerfile
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
FROM thomx/fr24feed-piaware:1.7.0
|
||||||
|
|
||||||
|
# add bashio (thx https://github.com/hassio-addons/addon-debian-base/blob/main/base/Dockerfile#L47)
|
||||||
|
ADD https://github.com/hassio-addons/bashio/archive/v0.13.0.tar.gz /tmp/bashio.tar.gz
|
||||||
|
RUN apt-get update && apt-get install -y curl jq && mkdir /tmp/bashio \
|
||||||
|
&& tar zxvf \
|
||||||
|
/tmp/bashio.tar.gz \
|
||||||
|
--strip 1 -C /tmp/bashio \
|
||||||
|
\
|
||||||
|
&& mv /tmp/bashio/lib /usr/lib/bashio \
|
||||||
|
&& ln -s /usr/lib/bashio/bashio /usr/bin/bashio
|
||||||
|
|
||||||
|
# add the options.json to environment variable magic
|
||||||
|
COPY export-env-from-config.sh /export-env-from-config.sh
|
||||||
|
|
||||||
|
RUN find /etc/services.d/ -name run | xargs sed -i '1 a\source /export-env-from-config.sh' && \
|
||||||
|
find /etc/cont-init.d/ -type f | xargs sed -i '1 a\source /export-env-from-config.sh'
|
||||||
|
|
||||||
|
ENV TZ=UTC
|
||||||
|
|
||||||
|
# Add the nice banner
|
||||||
|
ADD https://raw.githubusercontent.com/hassio-addons/addon-debian-base/v5.1.0/base/rootfs/etc/cont-init.d/00-banner.sh /etc/cont-init.d/
|
||||||
79
adsb-multi-portal-feeder/README.md
Normal file
79
adsb-multi-portal-feeder/README.md
Normal file
@@ -0,0 +1,79 @@
|
|||||||
|
# Home Assistant Add-On: dump1090 based feeder for FlightRadar24 and FlightAware
|
||||||
|
|
||||||
|
Add-on to feed ADS-B data from a cheap USB ADS-B Stick (e.g. [Nooelec NESDR Mini](https://www.amazon.com/gp/product/B009U7WZCA)) to FlightRadar24 or FlightAware.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
## Prolog
|
||||||
|
|
||||||
|
This Add-On is based on the incredible [docker-fr24feed-piaware-dump1090](https://github.com/Thom-x/docker-fr24feed-piaware-dump1090) docker image by [Thom-x](https://github.com/Thom-x).
|
||||||
|
|
||||||
|
I just added a few sprinkles to make it work with Home Assistant.
|
||||||
|
|
||||||
|
## Sensors for Home Assistant
|
||||||
|
|
||||||
|
If you would like some nice statistics you can use a rest sensor with some template magic to show e.g. the number of aircrafts currently tracked:
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
<figure>Example of 'Aircrafts tracked' sensor</figure>
|
||||||
|
|
||||||
|
See this [Home Assistant Community post](https://community.home-assistant.io/t/flightradar24-as-an-add-on/75081).
|
||||||
|
Just replace the `<raspberry pi>` ip with
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
resource: http://f1c878cb-adsbmultiportalfeeder:8754/monitor.json
|
||||||
|
```
|
||||||
|
|
||||||
|
## Configuration
|
||||||
|
|
||||||
|
The whole configuration is meant to work alike the original docker image.
|
||||||
|
See [docker-fr24feed-piaware-dump1090](https://github.com/Thom-x/docker-fr24feed-piaware-dump1090) for more info.
|
||||||
|
|
||||||
|
I pre-provivde the (i guess) most used workflow: Send data from USB ADB-S stick to FlightRadar24 and FlightAware and have a nice little web based overview as Home Assistant menu entry.
|
||||||
|
|
||||||
|
### FlightAware Feeder ID / FlightRader24 KEY
|
||||||
|
|
||||||
|
There are multiple options to obtain the needed keys to supply data towards the platforms.
|
||||||
|
Running the original image as interactive docker container is one of them.
|
||||||
|
Either on your local machine, or e.g. the Home Assistant addon [SSH & Web Terminal
|
||||||
|
](https://github.com/hassio-addons/addon-ssh).
|
||||||
|
|
||||||
|
See [docker-fr24feed-piaware-dump1090](https://github.com/Thom-x/docker-fr24feed-piaware-dump1090) for more info.
|
||||||
|
|
||||||
|
### Latitude / Longitude
|
||||||
|
|
||||||
|
You can
|
||||||
|
|
||||||
|
- Use Google Maps for this: Go to https://www.google.com/maps/ and just right click at your house. It should display the lat/long
|
||||||
|
- Find it through some website: https://latitudelongitude.org/
|
||||||
|
|
||||||
|
### All the other things through envrironment variables
|
||||||
|
|
||||||
|
If you want to do anything more fancy feel free to just add the corresponding environment variable as config option.
|
||||||
|
You might need to press the three little dots in the upper right corner and choose `Edit in YAML`.
|
||||||
|
|
||||||
|
E.g.: You want to disable the HTTP service to save a few MegaBytes of RAM?
|
||||||
|
|
||||||
|
```json
|
||||||
|
...
|
||||||
|
SERVICE_ENABLE_HTTP: false
|
||||||
|
...
|
||||||
|
```
|
||||||
|
|
||||||
|
## Accessing the UI
|
||||||
|
|
||||||
|
- This Add-On provides ingress functionality to some nice map of received data.
|
||||||
|
Simply enable the _Show in sidebar_ function or access vie the _OPEN WEB UI_ button.
|
||||||
|
- fr24feed (the feeder of FlightRader24) provides some stats at :8754.
|
||||||
|
You need to add some port mapping at the configuration page to access it.
|
||||||
|
|
||||||
|
## Credits:
|
||||||
|
|
||||||
|
- Many thanks and ❤️ goes towards [Thom-x](https://github.com/Thom-x) for his work at [docker-fr24feed-piaware-dump1090](https://github.com/Thom-x/docker-fr24feed-piaware-dump1090)
|
||||||
|
- Icon from https://favpng.com/png_view/airplane-airplane-flightradar24-android-png/HFYfZ5Dy
|
||||||
|
|
||||||
|
## TODO
|
||||||
|
|
||||||
|
- Checkout https://github.com/wiedehopf/tar1090
|
||||||
|
- Use prebuild docker images. Tried whole evening but multi-arch is a pain in that case.
|
||||||
51
adsb-multi-portal-feeder/config.json
Normal file
51
adsb-multi-portal-feeder/config.json
Normal file
@@ -0,0 +1,51 @@
|
|||||||
|
{
|
||||||
|
"name": "ADS-B Multi-Portal Feeder",
|
||||||
|
"version": "0.1.32",
|
||||||
|
"stage": "experimental",
|
||||||
|
"ximage": "maxwinterstein/homeassistant-addon-adsbmultiportalfeeder-{arch}",
|
||||||
|
"slug": "adsb-multi-portal-feeder",
|
||||||
|
"description": "Dump1090 based feeder for FlightRadar24 and FlightAware",
|
||||||
|
"url": "https://github.com/MaxWinterstein/homeassistant-addons/",
|
||||||
|
"ingress": true,
|
||||||
|
"ingress_port": 8080,
|
||||||
|
"panel_title": "ADS-B Feeder",
|
||||||
|
"panel_icon": "mdi:airplane",
|
||||||
|
"arch": ["armhf", "armv7", "aarch64", "amd64"],
|
||||||
|
"boot": "auto",
|
||||||
|
"options": {
|
||||||
|
"SERVICE_ENABLE_FR24FEED": false,
|
||||||
|
"FR24FEED_FR24KEY": "",
|
||||||
|
"PIAWARE_FEEDER_DASH_ID": "",
|
||||||
|
"SERVICE_ENABLE_PIAWARE": false,
|
||||||
|
"HTML_SITE_LAT": 50.033056,
|
||||||
|
"HTML_SITE_LON": 8.570556
|
||||||
|
},
|
||||||
|
"schema": {
|
||||||
|
"SERVICE_ENABLE_FR24FEED": "bool",
|
||||||
|
"FR24FEED_FR24KEY": "str?",
|
||||||
|
"SERVICE_ENABLE_PIAWARE": "bool",
|
||||||
|
"PIAWARE_FEEDER_DASH_ID": "str?",
|
||||||
|
"HTML_SITE_LAT": "float?",
|
||||||
|
"HTML_SITE_LON": "float?"
|
||||||
|
},
|
||||||
|
"hassio_api": false,
|
||||||
|
"usb": true,
|
||||||
|
"ports": {
|
||||||
|
"8080/tcp": null,
|
||||||
|
"8754/tcp": null,
|
||||||
|
"30001/tcp": null,
|
||||||
|
"30002/tcp": null,
|
||||||
|
"30003/tcp": null,
|
||||||
|
"30004/tcp": null,
|
||||||
|
"30005/tcp": null
|
||||||
|
},
|
||||||
|
"ports_description": {
|
||||||
|
"8080/tcp": "Dump1090 status site",
|
||||||
|
"8754/tcp": "Flightrader24 feeder status site",
|
||||||
|
"30001/tcp": "TCP raw input",
|
||||||
|
"30002/tcp": "TCP raw output",
|
||||||
|
"30003/tcp": "TCP BaseStation output",
|
||||||
|
"30004/tcp": "TCP Beast input",
|
||||||
|
"30005/tcp": "TCP Beast output"
|
||||||
|
}
|
||||||
|
}
|
||||||
20
adsb-multi-portal-feeder/export-env-from-config.sh
Normal file
20
adsb-multi-portal-feeder/export-env-from-config.sh
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
#
|
||||||
|
# As Home Assistant parses the Add-On configuration towards /data/options.json
|
||||||
|
# we want all its values as environment variables.
|
||||||
|
#
|
||||||
|
# This needs to be sourced ($ source $0)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# TODO: Find a way to use bashio and source together
|
||||||
|
|
||||||
|
if [ ! -f '/data/options.json' ]; then
|
||||||
|
echo 'ERROR: /data/options.json not found' >>/dev/stderr
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# export add-on configuration so it can be sourced and used as login var
|
||||||
|
for s in $(cat /data/options.json | jq -r "to_entries|map(\"\(.key)=\(.value|tostring)\")|.[]" ); do
|
||||||
|
export $s
|
||||||
|
done
|
||||||
BIN
adsb-multi-portal-feeder/icon.png
Normal file
BIN
adsb-multi-portal-feeder/icon.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 55 KiB |
BIN
adsb-multi-portal-feeder/images/screenshot.png
Normal file
BIN
adsb-multi-portal-feeder/images/screenshot.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 98 KiB |
BIN
adsb-multi-portal-feeder/images/sensor_aircraft_tracked.png
Normal file
BIN
adsb-multi-portal-feeder/images/sensor_aircraft_tracked.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 26 KiB |
Reference in New Issue
Block a user