kopia lustrzana https://github.com/sh123/esp32_loraprs
Add support for KISS tnc SlotTime command
rodzic
052ebde17d
commit
10edae2b75
|
@ -6,6 +6,7 @@ Service::Service()
|
||||||
: kissState_(KissState::Void)
|
: kissState_(KissState::Void)
|
||||||
, kissCmd_(KissCmd::NoCmd)
|
, kissCmd_(KissCmd::NoCmd)
|
||||||
, csmaP_(CfgCsmaPersistence)
|
, csmaP_(CfgCsmaPersistence)
|
||||||
|
, csmaSlotTime_(CfgCsmaSlotTimeMs)
|
||||||
, serialBt_()
|
, serialBt_()
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
@ -162,7 +163,7 @@ void Service::loop()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
delay(CfgCsmaSlotTimeMs);
|
delay(csmaSlotTime_);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
delay(CfgPollDelayMs);
|
delay(CfgPollDelayMs);
|
||||||
|
@ -359,6 +360,10 @@ void Service::onBtDataAvailable()
|
||||||
kissCmd_ = (KissCmd)rxByte;
|
kissCmd_ = (KissCmd)rxByte;
|
||||||
kissState_ = KissState::GetP;
|
kissState_ = KissState::GetP;
|
||||||
}
|
}
|
||||||
|
else if (rxByte == KissCmd::SlotTime) {
|
||||||
|
kissCmd_ = (KissCmd)rxByte;
|
||||||
|
kissState_ = KissState::GetSlotTime;
|
||||||
|
}
|
||||||
else {
|
else {
|
||||||
kissResetState();
|
kissResetState();
|
||||||
}
|
}
|
||||||
|
@ -368,6 +373,10 @@ void Service::onBtDataAvailable()
|
||||||
csmaP_ = rxByte;
|
csmaP_ = rxByte;
|
||||||
kissState_ = KissState::GetData;
|
kissState_ = KissState::GetData;
|
||||||
break;
|
break;
|
||||||
|
case KissState::GetSlotTime:
|
||||||
|
csmaSlotTime_ = (long)rxByte * 10;
|
||||||
|
kissState_ = KissState::GetData;
|
||||||
|
break;
|
||||||
case KissState::GetData:
|
case KissState::GetData:
|
||||||
if (rxByte == KissMarker::Fesc) {
|
if (rxByte == KissMarker::Fesc) {
|
||||||
kissState_ = KissState::Escape;
|
kissState_ = KissState::Escape;
|
||||||
|
|
|
@ -58,12 +58,14 @@ private:
|
||||||
GetCmd,
|
GetCmd,
|
||||||
GetData,
|
GetData,
|
||||||
GetP,
|
GetP,
|
||||||
|
GetSlotTime,
|
||||||
Escape
|
Escape
|
||||||
};
|
};
|
||||||
|
|
||||||
enum KissCmd {
|
enum KissCmd {
|
||||||
Data = 0x00,
|
Data = 0x00,
|
||||||
P = 0x02,
|
P = 0x02,
|
||||||
|
SlotTime = 0x03,
|
||||||
NoCmd = 0x80
|
NoCmd = 0x80
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -107,6 +109,7 @@ private:
|
||||||
KissCmd kissCmd_;
|
KissCmd kissCmd_;
|
||||||
long previousBeaconMs_;
|
long previousBeaconMs_;
|
||||||
byte csmaP_;
|
byte csmaP_;
|
||||||
|
long csmaSlotTime_;
|
||||||
|
|
||||||
// peripherals
|
// peripherals
|
||||||
BluetoothSerial serialBt_;
|
BluetoothSerial serialBt_;
|
||||||
|
|
Ładowanie…
Reference in New Issue