I'm not familiar with service code usage. Hopefully you can enlighten me.
1) I understand connecting to an EMCOMM station is restricted. Is it enforced by some mechanism or just best practice?
2) Would you expect EMCOMM station to be listed on their own? For example if a station WH6AZ has a public channel WH6AZ-10 and a EMCOMM channel WH6AZ-11 does it make sense to group them under one station? Or is it better to leave them separate so it's easier to identify?
3) Are other service code commonly used? I understand they are kept private but I'm trying to gauge how big of a use case this is. In other word, what's the percentage of station with a non public service code?
WRT KISS over TCP discovery, this is the protocol used:
Direwolf supports this natively. For other KISS modem, you can use the platform specific method described in the spec to have your KISS modem "server" publish its host and port information.
Service codes: The codes entered in this field control the set of channel entries that are displayed in your channel list. Specify PUBLIC as the service code to obtain the list of public amateur radio channels. If you are a member of MARS or other groups that have restricted sets of channels, you must ask the administrator for the group to provide the appropriate service code. If you wish to enter multiple service codes, separate them by spaces. If you change the service codes, you must update the channel list when you open a session.
So, they only limit the visibility in the channel list. There is no restriction or enforcement on connecting. To get an idea of the usage, use the map on winlink.org and search on the different service codes. There are about 50-75 EMCOMM stations. I won't discuss other codes, but it should be something you can add to the configuration if your group has a specific code. I would display them individually.
KISS over TCP:
There are more apps than Direwolf! I would not think it reasonable to try and convince other developers to add a discovery protocol. Why not just give us the ability to define the host and port manually if it is not discovered?
Bill, that's correct, seems that the zero conf support in Dire Wolf was not added for Windows. As a temporary workaround, you should be able to run the `dns-sd` utility separately to advertise direwolf as described:
I'll have to re-assess if it make sense to provide an option for manually entering IP and port in RadioMail. The problem is that with DHCP, the IP will change and it's a common source of user support issue because all of the sudden the phone can't connect to the computer anymore. Zeroconf is the way to go (I wish VARA would adopt it at some point) but it takes a bit of time for everyone to join the party.
Please let us manually config as an option. It's not that complicated really, if you are running the modem elsewhere you already should have some understanding of what you are doing. Winlink Express is all manually configured and we don't have many support calls.
I would second that request. The DNS / port advertising is a bit to configure for those using Direwolf. For $15 for the app, should be a little more “turn key” at that price.
I was able to use the dev branch of Direwolf (1.7 -- not the current 1.6) and install libavahi-client-dev to make the KISS TNC work over TCP.
If anyone is using KM4ACK's 73 Linux automation for debian, I will try to check in a custom bapp installer to their community folder for anyone who is looking for something more turnkey on the server side of the solution. In this case, Direwolf Dev would be a GUI menu driven installer option that includes the DNS-SD avahi software automatically.
I will also see if I can find an open source zeroconf client for Windows for the KISS TNC.
For something portable that I intend to run headless, my thought was to run Windows mostly because of the simplicity. Also, I imagine there are a lot more VARA users on Windows (vs. Wine emulation on Linux) and I expect a Windows platform to be more stable because of the larger community contributing feedback (bugs). It's really unfortunate that VARA was ever adopted in the first place. I was surprised to learn it is closed source and lacks development activity for other operating systems and features like DNS-SD. I guess it's cheaper than PACTOR but otherwise more of the same old thing.
Thanks for all the good feedback here. The desire to deliver a more "turn key" experience is what led to focus on zero-conf solution first. If printer can do it, it should set the bar for usability
This being said, I did not realize Dire Wolf addition of dns-sd was not available for Windows yet. I found a way to add manual option that's fits in the discovery model. Look for it in upcoming update in the next few days.