From a19971a1521752de01feda251152b9fcbdd384a9 Mon Sep 17 00:00:00 2001 From: Philip Rosenberg-Watt Date: Tue, 18 Jun 2019 06:55:29 -0600 Subject: [PATCH] Add APRS device tracker documentation (#9056) * Add APRS device tracker documentation * Clarify timeout config * Update release * Update release Hopefully this one is it. * :pencil2: Tweak --- .../_components/device_tracker.aprs.markdown | 59 ++++++++++++++++++ source/images/supported_brands/aprs.png | Bin 0 -> 15761 bytes 2 files changed, 59 insertions(+) create mode 100644 source/_components/device_tracker.aprs.markdown create mode 100644 source/images/supported_brands/aprs.png diff --git a/source/_components/device_tracker.aprs.markdown b/source/_components/device_tracker.aprs.markdown new file mode 100644 index 00000000000..c01cfb3519b --- /dev/null +++ b/source/_components/device_tracker.aprs.markdown @@ -0,0 +1,59 @@ +--- +layout: page +title: "APRS" +description: "Instructions on how to use APRS to track devices in Home Assistant." +date: 2018-11-04 00:00 +sidebar: true +comments: false +sharing: true +footer: true +logo: aprs.png +ha_release: 0.95 +ha_category: Presence Detection +ha_iot_class: Cloud Push +--- + +The `aprs` [(Automatic Packet Reporting System)](https://en.wikipedia.org/wiki/Automatic_Packet_Reporting_System) device tracker component connects to the [APRS-IS](http://aprs-is.net/) network for tracking amateur radio devices. + +## {% linkable_title Configuration %} + +To enable APRS tracking in Home Assistant, add the following section to `configuration.yaml`: + +```yaml +# Example configuration.yaml entry +device_tracker: + - platform: aprs + username: FO0BAR + callsigns: + - 'XX0FOO*' + - 'YY0BAR-1' +``` + +{% configuration %} +username: + description: Your callsign. This is used to connect to the host. + required: true + type: string +password: + description: Your APRS password. This will verify the connection. + required: false + type: string + default: -1 +callsigns: + description: A list of callsigns you wish to track. Wildcard `*` is allowed. Any callsigns that match will be added as devices. + required: true + type: list +host: + description: The APRS server to connect to. + required: false + type: string + default: rotate.aprs2.net +timeout: + description: The number of seconds to wait to connect to the APRS-IS network before giving up. + required: false + type: float + default: 30.0 +{% endconfiguration %} + +Verified connections are only required to send data to the APRS-IS network, which the `aprs` platform does not yet do. +However, you are free to verify your connection if you know your APRS password. diff --git a/source/images/supported_brands/aprs.png b/source/images/supported_brands/aprs.png new file mode 100644 index 0000000000000000000000000000000000000000..0bb10adb6cbaf2d06a309ba86ed0293e982ed3da GIT binary patch literal 15761 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 F{{@qpu0;R< literal 0 HcmV?d00001