semvec/pypi-packages huggingface dataset:
SonoffBasic 0.0.2
basic package to control sonoff switches
Requires Python: >=3.6

# SonoffBasic
SonoffBasic allows to control Sonoff switches via the Ewelink cloud, with a very basic features.

⚠️ Project was tested on sonoff basic only. Other devices will be tested and adjust in the future. 
## requirements

* Sonoff switch must be connected to ewelink app [SONOFF Basic USER GUIDE](http://ewelink.coolkit.cc/?p=126). 
* Username is email address. 
* Ewelink account region must be one of **'us'**, **'eu'** or **'cn'**.
* install SonoffBasic (https://pypi.org/project/SonoffBasic/)

## How to use ✨
* Create an instance of Sonoff with ewelink. 
available params (all values in string format):
    * username - email address (required) 
    * password (required)
    * region (optional) default *'us'*
    * timezone (optional) default *'US/Pacific'*
    ```python
    >>> from SonoffBasic.sonoff import Sonoff
    >>> sonoff = Sonoff(username='my_name@example.com',
                        password='my_pass',
                        timezone='US/Pacific',
                        region='us')
    ```
* Search the required device

    ```python
    >>> print(sonoff.devices)
    [{'name': 'taco', 'deviceid': '1000157898', 'outletid': 0, 'status': 'on'}, 
    {'name': 'Irrigation', 'deviceid': '100015b23r', 'outletid': 0, 'status': 'off'}]
    ```
* Control the device
    ```python 
    >>> sonoff.change_device_status(deviceid = '1000157898',
                                    new_status = 'off'
                                    )            
    deviceid: 1000157898 status successfully changed to off
    ```

### Special Thanks
Thanks to [@AlexxIT](https://github.com/AlexxIT).
cloud connection to [eWeLink](https://www.ewelink.cc/en/) was inspired by [SonoffLAN](https://github.com/AlexxIT/SonoffLAN) project.
sm-tools 0.0.3
StepMania tools
Requires Python: >=3.6

# sm_tools
Tools to interact with stepmania and it's related filetypes (.sm in particular)

## Motivation
There has been desire to do Data Science projects on stepmania data, like song difficulty modeling. The first tool in this repo is a `step_parser`, which will extract a feature set from a song directory to build models off of.

## How to use
### With checked out repo: 
```shell
git clone git@github.com:JaceTSM/sm_tools.git
cd sm_tools

python src/step_parser/cli.py \
    /path/to/your/stepmania/songs \
    --output /path/to/output.csv
```
If you don't pass `--output`, it will default to writing the output to `step_parser_output_${unix_ts}.csv`.

### As package:
```shell
pip install sm_tools

step_parser /path/to/your/stepmania/songs --output /path/to/output.csv
```
In python:
```python
import os
from step_parser import analyze_stepchart, batch_analysis

# Get DF for all songs in a dir (recursive search)
sm_song_dir = "/mnt/c/Games/StepMania 5/Songs"
batch_analysis(sm_song_dir)

# Get DF for single .sm file
sample_stepchart = os.path.join(
    sm_song_dir,
    "Jimmy Jawns/Dreadnought - [Aoreo]/Dreadnought.sm"
)
analyze_stepchart(sample_stepchart)
```

### Manual Package Installation
Create python virtualenv however you want, then:
```python
# from project root, build the package
python -m build

# then install the wheel directly (the version number may be different)
pip install dist/sm_tools-0.0.1-py3-none-any.whl
```
pbe 0.0.2
Package to solve population balance equations (PBE) for aggregation processes using the *fixed pivot* method
Requires Python: >=3.6

## Status

`pbe` is currently being developed and not yet ready for use.

## Description

`pbe` is a Python package to solve population balance equations (PBE) for one- and two-component aggregation processes using the (extended) fixed pivot method. For single component systems, the code implements the method of [Kumar & Ramkrishna (1996)](https://doi.org/10.1016/0009-2509(96)88489-2), and for bivariate aggregation the method of [Vale & McKenna (2005)](https://doi.org/10.1021/ie050179s).

## Underlying PBE

If the system is spatially homogeneous, a two-component aggregation process is described by the following PBE:

<img src="https://latex.codecogs.com/svg.latex?\large&space;\begin{align*}&space;&&space;\frac{{\partial&space;n(x,y,t)}}{{\partial&space;t}}&space;=&space;\\&space;&&space;\frac{1}{2}\int_0^x&space;{\int_0^y&space;{\beta&space;(x&space;-&space;x',y&space;-&space;y';x',y';t)n(x&space;-&space;x',y&space;-&space;y',t)n(x',y',t)&space;d&space;x'&space;d&space;y'}}&space;\\&space;&&space;-n(x,y,t)\int_0^\infty&space;{\int_0^\infty&space;{\beta&space;(x,y;x',y';t)n(x',y',t)d&space;x'&space;d&space;y'}}&space;\end{align*}" title="\large \begin{align*} & \frac{{\partial n(x,y,t)}}{{\partial t}} = \\ & \frac{1}{2}\int_0^x {\int_0^y {\beta (x - x',y - y';x',y';t)n(x - x',y - y',t)n(x',y',t) d x' d y'}} \\ & -n(x,y,t)\int_0^\infty {\int_0^\infty {\beta (x,y;x',y';t)n(x',y',t)d x' d y'}} \end{align*}" />

where <img src="https://latex.codecogs.com/svg.latex?\inline&space;n(x,y,t)&space;dx&space;dy" title="n(x,y,t) dx dy" /> is the number of particles of state <img src="https://latex.codecogs.com/svg.latex?\inline&space;(x,y)" title="(x,y)" /> per unit volume at time <img src="https://latex.codecogs.com/svg.latex?t" title="t" /> and <img src="https://latex.codecogs.com/svg.latex?\beta&space;(x,y;x',y';t)" title="\beta (x,y;x',y';t)" /> is the aggregation rate coefficient. The internal coordinates <img src="https://latex.codecogs.com/svg.latex?x" title="x" /> and <img src="https://latex.codecogs.com/svg.latex?y" title="y" /> denote the amount (mass, moles, etc.) of each component in the particle.



## Installation

tbd

## Examples

tbd