SmartSDR v3.10.15 and the SmartSDR v3.10.15 Release Notes
The latest 4O3A Genius Product Software and Firmware
Need technical support from FlexRadio? It's as simple as Creating a HelpDesk ticket.
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
- All Categories
- 354 Community Topics
- 2.1K New Ideas
- 619 The Flea Market
- 8K Software
- 4 SmartSDR+
- 6.3K SmartSDR for Windows
- 176 SmartSDR for Maestro and M models
- 414 SmartSDR for Mac
- 267 SmartSDR for iOS
- 252 SmartSDR CAT
- 188 DAX
- 377 SmartSDR API
- 9.2K Radios and Accessories
- 26 Aurora
- 220 FLEX-8000 Signature Series
- 7.1K FLEX-6000 Signature Series
- 927 Maestro
- 53 FlexControl
- 862 FLEX Series (Legacy) Radios
- 898 Genius Products
- 457 Power Genius XL Amplifier
- 325 Tuner Genius XL
- 116 Antenna Genius
- 287 Shack Infrastructure
- 202 Networking
- 445 Remote Operation (SmartLink)
- 141 Contesting
- 761 Peripherals & Station Integration
- 139 Amateur Radio Interests
- 979 Third-Party Software

