¿ªÔÆÌåÓý

Date

Locked Re: Operations - help on controlling car movement

frankjoanw
 

Hello. Could this be made an option for those that want to include ¡°Crew¡± as the load.

THANK YOU.

:>)....Have a good day.....Frank


Locked Re: Test Release 4.13.4 Timetable tool #timetable-tool

 

Paul,

The only data impact is that the scale setting process changed which will result in 4.13.4 data being forced to HO when loaded using 4.13.5 or later.

Dave Sand

On Nov 17, 2018, at 11:21 AM, paul@... wrote:

Dave,

Thanks. Will the structural changes impact any timetable data I create with the 4.13.4 version of the tool?

Regards

Paul


Locked Re: Test Release 4.13.4 Timetable tool #timetable-tool

 

Dave,

Thanks. ?Will the structural changes impact any timetable data I create with the 4.13.4 ?version of the tool?

Regards

Paul


Locked Re: Test Release 4.13.4 Timetable tool #timetable-tool

 

Paul,

The script will be included in the 4.13.5 test release.

Due to internal structural changes, the 4.13.5 script will not work with 4.13.4.

The latest development release does include the updated code and script.

Dave Sand

On Nov 17, 2018, at 10:14 AM, paul@... wrote:

I've just started playing with this and it looks potentially really useful. According to the help page there's a sample script TimeTable.py to show how to open the manager and navigate the structure but I can't find it at JMRI/jython or by searching. Has it not made it into the release?

Thanks

Paul


Locked Re: Test release 4.13.4 issue with withrottle

 

Thanks for the tip. I'll change that when I get back. I am certain it is at the default right now.


Locked Test Release 4.13.4 Timetable tool #timetable-tool

 

I've just started playing with this and it looks potentially really useful. ?According to the help page there's a sample script?TimeTable.py to show how to open the manager and navigate the structure but I can't find it at JMRI/jython or by searching. Has it not made it into the release?

Thanks

Paul


Locked Re: Test release 4.13.4 issue with withrottle

 

Grit City,

Since you mentioned a DCS240, did you set it not to use 'expanded slots' (or
whatever name they use for the more than 120 slots)?

Those slots beyond 120 (up to 400) work differently and the code might not
do so well there. They are working towards understanding the extra changes
for that, but I'd turn it off in the command station (it is a OpSw thing)
just to keep things simple.

-Ken Cameron, Member JMRI Dev Team
www.jmri.org
www.fingerlakeslivesteamers.org
www.cnymod.com
www.syracusemodelrr.org


Locked Re: Test release 4.13.4 issue with withrottle

 

It was a DCS240. I dont use a LNWI just the Pi 3b+.? ?I double checked to make sure my defaults were set to loconet. My digitrax throttle worked fine. It only seemed to affect WiThrottle.? WiThrottle looked like normal. It was showing the proper IP and port. I'm not worried as it fixed itself when I reverted to 4.13.3. If it happens with the 4.13.5 update I'll report back.


Locked Re: Test release 4.13.4 issue with withrottle

 

Just brought 4.13.4 up on a Pi3B+ and in Digitrax Simulator the WiThrottle sees my ESU MCII just fine in the WiThrottle panel. The throttle ID and loco selected.

Prefs for your command station might have been reset to internal for the throttles not to work.

Jim Albanowski


Locked Re: Test release 4.13.4 issue with withrottle

 

Not sure if I'll get a chance to test but if I can what DCC system?

Jim Albanowski


Locked Re: NCE light it as signal decoder

 

Dave,

If you manually adjust the address (is it add or subtract 4) for the offset,
does that work for the mast? So you set the address for the Light-It mast as
100, but enter 96 (or 104) as the address in JMRI. Would that work for the
mast?

-Ken Cameron, Member JMRI Dev Team
www.jmri.org
www.fingerlakeslivesteamers.org
www.cnymod.com
www.syracusemodelrr.org


Locked Re: Scripting - a general question ....

 

¿ªÔÆÌåÓý

My background is 30+ years in software development and have worked in anything between Assembler (most processor types) through Forth, Basic, Fortran, Pascal, C, C++, COBOL, Java, Python, and LUA, etc, etc so jython shouldn't cause too many problems ;-)

However, YAAT seems worthy of investigation - many thanks,
Dave

On 17/11/2018 10:29, Brian Wingfield via Groups.Io wrote:

Hi Dave,

What you need is? YAAT!
The following is clipped from a document I started.
It may be sufficient to wet your appetite!
Regards
BrianW

YAAT in control of your JMRI layout

What is YAAT?

YAAT is an acronym for Yet Another Auto Train. It is a piece of software written by Dave Sand and written in? Jython . But that is irrelevant as you can use it with no Jython knowledge at all.

?It brings writing scripts for ?layout automation to all!

I have knowledge of programming especially in machine code but I find the Jython language very unfriendly and very unforgiving .

In the past I used the BASIC programming language for my user interfaces. ?

BASIC is another acronym Beginners All-purpose Symbolic Instruction Code developed in 1964 at Dartmouth College USA.

Now with YAAT we have our own BASIC language for JMRI.

Lets leap in with a simple script:-

Assume we have a working JMRI layout, a piece of straight track, a sensor at each end named LEFT and RIGHT and ?loco with long address 7331.

??????????????????????????????? Assign long address 7331

??????????????????????????????? Set direction to forward

??????????????????????????????? Set speed to .10

??????????????????????????????? Wait for sensor RIGHT to become active

??????????????????????????????? Set speed to 0

??????????????????????????????? Wait for 5 seconds

??????????????????????????????? Set direction to reverse

??????????????????????????????? Set speed to .10

??????????????????????????????? Wait for sensor LEFT to become active

??????????????????????????????? Set speed to 0

??????????????????????????????? Wait for 5 seconds

Set the YAAT script running just like any other script. I do it with a button on the JMRI main menu.

Drive the loco with any throttle forwards over the RIGHT sensor and the script will take over from there.

Unless instructed to STOP this script will just keep repeating.

The script is written as you would any JMRI script using your favourite text editor but is ?saved as a We have written a shuttle script as easy as writing a simple BASIC program .

txt ?file. It is then placed in the YAAT.py file.

Here is a snip from a working program

trainList = {}

trainList['CoalExchange'] = 'preference:YAAT\Schedules\CoalExchange.txt'

trainList['FyardC-GoodsB'] = 'preference:YAAT\Schedules\FyardC-GoodsB.txt'

trainList['Plat1FyardB'] = 'preference:YAAT\Schedules\Plat1FyardB.txt'

trainList['YAATblock'] = 'preference:YAAT\Schedules\YAATblock.txt'

The YAAT program then compiles the script into something Jython and JMRI will understand!

?

YAAT allows us to use blocks, signals, sensors, turnouts, function keys.

There are special commands for decision making

YAAT will spot errors in syntax and highlight them when you try to run the program

The following is an extract from the start of one of my programmes.

?

# Coal Road to and fro

# Takes empty wagons and replaces with full between fiddle yards F&G

# Position loco facing South in Coal Road over IRD42

# Loco No 47331 or D3002

?

Loop

???? Start when sensor YAATsens41 is active

?

???? If sensor YAATsens1 is active

??????? Assign long address 7331?????

???? Else

??????? If sensor YAATsens11 is active?

?????????? Assign long address 3002

??????? Endif

???? Else

?????? Set sensor YAATsens41 inactive

???? Endif

?

Repeat if sensor YAATsens41 is inactive

????????

???? If sensor YAATsens31 is inactive

?????? Set function key 1 on????????????????????????? # Sound on

???? Else

?????? Set function key 1 off???????????????????????? # Sound off

???? Endif

?

You? can see that I have a JMRI internal sensor ( YAATsens41 ) which starts the script when active.

I have 2 locos which can be on roster for this duty ?and YAATsens11 or YAATsens41 will select which.

You will also notice that if a start is attempted without selecting a loco the active starts sensor? is made inactive.

When the routine starts YAATsens31 active puts the loco sound ON or OFF.

On my layout the internal sensors are all displayed on a JMRI control panel using standard JMRI icons.

The YAAT kill button will KILL all running scripts.

The Block Release button runs my script YAATblock which clears all my blocks to unoccupied and free. Both these buttons have proved most useful while writing interactive scripts.

I have a sensor in each routine to determine if it is to repeat.

?

By careful use of the block control system you can run multiple scripts without collisions!

I have trains slowing at distant signals and stopping at Home signals.

I have trains making decisions as to which YARD to pick up from or drop off at.

I have automatic switching of routes after the program has made sure the route is free and unoccupied.

It is possible to interact manually by setting? signals or using a throttle.

?

The following are snips from one of my routines showing how I have? dealt with signals.

?

?

Wait for sensor IRD11 to become active???

???????

??????? If signal head UpScissorDistant does show Yellow???????????????

?????????? Set speed to .20?????????????? # slow towards signal at red

??????? Else??

?????????? If block PLATFORM2 is free

?????????? Set block PLATFORM2 reserved

?????????? Set turnout Lever SHED Coal thrown

?????????? Set turnout Lever XOVER\ thrown????

?????????? Set speed to .40

????? Endif

?

Wait for sensor IRD12 to become active

???????

????? ??

??????? If signal head UpScissor does show Red???????

?????????? Set speed to 0???????????????????????????? ?? # STOP at red

??????? Wait for block PLATFORM2 to become free

?????????? Set block PLATFORM2 reserved

??????? Wait for block PLATFORM2 to become unoccupied

?????????? Set turnout Lever SHED Coal thrown??????? # Switch siding

?????????? Set turnout Lever XOVER\ thrown??????????? ? # Switch crossing?

??????? Wait for signal head UpScissor to show Green #Wait for feedback

?????????? Set speed to .10

????? ?? Wait for 5 seconds???????

?????????? Set speed to .35

??????? Endif

?

Find YAAT1.6 with all you need to know on the JMRI user group site:-

[email protected] examples..YAAT1.6.zip

?



Locked Re: Scripting - a general question ....

 

Hi Dave,

What you need is? YAAT!
The following is clipped from a document I started.
It may be sufficient to wet your appetite!
Regards
BrianW

YAAT in control of your JMRI layout

What is YAAT?

YAAT is an acronym for Yet Another Auto Train. It is a piece of software written by Dave Sand and written in? Jython . But that is irrelevant as you can use it with no Jython knowledge at all.

?It brings writing scripts for ?layout automation to all!

I have knowledge of programming especially in machine code but I find the Jython language very unfriendly and very unforgiving .

In the past I used the BASIC programming language for my user interfaces. ?

BASIC is another acronym Beginners All-purpose Symbolic Instruction Code developed in 1964 at Dartmouth College USA.

Now with YAAT we have our own BASIC language for JMRI.

Lets leap in with a simple script:-

Assume we have a working JMRI layout, a piece of straight track, a sensor at each end named LEFT and RIGHT and ?loco with long address 7331.

??????????????????????????????? Assign long address 7331

??????????????????????????????? Set direction to forward

??????????????????????????????? Set speed to .10

??????????????????????????????? Wait for sensor RIGHT to become active

??????????????????????????????? Set speed to 0

??????????????????????????????? Wait for 5 seconds

??????????????????????????????? Set direction to reverse

??????????????????????????????? Set speed to .10

??????????????????????????????? Wait for sensor LEFT to become active

??????????????????????????????? Set speed to 0

??????????????????????????????? Wait for 5 seconds

Set the YAAT script running just like any other script. I do it with a button on the JMRI main menu.

Drive the loco with any throttle forwards over the RIGHT sensor and the script will take over from there.

Unless instructed to STOP this script will just keep repeating.

The script is written as you would any JMRI script using your favourite text editor but is ?saved as a We have written a shuttle script as easy as writing a simple BASIC program .

txt ?file. It is then placed in the YAAT.py file.

Here is a snip from a working program

trainList = {}

trainList['CoalExchange'] = 'preference:YAAT\Schedules\CoalExchange.txt'

trainList['FyardC-GoodsB'] = 'preference:YAAT\Schedules\FyardC-GoodsB.txt'

trainList['Plat1FyardB'] = 'preference:YAAT\Schedules\Plat1FyardB.txt'

trainList['YAATblock'] = 'preference:YAAT\Schedules\YAATblock.txt'

The YAAT program then compiles the script into something Jython and JMRI will understand!

?

YAAT allows us to use blocks, signals, sensors, turnouts, function keys.

There are special commands for decision making

YAAT will spot errors in syntax and highlight them when you try to run the program

The following is an extract from the start of one of my programmes.

?

# Coal Road to and fro

# Takes empty wagons and replaces with full between fiddle yards F&G

# Position loco facing South in Coal Road over IRD42

# Loco No 47331 or D3002

?

Loop

???? Start when sensor YAATsens41 is active

?

???? If sensor YAATsens1 is active

??????? Assign long address 7331?????

???? Else

??????? If sensor YAATsens11 is active?

?????????? Assign long address 3002

??????? Endif

???? Else

?????? Set sensor YAATsens41 inactive

???? Endif

?

Repeat if sensor YAATsens41 is inactive

????????

???? If sensor YAATsens31 is inactive

?????? Set function key 1 on????????????????????????? # Sound on

???? Else

?????? Set function key 1 off???????????????????????? # Sound off

???? Endif

?

You? can see that I have a JMRI internal sensor ( YAATsens41 ) which starts the script when active.

I have 2 locos which can be on roster for this duty ?and YAATsens11 or YAATsens41 will select which.

You will also notice that if a start is attempted without selecting a loco the active starts sensor? is made inactive.

When the routine starts YAATsens31 active puts the loco sound ON or OFF.

On my layout the internal sensors are all displayed on a JMRI control panel using standard JMRI icons.

The YAAT kill button will KILL all running scripts.

The Block Release button runs my script YAATblock which clears all my blocks to unoccupied and free. Both these buttons have proved most useful while writing interactive scripts.

I have a sensor in each routine to determine if it is to repeat.

?

By careful use of the block control system you can run multiple scripts without collisions!

I have trains slowing at distant signals and stopping at Home signals.

I have trains making decisions as to which YARD to pick up from or drop off at.

I have automatic switching of routes after the program has made sure the route is free and unoccupied.

It is possible to interact manually by setting? signals or using a throttle.

?

The following are snips from one of my routines showing how I have? dealt with signals.

?

?

Wait for sensor IRD11 to become active???

???????

??????? If signal head UpScissorDistant does show Yellow???????????????

?????????? Set speed to .20?????????????? # slow towards signal at red

??????? Else??

?????????? If block PLATFORM2 is free

?????????? Set block PLATFORM2 reserved

?????????? Set turnout Lever SHED Coal thrown

?????????? Set turnout Lever XOVER\ thrown????

?????????? Set speed to .40

????? Endif

?

Wait for sensor IRD12 to become active

???????

????? ??

??????? If signal head UpScissor does show Red???????

?????????? Set speed to 0???????????????????????????? ?? # STOP at red

??????? Wait for block PLATFORM2 to become free

?????????? Set block PLATFORM2 reserved

??????? Wait for block PLATFORM2 to become unoccupied

?????????? Set turnout Lever SHED Coal thrown??????? # Switch siding

?????????? Set turnout Lever XOVER\ thrown??????????? ? # Switch crossing?

??????? Wait for signal head UpScissor to show Green #Wait for feedback

?????????? Set speed to .10

????? ?? Wait for 5 seconds???????

?????????? Set speed to .35

??????? Endif

?

Find YAAT1.6 with all you need to know on the JMRI user group site:-

[email protected] examples..YAAT1.6.zip

?


Locked Re: Scripting - a general question ....

 

Thank you - very helpful.
Dave

On 17/11/2018 05:05, rbucklew via Groups.Io wrote:
Dave,
You could probably do it either way. I have two trains that run under script during my open house. They each have their owns script but interact with each other through use of a sensor that indicates both are ready for the meet. The robot throttle is another approach and you can have multiple instances running.
Bob Bucklew

----- Original Message -----
From: "David Slipper" <softfoot@...>
To: "jmriusers" <[email protected]>
Sent: Friday, November 16, 2018 6:21:05 PM
Subject: [jmriusers] Scripting - a general question ....

Probably a rather newbie question ...

If I have (say) 3 trains on a layout would I expect to have a single
script that controls all 3 (I can see this would rapidly become very
complex),? or would I be better off running 3 scripts (say one per loco)
... assuming this is even possible ... or is there a better approach??

TIA
Dave







.


Locked Re: virtual sound decoder

 

You're welcome!

I had a look at the CTI user's guide. Didn't found locomotive engine sound (e.g. chuff sounds) like VSD has.

Klaus


Am 17.11.2018 um 03:49 schrieb tnmkumar_us:

Thanks Klaus. That helped.


Locked Re: NCE light it as signal decoder

 

¿ªÔÆÌåÓý

Adding the NCE Light-It as a DCC Signal Head works fine, but you must tick the Offset Address checkbox or it won't work.

Adding the NCE Light-It as a DCC Signal Mast works fine, provided you make the mast by adding already-created Signal Heads. You can't use the add DCC Signal Mast option because it lacks the Offset Address checkbox.

The AIU Address 63 is probably the result of adding a Light-It as a sensor. It's not a sensor.

--?
Dave in Australia

The New England Convention 2018

On 17 Nov 2018, at 4:29 PM, Michael Murphy <smurfmm@...> wrote:

I have a NCE Power Pro, running 2 AIU¡¯s, and a switch it mk2. Thanks to this forum I now have a working panel and would like to start adding signals to my small layout. I would like to keep everything NCE. I have a light it, already wired with leds and a signal address of 100. I¡¯m able to change the signal from the NCE handheld. I¡¯ve also tried several different ways of adding a signal to the panel such as a mast and as a signal and even added as a sensor but to no avail. What am I missing? Or is it really that hard? ?Each main line has 8 blocks and there is one crossover. Do I need to add at least 2 more light it¡¯s to get the R,Y,G? Or does it work off block occupancy? ?Would it be something to do with the fact that when I check the NCE log, I see the 2 AIU¡¯s #50 and #51 that I programmed for BD20¡¯s, but now there is also a AIU #63?


Locked NCE light it as signal decoder

 

I have a NCE Power Pro, running 2 AIU¡¯s, and a switch it mk2. Thanks to this forum I now have a working panel and would like to start adding signals to my small layout. I would like to keep everything NCE. I have a light it, already wired with leds and a signal address of 100. I¡¯m able to change the signal from the NCE handheld. I¡¯ve also tried several different ways of adding a signal to the panel such as a mast and as a signal and even added as a sensor but to no avail. What am I missing? Or is it really that hard? Each main line has 8 blocks and there is one crossover. Do I need to add at least 2 more light it¡¯s to get the R,Y,G? Or does it work off block occupancy? Would it be something to do with the fact that when I check the NCE log, I see the 2 AIU¡¯s #50 and #51 that I programmed for BD20¡¯s, but now there is also a AIU #63?

Any information you have to help a relatively new person to JMRI would be appreciated.

Michael


Locked Test release 4.13.4 issue with withrottle

 

I updated my raspberry pi 3B+ and installed 4.13.4? WiThrottle would not connect to Engine Driver or my Protothrottle bridge. Everything appeared to be working fine. (normal start up and no error messages) I did a couple reboots and double checked the installation.?
I then downgraded to 4.13.3 and everything worked again without a hitch.
I just wanted to pass this along.?


Locked Re: Scripting - a general question ....

 

Dave,
You could probably do it either way. I have two trains that run under script during my open house. They each have their owns script but interact with each other through use of a sensor that indicates both are ready for the meet. The robot throttle is another approach and you can have multiple instances running.
Bob Bucklew

----- Original Message -----
From: "David Slipper" <softfoot@...>
To: "jmriusers" <[email protected]>
Sent: Friday, November 16, 2018 6:21:05 PM
Subject: [jmriusers] Scripting - a general question ....

Probably a rather newbie question ...

If I have (say) 3 trains on a layout would I expect to have a single
script that controls all 3 (I can see this would rapidly become very
complex),? or would I be better off running 3 scripts (say one per loco)
... assuming this is even possible ... or is there a better approach??

TIA
Dave


Locked Re: virtual sound decoder

 

Thanks Klaus. That helped.