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.

Hercules MIDI with 6300

1568101115

Comments

  • W4WHLW4WHL Member
    edited April 2017



  • W4WHLW4WHL Member
    edited July 2016
    Sorry about the rambling and use of "OH" and "UM" a lot :)  And of course once I said ACG Threshold when I meant AGC.  Anyway it does show how the device works.

    William
  • DavidDavid Member ✭✭
    edited December 2016
    The demo video is good. It shows what the device can do. I'm guessing it would be possible to make the ATU a Tune for those with an external tuner. Is it possible to the filter variable as well?

    Does anyone have the Flex Control as well to provide a comparison?
  • W4WHLW4WHL Member
    edited July 2016
    David,

    There is a file in the data directory that you can edit if you use an external ATU.  So the ATU button does a tune if you have an external ATU.  So yes that has already been accounted for.

    William
  • Sergey R5AUSergey R5AU Sergey Member ✭✭
    edited April 2015
    Fantastic job William, IMHO better it will be exchange RF function with HeadPhone volume, I think this knob a bit more popular in daily operations :-)
  • DH2IDDH2ID Member ✭✭
    edited December 2016
    William, David,

    concerning FlexControl: I have one and have used it for my Flex-3000 and now
    for my Flex-6500 (until William wrote his program for the CM micro, of course ;-))

    The CMD micro tunes just as smooth as the FlexControl knob, which is a bit
    more weighted, but has only 5 functions (3 buttons, the knob, which can also
    be pressed short or long)

    Another issue with the FlexControl was, that some of the knobs failed
    after heavy use because of problems with the center axis. The CMD micro
    should stand up to a lot of tuning and pressure, because it was designed
    for youthful DJs ... 8-)

    To cut it short: The CMD micro with your excellent program is much more
    versatile and usable especially for split DX work, for CW, for tuning and
    fast frequency changes than the FlexControl knob.

    I must of course say for FRS, that the FlexControl knob was never designed to
    do more than tuning and a bit more and added just a fast tuning device to an otherwise clickable GUI like PowerSDR. 
  • W4WHLW4WHL Member
    edited July 2016
    One thing to note with my software is the way the balance behaves when operating splits.  When Two slices are open, sliding the balance all the way to the left puts slice A in the left speaker and slice B in the right speaker.  Balance all the way to the right is the opposite.  This is useful if you want to hear the mob and the OP.

    Sergy,

    I'm happy to change the RF knob to a Headphone knob.  Maybe I can make that a user configurable item.


    William

  • W4WHLW4WHL Member
    edited January 2018
    Ken,

    Just for your info!

    I total revamped the parsing of data received from the radio.  Its much cleaner I think.  Initial data from the radio when you issue a "sub slice all" is formatted differently than followup messages.  So I had to create separate routines for "initial" and "followup".  The use of index and substring functions is much cleaner IMO. 

    I will have a new version out soon using this new method. 

      if (c.available() > 0) {
        inBuffer = c.readString();
        //Get Initial Frequencies
        int s0=inBuffer.indexOf("slice 0 in_use=1 RF_frequency=");
        int s1=inBuffer.indexOf("rit_on=", s0);
        if ((s0 > 0) && (s1 > s0)){   FreqAstring = inBuffer.substring(s0+30, s1); FreqAstring = FreqAstring.replaceAll(" ", "");FreqA = new Float(FreqAstring);}
        int t0=inBuffer.indexOf("slice 1 in_use=1 RF_frequency=");
        int t1=inBuffer.indexOf("rit_on=", t0);
        if ((t0 > 0) && (t1 > t0)){   FreqBstring = inBuffer.substring(t0+30, t1); FreqBstring = FreqBstring.replaceAll(" ", "");FreqB = new Float(FreqBstring);}
        //Get Frequencies if changed in smartSDR
        int u0=inBuffer.indexOf("slice 0 RF_frequency=");
        int u1=inBuffer.indexOf("wide=", u0);
        if ((u0 > 0) && (u1 > u0)){   FreqAstring = inBuffer.substring(u0+21, u1); FreqAstring = FreqAstring.replaceAll(" ", "");FreqA = new Float(FreqAstring);}
        int v0=inBuffer.indexOf("slice 1 RF_frequency=");
        int v1=inBuffer.indexOf("wide=", v0);
        if ((v0 > 0) && (v1 > v0)){   FreqBstring = inBuffer.substring(v0+21, v1); FreqBstring = FreqBstring.replaceAll(" ", "");FreqB = new Float(FreqBstring);}
        //Get Initial Modes  
        int ma0=inBuffer.indexOf("mode=", s0);
        int ma1=inBuffer.indexOf("wide=", ma0);
        if ((ma0 > 0) && (ma1 > ma0)){   modeA = inBuffer.substring(ma0+5, ma1); modeA = modeA.replaceAll(" ", "");}
        int mb0=inBuffer.indexOf("mode=", t0);
        int mb1=inBuffer.indexOf("wide=", mb0);
        if ((mb0 > 0) && (mb1 > mb0)){   modeB = inBuffer.substring(mb0+5, mb1); modeB = modeB.replaceAll(" ", "");}
        //Get Modes if changed in smartSDR
        int na0=inBuffer.indexOf("slice 0 mode=");
        int na1=inBuffer.indexOf(" filter_lo=", na0);
        if ((na0 > 0) && (na1 > na0)){   modeA = inBuffer.substring(na0+13, na1); modeA = modeA.replaceAll(" ", "");}
        int nb0=inBuffer.indexOf("slice 1 mode=");
        int nb1=inBuffer.indexOf(" filter_lo=", nb0);
        if ((nb0 > 0) && (nb1 > nb0)){   modeB = inBuffer.substring(nb0+13, nb1); modeB = modeB.replaceAll(" ", "");}
       }
  • W4WHLW4WHL Member
    edited January 2018
    Here is v1.5 for the CMD Micro.  Few small changes
      1. displays Flex model in app window
      2. displays Mode in app window.
      3. Updated parsing of received data from radio (UDP and TCP )

    image

    https://www.dropbox.com/s/unv30jzn96j42dy/CMDMicroFlex6k_v1_5.zip?dl=0

    William
  • Sergey R5AUSergey R5AU Sergey Member ✭✭
    edited April 2017

    William, my one is arrived :-), just small comments:

    1. apps not supporting High Screen resolution, I am using iMac 5K with Parallels for Win


    image

    image


    sorry too small for my eyes :-)

    2. Strange behavior with Balance A-B: moving slider from the left end to the right end change positions of the slice in the headphones? as it planned?

    3. No reaction in SSDR Volume A or Volume B sliders in case moving Vol A or Vol B sliders on CMD?

    4. Selectable steps are 10Hz or 100Hz only 

    this is report with ver 1_3


    image

    i guess my report helpful

    image
  • W4WHLW4WHL Member
    edited July 2016
    Sergey,

    The app size unfortunately set in stone.  Placement of objects is pixel for pixel x by y.  Making this scaleable would be more complicated than the entire program itself.  Once its loaded it is really useless anyway.

    Also please download newest version.  V1_3 has the small prompts.  This is done away with on newer versions.  One less small thing you need to read.

    The balance is working as designed.  I did it this way so when running 2 slices I can switch which ear which slice is in. 

    The volume A/B sliders not updating is a bug in smartSDR which has been acknowledged by Flex.

    Steps are designed with only 10 & 100.  I can add more if people want.  I just found that these were all I needed.  100 to go fast to the area and 10 to fine tune.  I found having to cycle through more than 2 step sizes slowed me down exponentially.  But a single button push from fast to slow was the most useful.

    I'm open for suggestions for changes, and will change things if most users agree.  So make your suggestions and lets get feedback from others. 

    William
  • W4WHLW4WHL Member
    edited April 2017
    Here is a new version that incorporates Sergeys's suggestion to swap RF dial to Headphone dial.  This is now selectable in the var.txt file in the /DATA directory.

    From var.txt

    external atu =false;
    RF<>Headphone =false;

    To swap ATU for Tune if you have external ATU.  Just edit this file as follows:

    external atu =true;
    RF<>Headphone =false;

    To swap RF Power for Headphone vol, Just edit this file as follows:

    external atu =false;
    RF<>Headphone =true;

    https://www.dropbox.com/s/300fxm08weza0ve/CMDMicroFlex6k_v1_6.zip?dl=0


    William


  • Sergey R5AUSergey R5AU Sergey Member ✭✭
    edited April 2015
    Got it William, generally size is not a issue, Apps alway in tray, however step really reasonable, may be set up an options 10Hz+100Hz or 1Hz-10Hz like with knob  RF Power - Volume Head Phones
  • W4WHLW4WHL Member
    edited July 2016
    Sure that is a good suggestion, I can do that.  If you do really fine tuning and would like a 1hz-10hz option, I can add that to the var.txt file.

    Maybe a second option would be to get rid of the CWX3 button and make it so you could toggle between steps of (10hz / 100hz) or (1hz /10 hz).

    Opinions?

    William
  • Sergey R5AUSergey R5AU Sergey Member ✭✭
    edited April 2015
    You know CW1-CW3 are serious
    CW1- callsign
    CW2 - 599 BK
    CW3 - TU or ?
    better to make selectable in the var.txt
  • W4WHLW4WHL Member
    edited July 2016
    ok I will do this for you later today or tonight
  • Sergey R5AUSergey R5AU Sergey Member ✭✭
    edited April 2015
    Vol Headphones - OK with True, TKS !
  • W4WHLW4WHL Member
    edited July 2016
    Your welcome
  • W4WHLW4WHL Member
    edited September 2018
    Here is another point release.  This one adds the option for finer steps if you so desire.

    In var.txt edit the following line to "true" if you would like step sizes of (1hz/10hz vs 10hz/100hz);

    external atu =false;
    RF<>Headphone =false;
    steps1-10=true;

    Just for your Sergey !!!

    https://www.dropbox.com/s/tad0hdoe4h2czf0/CMDMicroFlex6k_v1_7.zip?dl=0

    William




  • Sergey R5AUSergey R5AU Sergey Member ✭✭
    edited April 2015
    William thank you! Will test it during weekend from remote location! Now works fine, will report.
  • MH_FlexerMH_Flexer Member
    edited April 2015

    William,

    Great stuff, and what a super community this is.  I am not yet a programmer, however I am staring to go through the basic Visual Basic training. 

    Can you please walk me through the macro level programs you are using to program in?

    I would like to be able to dig deeper into this CMD source code.  I see a *.pde file in the Source folder but I don't know what to open this with?

    Hope this is not too silly a request, I just need some help getting started.


    Duane

  • MH_FlexerMH_Flexer Member
    edited April 2015

    William,


    I started a Version History and Pending Updates for the program see below downloads:


    https://www.dropbox.com/s/y0u0hlghipo0orj/CMDMicroFlex6K%20Version%20Release%20Notes.docx?dl=0

    https://www.dropbox.com/s/wa3ut58iqp3cu6i/CMDMicroFlex6K%20Pending%20Updates.docx?dl=0


    Hope you find this of value.  Let me know of any changes or broken links, etc. 


    Duane

  • Javier, KC2QIIJavier, KC2QII Member ✭✭
    edited June 2016
    Wow, a new release between the time I loaded at the laptop and the desktop PC.

    Love it!

    If I might add to the user configurable list, a swap between AGC-T to Volume would be nice.

    Thanks,

    Javier
  • W4WHLW4WHL Member
    edited July 2016
    Duane,

    The language is "processing"  its free

    William
  • W4WHLW4WHL Member
    edited July 2016
    I made some changes I hope all will like.  I decided to ditch the var.txt and just use toggles on the app window itself.  

    Defaults are red;
    Internal ATU
    Top Right dial = RF
    Step toggles 10/100hz

    Click on each in the App window and they turn blue, which means;

    External ATU
    Top Right dial = Headphones
    Step toggles 1/10hz

    These toggles replace the true/false entries in the var.txt file.

    What do yall think?

    image

    Ill post the code later tonight. 

    William

  • W4WHLW4WHL Member
    edited September 2018
    Javier,

    What volume are you referring to?

    William

  • Javier, KC2QIIJavier, KC2QII Member ✭✭
    edited June 2016
    The Volume A <> AGC-T  / Volume B <> AGC-T.  I find myself adjusting the AGC instead of the Slice Volume because is closer to the edge of the CMD Micro.  

    Javier

  • W4WHLW4WHL Member
    edited July 2016
    Ah I get it now, you just want to swap them.

    William
  • W4WHLW4WHL Member
    edited February 2018
    Here is an update adding Javier's suggestion.  I added a Toggle to swap Volume A <> AGC-T  / Volume B <> AGC-T.

    Toggles in this version;

    Swaps ATU <> TUNE
    Swaps RF <> Headphone
    Swaps Step - 1/10hz<>10/100hz
    Swaps slice Volume  <> AGC-T

    Red are default values/ Blue means new value

    Give it a try

    image

    https://www.dropbox.com/s/ygxfs7br956next/CMDMicroFlex6k_v1_8.zip?dl=0

    William



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.