--- title: Australian Bureau of Meteorology (BOM) description: Instructions on how to integrate Bureau of Meteorology Australia weather conditions into Home Assistant. ha_category: - Weather - Sensor - Camera ha_release: 0.36 ha_iot_class: Cloud Polling ha_domain: bom ha_codeowners: - '@maddenp' --- The `bom` weather platform uses the [Australian Bureau of Meteorology (BOM)](http://www.bom.gov.au) as a source for current (half-hourly) meteorological data. There is currently support for the following device types within Home Assistant: - [Camera](#camera) - [Sensor](#sensor) ## Configuration To add the BOM weather platform to your installation, add the following to your `configuration.yaml` file: ```yaml # Example configuration.yaml entry weather: - platform: bom ``` {% configuration %} name: description: The name you would like to give to the weather station. required: false type: string station: description: "The station ID string. See the [`sensor.bom` documentation](#sensor) for details on how to find the ID of a station." required: false type: string default: The closest station {% endconfiguration %}
This platform is an alternative to the [`bom`](#sensor) sensor. The weather platform is easier to configure but less customizable.
## Camera The `bom` camera platform uses the [Australian Bureau of Meteorology (BOM)](http://www.bom.gov.au) [radar web service](http://www.bom.gov.au/australia/radar/) as a source to generate an animated radar image. To add the BOM camera to your installation, add the following to your `configuration.yaml` file: ```yaml # Example configuration.yaml entry camera: - platform: bom location: YOUR_LOCATION ``` See below for a list of valid `location` values, and subsitute one for `YOUR_LOCATION`. {% configuration %} location: description: Required unless `id` is specified. See below for a list of valid locations. required: true type: string name: description: Allows you to override the Home Assistant-generated camera name. required: false type: string id: description: Allows you to manually specify a BOM Radar ID (either `location` or `id` must be defined, but not both). required: false type: integer delta: description: Time in seconds between BOM radar images available for this radar. Optional if `location` is defined; required if `id` is defined. required: false type: integer frames: description: Number of frames in the animated GIF. Optional if `location` is defined; required if `id` is defined. required: false type: integer filename: description: Periodically save the animated GIF image to this filesystem path. required: false type: string {% endconfiguration %} ### Valid `location` values ```txt Adelaide Albany AliceSprings Bairnsdale Bowen Brisbane Broome Cairns Canberra Carnarvon Ceduna Dampier Darwin Emerald Esperance Geraldton Giles Gladstone Gove Grafton Gympie HallsCreek Hobart Kalgoorlie Katherine Learmonth Longreach Mackay Marburg Melbourne Mildura Moree MorningtonIs MountIsa MtGambier Namoi Newcastle Newdegate NorfolkIs NWTasmania Perth PortHedland SellicksHill SouthDoodlakine Sydney Townsville WaggaWagga Warrego Warruwi Watheroo Weipa WillisIs Wollongong Woomera Wyndham Yarrawonga ``` ### Examples #### Using `location` and `name` Example `configuration.yaml` entry to display the `Townsville` radar with a camera named `mytowsvilleradar`: ```yaml camera: - platform: bom name: mytownsvilleradar location: Townsville ``` #### Using `id`, `delta` and `frames` In the event BOM creates a new radar, or a radar's ID changes, you may define a custom `id` along with corresponding `delta` and `frames` values. You may also specify custom `delta` and `frames` values, along with a valid `location`, to override the default values for an existing radar. You may not define `location` and `id` in the same entity; you must specify one or the other. If `id` is specified, then `delta` and `frames` values _must_ be provided. If `location` is specified, `delta` and `frames` _may_ be provided to override the default values. To find a live radar ID (e.g., for the `Townsville` radar), visit the [BOM website's radars page](http://www.bom.gov.au/australia/radar/), click the link for the radar you are interested in, and note the URL, for example: `http://www.bom.gov.au/products/IDR733.loop.shtml`. The ID is the number following `IDR` (i.e., `733`) in the URL. You can also see, at the bottom of the radar image, a rotating set of times corresponding to the frames of the BOM's JavaScript-driven animation. The number of minutes (in seconds) between these times corresponds to the camera's `delta` value, and the number of frames corresponds to the `frames` value. At the time of this writing, the `Townsville` radar loop is composed of 4 frames at 10-minute (600 second) intervals. Since these are also the default values, this configuration block ```yaml camera: - platform: bom location: Townsville ``` is equivalent to this one ```yaml camera: - platform: bom id: '053' delta: 600 frames: 4 name: 'Carnarvon' ``` #### Using `filename` This option can be specified to save the animated radar-imagery GIF to the given filesystem path. Example `configuration.yaml` entry to display the `Sydney` radar and save the animated GIF to a file named `sydneyradar.gif` to the filesystem path accessible as `/local/sydneyradar.gif` via Home Assistant's web server: ```yaml camera: - platform: bom id: Sydney filename: /config/www/images/sydneyradar.gif ``` The file will be updated every `delta` seconds when the camera regenerates the animation. ## Sensor The `bom` sensor platform uses the [Australian Bureau of Meteorology (BOM)](http://www.bom.gov.au) as a source for current (half-hourly) meteorological data. - Each sensor will be given the `device_id` of "bom [optionalname] friendlyname units" - A name is optional but if multiple BOM weather stations are used a name will be required. - The sensor checks for new data every minute, starting 30 minutes after the timestamp of the most recent data as the data is updated every half-hour. To add the BOM weather observation to your installation, add the following to your `configuration.yaml` file: ```yaml # Example configuration.yaml entry sensor: - platform: bom monitored_conditions: - apparent_t - cloud - cloud_base_m - cloud_oktas - cloud_type_id - cloud_type - delta_t - gust_kmh - gust_kt - air_temp - dewpt - local_date_time - local_date_time_full - press - press_qnh - press_msl - press_tend - rain_trace - rel_hum - sea_state - swell_dir_worded - swell_height - swell_period - vis_km - weather - wind_dir - wind_spd_kmh - wind_spd_kt ``` To get the station ID for any BOM station: - Find your station on these maps: [NSW](http://www.bom.gov.au/nsw/observations/map.shtml), [QLD](http://www.bom.gov.au/qld/observations/map.shtml), [VIC](http://www.bom.gov.au/vic/observations/map.shtml), [WA](http://www.bom.gov.au/wa/observations/map.shtml), [SA](http://www.bom.gov.au/sa/observations/map.shtml), [TAS](http://www.bom.gov.au/tas/observations/map.shtml), [ACT](http://www.bom.gov.au/act/observations/canberramap.shtml), [NT](http://www.bom.gov.au/nt/observations/map.shtml). - alternatively, from the [BOM website](http://www.bom.gov.au/), navigate to State -> Observations -> Latest Observations -> Choose the station. - The URL will look like `http://www.bom.gov.au/products/IDx60801/[station].shtml` - For Adelaide, the URL will look like `http://www.bom.gov.au/products/IDS60801/IDS60801.94675.shtml`; the station ID is `IDS60801.94675`. {% configuration %} station: description: The station ID string as identified from the BOM website. required: false type: string default: If not given, defaults to the closest station based on location data in configuration.yaml. name: description: The name you would like to give to the weather station. required: false type: string monitored_conditions: description: A list of the conditions to monitor. required: true type: list keys: apparent_t: description: Feels like temperature in C. cloud: description: Cloud cover. cloud_base_m: description: Cloud Base in m. cloud_oktas: description: Cloud Oktas. cloud_type_id: description: Cloud type ID. cloud_type: description: Cloud type description. delta_t: description: Delta temperature in C. gust_kmh: description: Wind gust in km/h. gust_kt: description: Wing gust in kt. air_temp: description: Air temperature in C. dewpt: description: Dew point in C. press: description: Pressure in mbar. press_qnh: description: Pressure in qnh. press_msl: description: Pressure in msl. press_tend: description: Pressure trend. rain_trace: description: Raing today in mm. rel_hum: description: Relative Humidity in %. sea_state: description: Sea state. swell_dir_worded: description: Swell direction. swell_height: description: Swell height in m. swell_period: description: Swell period. vis_km: description: Visibility in km. weather: description: Weather summary. wind_dir: description: Wind direction. wind_spd_kmh: description: Wind speed in km/h. wind_spd_kt: description: Wind speed in kt. {% endconfiguration %}
This sensor is an alternative to the [`bom`](#configuration) weather platform. The weather platform is easier to configure but less customisable.