Need technical support from FlexRadio? It's as simple as Creating a HelpDesk ticket.
SmartSDR v3.1.12 and the SmartSDR v3.1.12 Release Notes. | SmartSDR v2.6.2 and the SmartSDR v2.6.2 Release Notes.
SmartSDR v1.12.1 and the SmartSDR v1.12.1 Release Notes. | Power Genius XL Firmware v3.4.16. | Power Genius XL Utility v2.2.10.
How to change active slice (multi panadapter view)

Hello,
I created an application to automatically add 2 panadapters to the SmartSDR client.
With each panadapter creation the active slice changes (e.g. A, then B, then C).
How can I activate slice "A" again??
I have saved associated PanadapterStreamIDs and GuiClientHandle, but I don´t know how to activate the slice "A" again.
In the documentation I find:
- Flex.Smoothlake.FlexLib.Radio.FindSliceByIndex(int index)
- Flex.Smoothlake.FlexLib.Radio.FindSliceByLetter(string slice_letter, uint gui_client_handle)
- Flex.Smoothlake.FlexLib.Radio.ActiveSlice
but no idea how to use the interfaces...
Any help? Thank you in advance.
BR,
Ruediger, DH1RK
Best Answer
-
Hello Ruediger,
Background: Radio has up to 8 slices for 6700 and 4 for 6600, 6500 and 2 for 6400 and 6300. Slices are indexed 0-7. Each UI Client gets 1 or more of the slices and then assigns letters A-H to them. If you have 1 client then normally index 0 is A, 1 is B. If you have multiple clients then Client 1 has index 0 as A and Client 2 has index 1 as A and index 2 as B. If Client 1 was create another slice it would be index 3 as B. So my point to all of this is don't assume that Slice letter A is 0, etc.
So if you are connected to radio as non-UI FlexAPI application and bound to a client
call slice = radio.FindSliceByLetter("A", radio.ClientHandle);
This API will return slice or null. The call slice.Active = true;
Happy New Year!
Mark, W3II
0
Answers
-
Hi Ruediger, if you are using the Flex API, you can get more information from the Wiki: SmartSDR Wiki (flexradio.com)
To set a particular slice to active, the command is: slice s 0 active=1
73,
Len, KD0RC
0 -
Hi Len,
I´m using Flexlib API... (in C#)
Do you have the command for this available?
Thanks,
Ruediger, DH1RK
0 -
Hi Ruediger, Here is a little program I use to test and understand API commands. It is in C++, not C#, but it should not be hard to translate. Line 115 contains the code to change slice A to active: sendResult = send(sock, "CD95 | slice s 0 active=1", 26, 0);
The command itself is: CD95 | slice s 0 active=1
This can be opened in Visual Studio 2019 (I use the free Community version). Please let me know if you have problems opening or running this little utility.
73,
Len
0 -
Hi Len,
thanks for your reply and source code, but your solution is for a different interface. You are using the socket interface directly, but I want you give the instruction via the Flexlib library (Flex.Smoothlake.FlexLib) ...
Should be something like this:
_thisRadio.FindSliceByIndex(0);
73,
Ruediger
0 -
Sorry Ruediger, I am not familiar with that. I looked at the Smoothlake documentation and did not understand at all what I was seeing. Maybe someone else can shed some light on the subject.
73,
Len
0 -
Hello Mark,
happy new year to you!
Thank for your input! Ok, both calls are needed...
Yes, this works. Thank you.
BR Ruediger, DH1RK
0
Leave a Comment
Categories
- 62 Community Topics
- 1.9K New Ideas
- 139 The Flea Market
- 5.4K Software
- 4.9K SmartSDR for Windows
- 39 SmartSDR for Maestro and M models
- 95 SmartSDR for Mac
- 144 SmartSDR for iOS
- 152 SmartSDR CAT
- 71 DAX
- 280 SmartSDR API
- 7.1K Radios and Accessories
- 5.8K FLEX-6000 Signature Series
- 562 Maestro
- 14 FlexControl
- 728 FLEX Series (Legacy) Radios
- 161 Power Genius Products
- 124 Power Genius XL Amplifier
- 14 Power Genius Utility
- 23 Tuner Genius
- 44 Shack Infrastructure
- 23 Networking
- 95 Remote Operation (SmartLink)
- 50 Contesting
- 145 Peripherals & Station Integration
- 63 Amateur Radio Interests
- 425 Third-Party Software