Cleanup data mode enable on TX

This commit is contained in:
Nonoo 2020-12-21 08:57:06 +01:00
parent 98bf695caa
commit 49a55094d4
4 changed files with 14 additions and 12 deletions

View file

@ -20,7 +20,7 @@ var rigctldPort uint16
var runCmd string var runCmd string
var runCmdOnSerialPortCreated string var runCmdOnSerialPortCreated string
var statusLogInterval time.Duration var statusLogInterval time.Duration
var digitalOnTx bool var setDataModeOnTx bool
func parseArgs() { func parseArgs() {
h := getopt.BoolLong("help", 'h', "display help") h := getopt.BoolLong("help", 'h', "display help")
@ -36,7 +36,7 @@ func parseArgs() {
e := getopt.StringLong("exec", 'e', "", "Exec cmd when connected") e := getopt.StringLong("exec", 'e', "", "Exec cmd when connected")
o := getopt.StringLong("exec-serial", 'o', "socat /tmp/kappanhang-IC-705.pty /tmp/vmware.pty", "Exec cmd when virtual serial port is created, set to - to disable") o := getopt.StringLong("exec-serial", 'o', "socat /tmp/kappanhang-IC-705.pty /tmp/vmware.pty", "Exec cmd when virtual serial port is created, set to - to disable")
i := getopt.Uint16Long("log-interval", 'i', 100, "Status bar/log interval in milliseconds") i := getopt.Uint16Long("log-interval", 'i', 100, "Status bar/log interval in milliseconds")
d := getopt.BoolLong("digital-on-TX", 'd', "Automatically enable data mode when TX from kappanhang") d := getopt.BoolLong("set-data-tx", 'd', "Automatically enable data mode on TX")
getopt.Parse() getopt.Parse()
@ -58,5 +58,5 @@ func parseArgs() {
runCmd = *e runCmd = *e
runCmdOnSerialPortCreated = *o runCmdOnSerialPortCreated = *o
statusLogInterval = time.Duration(*i) * time.Millisecond statusLogInterval = time.Duration(*i) * time.Millisecond
digitalOnTx = *d setDataModeOnTx = *d
} }

View file

@ -87,11 +87,6 @@ func (a *audioStruct) togglePlaybackToDefaultSoundcard() {
func (a *audioStruct) toggleRecFromDefaultSoundcard() { func (a *audioStruct) toggleRecFromDefaultSoundcard() {
if a.defaultSoundcardStream.recStream == nil { if a.defaultSoundcardStream.recStream == nil {
if digitalOnTx {
if err := civControl.enableDataMode(); err != nil {
log.Error("can't change datamode: ", err)
}
}
ss := pulse.SampleSpec{Format: pulse.SAMPLE_S16LE, Rate: audioSampleRate, Channels: 1} ss := pulse.SampleSpec{Format: pulse.SAMPLE_S16LE, Rate: audioSampleRate, Channels: 1}
battr := pulse.NewBufferAttr() battr := pulse.NewBufferAttr()
battr.Fragsize = uint32(audioFrameSize) battr.Fragsize = uint32(audioFrameSize)
@ -105,6 +100,11 @@ func (a *audioStruct) toggleRecFromDefaultSoundcard() {
log.Print("turned on audio rec") log.Print("turned on audio rec")
statusLog.reportAudioRec(true) statusLog.reportAudioRec(true)
if setDataModeOnTx {
if err := civControl.setDataMode(true); err != nil {
log.Error("can't enable data mode: ", err)
}
}
if err := civControl.setPTT(true); err != nil { if err := civControl.setPTT(true); err != nil {
log.Error("can't turn on ptt: ", err) log.Error("can't turn on ptt: ", err)
} }

View file

@ -1055,10 +1055,6 @@ func (s *civControlStruct) toggleDataMode() error {
return s.setDataMode(!s.state.dataMode) return s.setDataMode(!s.state.dataMode)
} }
func (s *civControlStruct) enableDataMode() error {
return s.setDataMode(true)
}
func (s *civControlStruct) incBand() error { func (s *civControlStruct) incBand() error {
i := s.state.bandIdx + 1 i := s.state.bandIdx + 1
if i >= len(civBands) { if i >= len(civBands) {

View file

@ -222,6 +222,12 @@ func (s *rigctldStruct) processCmd(cmd string) (close bool, err error) {
err = s.send(res, "\n") err = s.send(res, "\n")
case cmdSplit[0] == "T": case cmdSplit[0] == "T":
if cmdSplit[1] != "0" { if cmdSplit[1] != "0" {
if setDataModeOnTx {
if err := civControl.setDataMode(true); err != nil {
log.Error("can't enable data mode: ", err)
}
}
err = civControl.setPTT(true) err = civControl.setPTT(true)
} else { } else {
err = civControl.setPTT(false) err = civControl.setPTT(false)