Keyboard Shortcuts
ctrl + shift + ? :
Show all keyboard shortcuts
ctrl + g :
Navigate to a group
ctrl + shift + f :
Find
ctrl + / :
Quick actions
esc to dismiss
Likes
- Jmriusers
- Messages
Search
There is a Tutorial done to build panels, unfortunately it's a little old (2015), but you can get through it.? See the folliwing link below: Ken G. On Wed, Nov 27, 2019, 5:16 PM Bob Jacobsen <rgj1927@...> wrote: There¡¯s also a set of script-based tools, completely separate from the GUI ones: |
Locked
Re: jynstrument error for USB throttle in 4.17.6
#scripting
Matt,
I replaced that line and still get an error: 2019-11-27 16:03:14,671 startup.ScriptButtonModel???????????? ERROR - Unable to run script /home/allen/JMRI_417/jython/USBThrottleAsJynstrument.py. [AWT-EventQueue-0] javax.script.ScriptException: AttributeError: instance attr: class in <script> at line number 15 ??? at org.python.jsr223.PyScriptEngine.scriptException(PyScriptEngine.java:222) ??? at org.python.jsr223.PyScriptEngine.eval(PyScriptEngine.java:59) ??? at org.python.jsr223.PyScriptEngine.eval(PyScriptEngine.java:64) ??? at java.scripting/javax.script.AbstractScriptEngine.eval(AbstractScriptEngine.java:249) ??? at jmri.script.JmriScriptEngineManager.eval(JmriScriptEngineManager.java:394) ??? at jmri.script.JmriScriptEngineManager.eval(JmriScriptEngineManager.java:331) ??? at apps.startup.ScriptButtonModel$ScriptButtonAction.actionPerformed(ScriptButtonModel.java:63) ??? at java.desktop/javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1967) ??? at java.desktop/javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2308) ??? at java.desktop/javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:405) ??? at java.desktop/javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:262) ??? at java.desktop/javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:279) ??? at java.desktop/java.awt.Component.processMouseEvent(Component.java:6632) ??? at java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3342) ??? at java.desktop/java.awt.Component.processEvent(Component.java:6397) ??? at java.desktop/java.awt.Container.processEvent(Container.java:2263) ??? at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:5008) ??? at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2321) ??? at java.desktop/java.awt.Component.dispatchEvent(Component.java:4840) ??? at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4918) ??? at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4547) ??? at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4488) ??? at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2307) ??? at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2772) ??? at java.desktop/java.awt.Component.dispatchEvent(Component.java:4840) ??? at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:772) ??? at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721) ??? at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715) ??? at java.base/java.security.AccessController.doPrivileged(Native Method) ??? at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85) ??? at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:95) ??? at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:745) ??? at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:743) ??? at java.base/java.security.AccessController.doPrivileged(Native Method) ??? at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85) ??? at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:742) ??? at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203) ??? at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124) ??? at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113) ??? at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109) ??? at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) ??? at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90) Caused by: Traceback (most recent call last): ? File "<script>", line 15, in <module> AttributeError: instance attr: class ??? at org.python.core.Py.AttributeError(Py.java:207) ??? at org.python.core.PyBeanProperty._doget(PyBeanProperty.java:24) ??? at org.python.core.PyObject._doget(PyObject.java:1173) ??? at org.python.core.PyObject.__get__(PyObject.java:3816) ??? at org.python.core.PyType.type___findattr_ex__(PyType.java:1620) ??? at org.python.core.PyType.__findattr_ex__(PyType.java:1599) ??? at org.python.core.PyObject.__getattr__(PyObject.java:1025) ??? at org.python.pycode._pyx14.f$0(<script>:12) ??? at org.python.pycode._pyx14.call_function(<script>) ??? at org.python.core.PyTableCode.call(PyTableCode.java:171) ??? at org.python.core.PyCode.call(PyCode.java:18) ??? at org.python.core.Py.runCode(Py.java:1614) ??? at org.python.core.__builtin__.eval(__builtin__.java:497) ??? at org.python.core.__builtin__.eval(__builtin__.java:501) ??? at org.python.util.PythonInterpreter.eval(PythonInterpreter.java:259) ??? at org.python.jsr223.PyScriptEngine.eval(PyScriptEngine.java:57) ??? ... 40 more Script looks like: numThrottles? = 0 for ctrl in jmri.jmrix.jinput.TreeModel.instance().controllers(): ??? # The selection bellow might have to be modified ??? if ((ctrl.getType() == Controller.Type.GAMEPAD) or (ctrl.getType() == Controller.Type.STICK)) : ??????? tw = jmri.InstanceManager.getDefault(jmri.jmrit.throttle.ThrottleFrameManager.class).createThrottleWindow() ??????? tw.ynstrument("jython/Jynstruments/ThrottleWindowToolBar/USBThrottle.jyn") ??????? tw.setLocation(400 * numThrottles, 50 * numThrottles) ??????? numThrottles+=1 ??????? tw.setVisible(True) Regards, Allen |
Locked
Re: JMRI not recognizing response to poll request
Perhaps you have the C/MRI configuration in JMRI not quite right.
That reply is the letters ¡°AP¡±, which is really unexpected from a C/MRI node. Is it possible that when you put JMRI on the new hardware that you configured JMRI to look at the wrong COM port? But then the USIC lights should not show that it¡¯s initialized OK, nor that you can set the output bits properly. Or when you say "I can manually, from the computer keyboard, set or reset any output port¡±, are you _not_ referring to going through JMRI? Bob On Nov 27, 2019, at 3:44 PM, jstein462@... wrote:-- Bob Jacobsen rgj1927@... |
Locked
JMRI not recognizing response to poll request
My system worked well for close to 20 years, outliving several Windows computers, using RS232 port and JLC Enterprises RS232/RS422 interface card between computer and USIC.? A few months ago the Windows computer I had been using died.? I replaced it with a Windows unit (actually have tried three) that has only USB ports (can't find a computer with RS232 port) so added a USB/RS232 conversion cable to the interface.? I cannot re-establish two way communication.
When running, USIC indicator lights show reception and transmission as OK.? I've disconnected connection to RR and installed loopback testors at both the RS232 and RS422 levels and CMRI Serial Command Monitor shows 'unrecognized rep: "41 50" '. I can manually, from the computer keyboard, set or reset any output port.? JMRI just responds "unrecognized rep: 41 50" to Poll requests. Suggestions?????? |
Locked
Re: Block and Memory Variables Values show TagID not User Name on Web Server in v4.17.5
Hi Steve
I'm not sure about the term ImageIcon, but I've always created images in memories by modifying the panel xml by hand as mentioned in /g/jmriusers/topic/32307293? I've created an updated panel using some images from the resources directory - /g/jmriusers/files/ProblemsBeingWorkedOn/Andy%20Brown%20-%20161045/Block%20and%20Memory%20Variables%20Values%20show%20TagID/BlockOnWebProblem02.xml You can use the same method to animate that was discussed earlier in /g/jmriusers/message/165625 Hope this helps Andy |
Thanks Mick and Marc.? For a power supply I've switched to a fixed dc output on Tech 3 - 9500, 20 volts.? I suspected that the low voltage might be a contributing factor also and bumped up to a higher voltage source.? I heard back from SoundTraxx and the as you mentioned Mick, no Tsunami 2 and Econami no longer pulse.? Only earlier decoders did.? This wouldn't necessarily explain the 308 error, the decoder could ack without a pulse to the motor.? I mentioned the JMRI throttle to SoundTraxx support and the question wasn't addressed.? I wouldn't expect them to address it, but was hoping that there might be some light shed.? As long as the programming changes take, that's all that really matters.
I did retry Programming on Main and 308 still occurs. Russ |
Locked
Re: Webserver layout editor panel showing incorrect block occupation for a crossover
Hi George
My mistake about not seeing turnout circles - I forgot to clear the cache! In summary
I've created an updated xml with 4 sensors each on the slips /g/jmriusers/files/ProblemsBeingWorkedOn/Andy%20Brown%20-%20161045/CrossoverBlockOccupancyIssue03.xml Thanks again Andy |
Locked
Re: How do you get the Turnouts and Signal heads to update on loading a Panel File?
My Command station is already on, so I have to turn it off then back on to get the new loco-net data.
You are correct if the Command station is off before loading the startup file. Dennis |
There¡¯s also a set of script-based tools, completely separate from the GUI ones:
They¡¯re really meant to drive a physical USS CTC machine. If you wanted to make a virtual panel, you¡¯d have to lay out all the icons for levers and lamps manually. But it does a pretty good job of handling the actual running, with simulated transmission delays and priority handling, a simulated Christmas tree relay, etc. There¡¯s not a lot of step-by-step documentation, unfortunately. There¡¯s an example setup script, the into page (above) has some links, and there¡¯s class-by-class documentation: If anybody is interested, I could put together some better documentation. Basically, you write your own script with statements that define how your CTC is configured: What each station contains for turnouts and signals, how those map to JMRI objects, how the track is sensed and the signals are interlocked, etc. Then you run that script at JMRI startup to put all the logic into operation, and the panel will Just Work. Bob On Nov 27, 2019, at 9:37 AM, Nick via Groups.Io <cornwall9@...> wrote:-- Bob Jacobsen rgj1927@... |
Locked
Re: speed matching
Hi Marc,
Still trying to determine if I can speed match my two engines below. I did a "compare" in JMRI for the decoder I was working with, and apparently, a lot of the cv's did not get read. Some of the errors or statements are "same" which means the cv was the same. "timeout talking to decoder", "no acknowledgement from decoder" and "confirm failed". but many of the cv's did get read. I have to use a resistor on my programming track and the resistor is not soldered to the track but just wedged in between the tracks. This could be one thing against me. I'm not even sure it is the right resistor.? The program says that I have a 36-550 decoder with 4 functions. The instructions say that it is a 28 step decoder. When I check the cv 7 and 8 what should they read? Don't know if it helps any or not. One engine is a Bachmann EZ GP-30 Atlantic Coast line number 902 and I bought it new before Christmas of 2018. It has a mfg. ID of 101, and mfg. version # of 46. The other is a GP9 Bachmann number 1720 bought at the same time or near the other purchase. I did not get the mfg info this trip but I will if it helps. Both engines say I have no roster entry. I saved it to where I can find it. That is about it for this exchange. Thanks George |
Locked
Re: Integrating JMRI to my MERG CBUS Layout
#layouteditor
Hi Dave
Thanks for your reply. When I deleted the old turnout reference in the Turnout Table, I received a dialog listing where in JMRI it was referenced and in use. I confirmed that I wished to continue and it cleared in the Turnout Table. I suspected that this was causing problems in the Blocks Table from your earlier observation and corrections. I shall try your suggested method and see how I get on. The other concern I have is that I had select each turnout/Edit and change the 'Continuing Route Turnout State' to the inverse of how I had set it up. Only then does my Control Panel and Panel Pro agree with each other and the hardware. What impact does this have please? Best wishes Peter |
Locked
Re: Integrating JMRI to my MERG CBUS Layout
#layouteditor
Peter, The problem is that the block information is not being updated when turnouts are changed from MERG to Internal. ?I don't know if this a program issue or a procedure issue. For best results, use the following procedure:
Normally the old turnout can be deleted if there are no remaining references. ?You could also give the old turnout a new user name if needed for other purposes. I have reset the blocks: ?/g/jmriusers/files/ProblemsBeingWorkedOn/dsand/Dale%20Junction%201125%20DS%20new%20Query%20DS.xml Dave Sand ----- Original message ----- From: "peter.s.drury via Groups.Io" <peter.s.drury@...> Subject: Re: [jmriusers] Integrating JMRI to my MERG CBUS Layout #panelpro #layouteditor Date: Wednesday, November 27, 2019 12:56 PM Query file link?/g/jmriusers/files/JMRI-MERG%20Dale%20Junction/Dale%20Junction%201125%20DS%20new%20Query.xml Apologies for. I note that the panel file link was not presented properly Peter |
Nick
Dave, Thanks so much for the help. Perhaps you might have see the panel I am working on. A couple of weeks ago, I ha some problems transferring it from my system to my friends. The Logix would not work on his machine until I went in an edited them, one by one. It is not finished so I thought the CTC tools might help. Have a great Thanksgiving, Nick "I'm not a failure. I started at the bottom and I found it easily attainable. Life is too short to set unattainable goals" - Nick Kulp
On Wednesday, November 27, 2019, 04:02:59 PM EST, Dave Sand <ds@...> wrote:
Nick, Greg, The CTC tool is completely functional. ?It will generate all of the required sensors, a basic panel and the logic to put it all together. ?The basic prerequisite is a functional JMRI ABS signaling implementation. I can put together a tutorial over the next several days. ?I will probably release it in phases. Dave Sand ----- Original message ----- From: "Greg McCartney via Groups.Io" <gregmcty@...> Subject: Re: [jmriusers] PanelPro CTC tools Date: Wednesday, November 27, 2019 2:00 PM Hey Nick,? ? ?I have tried to use the tools myself but I am not certain it is complete.? I haven't asked if it was complete, just got the impression after multiple times of trying to use it over different versions of JMRI.? I did get it to draw a panel once but it seems to be very hap hazard at this point.? I hope that work continues on it because it looks like an awesome product. Greg McCartney |
Nick, Greg, The CTC tool is completely functional. ?It will generate all of the required sensors, a basic panel and the logic to put it all together. ?The basic prerequisite is a functional JMRI ABS signaling implementation. I can put together a tutorial over the next several days. ?I will probably release it in phases. Dave Sand ----- Original message ----- From: "Greg McCartney via Groups.Io" <gregmcty@...> Subject: Re: [jmriusers] PanelPro CTC tools Date: Wednesday, November 27, 2019 2:00 PM Hey Nick,? ? ?I have tried to use the tools myself but I am not certain it is complete.? I haven't asked if it was complete, just got the impression after multiple times of trying to use it over different versions of JMRI.? I did get it to draw a panel once but it seems to be very hap hazard at this point.? I hope that work continues on it because it looks like an awesome product. Greg McCartney |
Hey Nick,?
? ?I have tried to use the tools myself but I am not certain it is complete.? I haven't asked if it was complete, just got the impression after multiple times of trying to use it over different versions of JMRI.? I did get it to draw a panel once but it seems to be very hap hazard at this point.? I hope that work continues on it because it looks like an awesome product. Greg McCartney |
Locked
Re: jynstrument error for USB throttle in 4.17.6
#scripting
Allen,
Try changing line 15 of the script to: `tw = jmri.InstanceManager.getDefault(jmri.jmrit.throttle.ThrottleFrameManager.class).createThrottleWindow()` This is due to the `.instance()` method being removed after 4.16 due to having been deprecated for quite some time. Please let me know if this works as I'll then get this updated for the next release. Best regards, Matt H |
Locked
Re: Integrating JMRI to my MERG CBUS Layout
#layouteditor
Query file link?/g/jmriusers/files/JMRI-MERG%20Dale%20Junction/Dale%20Junction%201125%20DS%20new%20Query.xml
Apologies for. I note that the panel file link was not presented properly Peter |
Nick
Friends, Has anyone done a tutorial on creating a US&S panel using the CTC tools ? I'm working on one now and if these tools can help with the process, I would gladly use them. I have looked over the instructions on the website but evidently I am too thick to understand them. A step-by-step get started description would help. I will muddle along with the process I am using but it is not easy. Thanks, Nick Kulp "I'm not a failure. I started at the bottom and I found it easily attainable. Life is too short to set unattainable goals" - Nick Kulp |
Locked
Re: How do you get the Turnouts and Signal heads to update on loading a Panel File?
Note: You don't have to do the off, just the GPON will trigger reading known
statuses. So clicking the 'on' in the power control will do the job. There is a simple script, PoweOn.py, it will trigger the GPON for LocoNet. -Ken Cameron, Member JMRI Dev Team www.jmri.org www.fingerlakeslivesteamers.org www.cnymod.org www.syracusemodelrr.org |
Locked
jynstrument error for USB throttle in 4.17.6
#scripting
I am running PanelPro 4.17.6 on Ubuntu 18.04 and see that the USB throttle script is crashing. The script is 'USBThrottleAsJynstrument' and the error is listed in line 15 per the console:
2019-11-27 08:41:01,530 startup.ScriptButtonModel???????????? ERROR - Unable to run script /home/allen/JMRI_417/jython/USBThrottleAsJynstrument.py. [AWT-EventQueue-0] javax.script.ScriptException: AttributeError: type object 'jmri.jmrit.throttle.ThrottleFrameManager' has no attribute 'instance' in <script> at line number 15 ??? at org.python.jsr223.PyScriptEngine.scriptException(PyScriptEngine.java:222) ??? at org.python.jsr223.PyScriptEngine.eval(PyScriptEngine.java:59) ??? at org.python.jsr223.PyScriptEngine.eval(PyScriptEngine.java:64) ??? at java.scripting/javax.script.AbstractScriptEngine.eval(AbstractScriptEngine.java:249) ??? at jmri.script.JmriScriptEngineManager.eval(JmriScriptEngineManager.java:394) ??? at jmri.script.JmriScriptEngineManager.eval(JmriScriptEngineManager.java:331) ??? at apps.startup.ScriptButtonModel$ScriptButtonAction.actionPerformed(ScriptButtonModel.java:63) ??? at java.desktop/javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1967) ??? at java.desktop/javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2308) ??? at java.desktop/javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:405) ??? at java.desktop/javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:262) ??? at java.desktop/javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:279) ??? at java.desktop/java.awt.Component.processMouseEvent(Component.java:6632) ??? at java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3342) ??? at java.desktop/java.awt.Component.processEvent(Component.java:6397) ??? at java.desktop/java.awt.Container.processEvent(Container.java:2263) ??? at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:5008) ??? at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2321) ??? at java.desktop/java.awt.Component.dispatchEvent(Component.java:4840) ??? at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4918) ??? at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4547) ??? at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4488) ??? at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2307) ??? at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2772) ??? at java.desktop/java.awt.Component.dispatchEvent(Component.java:4840) ??? at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:772) ??? at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721) ??? at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715) ??? at java.base/java.security.AccessController.doPrivileged(Native Method) ??? at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85) ??? at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:95) ??? at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:745) ??? at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:743) ??? at java.base/java.security.AccessController.doPrivileged(Native Method) ??? at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85) ??? at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:742) ??? at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203) ??? at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124) ??? at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113) ??? at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109) ??? at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) ??? at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90) Caused by: Traceback (most recent call last): ? File "<script>", line 15, in <module> AttributeError: type object 'jmri.jmrit.throttle.ThrottleFrameManager' has no attribute 'instance' ??? at org.python.core.Py.AttributeError(Py.java:207) ??? at org.python.core.PyType.noAttributeError(PyType.java:1994) ??? at org.python.core.PyObject.__getattr__(PyObject.java:1027) ??? at org.python.pycode._pyx11.f$0(<script>:12) ??? at org.python.pycode._pyx11.call_function(<script>) ??? at org.python.core.PyTableCode.call(PyTableCode.java:171) ??? at org.python.core.PyCode.call(PyCode.java:18) ??? at org.python.core.Py.runCode(Py.java:1614) ??? at org.python.core.__builtin__.eval(__builtin__.java:497) ??? at org.python.core.__builtin__.eval(__builtin__.java:501) ??? at org.python.util.PythonInterpreter.eval(PythonInterpreter.java:259) ??? at org.python.jsr223.PyScriptEngine.eval(PyScriptEngine.java:57) ??? ... 40 more It was working ok in 4.16. Something change? Thanks, Allen |
to navigate to use esc to dismiss