Daniel Moindrot 9047b75ce6 Improve error handling, availability logic and state restore
- Add TransferResult enum (SUCCESS, SENT, SERVER_ERROR, NETWORK_ERROR)
  to distinguish network errors from server errors
- Only mark entities as unavailable on NETWORK_ERROR (addon unreachable)
- HTTP 401, 405, 500 no longer trigger unavailable state, logged instead
- Add RestoreEntity to cover, switch and light to restore last known
  state after HA restart
2026-06-12 08:09:24 +02:00
2022-11-16 12:59:19 +01:00
2021-05-17 14:23:10 +02:00
2021-05-17 14:23:10 +02:00

airsend hacs_badge downloads

AirSend

This is a Home Assistant integration for AirSend boxes, which can capture and control more than 350 equipements (Remote Switchs, Lights, Shutters, Gate... ) from 50 brands (Dio, Faac, Nice, Somfy...) by RF433 or RF868 radio commands.

Supported boxes

Each AirSend device is represented as a proper Home Assistant device with its associated entities (cover, switch, button, light, sensor).

Requirements

1. Install the AirSend addon

Add AirSend addon repository

Install and start the AirSend addon.

2. Create airsend.yaml

Export your devices from airsend.cloud → Import/Export → Export YAML (select spurl for local connection).

Place the exported airsend.yaml in your /config folder.

Add your AirSend local connection string to secrets.yaml:

spurl: sp://**************@[fe80::xxxx:xxxx:xxxx:xxxx]?gw=0&rhost=192.168.xxx.xxx

Example airsend.yaml:

devices:
  AirSend box:
    type: 0
    spurl: !secret spurl
    sensors: true      # enables temperature and illuminance sensors
    bind: 1
    refresh: 300

  Volet salon:
    id: 12345
    type: 4098
    apiKey: !secret apiKey
    spurl: !secret spurl
    channel:
      id: 25455
      source: 94311

  Lumiere pergola:
    id: 65838
    type: 4100         # dimmable light
    apiKey: !secret apiKey
    spurl: !secret spurl
    wait: true
    channel:
      id: 26848
      source: 1442421508

Installation

Manual installation (until the repository is available in HACS)

  1. Download the latest release from GitHub releases.
  2. Copy the custom_components/airsend directory into your custom_components folder.
  3. Restart Home Assistant.
  4. Go to Settings → Integrations → Add integration and search for AirSend.
  1. Ensure HACS is installed.
  2. Search for AirSend in HACS and install it, or use the button below.
  3. Restart Home Assistant.
  4. Go to Settings → Integrations → Add integration and search for AirSend.

Open your Home Assistant instance and open a repository inside the Home Assistant Community Store.

Configuration

After the integration added, the internal URL of the addon will be auto-detected. Confirm and your devices will appear automatically.

To reload devices after modifying airsend.yaml, use the Reconfigure option on the integration.

Device options reference

Option Description
type Device type (see table above)
id AirSend cloud device ID
apiKey AirSend cloud API key
spurl Local connection string
channel RF channel definition (id, source, mac, seed)
wait Wait for RF confirmation before returning (true/false)
sensors Enable temperature and illuminance sensors for AirSend box (true/false)
bind Channel ID to bind for incoming RF messages
refresh Poll interval in seconds (default: 300)

Informations

This integration requires the AirSend addon to communicate with your AirSend hardware locally. For local connection, the AirSend IPv4 address is required, you can find it in your router or Airsend App for Windows. If you DO NOT provide ?gw=0&rhost=... then you may face unexpected HTTP/500 status code or HTTP/262 status code at Home Assistant level.

Supported device types

Type Value Description
AirSend box 0 The AirSend hardware box (state, temperature, illuminance)
Sensor 1 Generic RF sensor
Cover 4098 Roller shutter, blind (open/close/stop)
Cover with position 4099 Roller shutter with position control (0-100%)
Switch 4097 On/Off switch
Button 4096 Single-action button (toggle)
Light 4100 Dimmable light (0-100%)

Preview

Screenshot

S
Description
Home Assistant Component permettant d'envoyer des commandes radio via AirSend (RF433) ou AirSend duo (RF433 & RF868).
Readme GPL-3.0
304 KiB
Languages
Python 100%