# `NervesGateSDK.RS485`

Exclusive, process-owned RS485 sessions. Claims are released on owner exit.
Receive data arrives as Events.Event with topic `{:rs485, port}` and binary value.
The platform owns serial settings; applications cannot open Linux devices.

# `claim`

```elixir
@spec claim(String.t()) :: {:ok, reference()} | {:error, term()}
```

# `ports`

```elixir
@spec ports() :: {:ok, [NervesGateSDK.RS485.Port.t()]} | {:error, term()}
```

# `release`

```elixir
@spec release(reference()) :: :ok | {:error, term()}
```

# `write`

```elixir
@spec write(reference(), binary()) :: :ok | {:error, term()}
```

---

*Consult [api-reference.md](api-reference.md) for complete listing*
