semvec/pypi-packages huggingface dataset:
BusServoControl 0.2
A module for controlling servo motors
License: MIT

# BusServoControl

## Project description 项目描述

BusServoControl is a Python library for precise control of bus-based servo motors using serial communication protocols.
BusServoControl 是一个通过串行通信协议精确控制总线舵机的 Python 库。

**Website:** https://github.com/LeurDeLis/BusServoControl

**Documentation:** https://github.com/LeurDeLis/BusServoControl/blob/main/README.md

**Source code:** https://github.com/LeurDeLis/BusServoControl

**Bug reports:** https://github.com/LeurDeLis/BusServoControl/issues

------

## Key Features 核心特性

- **Protocol Implementation**
  完整实现 `0x55 0x55` 帧头协议，支持 ID 范围 `0x00-0xFE`（最多 254 个舵机）
- **Precise Motion Control**
  支持角度范围 `0-1000`（对应 0-240°），运动时间 `0-30000ms`
- **Real-Time Monitoring**
  实时读取温度、电压、当前位置等状态信息
- **Safety Protection**
  支持角度限制、电压限制、温度保护
- **Offset Adjustment**
  支持临时偏差调整（断电不保存）和永久保存
- **Broadcast Support**
  支持广播指令（ID=254），避免总线冲突

## Example Usage 示例代码

```python
# 初始化串口和舵机控制器
my_serial = MySerial(port="COM6", baud_rate=115200)
my_servo = BusServoControl(my_serial)

# 控制舵机运动
my_servo.move_time_write(1, 1000, 2000)  # 1号舵机2000ms内移动到1000位置

# 读取当前角度
position = my_servo.read_current_position(1)

# 设置角度限制（安全保护）
my_servo.set_angle_limit(1, min_angle=100, max_angle=500)

# 调整并保存角度偏差
my_servo.angle_offset_adjust(1, offset=10)
my_servo.angle_offset_save(1)
```

## Protocol Specification 协议说明

|  协议头   |      舵机 ID       | 数据长度 | 指令值 | 校验值 |
| :-------: | :----------------: | :------: | :----: | :----: |
| 0x55 0x55 | 1 byte (0x00-0xFD) |  1 byte  |  可变  | 1 byte |

- **校验值计算:** `Checksum = ~(ID + Length + Cmd + Param1 + ... + ParamN)`
- **广播 ID:** `0xFE`（所有舵机接收指令，但不返回应答）
- **数据长度:** 等于参数总长度 + 3（帧头到校验和的总长度）

------

## Supported Functions 支持功能

1. **Motion Control**

   - `move_time_write()` : 即时运动控制
   - `move_time_wait_write()` : 预设运动参数
   - `move_start()` : 启动预设动作
   - `move_stop()` : 停止当前动作

   

2. **Parameter Configuration**

   - `set_servo_id()` : 修改舵机 ID
   - `set_angle_limit()` : 设置角度范围
   - `set_voltage_limit()` : 设置电压限制
   - `set_max_temperature()` : 设置最高温度

   

3. **Status Monitoring**

   - `read_current_position()` : 读取当前位置
   - `read_current_voltage()` : 读取输入电压
   - `read_current_temperature()` : 读取内部温度

------

## Installation 安装

```bash
pip install BusServoControl
```

------

## Protocol Specification 协议说明

| 协议头    | 舵机 ID            | 数据长度 | 指令值 | 校验值 |
| --------- | ------------------ | -------- | ------ | ------ |
| 0x55 0x55 | 1 byte (0x00-0xFD) | 1 byte   | 可变   | 1 byte |

- **校验值计算:** `Checksum = ~(ID + Length + Cmd + Param1 + ... + ParamN)`
- **广播 ID:** `0xFE`（所有舵机接收指令，但不返回应答）
- **数据长度:** 等于参数总长度 + 3（帧头到校验和的总长度）

## Code of Conduct 行为准则

我们承诺为所有贡献者和用户维护一个友好且包容的社区。请阅读我们的完整行为准则：
https://github.com/LeurDeLis/BusServoControl/blob/CODE_OF_CONDUCT.md
drfx 0.1.4
Optimized and performance Django Rest Framework Extensions
License: MIT
Requires Python: >=3.10

![PyPI](https://img.shields.io/pypi/v/drfx)

# Optimized and performance DRF Extension

### Follow me

👨🏻‍💻[LinkedIn](https://www.linkedin.com/in/dvbashak/) | 📷 [Instagram](https://instagram.com/d.v.bashak)
sdes 0.1.3
Simplified Data Encryption Standard (S-DES) Implementation
License: MIT
Requires Python: >=3.6


# S-DES (Simplified Data Encryption Standard)

S-DES (Simplified Data Encryption Standard) is a lightweight block cipher that operates on 8-bit blocks. This package implements the encryption and decryption functionality of S-DES using a 10-bit key.

## Installation

To install the package, you can use the following `pip` command:

```
pip install sdes
pip install bitarray
```

If you are developing locally, you can install the package in editable mode:

```
pip install -e .
```

## Usage

You can use this package to perform encryption and decryption using the Simplified Data Encryption Standard (S-DES) algorithm.

### Example Usage

```python
from sdes import encrypt, decrypt, generate_keys
import bitarray

# Example 10-bit key (must be 10-bits long)
key = bitarray.bitarray('1010000010')

# Example 8-bit plaintext (must be 8-bits long)
plaintext = bitarray.bitarray('11010011')

# Generate subkeys
key1, key2 = generate_keys(key)

# Encrypt the plaintext
ciphertext = encrypt(plaintext, key1, key2)
print("Encrypted:", ciphertext)

# Decrypt the ciphertext
decrypted_text = decrypt(ciphertext, key1, key2)
print("Decrypted:", decrypted_text)
```

### Functions

- **`generate_keys(key)`**  
  Generates two 8-bit subkeys (`key1` and `key2`) from the provided 10-bit key.  

  **Parameters:**  
  - `key` (bitarray): The 10-bit key.

  **Returns:**  
  - `key1` (bitarray): First subkey.
  - `key2` (bitarray): Second subkey.

- **`encrypt(plaintext, key1, key2)`**  
  Encrypts the 8-bit `plaintext` using the two subkeys (`key1` and `key2`) according to the S-DES algorithm.  

  **Parameters:**  
  - `plaintext` (bitarray): The 8-bit plaintext to encrypt.
  - `key1` (bitarray): First subkey.
  - `key2` (bitarray): Second subkey.

  **Returns:**  
  - `ciphertext` (bitarray): The encrypted 8-bit ciphertext.

- **`decrypt(ciphertext, key1, key2)`**  
  Decrypts the 8-bit `ciphertext` using the two subkeys (`key1` and `key2`) according to the S-DES algorithm.  

  **Parameters:**  
  - `ciphertext` (bitarray): The 8-bit ciphertext to decrypt.
  - `key1` (bitarray): First subkey.
  - `key2` (bitarray): Second subkey.

  **Returns:**  
  - `decrypted_text` (bitarray): The decrypted 8-bit plaintext.

## Requirements

This package requires the following libraries:

- `bitarray`: A Python module for efficiently working with bit arrays.
- `numpy`: A package for numerical computations (optional for your case but can be useful for optimization).

You can install the dependencies using:

```
pip install bitarray numpy
```

## License

This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.

## Contributing

Feel free to open issues and submit pull requests. Contributions are welcome!
validators 0.35.0
Python Data Validation for Humans™
License: MIT
Requires Python: >=3.9
Keywords: validation, validator, python-validator

# validators - Python Data Validation for Humans™

[![PyCQA][pycqa-badge]][pycqa-link] [![SAST][sast-badge]][sast-link] [![Docs][docs-badge]][docs-link] [![Version][vs-badge]][vs-link] [![Downloads][dw-badge]][dw-link]

<!-- [![Package][package-badge]][package-link] -->

Python has all kinds of data validation tools, but every one of them seems to
require defining a schema or form. I wanted to create a simple validation
library where validating a simple value does not require defining a form or a
schema.

```shell
pip install validators
```

Then,

```python
>>> import validators
>>>
>>> validators.email('someone@example.com')
True
```

## Resources

<!-- Backup documentation URL :  https://yozachar.github.io/pyvalidators/ -->
<!-- Original documentation URL :  https://python-validators.github.io/validators/ -->

- [Documentation](https://yozachar.github.io/pyvalidators)
- [Bugtracker](https://github.com/python-validators/validators/issues)
- [Security](https://github.com/python-validators/validators/blob/master/SECURITY.md)
- [Code](https://github.com/python-validators/validators/)

<!-- Original docs URL will be restored, once properly versioned docs are ready. -->

---

> **_Python 3.9 [reaches EOL in](https://endoflife.date/python) October 2025._**

<!-- Links -->
[sast-badge]: https://github.com/python-validators/validators/actions/workflows/sast.yaml/badge.svg
[sast-link]: https://github.com/python-validators/validators/actions/workflows/sast.yaml
[pycqa-badge]: https://github.com/python-validators/validators/actions/workflows/pycqa.yaml/badge.svg
[pycqa-link]: https://github.com/python-validators/validators/actions/workflows/pycqa.yaml
[docs-badge]: https://github.com/yozachar/pyvalidators/actions/workflows/pages/pages-build-deployment/badge.svg
[docs-link]: https://github.com/yozachar/pyvalidators/actions/workflows/pages/pages-build-deployment
[vs-badge]: https://img.shields.io/pypi/v/validators?logo=pypi&logoColor=white&label=version&color=blue
[vs-link]: https://pypi.python.org/pypi/validators/
[dw-badge]: https://img.shields.io/pypi/dm/validators?logo=pypi&logoColor=white&color=blue
[dw-link]: https://pypi.python.org/pypi/validators/

<!-- [package-badge]: https://github.com/python-validators/validators/actions/workflows/package.yaml/badge.svg
[package-link]: https://github.com/python-validators/validators/actions/workflows/package.yaml -->