1
0
mirror of https://github.com/DCC-EX/CommandStation-EX.git synced 2024-11-27 01:56:14 +01:00

Ash's OVERLOAD check

Makes prog track accesses wait if track in overload
This commit is contained in:
Asbelos 2021-09-09 10:23:27 +01:00
parent 254d83b6fc
commit 70b59d491c
2 changed files with 2 additions and 0 deletions

View File

@ -753,6 +753,7 @@ void DCC::ackManagerLoop() {
// (typically waiting for a reset counter or ACK waiting, or when all finished.) // (typically waiting for a reset counter or ACK waiting, or when all finished.)
switch (opcode) { switch (opcode) {
case BASELINE: case BASELINE:
if (DCCWaveform::progTrack.getPowerMode()==POWERMODE::OVERLOAD) return;
if (checkResets(DCCWaveform::progTrack.autoPowerOff || ackManagerRejoin ? 20 : 3)) return; if (checkResets(DCCWaveform::progTrack.autoPowerOff || ackManagerRejoin ? 20 : 3)) return;
DCCWaveform::progTrack.setAckBaseline(); DCCWaveform::progTrack.setAckBaseline();
callbackState=READY; callbackState=READY;

View File

@ -114,6 +114,7 @@ void DCCWaveform::setPowerMode(POWERMODE mode) {
powerMode = mode; powerMode = mode;
bool ison = (mode == POWERMODE::ON); bool ison = (mode == POWERMODE::ON);
motorDriver->setPower( ison); motorDriver->setPower( ison);
sentResetsSincePacket=0;
} }