# `NervesGateSDK.CAN`

CAN frames and process-owned receive subscriptions. No interface configuration.

# `interfaces`

```elixir
@spec interfaces() :: {:ok, [NervesGateSDK.CAN.Interface.t()]} | {:error, term()}
```

# `send`

```elixir
@spec send(String.t(), NervesGateSDK.CAN.Frame.t()) :: :ok | {:error, term()}
```

# `subscribe`

Receives Events.Event messages with topic `{:can, interface}` and a Frame value.

# `unsubscribe`

---

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