JMRI / JMRI

JMRI model railroad digital command & control software
https://www.jmri.org
Other
235 stars 331 forks source link

DecoderPro CV read timeouts for NCE PowerPro PH5 #13316

Open markelliot123 opened 1 month ago

markelliot123 commented 1 month ago

It appears that the JMRI DecoderPro times out too quickly for engine decoders using the NCE PowerPro PH5 system with the built in USB. This is especially an issue with older engine decoders. Sometimes it can work and sometimes not. Mostly not when it fails. You can tell the engines are receiving the commands because they growl and creep along the program track when the CV reads are sent. At the same time, the Power Cab can flawlessly reads and write the CV registers on the same engine and program track. Yes, I've tried JMRI with the Power Cab throttle disconnected too. Yes, I have all of the latest Windows 11 updates and USB drivers. I have JMRI version 5.8 and Java 11. What is interesting is the PanelPro works great. I can throw switches, set routes and run engines from JMRI throttles. However, the same preference settings do not work in DecoderPro. Please advise if there are any known work-arounds or solutions.

markelliot123 commented 1 month ago

One thought I had. Is there anyway to set the read time out value? It would be very handy to optionally set this either globally or by engine roster in the PanelPro. That maybe a simple way out for everyone. Assuming that is the issue.

markelliot123 commented 1 month ago

I took another look at the error is is a JMRI error 301 or a locomotive not found. I have a very simple AC lamp cord to the program track. I did this to eliminate any wiring questions. The engine does move in response to the commands. But JMRI issues the failure. It's the same exact symptoms as reported before. I just miss-reported the error code. Maybe there is a current draw setting that needs adjusting? Some combination of current draw and timeout setting? Once again same track and setup the NCE throttle CV reads and writes work perfectly for all old and new engine decoders.

markelliot123 commented 3 weeks ago

I finally figured this out. The default "Mode" for DecoderPro is "Direct". This does work on my newest engines but not consistently for my older engines. True JRMI does document this if you search long and hard for it. However, there IS a JMRI bug!!! The bug is there is no way to save this mode setting in the engine roster. So, you have to remember to do this each time and for specific engines in the roster. A frustrating problem especially if you only do decoder changes every few months. What is strange is I don't remember having to worry about this in past versions of JMRI. I've attached a screen shot of what I'm talking about. DecoderPro-Paged-Mode-Example