GithubHelp home page GithubHelp logo

ekinnee / sharpcat Goto Github PK

View Code? Open in Web Editor NEW
9.0 5.0 4.0 29.88 MB

C#, .NET Standard based ham radio CAT/CIV control library.

License: MIT License

C# 13.75% C 86.25%
rigcontrol csharp dotnet amateur-radio ham-radio rig-control civ-control cat-control catcontrol omnirig

sharpcat's Introduction

This like many, are ideas. There may or may not be progress as inspiration and time allows.

SharpCAT

C#, .NET Standard based CAT control library.

I am targeting .Net Standard so that the assembly may be used with .Net Core or the .Net framework.

I'm starting with the FT818, I then plan on adding my ID-4100a, and TH-D74A.

If you wish to help let me know, or create a pull request. I'm not a pro developer, just a hack that normally builds small tools for himself.

Ideas on how to do this are appreciated!

Why?

Yes, there's Hamlib, and yes there's HamLibSharp.

https://github.com/N0NB/hamlib

https://github.com/k5jae/HamLibSharp

I don't speak C++ and PInvoke is nasty.

That being said, there's also not a pure .Net (C#) CAT control lib out there that I know of.

What needs done?

The project is in an early very phase. The following is in no particular order, except the IRadio bit.

  1. Implement an IRadio interface.

  2. Settle on how the radios and commands are defined.

    JSON?

    Or just use a .cs file (current)?

  3. Need to support opening / using an arbitrary number of radios.

    RigControl can do 2.

  4. Fully support asynchronous operations.

    There's some handy events exposed by .net for data received on the Serial Port.

  5. Add support for remote sharing of serial ports.

  6. Implemtment the flrig control protocol.

    Use this in place of flrig if desired.

  7. Maybe implement AGWPE?

  8. Implement the ability to run as a service.

  9. Implement CAT and CIV control.

    This will come with the first Icom radio implemented I figure.

    I've switched radios, so I have a Yaesu FT991a, Baofeng BF-T1, WLN KD-C1, Baofeng UV-5x3, TH-D72a, FT-2DR and an D878UV.

sharpcat's People

Contributors

ekinnee avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

sharpcat's Issues

Project Status?

Greetings,

I am very interested in your project. I am working on a project that could use a native CAT library. My project is outlined at http://www.hambus.org however it isn't up to date as I have changed strategies on how the buses will communicate from using UDP to SignalR. Also with this change, BusMaster is now the main hub that all other buses talk to with SignalR.

The idea behind HamBus is Any Radio, Any Computer, Any Application, Anywhere.

Right now I have a RigBus for Kenwood CAT protocol and a VirtualRigBus that also speaks as a Kenwood radio would. The idea is until application authors can add HamBus Rig API to their application users will be able to point applications to a virtual rig which will send the commands to the real radio(s).

The code is in somewhat of a mess, I have been adding code trying to get something working for Field Day and it isn't as clean as I would like for it to be.

It seems like our two projects can really help each other.

You can contact me at "darryl at wagoner.me"

thanks and 73
Darryl DE WA1GON

Add support for remote serial ports

Create a client component that can utilize remote serial ports handled by SharpCAT as if they were local ports. For example, make local COM2 actually be on a remote host running SharpCAT.

Implement as standard radio config

We need a standard way to define a radio and its commands / capabilities.

Currently SharpCAT is using a cs file that defines a radio. This is clunky and requires recompilation for radio config changes.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.