That’s right, it the throttle won’t work, JMRI won’t work. But the opposite most definitely is not true.
The DCS50 is a prime example. ANd not just with JMRI, but with the internal throttle. Specifically with QSI decoders - even if you turn off the verbal response, it still seems to take some amount of time (when if using verbal response, it would be telling you the value) when setting a long address. On the program track, the system automatically figures out the values for CV17, 18, and 29 based on the address and address type. So you want the loco to be 1234, that doesn;t mean CV17 is 12 and CV18 is 34, it’s a bit more complicated than that. But no worries, the system, all modern systems, calculate this for you, so all you need to know is you want the address to be 1234.
The system writes the proper values to CV17, 18, and 290. On the Zephyr, using the built in throttle, it does exactly that. Write, write, write. Fails 100% of the time with a QSI decoder, at least the original ones in BLI and Atlas locos.
However - plug in a DT400 throttle, and use that - now the programming control is coming through the throttle, even though the actual signals still come from the Zephyr’s program track terminals. The difference is, in the sequence on a DT400, it writes CV17 and CV18, then prompts you and asks if you want to use a 4 digit address or not. This introduces a dealy between CV17 and 18, and CV29 getting set - it takes you some finite time to say Yes. Works all the time, even with a QSI decoder. No program track booster, no “blast modes”. Just that extra delay allows the QSI decoder to properly accept. JMRI can have this problem too, if you just hit “Write sheet” for the address page.
JMRI is great, but it’s not perfect. For my own locos I don;t bother any more, it takes longer to set up a new loco than to just hit a few buttons on my throttle. I use all the same brand decoders in all my locos - well wor