Metadata-Version: 2.1
Name: SerialManager
Version: 1.6.1
Summary: Abeeway configuration tool
Home-page: https://github.com/jlabbude/SerialManager
Author: João Lucas
Classifier: Development Status :: 3 - Alpha
Classifier: Programming Language :: Python :: 3
Requires-Python: >=3.0
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: pyserial
Requires-Dist: tk
Requires-Dist: requests
Requires-Dist: typing_extensions
Requires-Dist: kapak
Requires-Dist: pyyaml

# Serial Device Manager

## About
Python project useful if you want to configure multiple serial devices at once through their CLI. Right now, it's designed to be used to configure Abeeway's trackers.

![](https://i.ibb.co/HptPP0S/Screenshot-2024-05-15-15-25-08.png)

## Installation

To install I recommend you use the package installer for Python - **pip**

```bash
  pip install serialmanager
```

## Usages

```bash
  serialmgr abeeway config
```

Run this command to open the GUI related to device configuring.

---

```bash
 serialmgr abeeway upload
```

Run this command to open the GUI related to building a CSV to upload info about the configured devices to a cloud service, in this case, ThingPark.

---

```bash
 serialmgr abeeway create-cfg
```

Run this command to open the GUI related to creating a config file. **Firmware 2.4-1**

## Compatibility

### Operating Systems
- Linux
  - Arch
- Windows
  - W11

### Devices
- Abeeway Smart Badge
  - A310
  - U310

### Firmware Version
- Smart Badge U310/A310
  - 2.4.1

## Known issues
- GUI doesn't stall user action when talking to devices properly, making it able to break communication with serial ports by forcing multiple calls to same serial port
  - (as far as I've looked, this doesn't kill the already established communication)
- Start device command is fairly unstable for reasons unknown at the moment
- Devices with firmware versions above or below 2.4-1 will report config error due to not having that config parameter 

## Future goals
- [X] Change config file to yaml from cfg and add GUI to manipule it
- [ ] Support for multiple firmware versions
- [ ] Support for different types of devices
- [ ] Support for flashing the firmware of these devices

## TO DO
- [ ] Add search bar to `create-cfg`
