mirror of
https://github.com/g4klx/MMDVMHost.git
synced 2025-12-06 05:32:00 +01:00
Add the minimum time for a 'K' parameter.
This commit is contained in:
parent
58aff1ab77
commit
1f17aec1f1
8
Conf.cpp
8
Conf.cpp
|
|
@ -187,6 +187,7 @@ m_fmRFAck("K"),
|
|||
m_fmNetAck("N"),
|
||||
m_fmAckSpeed(20U),
|
||||
m_fmAckFrequency(1750U),
|
||||
m_fmAckMinTime(5U),
|
||||
m_fmAckDelay(1000U),
|
||||
m_fmAckLevel(80.0F),
|
||||
m_fmTimeoutLevel(80.0F),
|
||||
|
|
@ -727,6 +728,8 @@ bool CConf::read()
|
|||
m_fmAckSpeed = (unsigned int)::atoi(value);
|
||||
else if (::strcmp(key, "AckFrequency") == 0)
|
||||
m_fmAckFrequency = (unsigned int)::atoi(value);
|
||||
else if (::strcmp(key, "AckMinTime") == 0)
|
||||
m_fmAckMinTime = (unsigned int)::atoi(value);
|
||||
else if (::strcmp(key, "AckDelay") == 0)
|
||||
m_fmAckDelay = (unsigned int)::atoi(value);
|
||||
else if (::strcmp(key, "AckLevel") == 0)
|
||||
|
|
@ -1555,6 +1558,11 @@ unsigned int CConf::getFMAckFrequency() const
|
|||
return m_fmAckFrequency;
|
||||
}
|
||||
|
||||
unsigned int CConf::getFMAckMinTime() const
|
||||
{
|
||||
return m_fmAckMinTime;
|
||||
}
|
||||
|
||||
unsigned int CConf::getFMAckDelay() const
|
||||
{
|
||||
return m_fmAckDelay;
|
||||
|
|
|
|||
2
Conf.h
2
Conf.h
|
|
@ -185,6 +185,7 @@ public:
|
|||
std::string getFMNetAck() const;
|
||||
unsigned int getFMAckSpeed() const;
|
||||
unsigned int getFMAckFrequency() const;
|
||||
unsigned int getFMAckMinTime() const;
|
||||
unsigned int getFMAckDelay() const;
|
||||
float getFMAckLevel() const;
|
||||
float getFMTimeoutLevel() const;
|
||||
|
|
@ -445,6 +446,7 @@ private:
|
|||
std::string m_fmNetAck;
|
||||
unsigned int m_fmAckSpeed;
|
||||
unsigned int m_fmAckFrequency;
|
||||
unsigned int m_fmAckMinTime;
|
||||
unsigned int m_fmAckDelay;
|
||||
float m_fmAckLevel;
|
||||
float m_fmTimeoutLevel;
|
||||
|
|
|
|||
|
|
@ -155,6 +155,7 @@ RFAck=K
|
|||
NetAck=N
|
||||
AckSpeed=20
|
||||
AckFrequency=1750
|
||||
AckMinTime=4
|
||||
AckDelay=1000
|
||||
AckLevel=80
|
||||
TimeoutLevel=80
|
||||
|
|
|
|||
|
|
@ -620,6 +620,7 @@ int CMMDVMHost::run()
|
|||
std::string netAck = m_conf.getFMNetAck();
|
||||
unsigned int ackSpeed = m_conf.getFMAckSpeed();
|
||||
unsigned int ackFrequency = m_conf.getFMAckFrequency();
|
||||
unsigned int ackMinTime = m_conf.getFMAckMinTime();
|
||||
unsigned int ackDelay = m_conf.getFMAckDelay();
|
||||
float ackLevel = m_conf.getFMAckLevel();
|
||||
unsigned int timeout = m_conf.getTimeout();
|
||||
|
|
@ -644,6 +645,7 @@ int CMMDVMHost::run()
|
|||
LogInfo(" Net Ack: %s", netAck.c_str());
|
||||
LogInfo(" Ack Speed: %uWPM", ackSpeed);
|
||||
LogInfo(" Ack Frequency: %uHz", ackFrequency);
|
||||
LogInfo(" Ack Min Time: %us", ackMinTime);
|
||||
LogInfo(" Ack Delay: %ums", ackDelay);
|
||||
LogInfo(" Ack Level: %.1f%%", ackLevel);
|
||||
LogInfo(" Timeout: %us", timeout);
|
||||
|
|
@ -655,7 +657,7 @@ int CMMDVMHost::run()
|
|||
LogInfo(" Hang Time: %us", hangTime);
|
||||
|
||||
m_modem->setFMCallsignParams(callsign, callsignSpeed, callsignFrequency, callsignTime, callsignHoldoff, callsignHighLevel, callsignLowLevel, callsignAtStart, callsignAtEnd);
|
||||
m_modem->setFMAckParams(rfAck, ackSpeed, ackFrequency, ackDelay, ackLevel);
|
||||
m_modem->setFMAckParams(rfAck, ackSpeed, ackFrequency, ackMinTime, ackDelay, ackLevel);
|
||||
m_modem->setFMMiscParams(timeout, timeoutLevel, ctcssFrequency, ctcssThreshold, ctcssLevel, kerchunkTime, hangTime);
|
||||
}
|
||||
|
||||
|
|
|
|||
11
Modem.cpp
11
Modem.cpp
|
|
@ -1893,12 +1893,12 @@ bool CModem::setFMCallsignParams(const std::string& callsign, unsigned int calls
|
|||
return true;
|
||||
}
|
||||
|
||||
bool CModem::setFMAckParams(const std::string& ack, unsigned int ackSpeed, unsigned int ackFrequency, unsigned int ackDelay, float ackLevel)
|
||||
bool CModem::setFMAckParams(const std::string& ack, unsigned int ackSpeed, unsigned int ackFrequency, unsigned int ackMinTime, unsigned int ackDelay, float ackLevel)
|
||||
{
|
||||
assert(m_serial != NULL);
|
||||
|
||||
unsigned char buffer[80U];
|
||||
unsigned char len = 7U + ack.size();
|
||||
unsigned char len = 8U + ack.size();
|
||||
|
||||
buffer[0U] = MMDVM_FRAME_START;
|
||||
buffer[1U] = len;
|
||||
|
|
@ -1906,12 +1906,13 @@ bool CModem::setFMAckParams(const std::string& ack, unsigned int ackSpeed, unsig
|
|||
|
||||
buffer[3U] = ackSpeed;
|
||||
buffer[4U] = ackFrequency / 10U;
|
||||
buffer[5U] = ackDelay / 10U;
|
||||
buffer[5U] = ackMinTime;
|
||||
buffer[6U] = ackDelay / 10U;
|
||||
|
||||
buffer[6U] = (unsigned char)(ackLevel * 2.55F + 0.5F);
|
||||
buffer[7U] = (unsigned char)(ackLevel * 2.55F + 0.5F);
|
||||
|
||||
for (unsigned int i = 0U; i < ack.size(); i++)
|
||||
buffer[7U + i] = ack.at(i);
|
||||
buffer[8U + i] = ack.at(i);
|
||||
|
||||
// CUtils::dump(1U, "Written", buffer, len);
|
||||
|
||||
|
|
|
|||
2
Modem.h
2
Modem.h
|
|
@ -46,7 +46,7 @@ public:
|
|||
virtual void setTransparentDataParams(unsigned int sendFrameType);
|
||||
|
||||
virtual bool setFMCallsignParams(const std::string& callsign, unsigned int callsignSpeed, unsigned int callsignFrequency, unsigned int callsignTime, unsigned int callsignHoldoff, float callsignHighLevel, float callsignLowLevel, bool callsignAtStart, bool callsignAtEnd);
|
||||
virtual bool setFMAckParams(const std::string& ack, unsigned int ackSpeed, unsigned int ackFrequency, unsigned int ackDelay, float ackLevel);
|
||||
virtual bool setFMAckParams(const std::string& ack, unsigned int ackSpeed, unsigned int ackFrequency, unsigned int minTime, unsigned int ackDelay, float ackLevel);
|
||||
virtual bool setFMMiscParams(unsigned int timeout, float timeoutLevel, float ctcssFrequency, float ctcssThreshold, float ctcssLevel, unsigned int kerchunkTime, unsigned int hangTime);
|
||||
|
||||
virtual bool open();
|
||||
|
|
|
|||
Loading…
Reference in a new issue