Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support for KISS over TCP #47

Closed
dpkingston opened this issue Mar 24, 2017 · 5 comments
Closed

Support for KISS over TCP #47

dpkingston opened this issue Mar 24, 2017 · 5 comments
Milestone

Comments

@dpkingston
Copy link

It would be great if wl2k-go would support connecting to a TNC in KISS mode over TCP. With LAN attached Raspberry Pi 3's running Direwolf, this is a great, sharable alternative to running the software on individual PCs wired to radios.

@martinhpedersen
Copy link
Member

Hi!

Yes, that would be a great addition to wl2k-go. The only problem is that in order to support KISS directly, we need an AX.25 implementation to go with it. (Unless you're looking for some Go package that exposes the KISS frames?)

Ref issue #36.

@martinhpedersen
Copy link
Member

Just realized that you maybe ment KISS over TCP support for Pat?

The same answer applies, but for a Linux only solution I believe this is possible by attaching a KISS device to the Linux kernel over TCP. I assume this has been done before for other AX.25 applications on Linux?

@kd8drx
Copy link

kd8drx commented Jun 5, 2017

Seconding on this - it would be an excellent feature. Direwolf, especially, has some odd issues when providing a pseudo-serial devices for wl2k-go or other apps to use.

Another option would be supporting AGW-over-TCP format, though that may be more work. However, Direwolf appears to have a full AX.25 stack built in that can be accessed using the AGW format, which I think would free you from needing to use Linux's built in stack. You would just send the necessary text commands to connect to a station and call the RMS - basically the same as the telnet mode.

If it's helpful, the Direwolf code is open source and the author is very responsive. The specific code (in C) for supporting KISS-over-TCP is located here

@martinhpedersen
Copy link
Member

Yes - I agree that KISS (serial/tcp/udp) support and built-in AX.25 would be a very nice feature for Pat. But please note that KISS over tcp/udp is already possible if both ends of the tcp/udp connection is running Linux.

If Direwolf now implements a full AX.25 stack that are exposed over a TCP socket API, then we should add support for that. It would be a much more convenient solution than to port and maintain a full AX.25 stack internally in the project. Direwolf may be a great solution for macOS users looking for AX.25 packet capabilities.

A PR is welcomed from anyone who have the time and know-how to start working on a AGW-over-TCP transport package that would support Direwolf. 👍 I will be happy to help and/or do it myself, but I don't have much time before autumn for such a task unfortunately.

@martinhpedersen
Copy link
Member

See issue #56 regarding native support for KISS and AX.25.

I still welcome anyone who want to implement a net.Conn/net.Listener wrapper for the AGW interface that Direwolf exposes. That would be a nice way to support AX.25 on multiple platforms until #56 is resolved.

Closing this issue, since the main discussion is related to KISS and AX.25.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants