Telemetry SecondMonitor (Timing & status App)

Discussion in 'Community Workshop' started by Winzarten, Oct 26, 2017.

  1. Monkee

    Monkee New Member

    Joined:
    Dec 23, 2020
    Ratings:
    +1 / 0 / -0
    What a great little app, thank you @Winzarten for making it, maintaining it for all the sim and on top for free!
    What would be amazing would be to be able to share/import reference laps (for example motec data) so one can compare himself to faster racers, do you have any plan on adding such an option, maybe?
     
    Last edited: Jan 5, 2023
  2. Winzarten

    Winzarten Well-Known Member

    Joined:
    Jun 15, 2016
    Ratings:
    +377 / 0 / -0
    Thnaks for the kind words, and sorry for the late reply ;)
    The app supports exporting/importing laps, so you can already do it in the app format.
    https://gitlab.com/winzarten/SecondMonitor/-/wikis/Sharing-Telemetry-Data

    Motec is more complicated, I know it is a general wish, but at first I would require some kind of specification for the format, so I can do a proper import/export for it. Just reverse engineering it is just too time consuming.
     
    • Like Like x 1
  3. mnb

    mnb New Member

    Joined:
    Jan 23, 2023
    Ratings:
    +0 / 0 / -0
    Hi, I am also having a microstutter on ACC. Used to work flawlessly until I upgraded my gpu and to windows 11. When ever I run the app, I get a microstutter every couple of seconds. I run secondmonitor on a 1080p screen which runs from my onboard gpu with dp cable. any ideas what I could try? thanks
     
  4. Winzarten

    Winzarten Well-Known Member

    Joined:
    Jun 15, 2016
    Ratings:
    +377 / 0 / -0
    I have no idea what might be causing it, there weren't any real changes to ACC handling in recent versions. I would try to disable driver animation in the map settings, and maybe increase the refresh rate in the Timing Grid.

    But in the end, it could be the setup, and windows having problem properly schedule multimonitor setup from different GPUs.
     
  5. mnb

    mnb New Member

    Joined:
    Jan 23, 2023
    Ratings:
    +0 / 0 / -0
    Hi Winzarten

    thanks for your answer. I literaly just tried the two monitors directly on the gpu and now it works perfectly.
     
    • Love it! Love it! x 1
  6. Racinglegend1234

    Racinglegend1234 New Member

    Joined:
    Jan 30, 2023
    Ratings:
    +0 / 0 / -0
    @Winzarten can you record ghost’s telemetry to compare with?
     
  7. Winzarten

    Winzarten Well-Known Member

    Joined:
    Jun 15, 2016
    Ratings:
    +377 / 0 / -0
    It don't know TBH :D I would need to test it.
    In shared memory a ghost is just another competitor, so the standard set - speed and location, should be available. But I don't know if the ghost ever, technically, does a complete lap, which is what triggers the data saving.
     
  8. Racinglegend1234

    Racinglegend1234 New Member

    Joined:
    Jan 30, 2023
    Ratings:
    +0 / 0 / -0
    I will also test it tomorrow, but other telemetry apps can record it so would hope it works.
     
  9. Hervé45

    Hervé45 Well-Known Member Beta tester

    Joined:
    Jan 25, 2017
    Ratings:
    +135 / 0 / -0
    @Winzarten
    impossible to launch secondmonitor today
    Yesterday, it was OK


    Error | 2023-02-01 09:03:22.4597 | SecondMonitor.Timing.Application.Controllers.TimingApplicationController | 0 | System.InvalidOperationException: Il existe une erreur dans le document XML (0, 0). ---> System.Xml.XmlException: Élément racine manquant.
    à System.Xml.XmlTextReaderImpl.Throw(Exception e)
    à System.Xml.XmlTextReaderImpl.ParseDocumentContent()
    à System.Xml.XmlReader.MoveToContent()
    à Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderRatings.Read10_Ratings()
    --- Fin de la trace de la pile d'exception interne ---
    à System.Xml.Serialization.XmlSerializer.Deserialize(XmlReader xmlReader, String encodingStyle, XmlDeserializationEvents events)
    à System.Xml.Serialization.XmlSerializer.Deserialize(Stream stream)
    à SecondMonitor.Rating.Common.Repository.RatingRepository.LoadRatingsOrCreateNew()
    à System.Lazy`1.CreateValue()
    à System.Lazy`1.LazyInitValue()
    à SecondMonitor.Rating.Application.Rating.Controller.SimulatorRating.SimulatorRatingController.StartControllerAsync()
    à SecondMonitor.Rating.Application.Rating.Controller.RaceObserver.RaceObserverController.<StartControllerAsync>d__18.MoveNext()
    --- Fin de la trace de la pile à partir de l'emplacement précédent au niveau duquel l'exception a été levée ---
    à System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
    à System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
    à SecondMonitor.Rating.Application.Rating.Controller.RatingApplicationController.<StartControllerAsync>d__15.MoveNext()
    --- Fin de la trace de la pile à partir de l'emplacement précédent au niveau duquel l'exception a été levée ---
    à System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
    à System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
    à SecondMonitor.Timing.Application.Controllers.TimingApplicationController.<StartControllers>d__47.MoveNext()
    --- Fin de la trace de la pile à partir de l'emplacement précédent au niveau duquel l'exception a été levée ---
    à System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
    à System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
    à SecondMonitor.Timing.Application.Controllers.TimingApplicationController.<RunPlugin>d__41.MoveNext() | System.InvalidOperationException: Il existe une erreur dans le document XML (0, 0). ---> System.Xml.XmlException: Élément racine manquant.
    à System.Xml.XmlTextReaderImpl.Throw(Exception e)
    à System.Xml.XmlTextReaderImpl.ParseDocumentContent()
    à System.Xml.XmlReader.MoveToContent()
    à Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderRatings.Read10_Ratings()
    --- Fin de la trace de la pile d'exception interne ---
    à System.Xml.Serialization.XmlSerializer.Deserialize(XmlReader xmlReader, String encodingStyle, XmlDeserializationEvents events)
    à System.Xml.Serialization.XmlSerializer.Deserialize(Stream stream)
    à SecondMonitor.Rating.Common.Repository.RatingRepository.LoadRatingsOrCreateNew()
    à System.Lazy`1.CreateValue()
    à System.Lazy`1.LazyInitValue()
    à SecondMonitor.Rating.Application.Rating.Controller.SimulatorRating.SimulatorRatingController.StartControllerAsync()
    à SecondMonitor.Rating.Application.Rating.Controller.RaceObserver.RaceObserverController.<StartControllerAsync>d__18.MoveNext()
    --- Fin de la trace de la pile à partir de l'emplacement précédent au niveau duquel l'exception a été levée ---
    à System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
    à System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
    à SecondMonitor.Rating.Application.Rating.Controller.RatingApplicationController.<StartControllerAsync>d__15.MoveNext()
    --- Fin de la trace de la pile à partir de l'emplacement précédent au niveau duquel l'exception a été levée ---
    à System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
    à System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
    à SecondMonitor.Timing.Application.Controllers.TimingApplicationController.<StartControllers>d__47.MoveNext()
    --- Fin de la trace de la pile à partir de l'emplacement précédent au niveau duquel l'exception a été levée ---
    à System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
    à System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
    à SecondMonitor.Timing.Application.Controllers.TimingApplicationController.<RunPlugin>d__41.MoveNext()
    Info | 2023-02-01 09:03:22.4597 | SecondMonitor.PluginManager.Core.PluginsManager | 0 | Plugin SecondMonitor.Timing.Application.Controllers.TimingApplicationController closed |
    Info | 2023-02-01 09:03:22.4597 | SecondMonitor.PluginManager.Core.PluginsManager | 0 | ------------------------------All plugins closed - application exiting-------------------------------
     
    Last edited: Feb 4, 2023
  10. Hervé45

    Hervé45 Well-Known Member Beta tester

    Joined:
    Jan 25, 2017
    Ratings:
    +135 / 0 / -0
    V9.9.1 is KO

    V9.9.0 is OK

    on my config
     
  11. Racinglegend1234

    Racinglegend1234 New Member

    Joined:
    Jan 30, 2023
    Ratings:
    +0 / 0 / -0
    Just tried it and seems it doesn’t work in AMS2.
     
  12. Cologne Racer

    Cologne Racer New Member

    Joined:
    Dec 7, 2019
    Ratings:
    +4 / 0 / -0
    Hello Winzarten,
    I would like to distribute the displays from Second Monitor over two monitors (one only with map, the other only live timing). However, since you cannot create two windows in SM, it would be possible to run two instances from SM on a computer at the same time, or do this problems with the data transfer from the SIM?
    Thanks very much!
    Cologne Racer
     
  13. Winzarten

    Winzarten Well-Known Member

    Joined:
    Jun 15, 2016
    Ratings:
    +377 / 0 / -0
    Hopefully it is fixed with the latest patch. :)
    https://onedrive.live.com/download?...b07c2e12e3f7b36!75350&authkey=ABh0KlA2KfPBaGg

    There might be an issue with UDP based sims (like the F1 series), as only one app can listen to the data at a time. Another issue might be both instances trying to access the same settings files, which would also make it difficult to have different layout on different instances.

    I might add a pop-up functionality for the map similary how it is in the telemetry view, where the map can be poped up to a separate.
     
  14. Cologne Racer

    Cologne Racer New Member

    Joined:
    Dec 7, 2019
    Ratings:
    +4 / 0 / -0
    That would of course be awesome !!!:):):)
     
  15. Hervé45

    Hervé45 Well-Known Member Beta tester

    Joined:
    Jan 25, 2017
    Ratings:
    +135 / 0 / -0
  16. Winzarten

    Winzarten Well-Known Member

    Joined:
    Jun 15, 2016
    Ratings:
    +377 / 0 / -0
    • Like Like x 1
    • Useful Useful x 1
  17. axxis278

    axxis278 Well-Known Member

    Joined:
    Jan 29, 2015
    Ratings:
    +59 / 0 / -0
    I reinstalled my W11 last saturday and Second Monitor worked fine until monday. Then I had some windows 22H2 updates, and thought there were then reason why Second Monitor stop working. Thanks for the update, working fine now.
     
  18. Winzarten

    Winzarten Well-Known Member

    Joined:
    Jun 15, 2016
    Ratings:
    +377 / 0 / -0
    This should now be possible. There is an option in the settings that will make the app render the track map also in a separate window. The app will remember that window possition between launches, so it sholdn't be necessary to reposition it after each application start.

    This will also work if the track map it not part of the main layout window. So technically one window can be whole timing, and another (the pop-up), can be track map. :)
     
    • Like Like x 3
  19. Cologne Racer

    Cologne Racer New Member

    Joined:
    Dec 7, 2019
    Ratings:
    +4 / 0 / -0
    Hi Winzarten,

    thank you for the change with the separate window for the map. Works perfectly! Thanks! Great work!

    Cologne Racer
     
    • Like Like x 1
  20. Benjamin Gielczynski

    Benjamin Gielczynski New Member

    Joined:
    Feb 25, 2023
    Ratings:
    +0 / 0 / -0
    Could anyone help me? I and my teammate want to use Second Monitor with the Remote function when I drive and my Teammate is spotting the sectors are shown normal but the other way around I can only see rounded times and no sectors I know that I fixed that Problem two years ago. But I forgot it sorry if the question is already answered. We are use rF2.