Metadata-Version: 2.4
Name: bc_insole_sdk
Version: 0.1.3
Classifier: Programming Language :: Rust
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Requires-Python: >=3.10
Description-Content-Type: text/markdown; charset=UTF-8; variant=GFM

# BC Insole SDK

Rust, Python, iOS, and Android SDK foundation for BrainCo smart pressure insoles.

The device protocol uses a short binary transport frame carrying Protobuf payloads:

```text
[BRNC][Ver][PayVer][Len LE][Protobuf Payload][CRC16 LE]
```

Core protocol support lives in `sdk/src/protocol` and implements:

- CRC16-Modbus validation over header + payload
- frame encoding
- stream parsing with magic-byte resynchronization
- Protobuf request/response payload encoding and decoding

## Build

```bash
cargo test
```

## Python

```bash
cd sdk
maturin develop --features python
```

## Mobile

The Rust crate exports a C ABI with `staticlib`/`cdylib` outputs. iOS and Android wrappers should bind to the C surface in `sdk/src/c`.

