Remotely open audio channels and a serial port to an Icom RS-BA1 server (for ex. Icom IC-705 transceiver).
Find a file
2020-10-27 10:18:07 +02:00
.vscode Use verbose logging when launching from vscode 2020-10-26 10:33:10 +01:00
.gitignore Init 2020-10-16 17:13:46 +02:00
args.go Move log into the main package 2020-10-26 09:09:30 +01:00
audio-linux.go Do not send silence frames to the radio 2020-10-27 10:03:22 +02:00
audiostream.go Filter late retransmitted packets 2020-10-26 17:43:22 +01:00
bandwidth.go Fix packet loss calculation 2020-10-26 17:31:17 +01:00
controlstream.go Cleanup 2020-10-26 19:46:08 +01:00
go.mod Add serial stream 2020-10-20 23:26:05 +02:00
go.sum Add serial stream 2020-10-20 23:26:05 +02:00
kappanhang.code-workspace Init 2020-10-16 17:13:46 +02:00
LICENSE Add trademark information to the license 2020-10-27 10:18:07 +02:00
log.go Move log into the main package 2020-10-26 09:09:30 +01:00
main.go Use built-in method for getting version 2020-10-26 09:55:29 +01:00
passcode.txt Add listing of encoding used in usernames/passwords 2020-10-25 09:27:23 +01:00
pkt0.go Retransmit idle packets even if not found 2020-10-26 10:49:37 +01:00
pkt7.go Cleanup 2020-10-25 21:12:25 +01:00
README.md Add authors to the readme 2020-10-26 09:15:45 +01:00
seqbuf.go Cleanup 2020-10-26 19:46:08 +01:00
serial-linux.go Move log into the main package 2020-10-26 09:09:30 +01:00
serialstream.go Filter late retransmitted packets 2020-10-26 17:43:22 +01:00
serialtcpsrv.go Move log into the main package 2020-10-26 09:09:30 +01:00
streamcommon.go Print used bandwidth in status 2020-10-26 14:59:49 +01:00
txseqbuf.go Completely handle retransmit requests 2020-10-25 20:18:24 +01:00
util.go Do not send silence frames to the radio 2020-10-27 10:03:22 +02: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.

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)

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 for more information.
  • Leave the UDP ports on their default values:
    • Control port: 50001
    • Serial port: 50002
    • Audio port: 50003
  • Leave the Internet access line on the default FTTH value.

Running

You can get the available command line parameters with the -h command line 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:

  • TODO: audio

  • It starts a TCP server on port 4533 for exposing the serial port. This can be used for controlling the server (the transceiver) with Hamlib:

    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 TCP port 4532.

    To use this with for example WSJT-X, 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.

If the -s command line argument is specified, then kappanhang will create a 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.

Authors

Donations

If you find this app useful then buy me a beer. :)