Keyboard Shortcuts
Likes
- Jmriusers
- Messages
Search
Changing signal Mast Aspect with jython
#jython
#signalheads
Here is a list of signal mast i have set up
does anyone have the syntax for jython to change the aspect of the signal.?
i’m not finding it anywhere.?
|
Locked
Re: Best Command Station to use with Decoder Pro
开云体育Heath, ? The NMRA method of ‘reading’ CV values is the JMRI read time ‘weak link.’ ? The LokProgrammer uses a proprietary method for quickly reading and writing CV values.? ?However, LokProgrammer isn’t compatible with JMRI. ? FWIW – you can read the CV values with LokProgrammer, then export them to a file that can be imported into JMRI.? ? ? Ross ? From: [email protected] <[email protected]>
On Behalf Of Human[c]ity Junction
Sent: Wednesday, March 19, 2025 8:18 PM To: [email protected] Subject: [jmriusers] Best Command Station to use with Decoder Pro ? I really like Decoder Pro. But, the ESU Programmer is significantly faster at reading/writing ESU decoders. Is there a command station or other computer to DCC interface that I can use with JMRI Decoder Pro that would give me similar read/write as the ESU Programmer? ? It is my understanding that the weak link of decoder pro is the computer to track interface. -- Heath @ Human[c]ity |
Locked
Best Command Station to use with Decoder Pro
I really like Decoder Pro. But, the ESU Programmer is significantly faster at reading/writing ESU decoders. Is there a command station or other computer to DCC interface that I can use with JMRI Decoder Pro that would give me similar read/write as the ESU Programmer?
?
It is my understanding that the weak link of decoder pro is the computer to track interface.
--
Heath @ Human[c]ity |
Re: Anyone Have a Schedule Strategy to Put Long Train Into Multiple Staging Cassettes?
#operationspro
开云体育I have never used Operations. But if you have a track with removable cassettes, why not set the track length to a much higher value, for example 24 cars? Daniel On 2025-03-19 22:20, Ken Heywood via
groups.io wrote:
|
Anyone Have a Schedule Strategy to Put Long Train Into Multiple Staging Cassettes?
#operationspro
My staging cassette will accept maybe six 40ft boxcars.
I'd like my daily turn to drag more than just six cars to staging.
Right now, ops build will only populate a train for that staging "track" capacity.
Has someone developed a strategy to select multiple cassettes for destination rather than the default empty one?
I tried to figure out using "alternate" track but mind twists in a knot.
?
The cassette is designated "staging".
Should it be designated something else to enable a strategy?
--
Ken NYNH&H, Old Colony Division, Cape Cod Branch (1949-1959) Loconet * JMRI 5.11.4 * OSX,Win10,Ubuntu Blog: ?
Youtube:
|
Re: Block occupancy without resistive wheelsets
Yes, there is a"software" solution ... rather two solutions now.
Steve_G added a "ghost" block to be connected to a turnout.
When both real detectors on either side of the turnout are active, the "ghost" is active.
?
I haven't used the "ghost" as my layout predates that feature.
I summarize my "software" approach in my blog ?...
--
Ken NYNH&H, Old Colony Division, Cape Cod Branch (1949-1959) Loconet * JMRI 5.11.1 * OSX,Win10,Ubuntu Blog: ?
Youtube:
|
Re: How to edit script, re-exec without restarting?
#scripting
I don't know the best way to remove old listeners, but I have tested this and it seems to work.
Jython variables that are not within a class are global for the duration of the JMRI session. The first run will create the listener. ?Subsequent runs will remove the old listener and add a new one. Dave Sand ----- Original message ----- From: stevemac <steveo@...> Subject: [jmriusers] How to edit script, re-exec without restarting? #scripting Date: Wednesday, March 19, 2025 11:06 AM I'm working on a script to facilitate virtual block handling (time before unoccupied, etc) by considering time entered and exited and block length. Since every car being pulled draws power I can estimate how long it will be in a virtual block (assuming same speed). ? The script is loaded at startup and adds property change listeners. ? Since I'm learning JMRI I have to make incremental changes and every time I have to restart since the old listener is still active. ? Maybe I could save my chained listener objects in a memory and check if it's there if I re-execute the script but wanted to check with experts first. Is there any advice for avoiding a restart? |
Re: The future of control and automation - thoughts?
With tiny cameras in our phones, and AI, and ever higher integration, someday soon it should be possible to have a camera in every loco, and have it run on clear track, obey signals if they are used, and stop short of other trains or end of track. I enjoy running my trains manually, but my loop to loop railroad doesn't lend itself to having a train or two run in the background while I switch (shunt) cars or change motive power. The railroad is much more enjoyable when more than one train runs, in my opinion. But, I make mistakes when I try to run two or three at a time by myself. -- Don Weigt Connecticut |
Re: How to edit script, re-exec without restarting?
#scripting
stevemac,
?
The document at provided two implementations of () and one of those might be used as your script closes down for the next trial run.
?
If your development is still at the stage of unexpected termination, this idea might not be very useful.
?
Suggestions for all beginning Jython programmers: Keep the Console window open and at least partially visible and put in a lot of print or log statements.
?
Cliff in Baja SoCal |
Re: Block occupancy without resistive wheelsets
开云体育Brsidesa, you are trusting the operator to run at a very precise speerd. Probably impossible. Rspecially with track conditions and other issues. ? Dana Zimmerli Z System Designs ? From: [email protected] <[email protected]> On Behalf Of Dave Sand
Sent: Tuesday, March 18, 2025 8:18 PM To: [email protected] Subject: Re: [jmriusers] Block occupancy without resistive wheelsets ? Operations has a max train length value. ?This is used to limit train sizes between switching locations. ? Dispatcher has a max train length for automatically controlled trains. ? I am not aware of any other places where train length might be stored. ? ? Dave Sand ? ? ----- Original message ----- From: "p.lavers via groups.io" <p.lavers=[email protected]> Subject: Re: [jmriusers] Block occupancy without resistive wheelsets Date: Tuesday, March 18, 2025 9:48 PM ? That JMRI has the facility to store the train length. This would allow the calculation of the position of the end of the train. ? |
How to edit script, re-exec without restarting?
#scripting
I'm working on a script to facilitate virtual block handling (time before unoccupied, etc) by considering time entered and exited and block length. Since every car being pulled draws power I can estimate how long it will be in a virtual block (assuming same speed).
?
The script is loaded at startup and adds property change listeners.
?
Since I'm learning JMRI I have to make incremental changes and every time I have to restart since the old listener is still active.
?
Maybe I could save my chained listener objects in a memory and check if it's there if I re-execute the script but wanted to check with experts first.
Is there any advice for avoiding a restart? |
Re: Signal Mast Logic
#sml
David, Step 1: ?Use the Layout Editor "Tools -> Check" menu items to clean up the non-contiguous blocks. Step 2: ?Run the GrandReset.py script. ?This will delete all of the transits, sections, SML and block paths. ?After doing a Store and re-start, use "Auto Generate Signaling Pairs" in the Signal Mast Logic table menu to create new SML. I have not looked at all of the signals yet, but it appears that the inner loop signals are all set for counter clockwise traffic. ?If so, that explains why the buffer signals have no SML. ?There is no source signal for clockwise traffic. Dave Sand ----- Original message ----- From: "David Smith via groups.io" <daversmth=[email protected]> Subject: [jmriusers] Signal Mast Logic Date: Wednesday, March 19, 2025 6:43 AM Hi All, ? I have added the panel file ?exhib.xml to the David Smith folder in ProblemsBeingWorked? There are some issues with some of the signal masts. Could someone please advise what the problem may be ? ? Buffer masts Mst_Buff_SdS4, Mst_Buff_SdS5, Mst_Buff_SdS6 are set to Unknown ? Mst_SE3, Mst_SE2, Mst_SW3e, Mst_SW3f, Mst_W4 signal logic does not see other masts correctly ( I am aware that I could fix the issues by manually editing the signal logic but would prefer not to ) ? Can I also please ask, if ?I add a mast that is not visible on the panel, is there a way to see or edit it afterwards ? ? Also, can I ask why all of the signal heads appear in the Turnouts table ? ? Thanks Dave |
Re: The future of control and automation - thoughts?
Speaking of WS2812 3-color LED controller IC's, RR-CirKits offers an LCC-based signal controller for their "Simple Serial?Signal Bus" that controls signal LEDs using these inexpensive IC's!
?
Even if signals & switch controllers were wireless, you'd still have to wire power to them.
?
And while controlling track switches via the DCC track bus, using stationary decoders, simplifies and saves wiring, running a train against such a switch would short out both the track and the means by which to rectify the problem from the throttle/panel.
?
-- Andy |
Re: Signal Mast Logic
#sml
If it helps when looking at the panel, the script below will initalise all the sensors and points to a known value.
?
import jmri
vSnsLst=['V_E1a', 'V_E1b','V_E2a','V_E2b','V_E2c','V_E3a','V_E3b','V_E3c','V_E4',\
? ? ? ? ?'V_NE1a','V_NE1b','V_NE1c','V_NE2a','V_NE2b','V_NE2c','V_NE2d',\ ? ? ? ? ?'V_NE3a','V_NE3b','V_NE3c','V_NE3d','V_NE4a','V_NE4b','V_NE4c','V_NE4d',\ ? ? ? ? ?'V_NW1a','V_NW1b','V_NW2','V_NW3','V_NW4a','V_NW4b',\ ? ? ? ? ?'V_SE1a','V_SE1b','V_SE2a','V_SE2b','V_SE3a','V_SE3b',\ ? ? ? ? ?'V_SE4a','V_SE4b','V_SE5a','V_SE5b','V_SE6a','V_SE6b',\ ? ? ? ? ?'V_SW1a','V_SW1b','V_SW1c','V_SW1d','V_SW1e','V_SW1f',\ ? ? ? ? ?'V_SW2a','V_SW2b','V_SW2c','V_SW2d','V_SW2e','V_SW2f',\ ? ? ? ? ?'V_SW3a','V_SW3b','V_SW3c','V_SW3d','V_SW3e','V_SW3f',\ ? ? ? ? ?'V_SW4a','V_SW4b','V_SW4c','V_SW4d','V_SW4e','V_SW4f',\ ? ? ? ? ?'V_SdE','V_SdN3a','V_SdN3b','V_SdN4a','V_SdN4b','V_SdN5a','V_SdN5b',\ ? ? ? ? ?'V_SdNE1a','V_SdNE1b','V_SdNE2a','V_SdNE2b',\ ? ? ? ? ?'V_SdNW1a','V_SdNW1b','V_SdNW2a','V_SdNW2b',\ ? ? ? ? ?'V_SdNxa','V_SdNxb','V_SdNxc','V_SdNxd','V_SdNxe',\ ? ? ? ? ?'V_SdS1a','V_SdS1b','V_SdS2a','V_SdS2b','V_SdS3a','V_SdS3b',\ ? ? ? ? ?'V_SdS4a','V_SdS4b','V_SdS5a','V_SdS5b','V_SdS6a','V_SdS6b',\ ? ? ? ? ?'V_W1a','V_W1b','V_W1c','V_W1d','V_W1e',\ ? ? ? ? ?'V_W2','V_W3','V_W4a','V_W4b'] for sns in vSnsLst:
?sensors.provideSensor(sns).setState(4) print '## All Sensors initialised to Inactive ##' ptLst=['Pt_E1_NE1','Pt_E1_SE1','Pt_E1_SdN','Pt_E2_SE3','Pt_E3_SE5',\
? ? ? ?'Pt_NE1_NE2','Pt_NE2_NE1','Pt_NE2_NE3','Pt_NE3_NE4','Pt_NE4_NE3','Pt_NE4_SdNa','Pt_NE4_SdNb','Pt_NE4_SdNc',\ ? ? ? ?'Pt_SE1_SdS1','Pt_SE1_SdS2','Pt_SE1_SdS3','Pt_SE6_SdS4','Pt_SE6_SdS5','Pt_SE6_SdS6',\ ? ? ? ?'Pt_SW1_SW2','Pt_SW2_SE3','Pt_SW2_SW1','Pt_SW2_SW3','Pt_SW3_SE5','Pt_SW3_SW4','Pt_SW4_SW3',\ ? ? ? ?'Pt_W1_SdNa','Pt_W1_SdNb','Pt_W4_SdNa','Pt_W4_SdNb','Pt_W4_SdNc'] class ds_init_pts(jmri.jmrit.automat.AbstractAutomaton):
? def handle(self): ? ? for pt in ptLst: ? ? ? turnouts.provideTurnout(pt).setState(2) ? ? ? self.waitMsec(200) ? ? print '## All Points initialised to Closed ##' ? ? return False a=ds_init_pts()
a.start() |
Re: The future of control and automation - thoughts?
Regarding Bluetooth control:? is it possible to control more than 1 locomotive at the same time from a single throttle over Bluetooth with any of the current systems?? I don't have any experience with any of them.
?
Also, I'd just like to add that while some people certainly aren't interested in automatic operations - and that's fine - other people do like automation, and that's fine too.? I personally loved the challenge of setting up my layout so it could be operated fully manually, semi-automatically, or fully automatically, and enjoy using it in any of those modes depending on how I feel at the time.? That's the beauty of "My Railroad, My Rules", and the great thing about the flexibility of JMRI.
?
Cheers,
Trevor. |
Re: Block occupancy without resistive wheelsets
Roger, With turnouts in a separate block, and not even very long trains, you'd see the occupancy indicator of the turnout go off while both blocks at either side remain on - unless there's added logic. Wouter On Wed, 19 Mar 2025 at 12:17, Roger Thomas via <rogert=[email protected]> wrote:
|
Re: The future of control and automation - thoughts?
Same here. OperationsPro is my sole use of JMRI these days. (And occasionally DecoderPro, but mostly LokProgrammer)
?
So in that vein, I've begun to wonder if I could use AI (namely, v0.dev) to write code modifications for OpsPro to mold it more to my niche-prototype likings. Would love to have suggestions on how specifically to do so if anyone has any, as I'm willing to learn but would prefer not to if I can help it. Am the wrong kind of engineer by trade!
?
More to OP's original question, I think Bluetooth is the future (especially for loco-to-loco comms) but the current offerings (namely Blunami & RailPro) are neither mature nor featured enough to get me to switch from DCC.
?
Isaac |
Re: The future of control and automation - thoughts?
At Wed, 19 Mar 2025 04:55:45 -0400 "Mick Moignard" <mick@...> wrote:
Don't forget that Soundtraxx offer Bluetooth-controllable decoders as well.Sometimes it can be more interesting to have an additional train or two operated "by the computer" along with the one mnually operated train. It is effectively prototypial to have "resistive" wheelsets, if you count a solid steel axle as a "resistor"... -- Robert Heller -- Cell: 413-658-7953 GV: 978-633-5364 Deepwoods Software -- Custom Software Services -- Linux Administration Services heller@... -- Webhosting Services |
Re: Block occupancy without resistive wheelsets
The dispatcher functionality was only implemented from 5.10. I need to update and have a look. I was impressed by which implements a solution in the detector hardware (arduino) to calculate (estimate) the end of train position. It will be interesting to compare all the options!? |
Re: Current state of DMX support on Apple Silicon Macs?
#mac-m1
#powerline
Returning to the original question in this thread: Would an Apple Silicon Mac, e.g. an M4, be able to run a DMX512 connection natively?
I’ve made some more progress on this: I have been able to set up a M1 Mac with the right native libraries (as opposed to x86_64 Intel libraries) and JMRI is able to make a HID connection to another device in the same way an Anyma connection would be made. So that works. I think the answer is “Yes, if the Mac is set up with native libraries”. I don’t have an actual Anyma DMX512 system to check with, so I can’t be 100% sure. Bob — Bob Jacobsen rgj1927@... |