mirror of
https://github.com/DCC-EX/CommandStation-EX.git
synced 2024-11-24 08:36:14 +01:00
Compare commits
2 Commits
4308739c2b
...
ef47257d67
Author | SHA1 | Date | |
---|---|---|---|
|
ef47257d67 | ||
|
03db06f2ee |
|
@ -1 +1 @@
|
||||||
#define GITHUB_SHA "devel-202311212148Z"
|
#define GITHUB_SHA "devel-202311220953Z"
|
||||||
|
|
|
@ -511,12 +511,15 @@ void TrackManager::setTrackPower(TRACK_MODE trackmodeToMatch, POWERMODE powermod
|
||||||
void TrackManager::setTrackPower(POWERMODE powermode, byte t) {
|
void TrackManager::setTrackPower(POWERMODE powermode, byte t) {
|
||||||
MotorDriver *driver=track[t];
|
MotorDriver *driver=track[t];
|
||||||
TRACK_MODE trackmode = driver->getMode();
|
TRACK_MODE trackmode = driver->getMode();
|
||||||
if (trackmode & TRACK_MODE_DC) {
|
if (trackmode & TRACK_MODE_NONE) {
|
||||||
|
driver->setBrake(true); // Track is unused. Brake is good to have.
|
||||||
|
powermode = POWERMODE::OFF; // Track is unused. Force it to OFF
|
||||||
|
} else if (trackmode & TRACK_MODE_DC) { // includes inverted DC (called DCX)
|
||||||
if (powermode == POWERMODE::ON) {
|
if (powermode == POWERMODE::ON) {
|
||||||
driver->setBrake(true); // DC starts with brake on
|
driver->setBrake(true); // DC starts with brake on
|
||||||
applyDCSpeed(t); // speed match DCC throttles
|
applyDCSpeed(t); // speed match DCC throttles
|
||||||
}
|
}
|
||||||
} else {
|
} else /* MAIN PROG EXT BOOST */ {
|
||||||
if (powermode == POWERMODE::ON) {
|
if (powermode == POWERMODE::ON) {
|
||||||
// toggle brake before turning power on - resets overcurrent error
|
// toggle brake before turning power on - resets overcurrent error
|
||||||
// on the Pololu board if brake is wired to ^D2.
|
// on the Pololu board if brake is wired to ^D2.
|
||||||
|
|
Loading…
Reference in New Issue
Block a user