Welcome to the new FlexRadio Community! Please review the new Community Rules and other important new Community information on the Message Board.
Need the latest SmartSDR, Power Genius, Tuner Genius and Antenna Genius Software?
SmartSDR v3.7.4 and the SmartSDR v3.7.4 Release Notes | SmartSDR v2.12.1 and the SmartSDR v2.12.1 Release Notes
SmartSDR v1.12.1 and the SmartSDR v1.12.1 Release Notes
Power Genius XL Utility v3.8.8 and the Power Genius XL Release Notes v3.8.8
Tuner Genius XL Utility v1.2.11 and the Tuner Genius XL Release Notes v1.2.11
Antenna Genius Utility v4.1.8
SmartSDR v3.7.4 and the SmartSDR v3.7.4 Release Notes | SmartSDR v2.12.1 and the SmartSDR v2.12.1 Release Notes
SmartSDR v1.12.1 and the SmartSDR v1.12.1 Release Notes
Power Genius XL Utility v3.8.8 and the Power Genius XL Release Notes v3.8.8
Tuner Genius XL Utility v1.2.11 and the Tuner Genius XL Release Notes v1.2.11
Antenna Genius Utility v4.1.8
If you are having a problem, please refer to the product documentation or check the Help Center for known solutions.
Need technical support from FlexRadio? It's as simple as Creating a HelpDesk ticket.
Need technical support from FlexRadio? It's as simple as Creating a HelpDesk ticket.
Start radio without SSDR
Options
James Whiteway
Member
How little do you need to connect to your radio without SSDR?
How about this:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Threading;
using Flex.Smoothlake.FlexLib;
namespace PanadapterTest
{
public partial class Form1 : Form
{
private Radio _thisRadio;
private Slice _thisSlice;
// private Panadapter _thisPanadapter;
public Form1()
{
InitializeComponent();
API.RadioAdded += API_RadioAdded;
API.RadioRemoved += API_RadioRemoved;
API.ProgramName = "PanadapterTest";
API.IsGUI = true;
API.Init();
}
private void Form1_Load(object sender, EventArgs e)
{
CheckForIllegalCrossThreadCalls = false;
}
private void API_RadioAdded(Radio radio)
{
_thisRadio = radio;
}
private void API_RadioRemoved(Radio radio)
{
}
private void radio_PropertyChanged(object sender, PropertyChangedEventArgs e)
{
}
private void radio_PanadapterRemoved(Panadapter pan)
{
Console.WriteLine("radio_PanadapterRemoved fired
");
}
private void radio_PanadapterAdded(Panadapter pan, Waterfall fall)
{
Console.WriteLine("radio_PanadapterAdded fired
");
// pan.PropertyChanged += panadapter_PropertyChanged;
}
private void panadapter_PropertyChanged(object sender, PropertyChangedEventArgs e)
{
Console.WriteLine("panadapter_PropertyChanged fired
");
}
private void radio_SliceRemoved(Slice slice)
{
Console.WriteLine("radio_SliceRemoved fired
");
}
private void radio_SliceAdded(Slice slice)
{
slice.PropertyChanged += new PropertyChangedEventHandler(slice_PropertyChanged);// makes freqtxtbx show freq from SSDR
_thisSlice = slice;
}
private void slice_PropertyChanged(object sender, PropertyChangedEventArgs e)
{
{
}
}
private void btnExit_Click(object sender, EventArgs e)
{
API.CloseSession();
_thisRadio.Disconnect();
Application.Exit();
}
private void btnConnect_Click(object sender, EventArgs e)
{
_thisRadio.Connect();
double freq = 10.000d;
string RXA = "Ant 1";
string Mode = "AM";
//RequestPanafall gets the radio to send data to the client
Slice Slice0 = new Slice(_thisRadio);
Slice0 = _thisRadio.CreateSlice(freq, RXA, Mode);
Slice0.RequestSliceFromRadio();
// _thisRadio.RequestPanafall();
}
}
}
Two buttons and a form. Once connected, the radio will go to WWV @ 10Mhz. (Walt's idea)
Although not in this example, I am working on getting the Panadapter data and creating a panadapter as well. Once I figure the correct syntax for subscribing to the PanadapterDataReady event!
But, I thought someone out there would like to see how simple it really is just to get connected. After that, it does start to get complicated. (my testbed program is much more busy than this)
james
WD5GWY
Edit: I forgot to add, be sure to ADD REFERENCES to Flexlib and the other dll's that are part of Flexlib.
How about this:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Threading;
using Flex.Smoothlake.FlexLib;
namespace PanadapterTest
{
public partial class Form1 : Form
{
private Radio _thisRadio;
private Slice _thisSlice;
// private Panadapter _thisPanadapter;
public Form1()
{
InitializeComponent();
API.RadioAdded += API_RadioAdded;
API.RadioRemoved += API_RadioRemoved;
API.ProgramName = "PanadapterTest";
API.IsGUI = true;
API.Init();
}
private void Form1_Load(object sender, EventArgs e)
{
CheckForIllegalCrossThreadCalls = false;
}
private void API_RadioAdded(Radio radio)
{
_thisRadio = radio;
}
private void API_RadioRemoved(Radio radio)
{
}
private void radio_PropertyChanged(object sender, PropertyChangedEventArgs e)
{
}
private void radio_PanadapterRemoved(Panadapter pan)
{
Console.WriteLine("radio_PanadapterRemoved fired
");
}
private void radio_PanadapterAdded(Panadapter pan, Waterfall fall)
{
Console.WriteLine("radio_PanadapterAdded fired
");
// pan.PropertyChanged += panadapter_PropertyChanged;
}
private void panadapter_PropertyChanged(object sender, PropertyChangedEventArgs e)
{
Console.WriteLine("panadapter_PropertyChanged fired
");
}
private void radio_SliceRemoved(Slice slice)
{
Console.WriteLine("radio_SliceRemoved fired
");
}
private void radio_SliceAdded(Slice slice)
{
slice.PropertyChanged += new PropertyChangedEventHandler(slice_PropertyChanged);// makes freqtxtbx show freq from SSDR
_thisSlice = slice;
}
private void slice_PropertyChanged(object sender, PropertyChangedEventArgs e)
{
{
}
}
private void btnExit_Click(object sender, EventArgs e)
{
API.CloseSession();
_thisRadio.Disconnect();
Application.Exit();
}
private void btnConnect_Click(object sender, EventArgs e)
{
_thisRadio.Connect();
double freq = 10.000d;
string RXA = "Ant 1";
string Mode = "AM";
//RequestPanafall gets the radio to send data to the client
Slice Slice0 = new Slice(_thisRadio);
Slice0 = _thisRadio.CreateSlice(freq, RXA, Mode);
Slice0.RequestSliceFromRadio();
// _thisRadio.RequestPanafall();
}
}
}
Two buttons and a form. Once connected, the radio will go to WWV @ 10Mhz. (Walt's idea)
Although not in this example, I am working on getting the Panadapter data and creating a panadapter as well. Once I figure the correct syntax for subscribing to the PanadapterDataReady event!
But, I thought someone out there would like to see how simple it really is just to get connected. After that, it does start to get complicated. (my testbed program is much more busy than this)
james
WD5GWY
Edit: I forgot to add, be sure to ADD REFERENCES to Flexlib and the other dll's that are part of Flexlib.
0
Leave a Comment
Categories
- All Categories
- 245 Community Topics
- 2.1K New Ideas
- 488 The Flea Market
- 7.3K Software
- 5.9K SmartSDR for Windows
- 134 SmartSDR for Maestro and M models
- 327 SmartSDR for Mac
- 241 SmartSDR for iOS
- 224 SmartSDR CAT
- 161 DAX
- 343 SmartSDR API
- 8.5K Radios and Accessories
- 6.9K FLEX-6000 Signature Series
- 768 Maestro
- 42 FlexControl
- 836 FLEX Series (Legacy) Radios
- 726 Genius Products
- 391 Power Genius XL Amplifier
- 251 Tuner Genius XL
- 84 Antenna Genius
- 221 Shack Infrastructure
- 149 Networking
- 369 Remote Operation (SmartLink)
- 118 Contesting
- 582 Peripherals & Station Integration
- 116 Amateur Radio Interests
- 809 Third-Party Software