开云体育

ctrl + shift + ? for shortcuts
© 2025 开云体育

FLDIGI Macro to Generate 1477 Hz 1.5 Second Long Tone for W3HZU SSTV Repeater on 28.680


 

The Keystone ARC in York, PA, runs a SSTV repeater on 28.680. It requires a 1477 Hz tone for 1.5 seconds that (should) trigger the repeater to send a CW-ID.? Then, one can send a SSTV image to be received by the repeater.?
?
I use QSSTV in Ubuntu which does have a 'Transmit Tone' feature (little music note in the transmit panel).? However, the transmit time variable appears to be type integer, so it's 1 second or 2 seconds....not 1.5 seconds.
?
So, I thought I'd try to get FLDIGI (4.2.06) to generate that tone (and give me an opportunity to explore some of the seldom-used macro commands).? Here's what I came up with:
?
<PUSH>
<TXRSID:on|off|t>
<GOFREQ:1477>
<TUNE:1.5>
<RX>
<TXRSID:on|off|t>
<POP>
?
In theory, FLDIGI should transmit just a 1477 Hz tone for 1.5 seconds, then return to whatever cursor audio frequency and TXRSID state it was in prior to executing the macro.
?
It sort-of works.? Audio frequency doesn't change but the rig goes to transmit for about the right time.? Starting with TXRSID selected, it doesn't seem to toggle and it transmits a TXRSID before returning to receive. So,? ?TXRSID:on|off|t? ?and? ?GOFREQ? ?don't seem to work as I'd have expected.
?
I suspect I'm not using these macro commands correctly....I'd welcome anyone more familiar with these that cares to comment/suggest.
?
73
Keith/KI5US
?
?


 

开云体育

Hi Keith

I'd expect the last two commands need to be prefixed @ so they run post TX>RX.

TXRSID toggle I think will be TXRSID:t

You can restrict the PUSH to just the freq if you like. It (and other commands) may even need an inline (!) prefix. As I remember there is a default re-sequencing that can be applied.?

Not all commands will accept the delayed or inline prefix. The manual is quite detailed in this. Dave also produced a fairly detailed document (some time ago) that covers the sequencing aspect.

so;

<PUSH:f>
<TXRSID:t>
<GOFREQ:1477>
<TUNE:1.5>
<RX>
<@TXRSID:t>
<@POP>

I don't promise this will work! Not sure if TUNE accepts a subsecond argument either. If not, a workaround is to TX a 1.5 sec 1477Hz WAV file using <AUDIO:filename.wav>

Cheers Bob VK2YQA

?

On 23/1/25 05:35, Keith/KI5US via groups.io wrote:

The Keystone ARC in York, PA, runs a SSTV repeater on 28.680. It requires a 1477 Hz tone for 1.5 seconds that (should) trigger the repeater to send a CW-ID.? Then, one can send a SSTV image to be received by the repeater.?
?
I use QSSTV in Ubuntu which does have a 'Transmit Tone' feature (little music note in the transmit panel).? However, the transmit time variable appears to be type integer, so it's 1 second or 2 seconds....not 1.5 seconds.
?
So, I thought I'd try to get FLDIGI (4.2.06) to generate that tone (and give me an opportunity to explore some of the seldom-used macro commands).? Here's what I came up with:
?
<PUSH>
<TXRSID:on|off|t>
<GOFREQ:1477>
<TUNE:1.5>
<RX>
<TXRSID:on|off|t>
<POP>
?
In theory, FLDIGI should transmit just a 1477 Hz tone for 1.5 seconds, then return to whatever cursor audio frequency and TXRSID state it was in prior to executing the macro.
?
It sort-of works.? Audio frequency doesn't change but the rig goes to transmit for about the right time.? Starting with TXRSID selected, it doesn't seem to toggle and it transmits a TXRSID before returning to receive. So,? ?TXRSID:on|off|t? ?and? ?GOFREQ? ?don't seem to work as I'd have expected.
?
I suspect I'm not using these macro commands correctly....I'd welcome anyone more familiar with these that cares to comment/suggest.
?
73
Keith/KI5US
?
?


 

Thanks much, Bob!? This works better but between the TUNE and RX commands, the mode still shifts from a pure (TUNE) tone to one characteristic of the mode fldigi was currently in. I.e., if I'm in THOR4 at 576 Hz, and execute the macro, it (now) jumps to 1477 (good!), turns off TXRSID (good!), executes TUNE for about 2 seconds (good!), then switches to THOR4 while still transmitting (oops!).? If I click the TUNE button twice, the rig then returns to the RX state at the original waterfall position (576 in this example) and stops transmitting (good).
?
I was using Dave's excellent online documentation for fldigi under the MACROS section but don't see references to the use of @ and ! as you've shown.? Any chance you have a reference for Dave's document on the sequencing aspect?? I had no idea that @ had associated uses in the MACRO other than as a modifier to the label tag. I'd like to learn a bit more about these fine points.
?
Again, thanks...
73
Keith/KI5US


 

开云体育

Hi Keith

The way out of the errant Thor idle is probably to change the modem to "NULL" just after the PUSH command and use POP to bring it back. eg

<PUSH>
<TXRSID:t>
<!MODEM:NULL>
<GOFREQ:1477>
<TUNE:1.5>
<RX>
<@TXRSID:t>
<@POP>

Also suggest you try a round number of TUNE seconds just in case.

See the W1AW and ARRL mode change broadcast example in the manual for reference.

I found Dave's doc. It appears to be an email rather than PDF. It is 4-5 years old so may have changed.

Cheers Bob

=========================

Macro Parse/Execute pseudo code

Clear transmit and receive first-in-first-out (FIFO).
Clear program state stack, last-in-first-out (LIFO).

While macro string contains tag substrings <...>
??? parse tags

??????? remove comment tag substrings
??????????? <COMMENT:...>
??????????? <#...>

??????? execute immediate tag substrings
??????????? <RIGCAT:...>, <FLRIG:...>,
??????????? <LOG>, <LNW>, <CLRLOG>, <EQSL>,
??????????? <DECR>, <INCR>, <LASTNO>, <SAVEXCHG>,
??????????? <TIMER:...>, <IDLE:...>, <TUNE:...>, <WAIT:...>,
??????????? <NRSID:...>,
??????????? <MODEM>, <MODEM:...>,
??????????? <EXEC>, </EXEC>,
??????????? <CLRRX>, <CLRTX>, <FOCUS>,
??????????? <QSY+:...>,
??????????? <FILE:...>,
??????????? <WPM:...>, <RISE:...>, <PRE:...>, <POST:...>"
??????????? <AFC:...>, <LOCK:...>, <REV:...", <HS:...>,
??????????? <RXRSID:...>, <TXRSID:...>,
??????????? <DTMF:...>,
??????????? <SRCHUP>, <SRCHDN>,
??????????? <GOHOME>, <GOFREQ:...>, <QRG:...>,
??????????? <QSY:...>, <QSYTO>, <QSYFM>,
??????????? <RIGMODE:...>,
??????????? <FILWID:...>, <RIGHI:...>, <RIGLO:...>,
??????????? <MAPIT:...>, <MAPIT>,
??????????? <ALERT:...>, <AUDIO:...>",
??????????? <TXATTEN:...>,
??????????? <DIGI>,
??????????? <TALK:...>, (only on Win OS)
??????????? <IMAGE:...>, <AVATAR>,

??????? perform string substitution for
??????????? <CALL>, <FREQ>, <BAND>, <LOC>, <MODE>, <NAME>, <QTH>,
??????????? <RST>, <ST>, <PR>,
??????????? <MYCALL>, <MYLOC>, <MYNAME>, <MYQTH>,
??????????? <MYRST>, <MYCLASS>, <MYSECTION>, <MYSTATE>,
??????????? <MYST>, <MYCOUNTY>,
??????????? <MYCNTY>, <ANTENNA>, <QSOTIME>, <QSONBR>, <NXTNBR>,
??????????? <INFO1>, <INFO2>,
??????????? <LDT>, <LDT:...>, <ILDT>, <ZDT>, <ZDT:...>,
??????????? <IZDT>, <LT>, <ZT>,
??????????? <LD>, <LD:...>, <ZD>, <ZD:...>,
??????????? <ID>, <TEXT>, <VIDEO:...>,
??????????? <CWID>, <VER>,
??????????? <CNTR>,
??????????? <X1>, <XIN>, <XOUT>,
??????????? <FDCLASS>, <FDSECT>, <CLASS>, <SECTION>,
??????????? <XBEG>, <XEND>, <SERNO>,
??????????? <GET>,
??????????? <CSV:...>, <WX>, <WX:...>,

??????? push Tx delayed actions to Tx FIFO, substitute FIFO tag in macro text
??????????? <!WPM:...>, <!RISE:...>, <!PRE:...>, <!POST:...>,
??????????? <!GOHOME>, <!GOFREQ:...>, <!QSY:...>,
??????????? <!IDLE:...>, <!WAIT:...>, <!SKED:...>,
??????????? <!MODEM:...>,
??????????? <!RIGMODE:...>, <!FILWID:...>, <!RIGHI:...>, <!RIGLO:...>,
??????????? <!TXATTEN:...>,
??????????? <!RIGCAT:...>, <!FLRIG:...>,
??????????? <!PUSH>, <!POP>, <!DIGI>,
??????????? <!FREQ>, <!TUNE:...>,

??????? push Rx delayed actions to Rx FIFO, remove tag from macro text
??????????? <@MODEM:...>,
??????????? <@GOFREQ:...>, <@GOHOME>
??????????? <@RIGCAT:...>, <@FLRIG:...>,
??????????? <@RIGMODE:...>, <@FILWID:...>, <@RIGHI:...>, <@RIGLO:...>,
??????????? <@TXRSID:...>,
??????????? <@WAIT:...>,
??????????? <@PUSH>, <@POP>,

??????? handle program state change tags
??????????? <REPEAT>, <SKED:...>, <UNTIL:...>,
??????????? <STOP>, <CONT>, <PAUSE>,
??????????? <POP>, <PUSH>,

??????? special handling of rx/tx tags
??????????? <RX>, <TX>, <TX/RX>

While macro text not empty
??? Start Tx if <TX> parsed
??? Send next character if printable text
??? Execute next command in Tx FIFO if next character a FIFO tag
??? End Tx if <RX> parsed

While Rx FIFO not empty
??? Sequentially execute Rx FIFO actions

On 23/1/25 07:26, Keith/KI5US via groups.io wrote:

Thanks much, Bob!? This works better but between the TUNE and RX commands, the mode still shifts from a pure (TUNE) tone to one characteristic of the mode fldigi was currently in. I.e., if I'm in THOR4 at 576 Hz, and execute the macro, it (now) jumps to 1477 (good!), turns off TXRSID (good!), executes TUNE for about 2 seconds (good!), then switches to THOR4 while still transmitting (oops!).? If I click the TUNE button twice, the rig then returns to the RX state at the original waterfall position (576 in this example) and stops transmitting (good).
?
I was using Dave's excellent online documentation for fldigi under the MACROS section but don't see references to the use of @ and ! as you've shown.? Any chance you have a reference for Dave's document on the sequencing aspect?? I had no idea that @ had associated uses in the MACRO other than as a modifier to the label tag. I'd like to learn a bit more about these fine points.
?
Again, thanks...
73
Keith/KI5US
_._,_._,_


 

Great info!? Guess I have a little studying to do...Thanks much!
73
Keith