# ex_dlt645 v0.1.0 - API Reference

## Modules

- [ExDlt645](ExDlt645.md): A complete, idiomatic Elixir/OTP communication library for the DL/T 645-2007
(and 1997) electricity meter protocol.
- [ExDlt645.BCD](ExDlt645.BCD.md): Binary Coded Decimal (BCD) encoding and decoding helpers for DL/T 645 protocols.
- [ExDlt645.Codec](ExDlt645.Codec.md): Pure functional packet encoder and decoder for DL/T 645-2007 frames.

- [ExDlt645.DataId](ExDlt645.DataId.md): DL/T 645-2007 Data Identifier (DI) specifications and value decoders/encoders.
- [ExDlt645.DataId.Info](ExDlt645.DataId.Info.md): Metadata for a DL/T 645-2007 Data Identifier.
- [ExDlt645.Frame](ExDlt645.Frame.md): Represents a parsed or constructed DL/T 645-2007 frame.
- [ExDlt645.Framer](ExDlt645.Framer.md): `Circuits.UART.Framing` implementation for DL/T 645-2007 streams.
- [ExDlt645.Master](ExDlt645.Master.md): DL/T 645-2007 Master collector GenServer.
- [ExDlt645.Query](ExDlt645.Query.md): Inspection, diagnostic, and query tools for DL/T 645-2007.
- [ExDlt645.Slave](ExDlt645.Slave.md): DL/T 645-2007 Slave (Electricity Meter Simulator) GenServer.
- [ExDlt645.Telemetry](ExDlt645.Telemetry.md): Telemetry instrumentation for DL/T 645 requests.
- [ExDlt645.Transport](ExDlt645.Transport.md): Behaviour for DL/T 645 communication transport layers.
- [ExDlt645.Transport.Tcp](ExDlt645.Transport.Tcp.md): TCP socket transport implementation for DL/T 645.
- [ExDlt645.Transport.UART](ExDlt645.Transport.UART.md): Hardware serial transport implementation backed by `Circuits.UART`.

- [ExDlt645.Transport.Virtual](ExDlt645.Transport.Virtual.md): In-memory virtual serial transport implementation for DL/T 645.
- [ExDlt645.VirtualBus](ExDlt645.VirtualBus.md): In-memory virtual serial bus for DL/T 645 communications.

## Mix Tasks

- [mix dlt645](Mix.Tasks.Dlt645.md): Command line analysis and query tool for DL/T 645-2007.

