Skip to main content

REVOX B203 / RS232 Interface Software

Project description


gitea: none include_toc: true

reVote

This Flask based web server connects to the Revox 8203 Timer Controller via its serial RS-232 interface, allowing you to remote control your Revox B 200 series hi-fi components from any modern web browser.

Compatibility & OS Support

Built on Python, the software is inherently cross-platform and is expected to run on Windows and macOS, though it has exclusively been developed and tested on Linux.

Installation

For the latest version please download the source code or clone the repository. Generate the distribution archives using build. These archives (.whl,.tar.gz or .zip) can be installed by pip.

cd reVote                                                                  # Where the 'pyproject.toml' is located.
python3.12 -m build                                                        # Generate the distribution archives.
sudo pip install --force-reinstall dist/revote-0.0.1-py3-none-any.whl      # Install the package.
sudo pip uninstall revote                                                  # Remove the package.

Or install the published package from PyPI.

sudo pip install -i https://pypi.org/simple/ revote

[!NOTE] A global installation is recommended since this application will likely be deployed as a systemd service.

Setup

[!CAUTION] Unrestricted Application Access: This Flask application is currently running with NO data validation or entry restrictions. All payloads are forwarded unchecked as commands to the B203.

  1. DO NOT expose this server to the public internet under any circumstances.
  2. Ensure the host is strictly bound to localhost (e.g., host='127.0.0.1').
  3. Restrict network access via firewalls if local network sharing is required.

Exposing this application publicly will vulnerable your Revox B 200 series hi-fi system to attacks.

This application requires external dependencies and files beyond standard Python packages. The reVote-setup script will guide you through most of this configuration process.

sudo /usr/local/bin/reVote-setup

Command reference

usage: reVoted [-h] [-c CONFIG] [-H HOST] [-p PORT] [-w] [-d DEVICE] [-D] [-v]

options:
  -h, --help            show this help message and exit
  -c CONFIG, --config CONFIG
                        path to config file (default: ['~/.config/reVote/settings.ini', '/etc/reVote/settings.ini'])
  -H HOST, --host HOST  network interfaces the server is listen too (default: 127.0.0.1)
  -p PORT, --port PORT  port the server is listen too (default: 5001)
  -w, --websockets      force use of websockets instead of polling (default: True)
  -d DEVICE, --device DEVICE
                        serial tty device the B203 is connected (default: /dev/ttyReVote)
  -D, --debug           set debug mode for Socket.IO (default: False)
  -v, --verbose         set verbose mode (default: 0)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

revote-0.0.2-py3-none-any.whl (41.2 kB view details)

Uploaded Python 3

File details

Details for the file revote-0.0.2-py3-none-any.whl.

File metadata

  • Download URL: revote-0.0.2-py3-none-any.whl
  • Upload date:
  • Size: 41.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for revote-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 dd318d2c8020c0b2ab2812d0352185833457af6cf8f7f17cda6d1a6c5aeaef0b
MD5 fb8edac1bff7a4443afb418872f6cb8c
BLAKE2b-256 8fe8704e8cd2e8779ad7a5c380ec321220b3cfc67e9d0a00542bd0262a0775f2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page