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 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.

IsGpsdoPresent

Mark Erbaugh
Mark Erbaugh Member ✭✭
edited February 2020 in SmartSDR API
According to the FlexAPI documentation, the Radio class has a read-only property IsGpsdoPresent. My 6700 has the GPSDO installed, but the IsGpsdoPresent property shows false. I poked around in Radio.cs, but I don't see where the property is set.

Answers

  • Mark_W3II
    Mark_W3II Member ✭✭✭
    edited February 2020
    It is set in Radio.cs file in the ParseOscillatorStatus method. Search for _isGpsdoPresent
    You must be connected to radio for this property to be set. Also note that until a GUI client connects some radio object properties are not update / set.

  • Mark Erbaugh
    Mark Erbaugh Member ✭✭
    edited August 2019
    Mark,

    Thanks for the response. It looks like the code in Radio.cs is looking for "gpsdo_present" in the oscillator status string (ParseOscillatorStatus), but with my program (non-GUI client) and SSDR 2.5.1 running, the only status string that I have seen is:

    state=ocxo_gpsdo setting=ocxo_gpsdo locked=1

    Looking through the debug output in VS, I found this:

    ParseOscillatorStatus: Invalid value (state=ocxo_gpsdo setting=ocxo_gpsdo locked=1)

    It looks like the FlexAPI code I have doesn't match the data coming from the radio.

    My radio is HW version 2.5.1.130. My FlexAPI is 2.5.1.

    73,
    Mark - N8ME
  • Mark_W3II
    Mark_W3II Member ✭✭✭
    edited August 2019
    Starting with radio V 2.51 and later you need to be using the FlexAPI from V3. Radio version 2.51 brought the API to compatibility 3 level so the FlexAPI could work with both version 2 and 3.

    The V2.51 and V3 status strings look the same for me 
    "state=external setting=auto locked=1 ext_present=1 gpsdo_present=0 tcxo_present=1"
  • Mark Erbaugh
    Mark Erbaugh Member ✭✭
    edited August 2019
    Mark,

    Interesting. It looks to me like the IsGpsdoPresent status is set in the ParseOscillatorStatus method in Radio.cs. I set a breakpoint at the start of that routine and the status string I saw was:

    state=ocxo_gpsdo setting=ocxo_gpsdo locked=1

    I wonder why my radio is different. This is v2.5.1 
  • Mark_W3II
    Mark_W3II Member ✭✭✭
    edited August 2019
    Not different please update to V3 FlexAPI DLL / Library.

    Starting with radio V 2.51 and later you need to be using the FlexAPI from V3. Radio version 2.51 brought the API to compatibility 3 level so the FlexAPI could work with both version 2 and 3.

  • Mark Erbaugh
    Mark Erbaugh Member ✭✭
    edited August 2019
    Mark,

    Are you saying I should not use Flex API v2.5.1, even though that is the version I'm using in my 6700?

    I repeated the same test with FlexLib API v3.0.27. I'm still seeing the same string as above. Do you think I need to do a hard reset of my radio?

    73,

    Mark - N8ME
  • Mark_W3II
    Mark_W3II Member ✭✭✭
    edited August 2019
    Yes, you must use the V3 FlexAPI library because FRS modified 2.51 to be compatible with V3 API. If it has been a long time since you hard reset the radio it is a quick thing to try. Remember to save your profiles and memories.
  • Mark Erbaugh
    Mark Erbaugh Member ✭✭
    edited August 2019
    I did a hard reset.  I'm still seeing the string

    "state=ocxo_gpsdo setting=ocxo_gpsdo locked=1"

    Looking at the string you reported, it looks like you don't have the Flex GPSDO installed. I wonder if there is a bug in the string when the GPSDO is installed?  I tried uninstalling the GPS in software, but that didn't change the string. I'm not sure if I want to open the 6700 and remove the GPSDO.
  • Mark_W3II
    Mark_W3II Member ✭✭✭
    edited August 2019
    Can you select TCXO for the source and see if the string changes?
  • Mark_W3II
    Mark_W3II Member ✭✭✭
    edited August 2019
    Can you select TCXO for the source and see if the string changes?
  • Mark Erbaugh
    Mark Erbaugh Member ✭✭
    edited August 2019
    I don't think that the oscillator source is settable on the 6700, that's just on the 6400/6600.

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.