Keyboard Shortcuts
Likes
Search
Moderated Trying to read things from Flex 3000 using CAT commands
I know I'm probably gonna regret this, but after seeing what I've been able to do with my 6400, I'm trying to cobble together a flow to read (for now....and later control things) from my Flex 3000 using the TCP CAT port that is available with KE9NS's implementation of PowerSDR.? To start, I've been injecting a ZZFA; command to read the frequency of VFO A. What I expected to get in return was ZZFA00007074000 (I was on the FT8 frequency).? What I'm getting in the debug window when I inject that command is this:?
When I expanded that, I see this: and more of the same when I expand further. I assume I am getting responses in hex, decimal or something else, when what I'm trying to get is readable numbers. Any suggestions? Once I get this to work, I'll have my work cut out for me writing injection strings to read all kinds of things from the radio. de Charlie KB8CR |
开云体育Hi Charlie,Nice to see you are experimenting with the 3k. Check the TCP node and see if it allows sending the payload as string instead of buffer. Another alternative is to download my KPA1500 flow from the file section under my call. I have a hex to string function node already built in that flow. Highlight the node and do CTRL C to copy then switch to your Flex 3000 flow and do CTRL V to paste it. 73 Dave wo2x On Feb 20, 2021, at 11:34 PM, Charlie Rubenstein <charlier@...> wrote:
|
Aha !? Getting closer......when I click on the debug window, I can change from "RAW" to "STRING" and this is what I see:
It looks like it is coming in two separate buffer payloads, the first of which starts the connection, and the second one actually gave me the response I was looking for......the VFO A frequency. I just need to figure out what node to use to ignore the first one and focus only on the second message. I also need to find out how to strip off the ZZFA prefix and leading zeros, and format it in Mhz/Khz/Hz format. 73 de Charlie KB8CR |
David:
Thanks for the node to change to text.....IT WORKED !!? It's baby steps, but I have it displaying on a dashboard as follows: Now, I just have to learn how to format that string to get rid of the echoed command, leading zeros, and trailing end character, and to put a decimal after the Mhz. 73 de Charlie KB8CR |
开云体育Hi Charlie, Next step is to filter the incoming messages then parse the info to only get 7040542, then convert to decimal number and divide by 1000000. That will give decimal number 7.040542. Last to format to however many decimal places you want, like 7.040 If you would like we could do a phone call and Team Viewer session and I could show you some of the tricks to parsing data.? A lot of what I learned I did by using Google searches and watching YouTube videos :-) 73 Dave wo2x On Feb 21, 2021, at 5:00 AM, Charlie Rubenstein <charlier@...> wrote:
|
Charlie Add the "String" node to your Pallett.? Within the string node, you have all the tools you need to convert?hex, parse, and adjust variables you are seeing from the Flex 3000. Alan WA9WUD On Sun, Feb 21, 2021 at 5:00 AM Charlie Rubenstein <charlier@...> wrote:
|
toggle quoted message
Show quoted text
On Feb 21, 2021, at 6:31 AM, Alan Blind, WA9WUD <a.alan.blind@...> wrote:
|
Hi guys:
I got this far.....I found a command that returns a LOT of information at once from the radio. (ZZDU;) I see Alan's explanation of the STRING node, but I'm trying to strip leading zeros, and (per Dave's reply) divide by 100000, to get the format I want. I just don't know what node to use to do those functions. Here is what I have so far: Unfortunately, unlike FRStack on the 6xxx series, I don't see a command that will return TX Power (meter) or SWR meter. Guess PowerSDR doesn't send that (although it displays those in PowerSDR itself) Charlie KB8CR |
开云体育Nice start Charlie. I pulled out my Flex 1500 to see what I can
do with it. Can you send me what you got so far? It's been a while
since I updated Ken's software great that he has added the CAT TCP
Server. 73,
Mike Kovacich - VE3CKO
- On 2021-02-20 10:21 p.m., Charlie
Rubenstein wrote:
I know I'm probably gonna regret this, but after seeing what I've been able to do with my 6400, I'm trying to cobble together a flow to read (for now....and later control things) from my Flex 3000 using the TCP CAT port that is available with KE9NS's implementation of PowerSDR.? To start, I've been injecting a ZZFA; command to read the frequency of VFO A. What I expected to get in return was ZZFA00007074000 (I was on the FT8 frequency).? What I'm getting in the debug window when I inject that command is this:? |
开云体育Hi CharlieIf you would like to do a training session on parsing and formatting please reach out to me direct. My call at arrl.Net We can chat on the phone and use TeamViewer.? We can also use Zoom and open it up to others to join if they are interested in learning some parsing tips.? Once you get the first bit of stuff working with Node Red it gets addictive real fast. You don’t need to be a programmer to create flows in Node Red.? Google searches and YouTube videos help me when I get stuck looking for a solution.? 73 Dave wo2x Sent from my waxed string and tin cans.? On Feb 21, 2021, at 11:01 AM, Charlie Rubenstein <charlier@...> wrote:
|
Hi Mike:
I'm still working on sending multiple commands, but they seem to collide unless I space out the frequency that they are sent, so they don't arrive at the same time. The ZZDU; command returns a LOT of stuff, and I used the CSV node (with : as the delimiter) but using the S-meter from that one requires some math to be applied to the return to be correct. There is a metering command, ZZRMx which gives correct S-meter readings, so I'm trying to use that, AND still be able to get stuff from the ZZDU; command (like VFO frequency, AGC setting, Volts, and Temp) without the two commands colliding. The ZZRMx command also can return Forward Power on TX as well as SWR (on TUNE only), but haven't figured out how to use those ONLY when transmitting. When I get to a point that it is more usable (I only started last night......it was a LONG night....XYL gave me the stink-eye cuz I was up too late), I will post the flow here. 73 de Charlie KB8CR |
Hi Dave:
Yea, I sent you an email a while ago. Alan also offered to do a Teamviewer or Zoom training session. Right now I've made some progress, and I *did* find a command to read the TX meters (FWD PWR and SWR)? but the problem I've found is when trying to send multiple commands that repeat frequently (to keep the S-meter current), the commands seem to collide. I found another command from the metering that displays the dBm level correctly without applying math to the return, so I'm using that (injecting the command every 100ms, and only using the command that gets the VFO freq, temp, and volts every 5 seconds.....Seems to be working ok. But I'll still need help on parsing output, and learning how to apply math to things.? There is another command that returns less information than the one I'm using for getting Temp, Volts, and VFO, but it comes out in a run-together string, where each item has a different fixed number of characters, without any delimiters. Wonder if Zoom would work to have a 3-way conversation with everyone. ha ha. If not, let me know when you would be available.? 73 de Charlie KB8CR |
开云体育Oh, after applying ip/port in the CAT TCP server, I guess you are
suppose to close down PowerSDR, then start it back up, now I'm
able to request commands and get data. 73,
Mike Kovacich - VE3CKO
-
On 2021-02-21 2:05 p.m., Charlie
Rubenstein wrote:
Hi Mike: |
开云体育I'll take whatever you got, lol. I've got the CAT TCP server in
PowerSDR to point to the computer running PowerSDR and made sure
the port is open in my router. Can't seem to get over the first
hurdle, pushing commands to the TCP server and receiving. Did get
a couple connections 73,
Mike Kovacich - VE3CKO
-
On 2021-02-21 2:05 p.m., Charlie
Rubenstein wrote:
Hi Mike: |
开云体育I would suggest slowing down the commands being sent to the radio. For settings other than meters a once a second rate should suffice. I think 100 ms over a TCP to serial link is probably too fast. This should allow multiple commands to be sent to the TCP node. ? Try it out and see if things behave better. ? 73 Dave wo2x ? ? From: [email protected] <[email protected]> On Behalf Of Mike Kovacich
Sent: Sunday, February 21, 2021 3:42 PM To: [email protected] Subject: Re: [nodered-hamradio] Trying to read things from Flex 3000 using CAT commands ? I'll take whatever you got, lol. I've got the CAT TCP server in PowerSDR to point to the computer running PowerSDR and made sure the port is open in my router. Can't seem to get over the first hurdle, pushing commands to the TCP server and receiving. Did get a couple connections 73, Mike Kovacich - VE3CKO - ? On 2021-02-21 2:05 p.m., Charlie Rubenstein wrote:
|
It's only the S-meter I was injecting each 100ms.....I tried sending the other command every 3 seconds, as Mode, and VFO don't get changed that often. But they still either collide, or PowerSDR doesn't like it that way.? I tried sending both commands in the same inject node, and in debug it works, but the returns look like this:
The part after ZZIF contains the VFO freqency (the 1st 11 characters), and other info like mode, etc.....in varying character lengths, but unlike the command I *was* using, the items aren't separated by a delimiter, so I can't use CSV node to separate them. The part after ZZRM0 is the S-meter. But they come in two parts, and you can't just click on the icon to Copy Path, because all it copies is "payload". If I could figure out a way to select the "string[xx] number, I could probably work with that, but don't know how. I tried setting the path to it, like it looks on the debug window by using {{msg.payload : string[16]}} but that didn't work.? I did find a command (ZZRMx) that returns Forward PWR, and SWR, but it is only usable during transmit, otherwise it returns a "?" which is what PowerSDR sends when it is a bad command. I tried it while transmitting, and it does work though. Charlie KB8CR |
From: [email protected] <[email protected]> On Behalf Of Charlie Rubenstein
Sent: Sunday, February 21, 2021 5:22 PM To: [email protected] Subject: Re: [nodered-hamradio] Trying to read things from Flex 3000 using CAT commands ? It's only the S-meter I was injecting each 100ms.....I tried sending the other command every 3 seconds, as Mode, and VFO don't get changed that often. But they still either collide, or PowerSDR doesn't like it that way.? I tried sending both commands in the same inject node, and in debug it works, but the returns look like this: |
开云体育Hi AlanI did a little one on one with Charlie.? We were able to send multiple commands into the 3000 and use the switch node “matches regex” to route the returned responses. A function node with something like? msg.payload = parseFloat(msg.payload.substr(4,8))/1000000; Yielded frequency of 14.024067 (he wanted 6 decimal places). For the ZZDU a switch node “matches regex” on ZZDU routed to a split node splitting on : then another switch node for msg.parts.index. He can then access the 32 different items returned. ? Charlie has the info he needs to continue and it will I want to see his flow once completed.? One thing about the new PowerSDR TCP serial port. Every time you restart Node Red it locks up the TCP port.? Dave wo2x Sent from my waxed string and tin cans.? On Feb 21, 2021, at 6:28 PM, Alan Blind, WA9WUD <a.alan.blind@...> wrote:
|