open890 is a web-based UI for the Kenwood TS-890S amateur radio, and features good usability, clean design, and high-speed bandscope/audio scope displays, among other features not available either on the radio itself, or in the ARCP remote control software.
It is currently only designed to interface with the TS-890 via a LAN (or wifi) connection, and not a USB/serial connection. It may work with the TS-990, as the command set is very similar, but is currently untested.
I am primarily active on the TS-890S groups.io discussion board
If you are knowledgeable in Docker, you can either pull a published image from the repository, or build & run your own image locally.
At the moment, open890:latest reflects what is pushed to the main
branch. Eventually,
releases will be tagged as well.
docker-compose up
This will map two local directories, open890-db, and open890-config into the image. This will
allow you to back-up your connection database, as well as drop in a config.toml file, and allow
this data to persist across container restarts. You can change the location of these directories
by adjusting the volumes
setting in docker-compose.yml
.
docker pull ghcr.io/tonyc/open890:latest
docker run -p 4000:4000 -p 60001:60001/udp -it --rm ghcr.io/tonyc/open890:latest
Port 4000 is for the main web interface, UDP port 60001 is for the UDP audio server for audio streaming.
Build the image, and start a container using the image, exposing the internal server to your host:
make docker
You should now be able to access http://localhost:4000
If you would like to just build the image, you can run make build_docker
.
Platform/architecture-specific binary releases are available from releases.
REQUIRED: Install the latest Microsoft Visual C++ Redistributable package from here: https://aka.ms/vs/17/release/vc_redist.x64.exe
This solves the open890 window closing immediately upon startup, or resolves the error message "unable to load emulator DLL".
Then, install open890:
- Download the Windows release .zip file, and extract it somewhere useful.
- Navigate to where you expanded open890
- Double click the
open890.bat
file in the main folder.
You will probably see several security warnings as described below. After getting through those, access the web interface at http://localhost:4000 with your favorite web browser.
Since I haven't paid for a certificate to sign binaries, Windows will loudly complain about an unknown developer.
- Click "More Info" and choose "Run anyway".
If you are concerned about the safety of the files, only ever download direct from the Github releases page, and additionally, compare the MD5 checksum from the release notes with the file you have. An internet search for "Windows MD5 tool" will yield several results if you are concerned.
On first run, you will likely receive a warning from Windows stating, "Windows Defender Firewall has blocked some features of this app" - For one or more of the following files:
- erl.exe
This is due to open890's client-server architecture, and it needs permission to open a port (4000) for the local webserver. Only choose the "private network" option for open890.
Binary builds for Apple Silicon are available. Intel binaries are unfortunately not available as I do not have access to an Intel Mac anymore to test and support.
Homebrew and openSSL 1.1 are required to run binary releases on MacOS. Once you have homebrew installed and working properly, run:
brew install [email protected]
Users will need to enable the "Allow applications from any developer" security feature as described below:
- Open Terminal.app and run the following command:
sudo spctl --master-disable
You may be prompted for your account password to authenticate.
- Now navigate to Settings -> Privay & Security -> Allow applications downloaded from: Anywhere
Navigate to Settings -> Privacy & Security -> Allow applications downloaded from: Anywhere
After changing the security setting:
- Download an unzip the MacOS binary build to somewhere useful (i.e. your Desktop)
- Double-click the
open890.command
file, or you can start a terminal,cd
to the open890 directory, and run./open890.command
- If you are on an earlier version of MacOS,
open890.sh
may also work.
- If you are on an earlier version of MacOS,
Linux binaries are supported to run on 64-bit Ubuntu 20.04, although other modern Linux releases may or may not work due to dependencies.
Download the release .tar.gz
Then, decide where you want open890 to live, usually somewhere in your home directory.
cd <where you want it>
tar zxvf /path/to/open890-release.tar.gz
You will then get a subdirectory called open890
.
cd open890
./open890.sh
And then open a web browser to http://localhost:4000
If you encounter an error related to shared libraries, etc, they may be solved by installing the correct version, although the correct packages may not be available in your OS distribution's package manager.
If all else fails, install from source.
Binary builds are not available for Raspberry Pi due to CPU architecture differences. You will need to install from source (see above) in order to get open890 running on a RPi.
By default, open890 runs a web server on port 4000
and binds to 0.0.0.0
(all interfaces) on the machine it runs on.
If you would like to change the default host and port that open890 is accessed via, you can set the OPEN890_HOST
and OPEN890_PORT
environment variables accordingly. This is most useful if you are accessing open890 from a separate machine than the one it is running on.
You can change default UDP audio server port from 60001 to whatever you'd like by setting OPEN890_UDP_PORT
. This is useful if your ISP filters port 60001 and would like to forward the port yourself.
Please note that the web interface is not secured with a password, and it assumes that you will run it on a trusted network. This is equivalent to running a computer with ARCP-890 left running.
If you wish to require a basic password, edit config/config.toml
(you may need to copy example.config.toml
first), and uncomment or add the following section:
[http.server.basic_auth]
enabled = true
username = "someUserName"
password = "aReallyHardPasswordToGuess"
Upon starting open890, you will be prompted for this username and password. Again, this is only basic authentication and the connection is not encrypted. If you want to truly secure access, run open890 behind a firewall and use a VPN to access the system.
If you encounter a bug, please open a discussion. Please do not directly email me for technical support!
- Start a discussion so we can discuss your idea
- Fork this repository
- Make your changes in a branch in your own repo
- Open a pull request!
The following people have graciously donated monetarily to open890, and opted-in to be listed here, in alphabetical order. If you would like to donate, please contact Tony at tcollen at gmail.com
- Guy Bujold, VE2CXA
- Willi Föckeler, DK6DT
- Mike Garcia, KJ5CDJ
- Philip Hartwell, VK6GX
- Rick Lapp, KC2FD
- Jeff Sloane, KE6L
- Jack Wren, K4VR
This project is licensed under the MIT license. Please see MIT-LICENSE for more details.
All product names, logos, brands, trademarks and registered trademarks are property of their respective owners. All company, product and service names used in this software are for identification purposes only.