abibas/README.md

49 lines
1.7 KiB
Markdown
Raw Normal View History

2023-06-17 09:50:27 +00:00
Purpose
=======
This is a testing tool for one proprietary enterprise app which in turn handles aviation lights on top of the wind turbines for aviation safety.
While working on that app it is not always possible to use real devices (so called light controllers).
Thus the purpose of this tool to help with development via simulating those devices.
Communication with controllers is built upon **MODBUS** protocol via TCP/IP.
The name ``abibas`` is more like a joke implying that it is not real devices but the simulated ones.
The tool consists of two parts - simulator (implemented using **pyModbusTCP**) and UI interface to it for configuration and monitoring (implemented using **Flask**)
Type ``abibas`` in terminal to run the tool after installation
Type Ctrl+C to cancel (or stop) the tool
After stopping it a table will be printed out with some stats info
Requires **python3.10** and above
Licensed under **GPLv3** license
Setup & debug
=============
+ clone the repo and cd to the cloned dir
+ ``python3.11 -m venv .venv``
+ ``source .venv/bin/activate``
+ ``pip install build``
+ ``python -m build``
+ ``pip install -e .``
+ ``pip list`` (pip show abibas, pip uninstall abibas, etc)
At this stage the package is installed in editable mode, to run it in debug mode:
,
2023-06-17 09:50:27 +00:00
+ ``abibas-debug``
or in normal mode:
+ ``abibas``
If in debug mode changes made to the Flask app will be applied automatically at runtime,
for the changes in simulator though the tool has to be restarted.
**main** module can be manipulated for debugging purposes as well
Before releasing
================
+ ``pip install twine``
+ ``twine check dist/*``
+ ``twine upload --repository-url https://test.pypi.org/legacy/ dist/*``