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
- 246 Community Topics
- 2.1K New Ideas
- 489 The Flea Market
- 7.1K Software
- 5.9K SmartSDR for Windows
- 134 SmartSDR for Maestro and M models
- 331 SmartSDR for Mac
- 243 SmartSDR for iOS
- 223 SmartSDR CAT
- 163 DAX
- 348 SmartSDR API
- 8.6K Radios and Accessories
- 6.9K FLEX-6000 Signature Series
- 766 Maestro
- 41 FlexControl
- 836 FLEX Series (Legacy) Radios
- 733 Genius Products
- 393 Power Genius XL Amplifier
- 255 Tuner Genius XL
- 85 Antenna Genius
- 229 Shack Infrastructure
- 153 Networking
- 370 Remote Operation (SmartLink)
- 120 Contesting
- 583 Peripherals & Station Integration
- 115 Amateur Radio Interests
- 813 Third-Party Software