esitarski / CrossMgr

Cyclo Cross Management Application
MIT License
41 stars 21 forks source link

CrossMgrAlien does not work well with multi AlienChip terminals #6

Closed kumafu closed 4 years ago

kumafu commented 6 years ago

I have no enough test about this issue's reproducibility. Please check by your side.

Environment

Issues (There are 2 issues)

esitarski commented 6 years ago

With AutoCorrect enabled, CrossMgr automatically filters out closely spaced duplicate reads of the same tag from multiple readers. Although multiple reads are stored internally in CrossMgr, they will not be counted as separate laps.

If you want more control over this feature. set the "Properties/Race Options/Min. Possible Lap Time" value. Consecutive reads shorter than "Min. Possible Lap Time" will be ignored, and only the first one will count.

A number of organizers use multiple readers with no reported problems.

esitarski commented 6 years ago

I am not sure I fully understand Issue One. Running 2 CrossMgrAlien programs on the same PC is no problem. If there is a problem, I suspect that it might be with "Autodetect", specifically, the 2nd instance of CrossMgrAlien will find the first reader again, fail, and look no further. As you can imagine, this is very hard for me to test as I do not have access to two Alien readers.

This can be mitigated by manually entering the IP address of the Alien reader you wish to connect with, perhaps assigning a static IP to the reader to make this easier in the future.

kumafu commented 6 years ago

@esitarski OK, I almost understood about autocorrect and Min possible Lap features. But CrossMgrAlien can't receive packets from 2 terminal with 2 App instance on 1PC. I've set without using AutoDetect function and enter a static IPaddr manually. I'm using version 0.15, is there any more newer/latest version binary?

esitarski commented 6 years ago

Hi,

CrossMgr will accept input from an unlimited number of readers.

To work with two Alien readers:

  1. Start CrossMgrAlien. Ensure it connects to the first reader.
  2. Start another instance of CrossMgrAlien. Ensure it connects to the second reader.
  3. If both instances of CrossMgrAlien are running on the same machine as CrossMgr, they will automatically connect to it.

Note: The Autoconnect feature of CrossMgrAlien may fail if there are multiple readers.

To ensure a connection of CrossMgrAlien to a specific reader, enter the IP address of the Alien reader manually in the "Alien Cmd Address" field in CrossMgrAlien.

You may wish to configure the reader with a static IP address to make this easier as the reader will normally get a dynamic IP address from the router. To get the dynamic IP address, you will need to look at the router's configuration page.

Does that make sense?

On Fri, Dec 8, 2017 at 5:54 PM, Fukuma Shinichi notifications@github.com wrote:

@esitarski https://github.com/esitarski OK, I almost understood about autocorrect and Min possible Lap features. But CrossMgrAlien can't receive packets from 2 terminal with 2 App instance on 1PC. I'm using version 0.15, is there any more newer/latest version binary?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/esitarski/CrossMgr/issues/6#issuecomment-350392535, or mute the thread https://github.com/notifications/unsubscribe-auth/AAJrqVj7mCokZ6QR7T5IGaC3hLKxrCKyks5s-b4RgaJpZM4Q5OCI .

--

Edward Sitarski Sports Organizing Co-Chair, Invictus Games 2017 Provincial Chief Commissaire of Ontario, Track Cycling

esitarski commented 6 years ago

After reviewing the code, there are some other steps you need to do to support multiple readers.

Disable the "Listen for Alien Heartbeat" option. This listens for reader heartbeat messages and uses the heartbeat message to automatically connect to the reader. This will not work if there are two readers.

You will have to enter the "Alien Cmd Address" manually for each instance of CrossMgrAlien. This is the reader's IP address on your network. The Alien cmd port default is 23. For more details, see here ftp://ftp.alientechnology.com/pub/readers/docs/8101938-000_V_Guide,%20Reader%20Interface.pdf .

On Sat, Dec 9, 2017 at 8:49 AM, Edward Sitarski edward.sitarski@gmail.com wrote:

Hi,

CrossMgr will accept input from an unlimited number of readers.

To work with two Alien readers:

  1. Start CrossMgrAlien. Ensure it connects to the first reader.
  2. Start another instance of CrossMgrAlien. Ensure it connects to the second reader.
  3. If both instances of CrossMgrAlien are running on the same machine as CrossMgr, they will automatically connect to it.

Note: The Autoconnect feature of CrossMgrAlien may fail if there are multiple readers.

To ensure a connection of CrossMgrAlien to a specific reader, enter the IP address of the Alien reader manually in the "Alien Cmd Address" field in CrossMgrAlien.

You may wish to configure the reader with a static IP address to make this easier as the reader will normally get a dynamic IP address from the router. To get the dynamic IP address, you will need to look at the router's configuration page.

Does that make sense?

On Fri, Dec 8, 2017 at 5:54 PM, Fukuma Shinichi notifications@github.com wrote:

@esitarski https://github.com/esitarski OK, I almost understood about autocorrect and Min possible Lap features. But CrossMgrAlien can't receive packets from 2 terminal with 2 App instance on 1PC. I'm using version 0.15, is there any more newer/latest version binary?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/esitarski/CrossMgr/issues/6#issuecomment-350392535, or mute the thread https://github.com/notifications/unsubscribe-auth/AAJrqVj7mCokZ6QR7T5IGaC3hLKxrCKyks5s-b4RgaJpZM4Q5OCI .

--

Edward Sitarski Sports Organizing Co-Chair, Invictus Games 2017 Provincial Chief Commissaire of Ontario, Track Cycling

--

Edward Sitarski Sports Organizing Co-Chair, Invictus Games 2017 Provincial Chief Commissaire of Ontario, Track Cycling

kumafu commented 6 years ago

@esitarski I've tested with AutoCorrect feature, it can't ignore duplicate packets. Although, I try to set "Min. Possible Lap Time" before start a race, CrossMgr completely ignore the dupe packets. It's good but bit a different from your description. No problem?

I also tested 2 CrossMgrAlien instance on 1PC again. It still not work. I set your recommended setting for each instance I think... please check screenshot below (Left instance does not receive a packet from Terminal[192.168.1.150]) capture3

After that, we finally run 2nd CrossMgrAlien instance on other PC and get all packets from 2 terminals.

esitarski commented 6 years ago

I've tested with AutoCorrect feature, it can't ignore duplicate packets. Although, I try to set "Min. Possible Lap Time" before start a race, CrossMgr completely ignore the dupe packets. It's good but bit a different from your description. No problem?

You can set "Min Possible Lap Time" before, during or after a race. The Results will be updated accordingly.

When "Min Possible Lap Time" is not set. it is set internally to 0.4 of the Median Lap Time, which is computed from all unfiltered reads. If there is no median lap time (like what would happen if you are doing "random" testing), you should set the "Min Possible Lap Time" manually.

The screen shot shows that CrossMgrAlien has successfully connected to two Alien readers and that both are sending reads to CrossMgr (all screens are green). Everything should be working.

On Mon, Dec 11, 2017 at 10:01 PM, Fukuma Shinichi notifications@github.com wrote:

@esitarski https://github.com/esitarski I've tested with AutoCorrect feature, it can't ignore duplicate packets. Although, I try to set "Min. Possible Lap Time" before start a race, CrossMgr completely ignore the dupe packets. It's good but bit a different from your description. No problem?

I also tested 2 CrossMgrAlien instance on 1PC again. It still not work. I set your recommended setting for each instance I think... please check screenshot below [image: capture3] https://user-images.githubusercontent.com/1555566/33865196-f9904f84-df33-11e7-9436-e26f82f3b15b.PNG

After that, we finally run 2nd CrossMgrAlien instance on other PC and get all packets from 2 terminals.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/esitarski/CrossMgr/issues/6#issuecomment-350930593, or mute the thread https://github.com/notifications/unsubscribe-auth/AAJrqT7-d0GNgB91RTDmv8N9juaLaQ9Bks5s_eyXgaJpZM4Q5OCI .

--

Edward Sitarski Sports Organizing Co-Chair, Invictus Games 2017 Provincial Chief Commissaire of Ontario, Track Cycling

kumafu commented 6 years ago

ok, I understood about "Min Possible Lap Time". but multiple CrossMgrAlien instance still not work well. (connection is no problem, packet does not come.) We will still use 2nd PC for the simple solution...

mbuckaway commented 4 years ago

Issue appears to be resolved. Closing. Reopen if still a problem.