DCC-EX / CommandStation-EX

EX-CommandStation firmware from DCC-EX. Includes support for WiFi and a standalone WiThrottle server. A complete re-write of the original DCC++.
https://dcc-ex.github.io/
GNU General Public License v3.0
156 stars 108 forks source link

[Support Request]: Sending turnout address no longer works since upgrading DCC-EX #281

Closed s-m-a-y closed 1 year ago

s-m-a-y commented 1 year ago

Version

4.1.2

Issue description

I have a number of Cobalt iP Digital turnout controls on my layout. To set these up you first deactivate self centering by sending the DCC address 198 to them (re-activate with 199). I have been doing this by issuing the command <a 50 1 1> via JMRI. I have been successful in setting up three of these turnouts using this method. I later upgraded to 4.1.2 and it seems I can no longer issue this command. I'm not certain the upgrade caused this but nothing else has changed. The logs show the address was sent successfully but the devices do not seem to recognise this. I am expecting them to move when powered up but I get nothing. image

You do need to set their switch to "SET" mode to accept the address and I am certain this is the case. I checked wiring and even wired a turnout controller directly to the Motorshield to ensure 100% there was no issue with connectivity. I checked continuity using a voltmeter. I've ruled out an issue with the turnouts as I attempted to reactivate self centering on already configured turnouts. This does the same, no response. For those previously configured, they accept turnout change commands fine but won't accept <a 50 2 1> to reactivate self centering.

This may have no relevance but I had previously issued the commands below when trying to get a dodgy decoder to work. My understanding though is that these do not save once powered off, which I have done many times.

  1. Lower ack limit to 30mA: <D ACK LIMIT 30>
  2. Lower min ack length to 1ms <D ACK MIN 1000>

I downloaded the latest autoinstaller and updated the Arduino. Still the same result.

Any help you can provide would be greatly appreciated. I've also contacted the manufacturer, DCC Concepts.

Hardware

Arduino Uni Arduino Motor Shield

s-m-a-y commented 1 year ago

I believe I "resolved" this by spamming commands at the turnouts. After sending <a 50 1 1> then <a 50 1 0> about 20 times, I then power cycled as per the instructions and sent the turnout command, again about 20 times. This seemed to bring them to life.

I suspect this was the turnouts after all. Apologies for wasting your time.