[REL] TinyPedal - open source overlay APP for rF2 (Radar,Pedal,FFB,Deltabest,Relative,Fuel calculator)

Discussion in 'Other' started by svictor, Mar 14, 2022.

Tags:
  1. Flatspotter

    Flatspotter Registered

    Joined:
    Oct 7, 2010
    Messages:
    378
    Likes Received:
    120
    I see, sounds like a giant pain. Thank you for your response and especially for this tool!
     
    svictor likes this.
  2. davehenrie

    davehenrie Registered

    Joined:
    Jul 6, 2016
    Messages:
    7,454
    Likes Received:
    4,370
    now, now, :) don't just say 'this tool,' NAME IT!!!!
     
    svictor and Flatspotter like this.
  3. svictor

    svictor Registered

    Joined:
    Jan 20, 2019
    Messages:
    929
    Likes Received:
    6,286
    Thanks all, I will explore more options and possibilities and see what I can do, and there are quite a few things on todo list as well, just need to find more time to work on it.
     
    Corti likes this.
  4. Corti

    Corti Registered

    Joined:
    Sep 29, 2014
    Messages:
    1,354
    Likes Received:
    2,495
    Closer to the old and dear Trackmap :rolleyes:

    [​IMG]
     
    Rui Santos, atomed, VirusGR42 and 3 others like this.
  5. mixer61

    mixer61 Registered

    Joined:
    Dec 26, 2011
    Messages:
    553
    Likes Received:
    149
    And for vr player ?
     
    JimmyT likes this.
  6. thoraxe

    thoraxe Registered

    Joined:
    Dec 25, 2016
    Messages:
    149
    Likes Received:
    15
    Can you please offer imperial units for all of the different gauges? You offer psi and MPH but the temperatures (tyres) are all Celsius.
     
    svictor likes this.
  7. thoraxe

    thoraxe Registered

    Joined:
    Dec 25, 2016
    Messages:
    149
    Likes Received:
    15
    @svictor I can hack some python if you're willing to let me attempt it. I could add a `temp_unit` config flag and then simply add a second set of variables for "calculated temp" that's only used for the display. Would that be OK with you?
     
    svictor likes this.
  8. svictor

    svictor Registered

    Joined:
    Jan 20, 2019
    Messages:
    929
    Likes Received:
    6,286
    hi, thanks for asking. Of course, it's open source, any contribution is very welcome, feel free to hack the code.

    And very good suggestions as well, if you are not in a hurry, I can add that to the code soon. I have also started coding improved handling to config file, which is important for future expanding options. But I will need find more time for it, as currently I have been working on several other projects.
     
  9. thoraxe

    thoraxe Registered

    Joined:
    Dec 25, 2016
    Messages:
    149
    Likes Received:
    15
    Just submitted a hacky PR:
    https://github.com/s-victor/TinyPedal/pull/1

    In the cases where you hadn't handled unit conversions there was some weirdness between strings and numbers that I probably did not handle in the prettiest way.
     
    ebeninca and svictor like this.
  10. svictor

    svictor Registered

    Joined:
    Jan 20, 2019
    Messages:
    929
    Likes Received:
    6,286
    Thanks, I have sent reply on pull page.
     
  11. The Iron Wolf

    The Iron Wolf Registered

    Joined:
    Feb 20, 2016
    Messages:
    984
    Likes Received:
    984
    Check out the Crew Chief VR overlays functionality - it might be possible to position this overlay in VR that way.
     
    JimmyT, svictor and atomed like this.
  12. svictor

    svictor Registered

    Joined:
    Jan 20, 2019
    Messages:
    929
    Likes Received:
    6,286
    v1.1.5 update - Imperial unit & Pressure widget
    Download: https://github.com/s-victor/TinyPedal/releases/tag/v1.1.5

    This small update brings several changes, improvements, and new features.
    New additional imperial unit types (by thoraxe) for Fuel, Temperature, Weather widgets are now available. Thanks to thoraxe's contribution.
    Added new Pressure (tyre) widget to APP, which also displays tyre load info. (note, many DLC cars don't output load info, so the value shows zero)
    Wear (tyre) widget now displays additional tyre wear usage info from last lap (color changes based on severity of wear), which is handy for endurance races.
    upload_2022-4-2_14-27-52.png

    Full changelog:
    TinyPedal 1.1.5 (2022-04-02)
    ----------------------------
    * [New]Pressure widget
    - Tyre pressure is now a separated widget that show pressure & load.
    - Tyre load display can be turned off separately.

    * Wear Widget
    - Show new Tyre wear usage from last lap.
    - No longer shows Tyre pressure.

    * Core
    - [New]Add additional unit types (by thoraxe) for Fuel, Temperature, Weather widgets.
    - Improved laptime validating function for "deltatime" module.
    - Moved most string formatting from calculation.py to individual widgets,
    which avoids repetitive string & number conversion.
    - Updated setting entries & code cleanup

    * Misc
    - Updated README.md, moved Feature section to features.md file.
    - Updated customization.md with new config options (by thoraxe).
    - Updated contributors.md with new contributor (thoraxe).
     
    Last edited: Apr 2, 2022
  13. ebeninca

    ebeninca Registered

    Joined:
    Sep 7, 2016
    Messages:
    738
    Likes Received:
    525
    Following the @thoraxe proposal, I decided to look into the code and try to add the option to replace the Position on relative screen to "Position In Class". Problem is, this information doesn't exists in the pyRfactor2SharedMemory module.

    @The Iron Wolf
    Does the shared memory DLL has this information?

    Maybe it's just a matter of updating the pyRfactor2SharedMemory.

    upload_2022-4-3_18-13-32.png


    upload_2022-4-3_18-20-44.png
     
    Last edited: Apr 3, 2022
    svictor and Corti like this.
  14. svictor

    svictor Registered

    Joined:
    Jan 20, 2019
    Messages:
    929
    Likes Received:
    6,286
    thanks for help.

    unfortunately, this info is not available from sharedmemory (it is not a limitation of plugin), in fact there are many data not available directly from rf2's API (however they can be indirectly obtained by calculating). The API only provide some of the basic but important raw data, which requires further process. Many of those relative/deltabest/timing widget data have to be calculated from those raw data, that's why there are a few functionalities aren't straight forward available.

    (for example both relative & deltabest calculation modules took me two more weeks of time to research and code from scratch, with the help from @zxd1997 )

    Class position will need an additional set of functions to calculate the data. From a quick brainstorm, the idea should be first to arrange all cars into class group(create lists), then within each class list retrieve "position place" info from API and then sort by number order and assign new class place index to each car, and finally assign those indexes onto the specific cars on relative list.

    (i'm currently working on isle of man, so have to wait a bit until have time to look into this and many other ideas)
     
    Last edited: Apr 4, 2022
    ebeninca, atomed and Corti like this.
  15. ebeninca

    ebeninca Registered

    Joined:
    Sep 7, 2016
    Messages:
    738
    Likes Received:
    525
    Ok, it's not an urgent thing, I just thought that this could be a simple thing to do, but as you explained, it isn't. So I prefer to wait and let you do it.
     
    svictor likes this.
  16. Diego Barjollo

    Diego Barjollo Registered

    Joined:
    Feb 4, 2020
    Messages:
    125
    Likes Received:
    155
    Very good overlay @svictor Thanks for you work, including the TinyCompactHud.

    The only thing i don't like of this overlay is that it costs me around 20 FPS which i don't like to lose. :)
     
    Rui Santos and svictor like this.
  17. ebeninca

    ebeninca Registered

    Joined:
    Sep 7, 2016
    Messages:
    738
    Likes Received:
    525
    Strange, because it didn't cost any fps for me. Maybe your hardware is too old.
     
  18. svictor

    svictor Registered

    Joined:
    Jan 20, 2019
    Messages:
    929
    Likes Received:
    6,286
    The app costs around 5% CPU usage with all 15 widgets, which shouldn't be any issues, unless CPU is not strong enough (less than 3.0ghz). (note, most of CPU usage of the app is from GUI graphic updating)

    Also RF2 has a default option that will greatly reduce game speed(to conserve power) if RF2 window is unfocused. Although TinyPedal has already implemented a code to never gain focus on itself, it may still possible that some other stuff takes window focus and cause RF2 to lose focus.
    (one possible case is that by enable or disable a widget, RF2 can lose focus probably due to system tray menu gaining focus, and require to click on RF2 once to gain focus back on RF2).

    So it is a good idea to manually disable auto speed reduction feature in RF2( it's in player.json file).

    Other than those things, I would suggest to turn off unused widgets. at least half of the available widgets are there to aid racer for practicing and specially for making setup easier, and those widgets are best to turned off while racing, to improve performance and reduce information flooding that is not very useful for races.
     
    Last edited: Apr 5, 2022
  19. Diego Barjollo

    Diego Barjollo Registered

    Joined:
    Feb 4, 2020
    Messages:
    125
    Likes Received:
    155
    RTX3070, Ryzen 7 5800x, 32Gb RAM 3600 mhz. I don't think is that old.
     
  20. Diego Barjollo

    Diego Barjollo Registered

    Joined:
    Feb 4, 2020
    Messages:
    125
    Likes Received:
    155
    But, did you notice any FPS drop? For me every single one is important cause I'm on a 240hz monitor.
    Do you think running other apps at the same time like CrewChief could cause problems?


    "So it is a good idea to manually disable auto speed reduction feature in RF2( it's in player.json file)."

    I will try this, thank you.

    EDITED: I didn't find any "auto speed reduction" line on the player.json :(
     
    Last edited: Apr 5, 2022

Share This Page