diff --git a/EXRAIL2MacroReset.h b/EXRAIL2MacroReset.h index f87cbf2..67939db 100644 --- a/EXRAIL2MacroReset.h +++ b/EXRAIL2MacroReset.h @@ -114,6 +114,7 @@ #undef TURNOUT #undef UNJOIN #undef UNLATCH +#undef VIRTUAL_TURNOUT #undef WAITFOR #undef XFOFF #undef XFON @@ -210,6 +211,7 @@ #define TURNOUT(id,addr,subaddr,description...) #define UNJOIN #define UNLATCH(sensor_id) +#define VIRTUAL_TURNOUT(id,description...) #define WAITFOR(pin) #define XFOFF(cab,func) #define XFON(cab,func) diff --git a/EXRAILMacros.h b/EXRAILMacros.h index 1c608e1..912c6c4 100644 --- a/EXRAILMacros.h +++ b/EXRAILMacros.h @@ -102,6 +102,8 @@ void RMFT2::printMessage(uint16_t id) { #define PIN_TURNOUT(id,pin,description...) case id: desc=F("" description); break; #undef SERVO_TURNOUT #define SERVO_TURNOUT(id,pin,activeAngle,inactiveAngle,profile,description...) case id: desc=F("" description); break; +#undef VIRTUAL_TURNOUT +#define VIRTUAL_TURNOUT(id,description...) case id: desc=F("" description); break; void RMFT2::emitTurnoutDescription(Print* stream,int16_t turnoutid) { const FSH * desc=F(""); @@ -258,6 +260,7 @@ const FLASH int16_t RMFT2::SignalDefinitions[] = { #define TURNOUT(id,addr,subaddr,description...) OPCODE_TURNOUT,V(id),OPCODE_PAD,V(addr),OPCODE_PAD,V(subaddr), #define UNJOIN OPCODE_UNJOIN,0,0, #define UNLATCH(sensor_id) OPCODE_UNLATCH,V(sensor_id), +#define VIRTUAL_TURNOUT(id,description...) OPCODE_PINTURNOUT,V(id),OPCODE_PAD,V(0), #define WAITFOR(pin) OPCODE_WAITFOR,V(pin), #define XFOFF(cab,func) OPCODE_XFOFF,V(cab),OPCODE_PAD,V(func), #define XFON(cab,func) OPCODE_XFON,V(cab),OPCODE_PAD,V(func), diff --git a/version.h b/version.h index cb47614..c8e0205 100644 --- a/version.h +++ b/version.h @@ -6,6 +6,9 @@ #define VERSION "4.0.2" // 4.0.2 EXRAIL additions: +// VIRTUAL_TURNOUT +// command to stop all tasks. +// FORGET forgets the current loco in DCC reminder tables. // Servo signals (SERVO_SIGNAL) // High-On signal pins (SIGNALH) // Wait for analog value (ATGTE, ATLT)