semvec/pypi-packages huggingface dataset:
diesel-heater-ble 0.2.14
BLE protocol library for diesel heaters (Vevor, Hcalory, Sunster, HeaterCC)
License: MIT
Requires Python: >=3.10
Keywords: bluetooth, ble, diesel-heater, vevor, hcalory, sunster, heatercc, home-assistant, iot

# diesel-heater-ble

Pure Python library for parsing and controlling BLE diesel heaters.

Supports Vevor, Hcalory, Sunster, and HeaterCC diesel heater protocols
over Bluetooth Low Energy (BLE). No dependency on Home Assistant.

## Supported Protocols

| Protocol | Mode | Description |
|----------|------|-------------|
| AA55 | 1 | Unencrypted, 18-20 bytes (Vevor) |
| AA55enc | 2 | Encrypted, 48 bytes XOR (Vevor) |
| AA66 | 3 | Unencrypted, 20 bytes (BYD variant) |
| AA66enc | 4 | Encrypted, 48 bytes XOR (Vevor) |
| ABBA | 5 | HeaterCC protocol, 21+ bytes, own command format |
| CBFF | 6 | Sunster v2.1, 47 bytes, optional double-XOR encryption |
| Hcalory | 7 | MVP1/MVP2 protocol, variable length with checksum |

## Installation

```bash
pip install diesel-heater-ble
```

## Usage

```python
from diesel_heater_ble import ProtocolAA55, ProtocolCBFF

# Parse a BLE notification
protocol = ProtocolAA55()
data = bytearray(...)  # raw BLE notification bytes
result = protocol.parse(data)

print(result["running_state"])   # 0=off, 1=on
print(result["cab_temperature"]) # interior temperature
print(result["supply_voltage"])  # battery voltage

# Build a command
cmd = protocol.build_command(command=3, argument=0, passkey=1234)
# Send cmd to BLE characteristic...
```

## API

### Protocol Classes

All protocol classes implement the `HeaterProtocol` interface:

- `HeaterProtocol` - Abstract base class
- `ProtocolAA55` - AA55 unencrypted
- `ProtocolAA55Encrypted` - AA55 with XOR encryption
- `ProtocolAA66` - AA66 unencrypted (BYD variant)
- `ProtocolAA66Encrypted` - AA66 with XOR encryption
- `ProtocolABBA` - ABBA/HeaterCC protocol
- `ProtocolCBFF` - CBFF/Sunster v2.1 protocol
- `ProtocolHcalory` - Hcalory MVP1/MVP2 protocol

### Methods

- `parse(data: bytearray) -> dict | None` - Parse BLE notification data
- `build_command(command: int, argument: int, passkey: int) -> bytearray` - Build command packet

### Helper Functions

- `_decrypt_data(data)` / `_encrypt_data(data)` - XOR encryption/decryption
- `_u8_to_number(value)` - Convert unsigned 8-bit value
- `_unsign_to_sign(value)` - Convert unsigned to signed value

## License

MIT
chainsaws 0.0.179
CHAIN your backend with Simple AWS services
License: MIT
Requires Python: <3.15,>=3.12

# Chainsaws

Chain your backend with simple AWS services

## Installation

### Basic Installation

```bash
pip install chainsaws
```

### Optional Features

Chainsaws provides optional features that can be installed based on your needs:

#### ElastiCache Support

Install with Redis, Memcached, and ValKey client support:

```bash
pip install chainsaws[elasticache]
```

#### Redshift Support

Install with Redshift database support:

```bash
pip install chainsaws[redshift]
```

#### All Features

Install all optional features:

```bash
pip install chainsaws[all]
```

## Features

Chainsaws provides high-level Python APIs for various AWS services:

- Core Services (included in basic installation)

  - IAM & STS
  - S3
  - DynamoDB
  - SNS & SQS
  - Lambda
  - ECS
  - CloudWatch
  - API Gateway
  - CloudFront
  - EventBridge
  - EventBridge Scheduler
  - Kinesis Firehose

- Optional Services
  - ElastiCache (Redis, Memcached, ValKey) [requires `elasticache` extra]
  - Redshift [requires `redshift` extra]

Each service is designed to be simple to use while providing type safety and comprehensive error handling.
sonolus-fastapi 0.5.6.3
FastAPI wrapper for Sonolus server creation and management This project is still under development.
License: MIT
Requires Python: >=3.13
Keywords: fastapi, rhythm-game, server, sonolus

# Sonolus-FastAPI

## Install

```bash
pip insatll sonolus-fastapi
```

## Usage


こちらをお読みください。

Please read this.

https://sonolus-fastapi.pim4n-net.com

## Example

[example.py](./example.py)