SOLVED synchronizing signals

Märklin Central Station 2

SOLVED synchronizing signals

Postby woodyboy » 28.01.2014, 20:27

Dear forumreaders,

When i activate double coil signals in my routes I still encounter problems.

In an earlier thread I have already had some discussions on how to use the switch and command times and synchonization. I configured to my best knowledge the switches and signals but I still encounter problems. I have done some testing and I hope/think I now have observed the root problem.

The main problem is that sometimes one switch is not set according to the commands of Rocrail. It is always the same switch, SW9-1 with route 23 -> 19. When I operate the switch manually via the trackplan there is no problem, it operates reliable. Also when I remove the signal VR3-3-23R from the list, then the operation is also reliable.

For test purposes I defined two pseudo routes "krom" en "recht". When testing this routes, The operating of the signals is not synchronized and are parallel excuted with the switches. So the commands for both the signals and the switches are issued at the same time. Only the command pause of the controller seems to be respected. The switches are synchronized and are operating conform my expectations. Both signals starts with the first switch and that is to much to handle within the timeframe for the GFP. in this case, when two coils of a signal had to be powered, then the signal hp3-1-23R is the victim. The command time between powering the coils of one signal is respected, but the signals are set simultaneously. It doesn get enough time to move. Maybe in this example because they are on the same decoder en both signals are operated at the same time.

How can I synchronize/sequence the signals with each other like the switches? And how can I synchronize the signals with the switches.

Version 6738
You do not have the required permissions to view the files attached to this post.
Last edited by woodyboy on 04.03.2014, 22:52, edited 3 times in total.
Regards,

Bert

Equipment: Roco WLANMaus, MS2, Gleisbox 2x(separated switch & rollingstock). Ubuntu 16. Edits booster. Arduino: S88 CANbus interface & Ethernet-CANbus gateway
woodyboy
 

Postby rjversluis » 28.01.2014, 21:56

Hi Bert,

I like your hardware. 8)

If you are thinking about synchronising signals commands as part of routes it could be implemented.
But the signals controlled directly by the blocks won't fit that easy.

Serialising commands should be done at low level -> mcs2 in your case.
Just use a higher command pause value which I added specially for your hardware...
Best Regards, Rob.
:!: PS: Do not forget to attach the usual files.
:!: PS: Nicht vergessen die übliche Dateien an zu hängen.
[ macOS - Linux] - [ N: CBus - CAN-GCA ] - [ 0: RocNetNode - GCA-Pi ]
rjversluis
Site Admin
 

Postby woodyboy » 28.01.2014, 23:28

Hi Rob,

It is clear to me that you extremely enjoy my configuration :D . All the specials you wrote in the recent time for the GFP is really impressing. I like your effort to help to get an optimal result. And your effort is recognized, because last weekend I had a relative visiting and he was curious about the progress. After about 20 minutes he said this was the best demo so far. So respect :!:

The low level serializing of the commands is optimized to 17 ms. For normal operation this is a very reliable setting. Last week it has operated for hours without problems, but without the signals in the configuration.

If the signals are synchronized between each other and are excuted after the switch commands, I think/expect that should bring the solution. At the moment I separated the commands for the moving material (GFP) and the infrastructure (SwiSem). I hoped that this separation would bring the solution, but unfortunately that was to easy....

But you wrote also:
But the signals controlled directly by the blocks won't fit that easy.


If synchronizing is a problem with signals controlled by a block, probably could the command issueing for the signals delayed by about 300ms or better (IMHO) by waiting the signal command time delay beforing sending the signal command. Then the signals can be commanded in the route switch time between the switches commands if the route switch time is configured greater then the signal propelling time.

Then the sequence will be:
switch pattern: switch n | rt sw time | switch n+1 | rt sw time | switch n+2
signal pattern: cmd time | signal n | cmd time | signal n+1



But maybe there are better solutions.

Thanks so far!
Regards,

Bert

Equipment: Roco WLANMaus, MS2, Gleisbox 2x(separated switch & rollingstock). Ubuntu 16. Edits booster. Arduino: S88 CANbus interface & Ethernet-CANbus gateway
woodyboy
 

Postby rjversluis » 29.01.2014, 11:00

I see only one solution which I already posted here if the signals are not part of a route: Increase Command Pause in the mcs2 settings.
Or create a receive buffer in your firmware.
Best Regards, Rob.
:!: PS: Do not forget to attach the usual files.
:!: PS: Nicht vergessen die übliche Dateien an zu hängen.
[ macOS - Linux] - [ N: CBus - CAN-GCA ] - [ 0: RocNetNode - GCA-Pi ]
rjversluis
Site Admin
 

Postby woodyboy » 29.01.2014, 11:18

Ok, and how about synchronizing signal commands as part of routes? That could also bring a solution to this situation. That brings also compatibility to the M* K83 decoders when the signals are a part of the route commands.
Regards,

Bert

Equipment: Roco WLANMaus, MS2, Gleisbox 2x(separated switch & rollingstock). Ubuntu 16. Edits booster. Arduino: S88 CANbus interface & Ethernet-CANbus gateway
woodyboy
 

Postby rjversluis » 29.01.2014, 12:10

starting with revision 6745 the signals are in the same way synchronized in routes as switches.
Best Regards, Rob.
:!: PS: Do not forget to attach the usual files.
:!: PS: Nicht vergessen die übliche Dateien an zu hängen.
[ macOS - Linux] - [ N: CBus - CAN-GCA ] - [ 0: RocNetNode - GCA-Pi ]
rjversluis
Site Admin
 

Postby woodyboy » 30.01.2014, 21:13

Great!! This weekend I will test it in a running configuration. The first tests passed. It does exactly where I asked for. Thanks for the quick solution.

A question, is it permitted to add this signal commands to the autogen routes? Without offending the routing tables generated by the analyzer? In this situation the signals should be removed from the block definition. I understand that when the layout is re-analyzed, that I have to add the commands again.
Regards,

Bert

Equipment: Roco WLANMaus, MS2, Gleisbox 2x(separated switch & rollingstock). Ubuntu 16. Edits booster. Arduino: S88 CANbus interface & Ethernet-CANbus gateway
woodyboy
 

Postby LDG » 30.01.2014, 22:59

Hi Bert,

if you want to keep manual changes to "autogen-"-routes just rename them so the don't start with "autogen-". This will prevent analyzer from deleting/recreating them :)
Renaming routes also changes the "Route IDs" in tracks automatically :wink:

You should also disable the analyzer options to assign and reset signals/feedbacks to blocks.

Regards,
Lothar
LDG
Site Admin
 

Postby woodyboy » 31.01.2014, 10:08

Hi Lothar,

Thanks for your directions, they are highly appreciated by me. This could save me time and errors :D.
Regards,

Bert

Equipment: Roco WLANMaus, MS2, Gleisbox 2x(separated switch & rollingstock). Ubuntu 16. Edits booster. Arduino: S88 CANbus interface & Ethernet-CANbus gateway
woodyboy
 

Re: SOLVED synchronizing signals

Postby woodyboy » 01.03.2014, 22:27

To this theme I have an additional question. In my observation the second coil of a 3-way switch is synchronized, but if there is a second switch defined on the same K83 for the same route than that switch will be powered without synchronization for the defined time. The time between is about de controller pausetime.
To get it replayed, define the switchtime equal to the routeswitchtime. During start of Day it is correct. Work around is to define the routeswitchtime twice the time of the switch time or separate the switch on two decoders. Can somebody confirm this observation?

Regards,
Bert

BTW nice new forum!
Regards,

Bert

Equipment: Roco WLANMaus, MS2, Gleisbox 2x(separated switch & rollingstock). Ubuntu 16. Edits booster. Arduino: S88 CANbus interface & Ethernet-CANbus gateway
woodyboy
 

Re: SOLVED synchronizing signals

Postby rjversluis » 02.03.2014, 08:07

Maybe a small example will help.
Best Regards, Rob.
:!: PS: Do not forget to attach the usual files.
:!: PS: Nicht vergessen die übliche Dateien an zu hängen.
[ macOS - Linux] - [ N: CBus - CAN-GCA ] - [ 0: RocNetNode - GCA-Pi ]
rjversluis
Site Admin
 

Re: SOLVED synchronizing signals

Postby rjversluis » 02.03.2014, 10:22

I added some extra sync pause in case the switch has two motors.
Best Regards, Rob.
:!: PS: Do not forget to attach the usual files.
:!: PS: Nicht vergessen die übliche Dateien an zu hängen.
[ macOS - Linux] - [ N: CBus - CAN-GCA ] - [ 0: RocNetNode - GCA-Pi ]
rjversluis
Site Admin
 

Re: SOLVED synchronizing signals

Postby woodyboy » 04.03.2014, 16:50

Rob,

Today I installed version 6914. The good news is it works for the double coil, the bad news is the Rocrail server process crashes spontaneously at an intermittent interval during a start of the day. Sometimes at the first time, sometimes at the second or third time. In normal operation i didn't have a crash up till now, operated about 15 minutes. Maybe to short. The trace looks good to me, but it says at the end Power off, but the power stays on when the servers crashes.

If you look at the packetinformation, it looks like you get strange replies. But actual they are from a different earlier send packet. The packets are queued for the GFP if they are send within a too short interval to be handled by the GFP.

Any idea? what can i do to get a better trace?
You do not have the required permissions to view the files attached to this post.
Regards,

Bert

Equipment: Roco WLANMaus, MS2, Gleisbox 2x(separated switch & rollingstock). Ubuntu 16. Edits booster. Arduino: S88 CANbus interface & Ethernet-CANbus gateway
woodyboy
 

Re: SOLVED synchronizing signals

Postby rjversluis » 04.03.2014, 17:06

Why set this thread to solved if you encounter a server crash?
Add your rocrail.ini and plan.xml.

The init field command you are testing is not modified; The route commander has been modified.

Check also the Rocrail server terminal for information not saved in trace files.
A power off is automatically send if a memory access violation was detected.
Best Regards, Rob.
:!: PS: Do not forget to attach the usual files.
:!: PS: Nicht vergessen die übliche Dateien an zu hängen.
[ macOS - Linux] - [ N: CBus - CAN-GCA ] - [ 0: RocNetNode - GCA-Pi ]
rjversluis
Site Admin
 

Re: SOLVED synchronizing signals

Postby rjversluis » 04.03.2014, 17:14

Since you are running Rocrail under Linux you can use gdb to spot the access violation.
Best Regards, Rob.
:!: PS: Do not forget to attach the usual files.
:!: PS: Nicht vergessen die übliche Dateien an zu hängen.
[ macOS - Linux] - [ N: CBus - CAN-GCA ] - [ 0: RocNetNode - GCA-Pi ]
rjversluis
Site Admin
 

Next

Return to CS2