> ## Documentation Index
> Fetch the complete documentation index at: https://docs.endstate.io/llms.txt
> Use this file to discover all available pages before exploring further.

# FrameDecoder

> Accumulates raw USB bytes and emits each complete, unescaped TCMP packet. Handles frames split across reads and shared/doubled 0x7E flags.

Accumulates raw USB bytes and emits each complete, unescaped TCMP packet. Handles frames split across reads and shared/doubled 0x7E flags.

```ts theme={null}
import { FrameDecoder } from "@endstate-sdk/reader/tcmp";
```

```ts theme={null}
class FrameDecoder
```

## Example

```ts theme={null}
const decoder = new FrameDecoder();
for (const packet of decoder.push(chunk)) handle(packet);
```
