LMU Broadcast Control

Just tried the beta Overlay on a practice session and noticed a mistake between GTE and LMGT3.
Broadcast control UI is OK but the beta Overlay is wrong displaying LMGT3 instead of GTE.

All classes : Hypercar + LMGT3 on beta Overlay, but Hypercar + GTE in control UI.
View attachment 13496


One class : LMGT3 on beta Overlay, but GTE in control UI.
View attachment 13497

Sorry if it has already been mentionned.

Also, all cars with liveries show LM instead of brand logo.
Would you mind submitting here please: https://forms.gle/ETVEGw3GYuGD1mt89
 
Sure, checked the sheet for existing bugs, described quite simply the bug but it also asked for a feature requets ???
I just added "No answer for that" on feature description, but couldn't add any image.
Next time i will proceed with that form.
 
Sure, checked the sheet for existing bugs, described quite simply the bug but it also asked for a feature requets ???
I just added "No answer for that" on feature description, but couldn't add any image.
Next time i will proceed with that form.
It's a bug, so log it as such. I've taken a look anyway and found the issue. Will be a fix in the next update.
 
Last edited:

[0.2.5]
Added

  • Beta Overlay: tyre compound indicators — coloured pills on tower rows showing current tyre compound from shared memory. Available as a field mode (alongside Interval, Gap, Stops, Pos +/-, Energy) with auto-cycle support. WEC Michelin colour palette. Graceful fallback when shared memory is unavailable.
  • Beta Overlay: driver info redesigned as a 1v1-style card — position, best lap, last lap, tyre compound, class badge, manufacturer logo, car number, and driver name.
  • Beta Overlay: tyre compound pill added to 1v1 battle graphic and qualifying info.
  • Beta Overlay: class colour left border accent on driver info and qualifying info panels.
  • Beta Overlay: longer class badge labels (HYPER, LMP2, LMP3, GTE, LMGT3).
  • Beta Overlay: sector delta replaces the S1/S2/S3 label when a sector completes — shows delta to personal best.
  • Beta Overlay: smooth track map — car dots update every 150ms via shared memory (local PC only). Falls back to 1s REST on remote PCs.
  • Beta Overlay: yellow flag causer highlighted as gold dot on track map.
  • Beta Overlay: replay driver info — shows driver info panel for the involved car during yellow flag/slow car replays.
  • Beta Overlay: replay 1v1 graphic — shows modified 1v1 for contact/collision replays. Manual replays show REPLAY banner only.

Fixed

  • Beta Overlay: qualifying info no longer shows false orange sectors at session start — PBs reset on session change.
  • Beta Overlay: qualifying info panel width no longer jumps between drivers — fixed to longest name in session.
  • Beta Overlay: GTE class filter now correctly shows "GTE" header instead of "LMGT3".
  • Beta Overlay: tower cycling no longer duplicates entries when remaining cars < cycle step size.
  • Beta Overlay: Ferrari badge resolves for custom GTE skins with "488GTE" in vehicle name.
  • Beta Overlay: BMW badge resolves for custom BMW M Hybrid teams with "BMWMH" vehicle prefix.
 
I got ahead of myself and should have waited, didn't expect to get this working so quickly.

[v0.2.6]

Added

Stream Deck plugin for Elgato Stream Deck — control the Beta Overlay directly from hardware buttons. 7 action types: Overlay Toggle, Tower Field, Name Display, Class Filter, Tower Auto-Cycle, Results Control, Grid Control.
Stream Deck: green active-state highlighting — buttons turn green when their associated overlay or feature is active, providing at-a-glance feedback.
Stream Deck: class filter context selector — configure class filter buttons for Tower, Session Results, or Mid-Race Results context, with matching labels and green highlighting.
Stream Deck: app logo used as plugin icon in the Stream Deck action list and marketplace.

Stream Deck Plugin Installation
Close the Elgato Stream Deck application.
Copy the com.lmu-broadcast-control.streamdeck.sdPlugin folder from the streamdeck-plugin directory to %APPDATA%\Elgato\StreamDeck\Plugins.
Restart the Stream Deck application.
The LMU Broadcast Control category will appear in the Stream Deck action list.
Requirements: LMU Broadcast Control must be running with the Beta Overlay active. The plugin connects to localhost:5111.

Fixed

  • Installer: fixed missing application DLL and dependencies — the installer now includes all published files, resolving "The application to execute does not exist" errors on launch.
  • Installer: removed unnecessary .NET 8 Desktop Runtime check — the app is self-contained (runtime bundled), so the check was incorrectly blocking installation for users without a separate .NET install.
 
Last edited:
[v0.2.7]

Added

  • LMU SM Bridge — standalone console application for streaming shared memory data from a remote PC running Le Mans Ultimate. Enables tyre compounds, smooth track map, yellow flag sectors, and SM collision detection when the game runs on a different PC. Configured via SM Bridge port and token fields on the Home screen.
  • Shared memory abstraction with local and remote implementations. Local reads game memory directly; remote connects to SM Bridge via WebSocket with token-based authentication.
  • SM Bridge bundled in main installer — included under the SM Bridge subfolder so users don't need a separate download. Copy the folder to the remote PC to use.
  • Stream Deck plugin bundled in main installer — included under the plugins subfolder for easier setup. Note: Stream Deck integration currently only works with PC 1.
  • Home screen: SM/Bridge status indicator next to REST and WS — shows "SM:" for local connections and "Bridge:" for remote connections. Polls every 2 seconds.
  • Beta Overlay: "Remove Numbers" toggle — hides car numbers across all overlay elements (tower, driver info, 1v1, qualifying info, starting grid, results). Tower narrows when numbers are hidden; slide-out lap times adjust automatically.
  • Beta Overlay: settings persistence — Remove Numbers, name display mode, auto-cycle seconds, mixed max cars, mixed auto-cycle seconds, and custom max rows per class are now saved and restored between sessions.

Fixed

  • Beta Overlay: stale class filter — classes from a previous session (e.g. Hypercar) no longer appear in the filter when they are not present in the current session.
  • Beta Overlay: LMP3 class colour now matches Live Timing purple — previously fell through to default gray.
  • Ligier manufacturer badge now uses the light variant on both Live Timing and Beta Overlay — previously used the dark variant which was hard to see on the dark background.
  • Beta Overlay: 1v1 center gap now matches the tower interval — reuses the precomputed gap value instead of recomputing independently.
  • Beta Overlay: 1v1 long driver names no longer overflow the card — text is truncated with ellipsis.
  • Beta Overlay: qualifying info no longer inherits practice sector PBs on session transition.
  • Beta Overlay: qualifying info sector deltas now appear immediately from the second lap onward.
  • Beta Overlay: qualifying info sector colours now update in real-time when another car beats the focused driver's sector.
  • Beta Overlay: qualifying info sector colours no longer retroactively change at the S/F line.

Changed

  • Home screen: PC panels renamed from "PC 1 (Local)"/"PC 2 (Remote)" to "PC 1"/"PC 2".
  • Home screen: PC1 and PC2 panels are now vertically aligned.
  • SM Impact Detection is now always active when shared memory data is available — removed the experimental settings checkbox.
  • Beta Overlay: driver info and 1v1 panels now measure the longest driver name in the session and fix their width accordingly, preventing layout jumps.
  • Beta Overlay: replay driver info and 1v1 now use the same rendering as live versions for visual consistency.
  • Beta Overlay: "All Classes" class filter renamed to "Multi-class".
  • Beta Overlay: default name display changed to "F. Lastname" (previously "Driver").
  • Beta Overlay: 1v1 now defaults to the closest car (ahead or behind) instead of always showing the car behind.
  • Beta Overlay: driver info panel now shows "F. Lastname" format.
  • Beta Overlay: added track name mappings for alternate layouts.

Known Limitations

  • Stream Deck plugin currently only works with the PC 1 Beta Overlay instance.
 
[v0.2.8]

Quick fix

Fixed
Beta Overlay: tyre field now appears in tower auto-cycle rotation — previously the tyre mode was missing from the cycle loop, so it was skipped even when enabled in rotation settings. Tyre is only included when shared memory tyre data is available.
 
[v0.2.9]

Added

  • Beta Overlay: chequered flag pattern on tower rows when a car finishes the race — CSS checkerboard background with semi-transparent white squares. Top 3 per class receive gold, silver, and bronze tinted patterns with matching left border accents.
  • Beta Overlay: auto-DNF — cars in pits for more than 5 minutes during a race are automatically shown as DNF on the tower. Cars in the garage are marked as DNF immediately. Clears if the car returns to track.
  • Beta Overlay: finished cars retain chequered flag pattern when returning to pits — auto-DNF is skipped for cars with a finished status, preventing the grey-out from overriding the finish styling.
  • Beta Overlay: session clock — in-game time of day displayed top-center, always visible when the tower is active. Derives time from session start setting plus elapsed time.
  • Beta Overlay: Session Info toggle — slides in below the clock showing current weather condition with symbol (e.g. "Overcast, Heavy Rain"), air temperature, track condition (grip preset or wetness level), and track temperature.
  • Beta Overlay: Forecast toggle — shows the next weather node from the schedule with condition, temperature, and rain chance percentage. Mutually exclusive with Session Info.
  • Live Timing: header now shows weather condition, air temperature, track condition, track temperature, rain percentage, and forecast with rain chance.
  • Stream Deck: toggleForecast action added for controlling the forecast panel.

Changed

  • Beta Overlay: qualifying info sector colours now follow WEC TV convention — yellow for no improvement (was orange), grey for first-lap/no-baseline (was white). Purple (class best) and green (personal best) unchanged.
  • Beta Overlay: all overlay background opacity increased to 95% (from 90–92%) for improved readability. Slide-out lap time remains at 70%.
  • Live Timing: sector columns now use yellow background with black text for slower-than-PB times (was orange with white text)

Fixed

  • Beta Overlay: GAP column now shows laps down relative to the class leader in class and multi-class modes, and relative to the overall leader in mixed mode — previously showed incorrect values for lapped cars in individual class view.
  • Beta Overlay: INTERVAL column in class mode now shows the gap to the car directly ahead within the same class, instead of the car ahead in overall order.
  • Beta Overlay: false "+1 LAP" display at S/F line crossings eliminated — lap progress is now estimated from sector cumulative times when the API doesn't provide track position data, preventing momentary false lap-down gaps as the leader crosses the line.
  • Beta Overlay: replay driver info panel no longer shows the driver's current position — position was updating live during replay playback, causing misleading display.
  • Beta Overlay: session results gap column no longer blank after race — gap data is now preserved for finished cars when the API clears timing values post-race.
  • Beta Overlay: results page counter now resets to page 1 when switching class filter or session key.
  • Beta Overlay: tower row alignment no longer shifts when finish or yellow-causer borders appear — all rows now reserve space for the left border with a permanent transparent 3px border.
  • Beta Overlay: qualifying info no longer highlights sectors green when the time equals the personal best (+0.000 delta) — only strictly faster times are shown as personal bests.
 
[v0.3.0]

Added

  • Cockpit Camera — driving position camera button added to Live Timing and Broadcast Control windows
  • Hide Clock toggle — hides the session clock from the overlay, persists between sessions
  • Fastest Lap Banner — when a driver sets the session-best lap in their class during qualifying or race, a "FASTEST LAP" panel slides in below the clock/weather area showing class badge, manufacturer logo, car number, driver name, and lap time. Auto-hides after 15 seconds. Multiple classes queue sequentially; same-class improvements update in-place
  • Qualifying leader lap times — class leaders now show their best lap time in the interval/gap column. Mixed mode shows overall leader; multi-class and individual class modes show each class leader

Changed

  • "Remove Numbers" renamed to "Hide Numbers" for consistency
 

[v0.3.1]

Changes

  • Beta Overlay: race session results now show DNF cars — rows are faded and the gap column displays "DNF"
  • Beta Overlay: added background to 1v1 gap display
  • Beta Overlay: added gap to 1v1 driver boxes on replay
  • Add app icon to LMU SM Bridge
 

[v0.3.2]

Added​

  • Real-time virtual energy — Hypercar and GT3 VE now updates every poll cycle via UI WebSocket instead of the previous 5-second REST delay. Live Timing displays with one decimal place (e.g. "87.3%").
  • Shared memory fuel data — LMP2 and other non-VE classes now read fuel level from SM telemetry as percentage of tank capacity.
  • Off-track detection — SM-based lateral position vs track edge comparison triggers yellow flag overlay and broadcast control events for cars stuck off-track. Includes buffer, lateral cap, poll threshold, and speed gate to avoid false positives.
  • Yellow flag causer attribution — when the game reports a sector yellow but no slow-car or off-track was detected, the slowest car in the sector is identified as the likely causer.
  • Corvette C8R GTE manufacturer badge mapping.

Changed​

  • Yellow flag persistence — SM sector flags must be continuously active for 2 seconds before showing on overlay, filtering brief/spurious game flags.
  • Yellow flag deduplication — events are now deduplicated across all three detection paths (off-track, slow-car, causer fallback).
  • Contact detection tuning — speed_shock high-speed gate lowered to 150 kph with tighter proximity (6m 3D / 5m 1D); delayed_spin now checks 3D distance and filters lag disconnects (0 kph + 0 accel); detection auto-disabled in private qualifying (MNN > 50m).
  • Pre-race DNF gating — auto-DNF only activates after any car completes a lap, preventing garage cars from showing as DNF before the start.
  • SM fuel reading prefers telemetry mFuel/mFuelCapacity over scoring mFuelFraction byte.
 

[v0.3.3]​

Fixed​

  • Contact detection: MNN private-qualifying gate was silently disabling contact detection.
  • Yellow flag highlight on live timing now clears when the causer recovers to racing speed (>80 kph) or enters the garage — previously persisted until the sector flag expired.
  • Overtake detection now uses class position instead of overall position — prevents false overtakes caused by pit stops or other-class movements.
  • False SM impact contacts between slow/stationary cars and fast passing cars filtered by speed differential gate (slow < 30 kph, fast > 150 kph).
  • Pit-lane starters now correctly detected during formation lap — game API doesn't flag them as pitting, so a LapProgress01 heuristic identifies cars far behind the pack.

Changed​

  • Overtake detection: suppressed until all cars have cleared sector 1 on lap 1 — reduces noise in broadcast control during race start.
  • Overtake detection: cross-class overtakes suppressed — only same-class position swaps are reported.
  • Contact detection: tick shock threshold lowered from 15 to 12 kph for better glancing-blow sensitivity.
  • Contact detection: delayed_spin watch window extended from 2s to 5s to catch delayed reactions to contact.
  • Tower name buttons (Drivers/Teams/F. Lastname) now toggle the tower off when clicked while already active — header and session clock remain visible.
  • Tower sort: pit-lane starters and garage cars pushed to bottom during formation lap.

Added​

  • Specific onboard camera buttons: On Cockpit (ONBOARD01), On Dash (ONBOARD02), On Rear (ONBOARD06) — cycles to a specific onboard camera via the watch API. Consistent mapping verified across all five classes (Hypercar, LMP2, LMGT3, GTE, LMP3). Available on both Live Timing and Broadcast Control.
  • Broadcast Control window widened to 1350px to accommodate new camera buttons.
  • All camera buttons standardised to consistent width across Live Timing and Broadcast Control.
 

[v0.3.4]

Fixed

  • 1v1 battle graphic shifted right to avoid clashing with the timing tower when the tower is long enough for lap time slide-outs to overlap.
  • Lap time slide-out now positions to the right of any visible penalty or DQ badge — previously overlapped directly on top of the badge.
  • Track condition "Naturally Progressing" (from server API) now displays as "Evolving Grip" on both the overlay and live timing.

Changed

  • Fastest lap banner: enlarged and repositioned to cover the clock and weather area. Clock and session info/forecast fade out before the banner wipes in (left-to-right), then wipe out (right-to-left) when done. Display duration unchanged (15s).
  • Race results: class gap computation now uses timeBehindLeader subtraction (finalized at race end) instead of cumulative timeBehindNext chain — fixes inflated/wrong gap values to class leader.
  • Race results: lap-down display now validated with 60s minimum gap per lap to prevent S/F crossing artifacts.
  • Yellow flag: spins with a large speed drop (≥80 kph) now trigger immediately on the first poll — previously required 3 consecutive polls below 40 kph, missing brief spins.
  • Yellow flag: lag disconnects (speed dropping to exactly 0 from racing speed) are now filtered — prevents false yellow flags from network issues.
  • Beta Overlay: tower now activates automatically on first load when settings restore a name button as checked.
  • Manufacturer badge: teams running different chassis across classes (e.g. AF Corse with both Oreca LMP2 and Ferrari Hypercar) no longer show the wrong badge. Uses precise vehicle ID matching with conflict-aware fallback.
  • Onboard camera buttons (On Cockpit, On Dash, On Rear): smarter cycling with per-car camera count dictionary — skips unnecessary sync advance when already on onboard, preventing overshoot when switching between onboard cameras.

Added

  • Session results diagnostic CSV (logs/results/) — written automatically when session results are captured. Contains raw gap data for debugging incorrect gaps in session results.
 
Oh man, I've only just seen this. Cannot wait to give it a try!!!

Been using the default for months and it's severely lacking in features. I'll report back after my next event!
 

[v0.3.5]

Added

  • Pre-Arm Replay — opt-in checkbox on Broadcast Control that immediately enters replay mode, eliminating the pit-lane flash that normally occurs when switching from live to replay. When you click an incident, the seek is instant with no mode transition. If replay auto-exits to live, the app re-arms when the next incident is detected. After post-roll expires, the app stays in replay and re-arms for the next incident. Enable it with the Pre-Arm checkbox next to Pre-roll/Post-roll.

Changed

  • 1v1 battle graphic now dynamically positions itself to clear the timing tower and lap time slide-outs while staying as close to centre as possible.
  • Camera buttons on Broadcast Control now auto-size to content instead of fixed width.

Fixed

  • Lap time slide-out now positions to the right of any visible penalty or DQ badge.
  • Track condition "Naturally Progressing" now displays as "Evolving Grip".
  • Broadcast Control badge resolution for GT3 entries.
 
Back
Top