diff options
| -rw-r--r-- | .gitignore | 1 | ||||
| -rw-r--r-- | python-opus20.spec | 477 | ||||
| -rw-r--r-- | sources | 1 |
3 files changed, 479 insertions, 0 deletions
@@ -0,0 +1 @@ +/opus20-1.0.1.tar.gz diff --git a/python-opus20.spec b/python-opus20.spec new file mode 100644 index 0000000..db5ef4e --- /dev/null +++ b/python-opus20.spec @@ -0,0 +1,477 @@ +%global _empty_manifest_terminate_build 0 +Name: python-opus20 +Version: 1.0.1 +Release: 1 +Summary: Interface to Lufft OPUS20 devices +License: GPL +URL: https://pypi.org/project/opus20/ +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/81/a7/814ed6ece23becdcde23133887b5da23b0b329ed9d0f4bfaa43f8b47bc73/opus20-1.0.1.tar.gz +BuildArch: noarch + + +%description +opus20 - a Python interface to the OPUS20 +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +This is a *opus20*, a Python software to query the temperature / +humidity / air pressure logging device OPUS20 produced by Lufft. + +The source code is `managed on Github: +pklaus/opus20 <https://github.com/pklaus/opus20>`__. The Python package +is also `registered on PyPI <https://pypi.python.org/pypi/opus20>`__ for +easy installation. + +Requirements and Installation +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +The only strict requirement for the bare opus20 package is Python +version 3.3+. Then, the package can be installed via pip directly from +PyPI: + +:: + + pip install --upgrade opus20 + +The package comes with an (optional) plot web server, too. It depends on +some more Python packages. To install those requirements as well, run +this command: + +:: + + pip install --upgrade opus20[webserver] + +This will install further packages like jinja2, bottle, matplotlib, +pandas, and numpy. (Installing matplotlib may also require you to +install the python development package for Python 3.) + +Usage +^^^^^ + +The Python package installs a command line tool to query the device for +current values. It's called ``opus20_cli``. + +Here is how to get a list of all available *channels* from the device: + +:: + + philipp@lion:~> opus20_cli 192.168.1.55 list + Channel 100 (0x0064): CUR temperature unit: °C offset: ±10.0 logging: no + Channel 120 (0x0078): MIN temperature unit: °C offset: ±10.0 logging: no + Channel 140 (0x008C): MAX temperature unit: °C offset: ±10.0 logging: no + Channel 160 (0x00A0): AVG temperature unit: °C offset: ±10.0 logging: yes + Channel 105 (0x0069): CUR temperature unit: °F offset: 0.0 logging: no + Channel 125 (0x007D): MIN temperature unit: °F offset: 0.0 logging: no + Channel 145 (0x0091): MAX temperature unit: °F offset: 0.0 logging: no + Channel 165 (0x00A5): AVG temperature unit: °F offset: 0.0 logging: no + Channel 200 (0x00C8): CUR relative humidity unit: % offset: ±30.0 logging: no + Channel 220 (0x00DC): MIN relative humidity unit: % offset: ±30.0 logging: no + Channel 240 (0x00F0): MAX relative humidity unit: % offset: ±30.0 logging: no + Channel 260 (0x0104): AVG relative humidity unit: % offset: ±30.0 logging: yes + Channel 205 (0x00CD): CUR absolute humidity unit: g/m³ offset: 0.0 logging: no + Channel 225 (0x00E1): MIN absolute humidity unit: g/m³ offset: 0.0 logging: no + Channel 245 (0x00F5): MAX absolute humidity unit: g/m³ offset: 0.0 logging: no + Channel 265 (0x0109): AVG absolute humidity unit: g/m³ offset: 0.0 logging: yes + Channel 110 (0x006E): CUR dewpoint unit: °C offset: 0.0 logging: no + Channel 130 (0x0082): MIN dewpoint unit: °C offset: 0.0 logging: no + Channel 150 (0x0096): MAX dewpoint unit: °C offset: 0.0 logging: no + Channel 170 (0x00AA): AVG dewpoint unit: °C offset: 0.0 logging: yes + Channel 115 (0x0073): CUR dewpoint unit: °F offset: 0.0 logging: no + Channel 135 (0x0087): MIN dewpoint unit: °F offset: 0.0 logging: no + Channel 155 (0x009B): MAX dewpoint unit: °F offset: 0.0 logging: no + Channel 175 (0x00AF): AVG dewpoint unit: °F offset: 0.0 logging: no + Channel 10020 (0x2724): CUR battery voltage unit: V offset: 0.0 logging: no + Channel 10040 (0x2738): MIN battery voltage unit: V offset: 0.0 logging: no + Channel 10060 (0x274C): MAX battery voltage unit: V offset: 0.0 logging: no + Channel 10080 (0x2760): AVG battery voltage unit: V offset: 0.0 logging: yes + +Asking for the value of a channel works like this: + +:: + + philipp@lion:~> opus20_cli 192.168.1.55 get 0x0064 + 24.712 + +You can also download the values stored on the device and store them in +a file: + +:: + + philipp@lion:~> opus20_cli --loglevel INFO 192.168.1.55 download log_data.pickle + INFO:opus20.opus20:Connected to device with ID: EC9C0A06B183 + INFO:opus_cli:script running time (net): 1.208517 seconds. + philipp@lion:~> + +Here is an overview of all the possible CLI commands: + +:: + + # List all possible channels: + opus20_cli 192.168.1.55 list + + # Get the values for the specified channels (CUR, MIN, MAX temperature in °C): + opus20_cli 192.168.1.55 get 0x0064 0x0078 0x008C + + # Download the latest log data and merge it into a persistant data file: + opus20_cli 192.168.1.55 download opus20.PickleStore.p + + # Check if logging in general is enabled on the device: + opus20_cli 192.168.1.55 logging status + opus20_cli 192.168.1.55 logging start + opus20_cli 192.168.1.55 logging stop + # Or clear the log: + opus20_cli 192.168.1.55 logging clear + + # Enable or disable logging for individual channels: + opus20_cli 192.168.1.55 enable 0x0064 0x0078 0x008C + opus20_cli 192.168.1.55 disable 0x00CD 0x00E1 0x00F5 + +Author +^^^^^^ + +- + + (c) 2015, Philipp Klaus + klaus@physik.uni-frankfurt.de + Ported the software to Python, extended and packaged it. + +- + + (c) 2012, `Ondics GmbH <http://www.ondics.de>`__ + githubler@ondics.de + The author of the `original + scripts <https://github.com/ondics/lufft-l2p-script-collection>`__ + (written as Bash scripts + netcat & gawk) + +License +^^^^^^^ + +GPLv3 + +%package -n python3-opus20 +Summary: Interface to Lufft OPUS20 devices +Provides: python-opus20 +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-opus20 +opus20 - a Python interface to the OPUS20 +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +This is a *opus20*, a Python software to query the temperature / +humidity / air pressure logging device OPUS20 produced by Lufft. + +The source code is `managed on Github: +pklaus/opus20 <https://github.com/pklaus/opus20>`__. The Python package +is also `registered on PyPI <https://pypi.python.org/pypi/opus20>`__ for +easy installation. + +Requirements and Installation +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +The only strict requirement for the bare opus20 package is Python +version 3.3+. Then, the package can be installed via pip directly from +PyPI: + +:: + + pip install --upgrade opus20 + +The package comes with an (optional) plot web server, too. It depends on +some more Python packages. To install those requirements as well, run +this command: + +:: + + pip install --upgrade opus20[webserver] + +This will install further packages like jinja2, bottle, matplotlib, +pandas, and numpy. (Installing matplotlib may also require you to +install the python development package for Python 3.) + +Usage +^^^^^ + +The Python package installs a command line tool to query the device for +current values. It's called ``opus20_cli``. + +Here is how to get a list of all available *channels* from the device: + +:: + + philipp@lion:~> opus20_cli 192.168.1.55 list + Channel 100 (0x0064): CUR temperature unit: °C offset: ±10.0 logging: no + Channel 120 (0x0078): MIN temperature unit: °C offset: ±10.0 logging: no + Channel 140 (0x008C): MAX temperature unit: °C offset: ±10.0 logging: no + Channel 160 (0x00A0): AVG temperature unit: °C offset: ±10.0 logging: yes + Channel 105 (0x0069): CUR temperature unit: °F offset: 0.0 logging: no + Channel 125 (0x007D): MIN temperature unit: °F offset: 0.0 logging: no + Channel 145 (0x0091): MAX temperature unit: °F offset: 0.0 logging: no + Channel 165 (0x00A5): AVG temperature unit: °F offset: 0.0 logging: no + Channel 200 (0x00C8): CUR relative humidity unit: % offset: ±30.0 logging: no + Channel 220 (0x00DC): MIN relative humidity unit: % offset: ±30.0 logging: no + Channel 240 (0x00F0): MAX relative humidity unit: % offset: ±30.0 logging: no + Channel 260 (0x0104): AVG relative humidity unit: % offset: ±30.0 logging: yes + Channel 205 (0x00CD): CUR absolute humidity unit: g/m³ offset: 0.0 logging: no + Channel 225 (0x00E1): MIN absolute humidity unit: g/m³ offset: 0.0 logging: no + Channel 245 (0x00F5): MAX absolute humidity unit: g/m³ offset: 0.0 logging: no + Channel 265 (0x0109): AVG absolute humidity unit: g/m³ offset: 0.0 logging: yes + Channel 110 (0x006E): CUR dewpoint unit: °C offset: 0.0 logging: no + Channel 130 (0x0082): MIN dewpoint unit: °C offset: 0.0 logging: no + Channel 150 (0x0096): MAX dewpoint unit: °C offset: 0.0 logging: no + Channel 170 (0x00AA): AVG dewpoint unit: °C offset: 0.0 logging: yes + Channel 115 (0x0073): CUR dewpoint unit: °F offset: 0.0 logging: no + Channel 135 (0x0087): MIN dewpoint unit: °F offset: 0.0 logging: no + Channel 155 (0x009B): MAX dewpoint unit: °F offset: 0.0 logging: no + Channel 175 (0x00AF): AVG dewpoint unit: °F offset: 0.0 logging: no + Channel 10020 (0x2724): CUR battery voltage unit: V offset: 0.0 logging: no + Channel 10040 (0x2738): MIN battery voltage unit: V offset: 0.0 logging: no + Channel 10060 (0x274C): MAX battery voltage unit: V offset: 0.0 logging: no + Channel 10080 (0x2760): AVG battery voltage unit: V offset: 0.0 logging: yes + +Asking for the value of a channel works like this: + +:: + + philipp@lion:~> opus20_cli 192.168.1.55 get 0x0064 + 24.712 + +You can also download the values stored on the device and store them in +a file: + +:: + + philipp@lion:~> opus20_cli --loglevel INFO 192.168.1.55 download log_data.pickle + INFO:opus20.opus20:Connected to device with ID: EC9C0A06B183 + INFO:opus_cli:script running time (net): 1.208517 seconds. + philipp@lion:~> + +Here is an overview of all the possible CLI commands: + +:: + + # List all possible channels: + opus20_cli 192.168.1.55 list + + # Get the values for the specified channels (CUR, MIN, MAX temperature in °C): + opus20_cli 192.168.1.55 get 0x0064 0x0078 0x008C + + # Download the latest log data and merge it into a persistant data file: + opus20_cli 192.168.1.55 download opus20.PickleStore.p + + # Check if logging in general is enabled on the device: + opus20_cli 192.168.1.55 logging status + opus20_cli 192.168.1.55 logging start + opus20_cli 192.168.1.55 logging stop + # Or clear the log: + opus20_cli 192.168.1.55 logging clear + + # Enable or disable logging for individual channels: + opus20_cli 192.168.1.55 enable 0x0064 0x0078 0x008C + opus20_cli 192.168.1.55 disable 0x00CD 0x00E1 0x00F5 + +Author +^^^^^^ + +- + + (c) 2015, Philipp Klaus + klaus@physik.uni-frankfurt.de + Ported the software to Python, extended and packaged it. + +- + + (c) 2012, `Ondics GmbH <http://www.ondics.de>`__ + githubler@ondics.de + The author of the `original + scripts <https://github.com/ondics/lufft-l2p-script-collection>`__ + (written as Bash scripts + netcat & gawk) + +License +^^^^^^^ + +GPLv3 + +%package help +Summary: Development documents and examples for opus20 +Provides: python3-opus20-doc +%description help +opus20 - a Python interface to the OPUS20 +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +This is a *opus20*, a Python software to query the temperature / +humidity / air pressure logging device OPUS20 produced by Lufft. + +The source code is `managed on Github: +pklaus/opus20 <https://github.com/pklaus/opus20>`__. The Python package +is also `registered on PyPI <https://pypi.python.org/pypi/opus20>`__ for +easy installation. + +Requirements and Installation +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +The only strict requirement for the bare opus20 package is Python +version 3.3+. Then, the package can be installed via pip directly from +PyPI: + +:: + + pip install --upgrade opus20 + +The package comes with an (optional) plot web server, too. It depends on +some more Python packages. To install those requirements as well, run +this command: + +:: + + pip install --upgrade opus20[webserver] + +This will install further packages like jinja2, bottle, matplotlib, +pandas, and numpy. (Installing matplotlib may also require you to +install the python development package for Python 3.) + +Usage +^^^^^ + +The Python package installs a command line tool to query the device for +current values. It's called ``opus20_cli``. + +Here is how to get a list of all available *channels* from the device: + +:: + + philipp@lion:~> opus20_cli 192.168.1.55 list + Channel 100 (0x0064): CUR temperature unit: °C offset: ±10.0 logging: no + Channel 120 (0x0078): MIN temperature unit: °C offset: ±10.0 logging: no + Channel 140 (0x008C): MAX temperature unit: °C offset: ±10.0 logging: no + Channel 160 (0x00A0): AVG temperature unit: °C offset: ±10.0 logging: yes + Channel 105 (0x0069): CUR temperature unit: °F offset: 0.0 logging: no + Channel 125 (0x007D): MIN temperature unit: °F offset: 0.0 logging: no + Channel 145 (0x0091): MAX temperature unit: °F offset: 0.0 logging: no + Channel 165 (0x00A5): AVG temperature unit: °F offset: 0.0 logging: no + Channel 200 (0x00C8): CUR relative humidity unit: % offset: ±30.0 logging: no + Channel 220 (0x00DC): MIN relative humidity unit: % offset: ±30.0 logging: no + Channel 240 (0x00F0): MAX relative humidity unit: % offset: ±30.0 logging: no + Channel 260 (0x0104): AVG relative humidity unit: % offset: ±30.0 logging: yes + Channel 205 (0x00CD): CUR absolute humidity unit: g/m³ offset: 0.0 logging: no + Channel 225 (0x00E1): MIN absolute humidity unit: g/m³ offset: 0.0 logging: no + Channel 245 (0x00F5): MAX absolute humidity unit: g/m³ offset: 0.0 logging: no + Channel 265 (0x0109): AVG absolute humidity unit: g/m³ offset: 0.0 logging: yes + Channel 110 (0x006E): CUR dewpoint unit: °C offset: 0.0 logging: no + Channel 130 (0x0082): MIN dewpoint unit: °C offset: 0.0 logging: no + Channel 150 (0x0096): MAX dewpoint unit: °C offset: 0.0 logging: no + Channel 170 (0x00AA): AVG dewpoint unit: °C offset: 0.0 logging: yes + Channel 115 (0x0073): CUR dewpoint unit: °F offset: 0.0 logging: no + Channel 135 (0x0087): MIN dewpoint unit: °F offset: 0.0 logging: no + Channel 155 (0x009B): MAX dewpoint unit: °F offset: 0.0 logging: no + Channel 175 (0x00AF): AVG dewpoint unit: °F offset: 0.0 logging: no + Channel 10020 (0x2724): CUR battery voltage unit: V offset: 0.0 logging: no + Channel 10040 (0x2738): MIN battery voltage unit: V offset: 0.0 logging: no + Channel 10060 (0x274C): MAX battery voltage unit: V offset: 0.0 logging: no + Channel 10080 (0x2760): AVG battery voltage unit: V offset: 0.0 logging: yes + +Asking for the value of a channel works like this: + +:: + + philipp@lion:~> opus20_cli 192.168.1.55 get 0x0064 + 24.712 + +You can also download the values stored on the device and store them in +a file: + +:: + + philipp@lion:~> opus20_cli --loglevel INFO 192.168.1.55 download log_data.pickle + INFO:opus20.opus20:Connected to device with ID: EC9C0A06B183 + INFO:opus_cli:script running time (net): 1.208517 seconds. + philipp@lion:~> + +Here is an overview of all the possible CLI commands: + +:: + + # List all possible channels: + opus20_cli 192.168.1.55 list + + # Get the values for the specified channels (CUR, MIN, MAX temperature in °C): + opus20_cli 192.168.1.55 get 0x0064 0x0078 0x008C + + # Download the latest log data and merge it into a persistant data file: + opus20_cli 192.168.1.55 download opus20.PickleStore.p + + # Check if logging in general is enabled on the device: + opus20_cli 192.168.1.55 logging status + opus20_cli 192.168.1.55 logging start + opus20_cli 192.168.1.55 logging stop + # Or clear the log: + opus20_cli 192.168.1.55 logging clear + + # Enable or disable logging for individual channels: + opus20_cli 192.168.1.55 enable 0x0064 0x0078 0x008C + opus20_cli 192.168.1.55 disable 0x00CD 0x00E1 0x00F5 + +Author +^^^^^^ + +- + + (c) 2015, Philipp Klaus + klaus@physik.uni-frankfurt.de + Ported the software to Python, extended and packaged it. + +- + + (c) 2012, `Ondics GmbH <http://www.ondics.de>`__ + githubler@ondics.de + The author of the `original + scripts <https://github.com/ondics/lufft-l2p-script-collection>`__ + (written as Bash scripts + netcat & gawk) + +License +^^^^^^^ + +GPLv3 + +%prep +%autosetup -n opus20-1.0.1 + +%build +%py3_build + +%install +%py3_install +install -d -m755 %{buildroot}/%{_pkgdocdir} +if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi +if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi +if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi +if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi +pushd %{buildroot} +if [ -d usr/lib ]; then + find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/lib64 ]; then + find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/bin ]; then + find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/sbin ]; then + find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst +fi +touch doclist.lst +if [ -d usr/share/man ]; then + find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst +fi +popd +mv %{buildroot}/filelist.lst . +mv %{buildroot}/doclist.lst . + +%files -n python3-opus20 -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Mon May 29 2023 Python_Bot <Python_Bot@openeuler.org> - 1.0.1-1 +- Package Spec generated @@ -0,0 +1 @@ +10eb6405ac23e0094f22464fe6722673 opus20-1.0.1.tar.gz |
