No functional change.
VPINs are unsigned integers in the range 0-65535 (although the highest values are special, 65535=VPIN_NONE). Values above 32767 were erroneously being displayed as negative. This has been fixed, which is a pre-requisite for allowing VPINs above 32767 to be used.
Prepping for version 4.1
SERVO_SIGNAL definition in EXRAIL
SERVO_SIGNAL(vpin, redpos, amberpos, greenpos)
use RED/AMBER/GREEN as for led signals.
* SIGNALH, ATGTE, ATLT
UNTESTED
* Automatic ALIAS(name)
and _ in keywords
* EXRAIL FORGET current loco
* EXRAIL </KILL ALL>
* EXRAIL VIRTUAL_TURNOUT
* Cleanup version.h
* Update version.h (#223)
Rewrite & Updated the 4.0.0 Section
* </KILL ALL> fix
* Incoming LCN turnout throw.
* KILLALL macro
and DIAGNOSTIC messages when KILL command used.
* EXRAIL PARSE
* Rebuild throttle info getters
UNTESTED... create different methods to obtain throttle info without being withrottle specific.
Also implements turnout description of "*" as hidden.
* J command parsing
JA JR JT commands parsed
EXRAIL sets hidden turnout state
HIDDEN description macro
Turnouts hidden flag bit
UNO seems OK, MEGA UNTESTED
* Assist notes draft & syntax tweaks
* Throttle notes
* uno memory saver
* JA JR and <t cab>
* Subtle corrections
* Update version.h
* I2C code corrections
Corrections to I2C code:
1) I2CManager_Mega4809.h: Correct bitwise 'and' to logical 'and' - no impact.
2) I2CManager_Wire.h: Ensure that error codes from Wire subsystem are passed back to caller in queueRequest().
* RAG Ifs and cmds
* IF block perf/memory
* Allow negative route ids.
* correct GREEN keyword
* Update version.h
* myFilter auto detect
* Update version.h
* fix weak ref to myFilter
* ACK defaults now 50-2000-20000
* Update version.h
* Improved SIGNALs startup and diagnostics
* Update IO_PCA9685.cpp
* Allow turnout id 0
* Position servo pin used as GPIO
* NoPowerOff LEDS
* CALLBACK parameter optional for Write
* WRITE CV ON PROG <W CV VALUE>
Callback parameters are now optional on PROG
* Updated CV read command <R cv>
Equivalent to <V cv 0> uses the verify callback.
Co-authored-by: Asbelos <asbelos@btinternet.com>
Co-authored-by: Kcsmith0708 <kcsmith0708@wowway.com>
Co-authored-by: Neil McKechnie <neilmck999@gmail.com>
Co-authored-by: Ash-4 <81280775+Ash-4@users.noreply.github.com>
Alias for existing <D SERVO ...> command added as <D ANOUT ...> (since not all analogue outputs are servos). Also, <D ANIN vpin> added to display the value of an analogue input pin.
The range of accessory decoder addresses for the <a> command is 0-511 in line with the DCC packet contents. The turnout command previously rejected address 0; this has been changed to the same range of addresses can be used by both commands, i.e. address 0-511 and subaddress 0-3. The linear address mapping remains so that linear address 1 is addr/subaddr 1/0; i.e. the first decoder address is not accessible by linear address.
<a addr subaddr 1> command puts a D=1 into the DCC packet for a DCC Accessory Decoder. This was previously though to correspond to a 'throw' request and a D=0 to a 'close' request. RCN-213 standard identifies that D=1 is 'close' and D=0 is 'throw', so this change allows CS to be configured to invert the states to conform to the RCN-213 definition.
commit b34205b142
Merge: 87032482829716
Author: Neil McKechnie <75813993+Neil-McK@users.noreply.github.com>
Date: Mon Aug 23 10:05:54 2021 +0100
Merge branch 'EX-RAIL' into ackRetry
commit 8703248c49
Author: Ash-4 <81280775+Ash-4@users.noreply.github.com>
Date: Sun Aug 22 16:47:38 2021 -0500
ACK RETRY max 255 with fallback to 3 if greater
And includes LCD lines for power and ACK diags.
commit f5d4522ed7
Author: Ash-4 <81280775+Ash-4@users.noreply.github.com>
Date: Sun Aug 22 16:40:13 2021 -0500
ACK RETRY updated datatypes
commit 1dbf236697
Author: Ash-4 <81280775+Ash-4@users.noreply.github.com>
Date: Sun Aug 22 16:35:14 2021 -0500
ACK RETRY updated datatypes
commit d93584e9a4
Author: Ash-4 <81280775+Ash-4@users.noreply.github.com>
Date: Sun Aug 22 13:16:24 2021 -0500
ACK RETRY updated default is 2 retries.
commit f58ebac670
Author: Ash-4 <81280775+Ash-4@users.noreply.github.com>
Date: Sat Aug 21 16:43:21 2021 -0500
ACK RETRY is 3 or less (default is 1)
commit 08350b215a
Author: Ash-4 <81280775+Ash-4@users.noreply.github.com>
Date: Sat Aug 21 11:55:17 2021 -0500
ACK RETRY
LCD display update.
lcd(0, F("RETRY %d %d %d %d"), ackManagerCv, ackManagerRetry, ackRetry, ackRetrySum);
commit 11cd216017
Author: Ash-4 <81280775+Ash-4@users.noreply.github.com>
Date: Sat Aug 21 00:54:28 2021 -0500
ACK RETRY
ACK retry code added to ackManagerSetup and callback.
The default is <D ACK RETRY 1>. For ACK tuning, set retry to zero.
Retry count is captured on the LCD display, and lines in the serial monitor.
commit b67027a1ed
Author: Ash-4 <81280775+Ash-4@users.noreply.github.com>
Date: Sat Aug 21 00:33:01 2021 -0500
ACK RETRY variables added
commit 34d2ab3543
Author: Ash-4 <81280775+Ash-4@users.noreply.github.com>
Date: Sat Aug 21 00:23:34 2021 -0500
Update DCCEXParser.cpp
LCD lines added to display power commands and ACK settings, when updated.
Also new command <D ACK RETRY 1>.
commit 8ca4011cb0
Author: Ash-4 <81280775+Ash-4@users.noreply.github.com>
Date: Fri Aug 20 23:58:13 2021 -0500
Update CommandStation-EX.ino
Update LCD row number for Ready and Free RAM.
commit 6571138389
Author: Harald Barth <haba@kth.se>
Date: Sun Aug 1 22:08:34 2021 +0200
optimize command parser for size
commit c4f659243e
Author: Harald Barth <haba@kth.se>
Date: Sun Aug 1 15:07:06 2021 +0200
optimize for loops for size (and speed)
commit 55b7091d5a
Author: Harald Barth <haba@kth.se>
Date: Sun Aug 1 12:45:29 2021 +0200
take less progmem for messages
commit 6d7c1925b0
Author: Harald Barth <haba@kth.se>
Date: Sun Aug 1 11:56:12 2021 +0200
only pragma -O3 critical functions
Ensure that the <H> message is sent on the serial USB (to JMRI) whenever the turnout is closed or thrown, even if the request didn't originate on the serial USB.