[REL] TinyPedal - open source overlay for rF2 (Pacenotes,Radar,FFB,Deltabest,Relative,Fuel Calculator)

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

Tags:
  1. francescodg

    francescodg Registered

    Joined:
    Nov 20, 2023
    Messages:
    11
    Likes Received:
    3
    Is it possible to add the maximum standing speed and the curve number on the map?
     
  2. MarcoSaupe

    MarcoSaupe Registered

    Joined:
    Feb 11, 2012
    Messages:
    49
    Likes Received:
    22
    I might have another suggestion:

    It would be nice to have the ability that there are different deltabest times your lap is compared to, e.g. qualifying and race trim.
    That could be made maybe in a way that if you leave the pits with fresh tires (i.e. > 99%) and low fuel (<15% or maybe adjustable threshold when I think about the Nordschleife) it switches to quali mode, otherwise to race mode, storing and comparing to two different files.
     
  3. David levis

    David levis Registered

    Joined:
    Jul 8, 2021
    Messages:
    11
    Likes Received:
    7
    Hi Victor,

    Is it possible with Tiny to create an option in the circuit map that indicates the approximate position where you will come out of the pits after doing a pitstop?

    I mean, for example, putting a colored circle on the map to show where you will come out after a pitstop. Of course, you will need to introduce an average pitstop time for calculations because Tiny cannot know what kind of pitstop you will do (tires, fuel).
     

    Attached Files:

  4. Simone Colombo

    Simone Colombo Registered

    Joined:
    Aug 28, 2024
    Messages:
    1
    Likes Received:
    0
    hello it is possible to use with openkneeboard?
     
  5. ebeninca

    ebeninca Registered

    Joined:
    Sep 7, 2016
    Messages:
    782
    Likes Received:
    561
    @svictor I noticed that the race start indicator in flag widget is not working only for the Rolling start mode, for Fast Rolling and other types it's showing correctly.
     
  6. svictor

    svictor Registered

    Joined:
    Jan 20, 2019
    Messages:
    1,032
    Likes Received:
    6,880
    Thanks, all suggestions noted. Some of them are not possible to implement, others may require significant work, can't say more.

    ---

    @ebeninca it's a known limitation related to API refresh rate.

    Here is full explanation to why currently "Green Flag"(Flag widget) doesn't work for rolling-start type race:

    Normally, "Flag" state is determined by "mGamePhase" reading from RF2's API, which is part of "Scoring" info that has a limit of 5 FPS (or 200ms) refresh rate. And almost all session and flag related info is part of "Scoring" info.

    Here is all API refresh rate quote from rF2SharedMemoryMapPlugin github page:
    This means when Flag state switched from "rolling/formation" to "Green flag" state (or any other state), there is a maximum of 200ms delay. As commonly known, average human reaction time is about 200ms to 300ms, with some training it may be down to around 50ms to 100ms. In worth case, you are looking at 200ms (API delay) + 300ms (human reaction time), which will cost you 500ms (half second) if use this "mGamePhase" reading from game API.

    This amount delay is unacceptable, especially in high level e-sports competition. And it will confuse user when placing it side by side with in-game HUD (which has no delay) as you can see big desync.

    So instead of giving user a very inaccurate and delayed(200ms) "green flag", it is currently not displayed during rolling-start type race. User should use in game HUD for green flag indication for rolling-start type race.

    But why "Green Flag" works in standing-start type race in Flag widget?
    This is because I implemented a workaround that uses timing data (from "telemetry info" that updates at 20ms rate, which is 10 times faster and accurate) to report accurate "Green Flag" state, which was mentioned in very earlier posts when Flag widget was first implemented. However, unfortunately this workaround does not work with rolling/formation type race, hence you don't see "Green Flag" in rolling-start race.

    Is there other workaround to get accurate "Green Flag" state for rolling-start?
    Not really, there is a workaround that I spent quite some time testing that partially works with rolling-start. However, it only works under certain conditions, and breaks for the others, which makes it not usable at the end.

    So those are the technical issues behind "Green Flag" display due to low API refresh rate with some data. My thought has been that, instead of using inaccurate API data to show "Green Flag", it's better for user to rely on in-game HUD and avoid confusion. But if any one thinks that the 200ms inaccuracy and reliability is not a problem, feel free to comment. (for more technical discussion, consider use github issue instead.)
     
    ebeninca, Rui Santos and yashiman like this.
  7. Andregee

    Andregee Registered

    Joined:
    Jun 23, 2012
    Messages:
    937
    Likes Received:
    394
    I changed from 2.15 to the latest version and have to notice anoying micro stutters using the Pedal App now.
     
  8. svictor

    svictor Registered

    Joined:
    Jan 20, 2019
    Messages:
    1,032
    Likes Received:
    6,880
    2.17.4 update
    https://github.com/s-victor/TinyPedal/releases/tag/v2.17.4

    [​IMG]

    Here is a few important bug fixes, and new "extra refilling" feature for Relative finish order Widget. Thanks to @thoraxe for suggestion and bug report.

    User Guide update:
    https://github.com/s-victor/TinyPedal/wiki/User-Guide#relative-finish-order

    Changelog
    • General
      • Fixed state check error while restarting API in rare case.
      • Add clickable API button on main window status bar
        that opens "Shared Memory API" config dialog for easy access.
    • Fuel calculator
      • Fixed an error when calculating with Gallon unit.
    • Relative finish order Widget
      • Add "show_extra_refilling" option, which shows readings of extra refilling row
        below "local player's refilling" row. Each extra refilling value equals "extra laps
        of consumption" plus "local player's refilling" value of same column.
        Those values save the trouble from manual calculation in case there will be extra laps.
        The first column of extra refilling row shows number of extra laps depends on
        "number of extra laps" setting, such as "EX+1" for 1 extra lap, or "EX+3" for 3 extra laps.
      • Add "number_of_extra_laps" option, which sets number of extra laps for extra refilling calculation.
        Default is "1" extra lap.
      • Updated usage and examples for Relative finish order Widget in User Guide.
     

    Attached Files:

  9. Jernej Simoncic

    Jernej Simoncic Registered

    Joined:
    Feb 6, 2013
    Messages:
    29
    Likes Received:
    15
    Is there a way to make the Radar fade in/out as cars get closer/further like LMU built-in radar does? Not at the edges, but the player car in the middle.

    Also it would be great if it was possible to set opacity for text and for background separately. For some things I'd like background to be basically invisible or very transparent, but text to be fully opaque, but as far as I understand it's tied together at the moment?
     
  10. svictor

    svictor Registered

    Joined:
    Jan 20, 2019
    Messages:
    1,032
    Likes Received:
    6,880
    To your first question:
    It is possible to create gradually fade for radar. One reason it hasn't been done is because TinyPedal's design focus has always been efficiency and keep CPU usage as low as possible.
    Edit: I just took a further look, it should be possible to add gradual fade effect without performance impact. I'll try add it in next update.

    To your second question:
    Since TinyPedal v2.0 initial released in last year, the APP has already supported customizing text and each background color opacity(alpha/transparency) completely separately. This feature was specifically mentioned in both User Guide and v2.0 initial release post:
    https://forum.studio-397.com/index....ve-fuel-calculator.71557/page-19#post-1127203

    User Guide about color transparency(see "color" section):
    https://github.com/s-victor/TinyPedal/wiki/User-Guide#common-terms-and-keywords

    There are many widgets already using different alpha color as in default setting as well.
    If you are familiar with hexadecimal(HEX) color code, you can also directly adjust alpha Hex code in config dialog.

    Cheers
     
    Last edited: Sep 17, 2024
  11. Jernej Simoncic

    Jernej Simoncic Registered

    Joined:
    Feb 6, 2013
    Messages:
    29
    Likes Received:
    15
    Ahhh I've completely overlooked the alpha channel setting! Thank you! Looking forward to the radar fade :)
     
  12. David levis

    David levis Registered

    Joined:
    Jul 8, 2021
    Messages:
    11
    Likes Received:
    7
    Hi Dan

    do you have an updated brandslogo for LMU? :)
     
  13. svictor

    svictor Registered

    Joined:
    Jan 20, 2019
    Messages:
    1,032
    Likes Received:
    6,880
    2.18.0 (2024-09-26) Major update
    https://github.com/s-victor/TinyPedal/releases/tag/v2.18.0

    User guide: https://github.com/s-victor/TinyPedal/wiki/User-Guide

    • General
      [​IMG]
      • Add global user config file as "config.json", which stores global user settings
        that are independent from user presets.
        For Windows, "config.json" is stored under "username\AppData\Roaming\TinyPedal" folder.
        For Linux, "config.json" is stored under "home/username/.config/TinyPedal" folder.
      • Log files are now stored in the same folder as global user config file.
      • All "Application" and "Compatibility" settings are moved into "config.json".
      • All Config dialogs now shows preset file name on title bar.
      • Color pick dialog now shows up to 16 previously picked colors in "Custom colors" selector.
      • Smaller panel size for "Fuel Calculator".
      • Most of widgets & modules code has been rewritten and optimized for improved efficiency
        and less CPU and memory usage.
        Note, currently both "Friction Circle" & "Navigation" Widgets are known to consume more
        CPU usage for drawing complex plot and animated map, especially with "Navigation" Widget
        and a lot of vehicles on track. If there is significant increase in APP 's CPU usage,
        try disable either widgets, which should help lower CPU usage to normal level.
        The new "System performance Widget" (see below) can be used to monitor performance change.
    • [New]Application dialog
      • Add "Application" to main window "Config" menu for customizing global application settings
        and saved in global user config file.
      • "grid_move_size, minimum_update_interval, maximum_saving_attempts" options from
        "compatibility" are moved to "application".
      • Add "show_confirmation_for_batch_toggle" option, which shows confirmation dialog
        for enabling or disabling all widgets or modules. This option is enabled by default.
    • [New]User path dialog
      • Add "User path" to main window "Config" menu for customizing global user path settings
        and saved in global user config file.
        To change user path, double-clicking on edit box to open "Select folder" dialog;
        or manually editing path text.
        Click "Apply" or "Save" to verify and apply new paths. Invalid path will not be applied.
      • For linux, all default user config-type paths are now set according to XDG specification,
        which is located under "home/username/.config" folder. (thanks to feedback from @Bernat)
        Changes include:
        • Default "user preset" path is changed to "home/username/.config/TinyPedal/settings/",
          previously this was set in "home/username/.config/TinyPedal/".
        • Default "brandlogo" path is changed to "home/username/.config/TinyPedal/brandlogo/",
          previously this was set in "home/username/.local/share/TinyPedal/brandlogo/".
          Note, if you wish to keep using old paths on linux, you can use "User path dialog"
          to set paths to the old ones as mentioned above.
      • See User Guide "User path" section for additional info.
    • [New]Auto load preset system
      • Add "Auto load preset" system (implemented by naturale0) to allow auto loading user-defined
        game-specific preset depends on active game (currently supports RF2 and LMU).
        Auto loading preset is triggered when a new or different game is started & active.
        Auto loading will only trigger once per game change.
        A preset must be tagged as "primary" for specific game before it can be auto loaded.
        This option is disabled by default.
      • Add "Auto load primary preset" check box in "Preset" tab, which enables or disables
        "Auto load preset" system.
      • Add "primary preset" tagging function in "Preset" tab, user can "Right" click on a preset
        and select "Set primary for ***" to tag a preset as "primary" for specific game.
        To clear all tags from selected preset, "Right" click and select "Clear primary tag".
        Primary preset will be auto loaded when "Auto load primary preset" is enabled and
        a new or different game is started & active.
        Note, a single preset can have tags from multiple games.
    • Shared Memory API
      • Improved accessing efficiency, now uses fast-restart method for same API.
      • Significantly reduced opponents vehicle position desync issue when using "direct access" mode
        (as previously was noticeable on Radar Widget sometimes).
    • Vehicle Brand Editor
      • Now allows multi-selection for deleting vehicle brand entries.
      • Fixed some vehicle info that could not be imported from LMU Rest API (issue reported by @DanRZ).
        Make sure to use "import" again from Vehicle Brand Editor to update missing vehicle info from LMU.
    • Wheels module
      • Add differential locking calculation and output for the new Differential Widget.
      • Add "minimum_axle_rotation" option, which sets minimum axle rotation (radians per second)
        for calculating wheel radius and differential locking percent.
        Default value is "4".
      • Add "maximum_rotation_difference_*" options, which set maximum rotation difference (percentage)
        between left or right wheel and same axle for limiting wheel radius calculation.
        Setting higher difference value may result inaccurate wheel radius reading.
        Default value is "0.002".
    • Brake bias Widget
      • Add "layout" option, which sets display orientation.
        Default is horizontal. Set "0" to show vertically.
    • Cruise Widget
      • Add "layout" option, which sets display orientation.
        Default is horizontal. Set "0" to show vertically.
      • Add "odometer_maximum_digits" option, which sets maximum number of display digits.
    • [New]Differential Widget
      [​IMG]
      • Show minimum differential locking percent between left and right wheels on the same axle
        under power (on throttle) or coasting (off throttle).
        A "100%" reading indicates two wheels on the same axle are rotating at same speed;
        while "0%" indicates that one of the wheels is completely spinning or locked.
        Each reading will reset back to "100%" if minimum locking percent hasn't changed during
        cooldown period, as defined by "reset_cooldown" option.
    • Instrument Widget
      • Changed default "layout" setting value to "1" for horizontal layout for consistency.
        User may need to edit old value "0" to "1" to display horizontal layout.
      • Wheel slip warning indicator now only shows under acceleration.
    • [New]Laps and position Widget
      [​IMG]
      • Show your current lap number (lap progression) & max laps if available.
      • Show your current overall position against all drivers in a session.
      • Show your current position in class against all drivers from the same class.
    • P2P Widget
      • Replaced old "font_color_inactive" and "bkg_color_inactive" color settings with new cooldown
        "font_color_battery_cooldown, bkg_color_battery_cooldown" for battery charge, and
        "font_color_activation_cooldown, bkg_color_activation_cooldown" for activation timer.
    • Radar Widget
      • Add "enable_radar_fade" option (feature requested by @Jernej Simoncic), which enables
        gradually fade in/out effect while opponent vehicles approach or leave radar range.
      • Add "radar_fade_out_radius" option, which sets radar fade out radius relative to radar radius.
        Value range in "0.5" to "1.0". Default value is "0.98".
      • Add "radar_fade_in_radius" option, which sets radar fade in radius relative to radar radius.
        Minimum value is limited to "0.1", maximum value cannot exceed "radar_fade_out_radius".
        Default value is "0.8".
      • Renamed options "show_fade_out, fade_in_radius, fade_out_radius" to
        "show_edge_fade_out, edge_fade_in_radius, edge_fade_out_radius" to
        distinguish from new radar fade options.
    • Relative, Rivals, Standings Widget
      [​IMG]
      • "show_pit_status" option now also displays garage status (as "G" sign) for driver in garage.
      • Add "garage_status_text" option, which sets custom garage status text for driver in garage.
    • Session Widget
      • Removed "lap number" and "driver position" readings. Those two readings are now included in
        the new "Laps and position Widget".
      • Add "layout" option, which sets display orientation.
        Default is horizontal. Set "0" to show vertically.
    • Speedometer Widget
      • Changed default "layout" setting value to "1" for horizontal layout for consistency.
    • [New]System performance Widget
      [​IMG]
      • Show system's overall CPU utilization (percent) and memory usage (GB).
      • Show TinyPedal's CPU utilization (percent) and memory usage (MB).
    • Tyre carcass temperature Widget
      • Now calculates temperature rate of change at an average base interval of 0.1 seconds
        which is then scaled to "rate_of_change_interval" value for more responsive estimate.
      • Add "rate_of_change_smoothing_samples" option for smoothing data and filter out fluctuation.
    • Tyre wear Widget
      • Now uses laptime pace for calculating "tyre lifespan in minutes".
    • [Reworked]Weather Widget
      [​IMG]
      • Add weather trend indication, which shows whether there has been an increasing or
        decreasing trend for temperature, raininess, wetness readings for a given period.
        This can be useful to determine pit stop strategy.
      • Add "temperature_trend_interval", "raininess_trend_interval", "wetness_trend_interval"
        options, which set each trend interval in seconds. Default interval is "60" seconds.
      • Add "prefix_rain", "prefix_dry", "prefix_wet", "font_color_trend_constant",
        "font_color_trend_decreasing", "font_color_trend_increasing" options.
      • Improved display formatting for temperature, raininess, wetness readings.
    • Weather forecast Widget
      • The "now" column always shows current weather condition even if RestAPI Module is disabled.
    • Misc
      • Updated User Guide for all changes mentioned above and additional usage info.
      • Added new contributor "Sihyung Park (naturale0)" to contributors.md.

    Happy driving
     

    Attached Files:

    Javier G R, PaZill, yashiman and 11 others like this.
  14. mesfigas

    mesfigas Registered

    Joined:
    Oct 15, 2015
    Messages:
    1,741
    Likes Received:
    830
  15. DanRZ

    DanRZ Registered

    Joined:
    Aug 22, 2021
    Messages:
    802
    Likes Received:
    273
    David levis likes this.
  16. Marcelo Prestes

    Marcelo Prestes Registered

    Joined:
    Sep 26, 2024
    Messages:
    1
    Likes Received:
    0
    Good afternoon everyone, sorry if I'm asking the question in the wrong place, I looked at the 38 pages of this forum and didn't find anything regarding my problem, I use a screen with 1440p resolution and I feel that some things are too small, is there any way I can increase the size? If there is someone can tell me where because I couldn't find it, and congratulations on the excellent overlay!!!
     
  17. Jernej Simoncic

    Jernej Simoncic Registered

    Joined:
    Feb 6, 2013
    Messages:
    29
    Likes Received:
    15
    Thank you! What is the best way to update the program? Install the new one and copypaste presets and stuff from old one?
     
  18. DanRZ

    DanRZ Registered

    Joined:
    Aug 22, 2021
    Messages:
    802
    Likes Received:
    273
    Just drop the content of the archive in the installation. Settings will update by them selves at next start.
    All new widgets will be active by default, you will have to disable them or reconfigure them.
     
    Jernej Simoncic likes this.
  19. svictor

    svictor Registered

    Joined:
    Jan 20, 2019
    Messages:
    1,032
    Likes Received:
    6,880
    Thanks all for supports and comments.

    To @Marcelo Prestes:
    You can increase most widget size by adjusting font size bigger (in each widget's Config dialog), which will make them bigger; also an easier way is to use "Global font override" dialog (from main menu) to change all widget's font size at once. Note, there are a few widgets size are not affected by font size, but by special size setting which can be found in their Config dialog (such as radar widget by radar radius & global scale options, and trackmap by area size option, etc). You can find more info in User Guide .

    [​IMG]
     
    Marcelo Prestes, DanRZ and yashiman like this.
  20. LIOTH

    LIOTH Registered

    Joined:
    Jul 23, 2024
    Messages:
    2
    Likes Received:
    1
    Hello @svictor, whenever I try to import cars via LMU REST API in the Vehicle Brand Editor, it is always unable to do. I am always in an online session when I do this, I restart the API and it still doesn't work, any idea? I'd like to import the latest cars
     

Share This Page