kappanhang/README.md

89 lines
3.3 KiB
Markdown
Raw Normal View History

2020-10-26 08:39:44 +01:00
# kappanhang
kappanhang remotely opens audio channels and a serial port to an Icom RS-BA1
server. The app is mainly developed for connecting to the Icom IC-705
transceiver, which has built-in Wi-Fi and RS-BA1 server. All features of the
protocol are implemented including packet retransmission on packet loss.
2020-10-27 14:49:14 +01:00
<p align="center"><img src="demo.gif?raw=true"/></p>
2020-10-26 08:39:44 +01:00
kappanhang currently only supports Linux, but support for other platforms can
be easily added if anyone is interested (volunteers needed).
## Compiling
You'll need Go installed on your computer.
```
go get https://github.com/nonoo/kappanhang
go install https://github.com/nonoo/kappanhang
```
## Required settings on the RS-BA1 server (the transceiver)
2020-10-26 08:48:29 +01:00
You can find these settings on the Icom IC-705 in: `Menu -> Set -> WLAN set ->
Remote settings`.
- Make sure **Network control** is turned on.
- Set the **Network user 1** username to `beer` and the password to
`beerbeer`. These are fixed as the password encoding of the RS-BA1
protocol has not been decrypted yet. See [passcode.txt](passcode.txt) for
more information.
2020-10-26 08:39:44 +01:00
- Leave the **UDP ports** on their default values:
2020-10-26 08:48:29 +01:00
- Control port: `50001`
- Serial port: `50002`
- Audio port: `50003`
- Leave the **Internet access line** on the default `FTTH` value.
2020-10-26 08:39:44 +01:00
2020-10-27 13:41:18 +01:00
Make sure the **DATA MOD** (you can find this setting on the Icom IC-705 in:
`Menu -> Set -> Connectors -> MOD Input -> DATA MOD`) is set to `WLAN`.
2020-10-26 08:39:44 +01:00
## Running
2020-10-27 13:41:18 +01:00
You can get the available command line parameters with the `-h` command line
2020-10-26 08:39:44 +01:00
argument.
If no command line arguments are set, then the app will try to connect to the
host **ic-705** (ic-705.local or ic-705.localdomain).
After it is connected and logged in:
2020-10-27 13:31:47 +01:00
- Creates a virtual PulseAudio **sound card** (48kHz, s16le, mono). This can be
used to record/play audio from/to the server (the radio). You can also set
this sound card in [WSJT-X](https://physics.princeton.edu/pulsar/K1JT/wsjtx.html).
If you want to listen to the audio coming from this sound card in real time,
then you can create a [PulseAudio loopback](https://github.com/alentoghostflame/Python-Pulseaudio-Loopback-Tool)
between the kappanhang sound card and your real sound card. You can also
create a loopback for your microphone using this tool, so you'll be able to
transmit your voice.
2020-10-26 08:48:29 +01:00
- It starts a **TCP server** on port `4533` for exposing the **serial port**.
2020-10-26 08:39:44 +01:00
This can be used for controlling the server (the transceiver) with
[Hamlib](https://hamlib.github.io/):
```
rigctld -m 3085 -r 127.0.0.1:4533
```
3085 is the model number for the Icom IC-705. `rigctld` will connect to
kappanhang's TCP serial port server, and waits connections on it's default
2020-10-26 08:48:29 +01:00
TCP port `4532`.
2020-10-26 08:39:44 +01:00
To use this with for example [WSJT-X](https://physics.princeton.edu/pulsar/K1JT/wsjtx.html),
2020-10-26 08:48:29 +01:00
open WSJT-X settings, go to the *Radio* tab, set the *rig type* to `Hamlib NET
rigctl`, and the *Network server* to `127.0.0.1:4532`.
2020-10-26 08:39:44 +01:00
If the `-s` command line argument is specified, then kappanhang will create a
2020-10-27 13:41:18 +01:00
**virtual serial port**, so other apps which don't support Hamlib can access
the transceiver directly. Look at the app log to find out the name of the
virtual serial port.
2020-10-26 08:39:44 +01:00
2020-10-26 09:15:45 +01:00
## Authors
- Norbert Varga HA2NON [nonoo@nonoo.hu](mailto:nonoo@nonoo.hu)
- Akos Marton ES1AKOS
2020-10-26 08:39:44 +01:00
## Donations
If you find this app useful then [buy me a beer](https://paypal.me/ha2non). :)