Welcome to the new FlexRadio Community! Please review the new Community Rules and other important new Community information on the Message Board.
If you are having a problem, please check the Help Center for known solutions.
Need technical support from FlexRadio? It's as simple as Creating a HelpDesk ticket.

SmartSDR with an "M" model radio

Doug - K3TZRDoug - K3TZR Member
edited December 2019 in SmartSDR for Windows
Can anyone tell me the sequence of commands sent by SmartSDR (via the API) when it is started using an "M" model radio.

Apparently, the Maestro-like front panel in an "M" model is connected to the API as a "GUI" client. When I try to connect to an "M" model with my own app (SmartSDR-like) I receive a response code of "F3000001, Maximum number of clients exceeded".

Does SmartSDR somehow disconnect the Maestro-like front panel prior to connecting?

Answers

  • Mark_W3IIMark_W3II Mark W3II Member ✭✭
    edited December 2019
    Today there is only 1 GUI client allowed which is controlled by the isGUI property on the API object. Set this property to false. If you are using TCP commands then don't send "client gui" command.
  • Doug - K3TZRDoug - K3TZR Member
    edited October 2018
    Mark,

    Thanks for replying. I know that there is only one GUI client allowed, my question is how do you use SmartSDR with an M model radio (I don't have one to test with, I only have a 6500).

    If you have an M model turned on and the front panel is connected as a GUI client, how do you (or SmartSDR) tell the M model radio to disconnect its GUI so that SMartSDR will be able to connect as a GUI?
  • Ted  VE3TRQTed VE3TRQ Member ✭✭
    edited October 2018
    To disconnect the M front panel, connect to the radio on the port and IP address sent in the discovery packet, and then send a client disconnect command: "c0 | client disconnect". This will leave the radio in a state in which it can connect to another GUI. However, if all you want is CAT and DAX access, just go ahead and connect those - they co-exist with an attached GUI from panel.
  • Mark_W3IIMark_W3II Mark W3II Member ✭✭
    edited October 2018
    Connect as non-GUI then send the "client disconnect" command.
  • Doug - K3TZRDoug - K3TZR Member
    edited October 2018
    Ted,

    Thanks for helping.

    I can try that. Are you suggesting that SmartSDR sends a "client disconnect" to any M model it detects (in Discovery packets) on startup?

    I have a SmartSDR-like app (i.e. a GUI client) which another amateur tried with an M model radio for the first time yesterday. It failed to connect as a GUI because of the existing GUI connection of the front panel. Apparently SmartSDR can connect so SmartSDR must be doing something to close the front panel connection. I've looked in the FlexLib source code but haven't found anything yet.
  • Mark_W3IIMark_W3II Mark W3II Member ✭✭
    edited October 2018
    The M model works very close to the way SmartSDR/W works except when the radio and the M start up the M will load and connect to the radio. If you are developing a lights out style of connection on reboot you will have to disconnect the M first before providing your own GUI connection.
  • Ted  VE3TRQTed VE3TRQ Member ✭✭
    edited October 2018
    I have not snooped the connection, but I would suggest that when SmartSDR does a "Connect", it will send a disconnect first. It does not spontaneously send a disconnect when started up. I can start SmartSDR on a Windows laptop, which will then start Cat and Dax apps. The SmartSDR window just sits there while I use Dax and Cat to control the M-radio with a digital app of my choice. The front panel stays nicely connected and provides the slices I need for the digital applications.
  • NA0BNA0B Member ✭✭
    edited October 2018
    Doug,

    I often have my 6600M radio in FT8-WSPR mode. When I connect remotely, I get the question: Do you want to disconnect the other user? (or something similar). I click YES, wait about 45 seconds, and try to connect again. It always works so far.
    When I tried xSDR6000, I did not get the question about other users, and I could not connect.

    Thanks for xSDR6000!

    73 de Juan.

  • Doug - K3TZRDoug - K3TZR Member
    edited October 2018
    Thanks Juan,

    I'm working on it now. I'm in the process of adding the ability to close the front panel GUI connection before making my GUI connection. Up until last night, I had not tried to connect to an M model (and xSDR6000 crashed badly when trying). 

    I've added a more graceful shutdown and error message when I fail to connect as a GUI. Now I have to make the M model connection work correctly.

    Adding a question for the user had not occurred to me, I'll add that to my code.
  • edited October 2018
    Doug, have you looked thru the API doc's for this? I never had an issue disconnecting the Maestro I had with the 6500. But, I haven't tried it with my 6600M. I think I read somewhere that the front panel connects differently to the radio. Not sure if it is networked or what. I haven't updated any of my code since I got the 6600M. Just never seems to be enough time. (long haul trucker) Maybe Eric or Steve will see this and fill in the missing pieces for you. I doubt you could see commands from the front panel with Wireshark. (my first thought) James WD5GWY
  • Ted  VE3TRQTed VE3TRQ Member ✭✭
    edited October 2018
    The front panel on an M radio has its own IP address provided via DHCP. The front panel interface OUID (the high order 24 bits of the MAC adddress) is the same as the radio, just the last 24 bits are different, in a different numeric space. I believe it has an internal network connection to the radio, exactly as would either a Maestro, or a copy of SmartSDR running on a PC, or dogparkSDR running on a Mac, or SmartSDR for iOS running on an iPad.
  • Eric-KE5DTOEric-KE5DTO Administrator, FlexRadio Employee admin
    edited October 2018
    Similar to SmartSDR for Windows, if a GUI client is already connected to the radio, we show this in the connect dialog in the radio status (In Use) and give the user the option to disconnect the existing client.  I think the commands to do this have already been mentioned in this thread.  Let me know if you have specific questions about how this works.
  • Doug - K3TZRDoug - K3TZR Member
    edited October 2018
    Eric,

    Thanks for the clarification. I think I understand what needs to be done.
  • Doug - K3TZRDoug - K3TZR Member
    edited October 2018
    One more piece of the puzzle, Georg (DJ6GI), was able to start my GUI app connected to his 6600M. He wrote to me that if you “stay at the screen where it hasn’t started the internal smartSDR yet” you can then connect as a GUI from an external app..

    I don’t have an M model so I can’t directly test this approach. I’m working on a change to my app that will disconnect the front panel when connecting.

Leave a Comment

Rich Text Editor. To edit a paragraph's style, hit tab to get to the paragraph menu. From there you will be able to pick one style. Nothing defaults to paragraph. An inline formatting menu will show up when you select text. Hit tab to get into that menu. Some elements, such as rich link embeds, images, loading indicators, and error messages may get inserted into the editor. You may navigate to these using the arrow keys inside of the editor and delete them with the delete or backspace key.