Skip to content

Changelog

Release notes for each version of iRaceDeck. The newest release is listed first. For installation help, see the installation guide; to grab the latest build, head to the downloads page.

2026-07-16

Features

  • Force Feedback now works on a Stream Deck+ dial: turn it to adjust FFB strength or the wheel / bass-shaker LFE level through your existing key bindings, with the live max force shown in Nm on the touch strip for the FFB Force setting. An optional press can run Auto FFB (off by default, since it overwrites the force you’ve been tuning). Dials are Elgato Stream Deck+ only for now.
  • Camera Controls now works on a Stream Deck+ dial: turn it to flip through cameras or cars (clockwise for next, counter-clockwise for previous — pick the target with the dial’s Mode setting, including cycle by car number or by live race position), and the touch strip names the mode on its top line and shows what that mode controls below — the current camera, the current sub-camera by name, or the car you’re watching — with the previous and next either side where they can be previewed. For Cycle Camera you choose which camera groups it steps through, and a press, long-press, or touchscreen tap can jump the camera to your own car, the leader, the latest incident, the most exciting car, or the next camera angle. Dials are Elgato Stream Deck+ only for now.
  • Camera Editor Adjustments now works on a Stream Deck+ dial: turn it to nudge one camera-tool parameter (latitude, longitude, altitude, yaw, pitch, FOV zoom, F-number, focus depth, vanishing point, blimp radius/velocity, key step, or mic gain), pick which one from the dial’s Adjustment dropdown, and optionally assign each press and touch gesture to auto-set the mic gain or fire any Camera Editor Controls command (open the camera tool, a toggle, save/load a camera, and so on). Because iRacing exposes no camera-tool values, the touch strip shows the selected parameter’s full name rather than a live value. Dials are Elgato Stream Deck+ only for now.
  • Cockpit Misc now works on a Stream Deck+ dial: turning it cycles through the in-car dashboard pages (dash page 1 or 2, your choice) and the touch strip shows the live page number the car is on — or --- when the car has no dash pages. The dial press and touchscreen can optionally run any of the keypad’s one-shot controls — toggle or trigger the wipers, in-lap mode, or report latency. Dials are Elgato Stream Deck+ only for now.
  • View Adjustment now works on a Stream Deck+ dial: one action for buttons and dials. On a dial you pick which view setting it adjusts (FOV, horizon, driver height, or UI size) and turn to change it, and a press recenters your VR headset by default. Your existing View Adjustment key bindings are reused, and the settings panel shows dial settings on a dial and button settings on a button. iRacing reports no value for these, so the touch strip shows the setting’s name. Dials are Elgato Stream Deck+ only for now.
  • Splits & Reference now works on a Stream Deck+ dial: turning the dial cycles through iRacing’s splits/delta display modes (clockwise for next, counter-clockwise for previous) and a press toggles the reference car by default. The touch strip shows the action label — iRacing doesn’t report which delta mode is selected. Dials are Elgato Stream Deck+ only for now.
  • Black Box Selector now works on a Stream Deck+ dial: turn to step through iRacing’s black boxes (clockwise for the next, counter-clockwise for the previous) and optionally press to open one box you pick. It reuses your existing black-box key bindings, and the settings panel shows dial settings on a dial and button settings on a button. Because iRacing reports no telemetry for which box is open, the touch strip shows the action’s identity only. Dials are Elgato Stream Deck+ only for now.
  • The Race Engineer now estimates how many laps of fuel you have left and calls the count out mid-lap — “We’re estimating that we have about 3 laps of fuel left after completing this lap.” — ending in a dedicated “Box this lap for fuel.” call when the tank won’t cover another full lap. Each count from 10 down to 1 plus the box call has its own checkbox (5, 3, 2, 1 and Box on by default), and a safety-margin slider (0–3 laps, default 0.3) makes the spoken estimate deliberately conservative relative to Session Info’s Laps to Empty display. Counts announce once per stint on the way down — saving fuel never repeats a higher count — and a refuel re-arms them all.

Improvements

  • The developer documentation on iracedeck.com now includes a searchable gallery of every icon shipped with the plugin, plus a designing-icons guide for contributing custom icons or a full alternative icon set.

Bug Fixes

  • Fixed the Race Engineer announcing “Black flag cleared.” when a furled black-flag warning escalated into the actual black flag — which also silenced the black-flag callout itself. The escalation now plays the black-flag (or disqualification) call and nothing else; a genuinely withdrawn warning still announces “Black flag cleared.” as before.
  • The Force Feedback action no longer offers separate Wheel/Haptic LFE Intensity modes — iRacing’s “More Intense / Less Intense” options are the very same controls as Wheel LFE and BassShaker LFE Louder/Quieter, just labeled differently on another settings page, so the duplicates were merged into the Wheel LFE and BassShaker LFE modes. Existing buttons and key bindings saved under the old modes migrate automatically.
  • The plugin now shows its icon in Ulanzi Studio’s Settings > Plugins list.
  • The documentation and Downloads links at the bottom of an action’s settings now open in the browser on Ulanzi Deck.

Maintenance

  • Reworked the Race Engineer’s voice-clip catalog to be fully config-driven: which lines, variants, and values the engineer can speak now derives from the audio clips that actually ship instead of lists in code, a callout missing any required clip skips cleanly as a whole (never a half-sentence), and voices may carry different variant counts or omit lines entirely — groundwork for additional Race Engineer voices.

2026-07-15

Bug Fixes

  • The plugin no longer keeps an audio stream open while the Race Engineer is silent, so iRaceDeck no longer prevents your PC from going to sleep — the audio device now runs only while something is actually playing.

2026-07-14

Features

  • Redesigned over 170 key icons across sixteen icon sets — Force Feedback, Media Capture, Camera Editor Adjustments, Look Direction, Cockpit Misc dash pages and in-lap mode, Telemetry Control, all seven Setup actions, Chat, View Adjustment, and the Black Box selector — in a clean flat style with real per-setting artwork. Increase/decrease keys carry a big +/- mark beside the artwork and a single-line title (no more INCREASE/DECREASE words), automatic modes get an amber “A” badge, and pairs whose drawing already shows the direction (brake bias, FOV, horizon, driver height, UI size) keep direction-aware artwork instead. ABS Toggle and TC Toggle now show a live ON/OFF status bar with a matching key border (N/A when telemetry isn’t available), and Cockpit Misc’s duplicate FFB Max Force mode has been folded into Force Feedback (existing buttons keep working).
  • Setup actions can render increase/decrease keys as space-saving paired buttons that show the live value (unit-less) in several selectable styles, with three-key layouts around a value key, horizontal or vertical, plus hold-to-repeat.
  • Setup Traction, Setup Hybrid, Setup Fuel, Setup Engine, Setup Aero, and Setup Chassis now work on a Stream Deck+ dial — one action for buttons and dials each. On a dial you pick which value it adjusts and turn to change it, with the live value shown big and color-coded on the touch strip; settings with no telemetry (engine boost, qualifying tape, and the chassis springs and shocks) show the setting’s label instead. Setup Fuel’s dial can toggle FCY mode and Setup Aero’s can toggle the RF brake ducts on press. Your existing setup key bindings are reused, and the settings panel shows dial settings on a dial and button settings on a button.
  • Fuel Service keys can optionally pop iRacing’s Fuel black box when pressed (off by default), so you can see the value you just changed — including the autofuel lap margin, which no telemetry reports. The box is switched with a single atomic keystroke pair, so you effectively never see the box it switches through.
  • Added six more names the Race Engineer can call you by — Ant, Anthony, Bird, Brad, Kanki, and Shamoy — selectable from the Pit Crew action’s Your Name setting.
  • Session Info gained an iRating Gain/Loss mode showing your estimated iRating change if the race ended now — green when gaining, red when losing, live from the opening lap onward, scored within your car class like iRacing does. The same estimate is available as template variables — irating_change and irating_new on every driver prefix, plus session.sof for your class’s Strength of Field — for Telemetry Display, Chat, and Race Admin templates, expressions included.

Improvements

  • The Race Engineer’s pre-start countdown (“Ninety/Sixty/Thirty/Ten seconds to race start”) now plays even while you’re out of the car — in the garage, the session screen, or the in-session replay view — so it works as the “get in the car” reminder; watching a saved standalone replay stays silent, and the gantry lines (“Lights…” / “Go, go, go!”) remain in-car only.
  • Redesigned the Tire Service icons: Change Compound now shows the compound as a bold colour-coded badge (F1 style — soft red, medium yellow, hard white, inter green, wet blue, dry grey) with the compound initial, and says whether the next stop will change to it or stay on the fitted one; Change All Tires and Clear Tires became a matching four-corner tire set.
  • Redesigned the Toggle Wipers and Trigger Wipers key icons around a windshield, so the two keys are clearly distinct from each other and read unmistakably as wipers at deck size.
  • The Setup dial touch-strip “dash box” (Setup Brakes, Traction, Fuel, Engine, Aero, Chassis, and Hybrid) is now customizable: set the border, label, value, and background colors independently. The border, label, and value default to the setting’s built-in accent and the background to the near-black panel, so existing dials look exactly as before until you change them.
  • Key and dial icons are now rendered to pixels by the plugin itself instead of each deck app’s SVG engine, so icons look identical on every device and effects like the border glow work on Mirabox and Ulanzi decks too.

Bug Fixes

  • A Fuel Service dial in Target Amount mode no longer changes the fuel request while the car is being fueled during a pit stop. It used to keep re-sending the shrinking remaining amount as fuel was pumped in, which could stop fueling well short of the target; the target top-up now pauses during pit service and resumes afterward.

2026-07-08

Features

  • Setup Brakes now works on a Stream Deck+ dial — one brake action for buttons and dials. On a dial it adjusts one brake setup value — brake bias, peak brake bias, brake bias fine, brake misc, engine braking, or ABS adjust — by turning, with the live value shown big and color-coded on the touch strip. Pressing runs a configurable gesture (short and long press), defaulting to Toggle ABS, and your existing Setup Brakes key bindings are reused. The settings panel shows dial settings on a dial and button settings on a button.
  • Fuel Service now works on a Stream Deck+ dial — one fuel action for buttons and dials. On a dial, a bare turn adjusts fuel manually (Add Amount, or Target Amount kept topped up as fuel burns), or — when iRacing’s autofuel is on — adjusts the autofuel lap margin, with a dedicated AUTOFUEL: ON/OFF/N/A status band and a two-segment fuel bar on the touch strip. Every gesture — Push, Long Press, Push + Turn, Tap Display, and Long Touch — is configurable, with Long Press defaulting to Toggle Autofuel (a blind-safe choice for VR) and the touch gestures off for VR safety. The readout shows the fuel iRacing actually banks (read live from telemetry), and whether fueling is on or off is unmistakable at a glance: a full-width status band across the top reads REFUEL: ON on green when the next stop takes fuel and REFUEL: OFF on red when it won’t — with AUTOFUEL variants in autofuel mode and a gray N/A when it’s unavailable. The settings panel shows dial settings on a dial and button settings on a button.
  • Audio Controls now works on a Stream Deck+ dial: rotate adjusts the volume of your chosen audio — iRacing voice chat or master, or iRaceDeck’s Race Engineer and Radar levels — and the press is configurable as push-to-talk (with an ON AIR indicator on the touch strip while transmitting) or mute/unmute. The Race Engineer and Radar levels show a live level bar on the touch strip; iRacing exposes no volume state for voice chat and master, so those show the category name instead.
  • iRaceDeck now bundles ready-made Stream Deck profiles — iRaceDeck Default and iRaceDeck Replay, each tailored to your device (the classic Stream Deck, the Stream Deck XL, and the Stream Deck + XL) — so you get a full iRacing layout without building one yourself. A new Switch Profile action lets you put a profile switch on any key — it targets iRaceDeck Default out of the box (shown as a clean, title-less iRaceDeck logo), the icon reflects whichever profile you choose instead, and a Back to previous option walks back through the iRaceDeck profiles you visited, returning to iRaceDeck Default when there’s nowhere further back — and a Stream Deck Profiles section in every action’s settings lets you switch from there too. The Stream Deck app installs a profile the first time you switch to it. Switch Profile keys and the car-selector number keys stay border-less even when plugin-wide borders are enabled (per-key border overrides still apply).
  • Race Admin gained a dynamic car selector for race control (Elgato). A new Select Car mode auto-fills one key per car in the session — a big car number with the driver’s name below, sorted by number and paged for large fields — and a new Selected Car target makes every admin command — black flag, EOL, DQ, clear penalty, wave-around, and the rest — act on whichever car you picked. Pick a car once and the whole admin page targets it, so there’s no more hand-building a page per car number. Selector keys work in any layout: place any number of them anywhere on a page (each page can hold a different number), and page flips show quiet blank keys instead of flashing placeholder artwork. Ships with iRaceDeck Car Selector (the selector) and iRaceDeck Race Admin Per Car (the command page) profiles for the classic Stream Deck, the Stream Deck XL, and the Stream Deck + XL.
  • The Car Selector doubles as a camera director (Elgato): a new Camera Controls mode — Focus Car (pick from grid) — opens the selector with one key per car, and each press focuses the camera on that car. You stay on the grid to hop car to car, the key of the car you’re watching is highlighted, and the Back key returns you to where you came from — ideal alongside the Replay profile.
  • Car Control gained four backup driver input modes — Handbrake, Second Clutch, Second Up Shift, and Second Down Shift — so you can keep driving when a shifter paddle, clutch pedal, or handbrake fails mid-session. Handbrake and Second Clutch stay engaged while the button is held; the shifts are single taps. None have default iRacing bindings, so set the binding in both iRacing and the Property Inspector.
  • Session Info’s Fuel mode can now show your fuel consumption — Used last lap or Average per lap over a configurable window of 1–20 laps — alongside the existing tank-level display. Only clean flying laps count: laps with a pit stop, out-laps and in-laps, and towed laps are excluded automatically, so a stop never corrupts the average. The data survives garage visits and replays, and after a session change the previous values stay visible until you’re back on track (in a race, until the green flag).
  • Session Info gained a Laps to Empty mode: how many laps the fuel in your tank will last, computed live from the tank level and your average consumption per lap (the same clean-laps-only average the Fuel mode shows, over the same configurable 1–20 lap window). The estimate shortens as you burn fuel, jumps up the moment you refuel, and shows -- until the first clean lap exists.

Improvements

  • Fuel Service’s Add Fuel, Reduce Fuel, and Set Fuel Amount now go through the iRacing API instead of typed #fuel chat commands — adjustments are instant, nothing flashes the chat window, and holding Add/Reduce repeats briskly. The fuel unit can also follow iRacing’s display units automatically: Auto (from iRacing) is the new default for new buttons, kilograms convert via the car’s fuel weight, and existing buttons keep the unit they were configured with.
  • You can now choose when this What’s New page opens after an iRaceDeck update — after every update (the default), only after updates with new features, at most once a month, or never — via the new Updates setting in the Common Settings section of any action’s settings.
  • The Race Engineer’s white-flag call is now two-stage in races: a heads-up when the white flag comes out (“we’re about to start the final lap”), then “this is the last lap” as you cross start/finish and begin yours — leader included. If you cross while the heads-up is still playing, the second call is skipped so the two lines never talk over each other. Both stages share the existing White callout toggle.

Bug Fixes

  • The Race Engineer’s pit-box countdown now takes priority over the pit-service readback: a countdown mark cuts the readback instead of being silently dropped while it plays, and the interrupted readback resumes from where it left off once the countdown is done — so you always hear the countdown on your approach to the box.
  • Camera Controls’ Cycle Camera mode now applies your custom Title Text to the button instead of always showing “CYCLE CAM”, and its mode selector is now labeled Mode (it was mislabeled Target).
  • Race Admin’s driver-management commands — Grant Admin, Revoke Admin, Enable/Mute Chat for a driver, and Remove Driver — now refuse to send when the target is an AI car, the pace car, or a car number that isn’t in the session (the key flashes a warning instead). iRacing applies these commands to you when the target isn’t a real user, which could revoke your own admin and end your session. Revoke Admin additionally refuses your own car, so you can’t accidentally revoke your own admin. Race-control commands (black flag, EOL, DQ, and the rest) still work against AI cars as before.
  • The Race Engineer’s checkered-flag callout in qualifying and races now waits until you actually take the flag at the start/finish line instead of firing the moment the session ends — previously it could play most of a lap early, e.g. “that’s it for qualifying” while you were still on your final flying lap. When your own finish ends the race, the call still lands right as you cross the line; practice sessions keep the immediate call, since the flag there just means the session is over.
  • During a rolling-start formation, the Race Engineer’s “one pace lap to go” call now fires when the pace car crosses the start/finish line — the moment the field is committed to another pace lap — instead of when your own car reaches the line, so you hear it as the final pace lap actually begins rather than seconds later from the mid or back of the grid.
  • The Race Engineer no longer announces “This lap will be invalidated. We’re out of qualifying laps…” for incidents picked up while circulating after your counted qualifying laps are done — those extra laps aren’t timed attempts, so nothing is invalidated and the engineer stays quiet. An incident on your final counted lap still gets the out-of-laps announcement.

Breaking changes

  • Knobs and dials on Mirabox and Ulanzi devices no longer offer iRaceDeck actions. The rebuilt dial experience is Stream Deck+ only for now, because it has not been verified on Mirabox and Ulanzi dial hardware yet — so any knob or dial assignments made with 1.x on those devices will disappear. Dial support for them will return in a future release once verified.

2026-07-07

Bug Fixes

  • Fuel Service keys no longer fall back to the Toggle Fuel Fill (“REFUEL”) icon and behavior when their stored settings contain a fuel unit this version doesn’t know — such as the auto unit written by iRaceDeck 2.0 pre-release builds sharing the same profiles. The unknown unit is now read as liters and the key’s selected mode is kept.

2026-06-30

Features

  • Template variables gained a focused prefix that follows the car your camera is focused on ({{focused.car_number}}, {{focused.name}}, and the rest of the driver fields), usable anywhere templates are — Telemetry Display, Chat, and Race Admin. Pair a Telemetry Display with a Camera Focus button so it tracks whoever you’re watching — handy for spotting, broadcasting, and race control. It works in replays too.
  • Added five more names the Race Engineer can call you by — Dean, Dylan, Ron, Jakub, and Tom — selectable from the Pit Crew action’s Your Name setting.

Improvements

  • Driver-info template prefixes (self, track_ahead/track_behind, race_ahead/race_behind, focused) now report the live race order for both overall and class position — they update continuously as cars move (like the Session Info Position readout while racing on track), instead of only refreshing at the start/finish line.
  • The action list is now sorted alphabetically by name across all devices, so actions are easier to find when adding them to a key.

Bug Fixes

  • Cars that are towed into the pits no longer briefly jump ahead of you in the running order while they sit in their pit box — they hold their on-track position for the whole stop and drop back only once they rejoin the track. This keeps the Race Engineer’s spoken position, the Session Info Position readout, and the driver-info template prefixes from reading a place too high during another car’s pit stop.
  • Links in an action’s settings (such as Documentation and Downloads) now open in your default web browser instead of the deck app’s small built-in browser window.

Maintenance

  • Standardized on “dial” (instead of “encoder”) across the documentation and website, matching Stream Deck’s own terminology and the SDK’s dial event names.

2026-06-25

Bug Fixes

  • Fixed towed cars (and cars that briefly dropped out) staying stuck at their pre-tow position in the running order — which drifted the Race Engineer’s spoken position and the Session Info display off, sometimes by several places over a long race. Positions now recover the moment the car is moving normally again.

2026-06-18

Maintenance

  • Expanded the Ulanzi Deck documentation (installation, troubleshooting, and developer guides) and renamed the Ulanzi plugin download to a self-describing .zip file. No functional changes to the plugin.

2026-06-15

Features

  • iRaceDeck now runs on Ulanzi Deck devices (D200, D200H, D200X, and Dial). A dedicated plugin for the UlanziStudio app brings the full action catalog and Property Inspector to the Ulanzi ecosystem.
  • Telemetry Display now supports expressions — use {{= … }} alongside the usual {{variable}} placeholders to compute and format values: arithmetic, comparisons, ternaries (cond ? "A" : "B"), string concatenation, and the round, floor, ceil, abs, min, and max functions. For example, {{= round(telemetry.dpFuelAddKg / (sessionInfo.DriverInfo.DriverCarFuelKgPerLtr * 0.264172), 2) }} shows the fuel to add in gallons. Expressions are evaluated safely — no arbitrary code execution.
  • New Changelog page (this one). When you update to a new version, iRaceDeck now opens it in your browser so you can see what’s new at a glance.

2026-06-13

Features

  • Race-start voice callouts. Standing starts get a countdown into the lights (“Ninety… sixty… thirty… ten seconds to race start.”), “Lights. Get ready to go.” as the gantry comes alive, and “Go, go, go!” the instant they drop — and the countdown only speaks marks that fit the pre-start window, so short procedures never blurt stale numbers. Rolling starts get “Pace car’s rolling”, “One pace lap to go”, and “Green’s coming”.
  • Voice spotter — the Race Engineer spots traffic for you: “Car left.” / “Car right.”, “Two cars left.”, “Three wide.”, a “Still there.” reminder while you’re side-by-side, and “Clear.” when you’re free. Road courses use left/right, ovals inside/outside, and routine chatter is held back while a car is alongside so spotter calls and safety flags own the radio.
  • Pit window open/closed callouts, announced the moment they change so you can react under caution.
  • Black flag callouts — disqualification, a debounced furled black-flag warning with a paired “furled cleared” call, and late-race “Ten to go” / “Five to go” calls.
  • Setup sanity check — heading into a race on a qualifying setup (or the other way around), the engineer spots it from the setup name and asks you to double-check. Match patterns are configurable.
  • New Telemetry Control Snapshot mode — a developer/diagnostic key that saves the current telemetry and session info to disk, handy when reporting issues.
  • New Race Engineer driver names: Mike, Guido, and Fox.
  • As always, every new callout has its own on/off toggle in the Property Inspector.

Improvements

  • The Race Engineer now knows your car: no pit-limiter chatter on cars that don’t have one, and the pit-entry service readback works on dirt ovals.
  • Reworked radio discipline — critical calls (meatball, “Go, go, go!”, fuel-critical) cut through instantly, while background commentary waits its turn instead of talking over them.
  • No more P0 on the grid — Session Info shows your qualifying grid slot through the formation lap, and the engineer no longer calls phantom position changes during the pre-green shuffle.
  • The Pit Limiter button is now tri-state — on cars without a pit limiter it greys out (keeping the pit-speed number) instead of pretending to toggle.
  • The practice and qualifying session-start brief now plays right at session start.

Bug Fixes

  • “Yellow cleared.” is back — it was silently dropped whenever the radio was busy, and now waits for a gap so it gets through.
  • The “approaching pits” call no longer repeats when you drift out of the pit entry and straight back in.

Maintenance

  • Dependency updates and assorted cleanup.

2026-06-02

Features

  • Session Info Position mode adds a Position Type setting (Class / Overall, with Class the default). Multi-class drivers see their live in-class position on the key, updating as you pass and get passed — not just at the start/finish line. Show Total Cars follows along: P2/8 for your class versus P5/24 for the whole field.
  • Every action’s Property Inspector now shows its communication method (iRacing API, key binding, or chat command) under the Mode selector, with a live binding status and a “set it here” shortcut. A required key binding that isn’t configured shows a ⚠️ on the key icon until you set one, and SimHub users get a live “SimHub not connected” indicator.
  • The Car Control Enter/Exit/Tow key is now context-aware, mirroring iRacing’s own session button: out of the car it shows Test, Practice, Qualify, Grid, or Race; in the car the exit, reset-to-pits, and tow states switch to a red background.
  • An Administrator mismatch warning detects when iRacing runs as Administrator but Stream Deck doesn’t (which silently blocks every command) and explains how to fix it in the Property Inspector.

Improvements

  • Plugin logs now default to info level instead of flooding with debug output. A new “Enable debug logging” checkbox under Common Settings → Diagnostics turns on verbose logs immediately, no restart needed.

2026-05-31

Features

  • Race Engineer race-start brief — at the green he greets you with your grid position and the conditions (track temp, air temp, wetness).
  • Race Engineer overtake calls — “Nice pass!” when you gain a spot and “Come on, <name>!” when you lose one, with a live position readout. Class-aware in multi-class and smart enough to ignore momentary position flickers.
  • Race Engineer race status and finish — periodic position updates through the race, plus a dedicated call when you take the checkered.
  • Race Engineer qualifying calls — your new position after each qualifying lap, and a heads-up when a lap is invalidated.
  • Race Engineer pit-box count-in — heading down pit lane he counts down the distance to your box (“5, 4, 3, 2, 1, pit now”).
  • New Race Engineer volume and Radar volume buttons in Audio Controls, so you can balance each voice independently.
  • New Jump to Fastest Lap action in Replay Control — skip straight to the fastest lap of your car or the car you’re watching.
  • Chat Send Message timing is now configurable, so you can tune the Enter hold and delays for reliable delivery.
  • More driver names in the callout pool (Jon, James, Noj), and every new callout has its own on/off toggle.

Bug Fixes

  • The Race Engineer now stops mid-sentence (and kills ambient audio) the instant you toggle him off.
  • Multi-class overtake detection fixed.

Maintenance

  • Dependency updates and assorted cleanup.

2026-05-16

Features

  • Race Engineer session-start callout greets you the first time you go on track each session with a briefing: your name, session type, pit speed limit, track and air temperature, and track wetness. It fires once per session, about 3 seconds after going on track, and defaults on.
  • Race Engineer best-lap callout announces your time when you set a new personal best or complete your first valid lap. Sub-one-minute laps skip the minute clip; laps 11 minutes or longer stay silent. Defaults on.
  • Race Engineer toggle acknowledgement — pressing the toggle confirms the new state out loud.
  • Race Engineer telemetry-connect radio check plays a “radio check, standing by” line on a real SDK connection; reconnects re-fire.
  • Setup actions gain live-value View sub-modes that render the live telemetry value on the key — 28 new entries across Aero, Brakes, Chassis, Engine, Fuel, Hybrid, and Traction. The PI dropdowns are reorganized into Adjust and Display value groups.
  • Setup action View sub-modes double as one-key dual-press controls: a short press fires one direction, a long press the opposite. The threshold (200–2000 ms, default 500) and direction are configurable, with a per-action opt-out.
  • Toggle Driving Line added as a tenth mode on Toggle UI Elements (default keybind Ctrl+Alt+L).
  • Three new driver names — Dominic, Miguel, and Jasper.

Improvements

  • Voice clips re-encoded to 16 kHz mono 32 kbps (the radio filter band-limits them to 250–3500 Hz anyway), cutting file sizes about 64% with no audible difference.

Maintenance

  • The audio generator config was split into self-contained per-voice files, with a parity test ensuring every voice covers the same callouts; the voice “luca” was renamed to “default” (transparent to users).
  • No manual migration is needed; setup action layouts are backward-compatible, and TC Slot 1–4 was renamed to TC1–TC4 (cosmetic only).

2026-05-11

Features

  • Race Engineer incident callouts react to six distinct situations: going off-track, spinning out, light contact with the wall or another car, and harder collisions. Collision lines mention the penalty points inline, multi-step crashes get one combined callout, and each category has its own toggle (all default on).
  • Race Engineer track wetness callouts announce every step transition as the track gets wetter or drier, with directional phrasing — twelve unique lines covering all the states.
  • Session Info gains a Track Wetness mode: a six-segment cyan-to-blue bar that fills as conditions worsen, with the live state name as the title.
  • Race Flags gains a “Blank when no flag” option to hide the “–” placeholder until a flag actually appears (opt-in, default off).
  • Replay Control gains progressive slow-motion stepping — Slow Motion walks from 1/2x down to 1/16x in configurable steps, and long-press holds it down the ladder; Slow Motion Rewind works the same in reverse.

Improvements

  • Volume sliders now follow a perceptual loudness curve, giving fine control at low volumes; radar SFX was re-mastered to match the engineer’s loudness; and default levels were rebalanced (Race Engineer and Radar 100→50, Background 35→25).
  • Telemetry now polls at 100 Hz with frame-level de-duplication (up from 4 Hz), unlocking sub-100 ms features; Telemetry Display and Car Control icons are capped at 10 Hz for visibly smoother updates.
  • Every static icon was re-authored — viewBoxes trimmed to the artwork, padding added, and several redesigned (Ignition, Reset to Pits, Restart Recording, Launch RPM, and more); decrease-variant icons were rebuilt to mirror their increase counterparts.

2026-05-06

Features

  • Race Engineer pit-service status callouts: once the car is in the box he reads iRacing’s pit-stop status out loud (“Crew working”, “All done, ready to roll”, “Too far left/right/forward/back”, “Bad angle”, “Can’t fix that this stop”), each individually toggleable.
  • Replay Control gains a configurable Fast Forward / Rewind step rate and slow-motion rewind.
  • Chat gains an on/off toggle mode for cleaner one-button workflows.
  • Session Info gains display sizing, handy on the larger Mirabox touch surfaces (first contribution from @RCkanki).

Improvements

  • SimHub Control Mapper roles are now sorted alphabetically in the binding dropdown.

Bug Fixes

  • Race Engineer and Radar now default off. A schema migration deletes persisted enable values from older versions, every voice scenario and radar tick is master-gated, and a plugin-level audio listener keeps a deck without a Pit Crew button silent. Re-enable with the Race Engineer Toggle or Radar Toggle (thanks @thesewheels and @Lazagna42 for reporting).
  • Autofuel no longer ships a default key binding, so there are no accidental conflicts on first install.
  • The camera focus labelled “Focus on Exiting” (a typo) is now “Most Exciting”, matching iRacing.

Maintenance

  • The “Respond to Last PM” Chat mode is hidden — the unified Reply mode covers it, and existing buttons auto-migrate to Reply.

2026-05-03

Features

  • New Pit Crew action with two features at launch: a Race Engineer voice assistant that reads out pit-action toggles, tells you what’s planned for the next pit stop, calls out flags, and warns when your car is damaged; and Audio Radar, which ticks in your left or right ear when there’s a car alongside so you can keep your eyes on the road. Both are off by default.
  • Race Admin gains a “Type in Chat” car-selection mode that types the command to the chat window for you; you fill in the car number and press Enter.
  • Flag overlay maximum flashing time limits how long flag overlays flash, useful on long tracks where green flags can persist for minutes (see Global Settings).

Bug Fixes

  • Added default key bindings for Next and Previous car in replay (v and Shift+V); previously these had no defaults.

2026-04-19

Features

  • Auto-hold for the Enter/Exit/Tow Car mode, with per-state behavior (Exit in the pit stall, Reset on track in non-race sessions, Tow on track in a race). A single tap holds Shift+R for 1.5 s; tap again to cancel. Manual press-and-hold still works.
  • A build-time platform feature-flag system per plugin. Its first use strips border glow (QT6.7+ only) from the Mirabox bundle and Property Inspector while Stream Deck keeps it.

Improvements

  • All 12 audio-controls and AI spotter icons were redesigned with new, Mirabox-compatible artwork (artwork by Hesham).
  • Toggle Autofuel no longer shows the fuel amount, matching the Fast Repair look.
  • AI Spotter volume labels now follow the audio-controls convention (VOL UP / SPOTTER, and so on).
  • Black-box Next/Previous artwork is centered with the other black-box icons.
  • New Mirabox dev workflow scripts (relink, unlink, switch-test-env) with expanded setup docs.

Bug Fixes

  • Replay Next/Previous Car no longer becomes a no-op during the warmup/formation lap.
  • The Master “Mute” option was removed from Audio Controls (it had no key binding and was a silent no-op).
  • Icon title alignment fixed for 21 icons by stripping a phantom leading newline that pushed artwork about 11 px too high.

Maintenance

  • Long-press repeat logic extracted into a single shared RepeatController.
  • Shared PI assets moved into a dedicated @iracedeck/pi-components package consumed by both plugins.
  • Each action’s PI template, icon, and key art now live alongside its code.
  • Package renames (@iracedeck/actions → @iracedeck/iracing-actions, plus the two plugin packages).

2026-04-15

Bug Fixes

  • Fixed fuel and replay long-press sticking under rapid presses — the 1.13.0 fix wasn’t enough. The root cause (a synchronous native chat send blocking the event loop just long enough for keyUp events to race past timer setup) is fixed, and held-button tracking is now the authoritative source of truth, so a release always stops the repeat immediately.

2026-04-12

Features

  • New Force Feedback action to adjust FFB from the Stream Deck. Modes: Auto-compute FFB Force, FFB Force (+/−), Wheel LFE (+/−), Bass Shaker LFE (+/−), Wheel LFE Intensity (+/−), and Haptic LFE Intensity (+/−).
  • New “Auto-enable fueling on amount change” global setting (off by default) that arms fueling when you adjust the fuel amount (thanks @navy-exe).

Improvements

  • The color picker now remembers recently used colors and shows preset swatches.
  • Status-bar icons show a gray “N/A” indicator when telemetry isn’t available, instead of stale or zero values.
  • Toggle Tires gains a Toggle Mode setting: Select (default for new actions) replaces the current selection, while Toggle (legacy) flips each configured tire individually.
  • Toggle Autofuel adopts the status-bar style with border color and shows the current fuel amount (thanks @navy-exe).
  • Replay Set Speed uses the configured speed as its default title (e.g., “2×”, “8×”).
  • The Silence icon exposes its two graphic colors for per-action and global overrides.
  • Action documentation on iracedeck.com is now organized per mode.
  • The primary selector on every action is consistently labelled “Mode”.

Bug Fixes

  • Fuel increase/decrease long-press looping now has a safety timeout.
  • The replay play/pause toggle correctly resets when iRacing disconnects.
  • Fuel Service global settings are no longer hidden in non-keyboard modes.

Maintenance

  • The build now generates a config.json carrying the plugin version and target platform, so the version is read at runtime rather than hardcoded.
  • Actions can declare addedWithVersion on CommonSettings, enabling version-dependent defaults without breaking existing settings.

2026-04-08

Features

  • New Push-to-Talk mode for Audio Controls — hold to talk, release to mute, with a dedicated mic icon.
  • Dynamic icon scaling: artwork automatically scales and repositions based on title visibility and placement. A per-action scale override (50–150%) and a global Graphic Scale default were added.

Improvements

  • The flags overlay now shows green, white, and checkered flags; the checkered flag uses a 2×2 pattern, and blue is suppressed when green is active (thanks @navy-exe).
  • Toggle Tires was redesigned with a race-car silhouette and per-tire color indicators (green changing, red configured but off, black not configured), and tire selection moved to a 2×2 checkbox grid (icon by Niklas, grid by @navy-exe).
  • Toggle Tires now sends shorthand iRacing pit macros when the selected tires match a recognized group (all four, left-side, right-side), fixing cars like the SF23 that only support all-or-nothing tire changes (reported by @rafeautie).
  • A new color picker adds a proper “not set” state, inline hex editing, and a clear button; legacy values auto-migrate.
  • A new synced slider-and-number range input replaces the old sliders across the Property Inspector.

Bug Fixes

  • Toggle Fuel, DRS, Push-to-Pass, Windshield Tearoff, and Fast Repair now lock their essential title fields so global title settings can’t suppress them.
  • Fixed a race condition that overwrote the saved title font size when opening the Property Inspector.
  • Fixed opening an action’s Property Inspector writing the icon’s default border color to settings.
  • Fixed border and glow rects being half-clipped at the SVG viewBox edges.

2026-04-02

Features

  • Customizable button title text: override the default title on any action and control bold, font size, and position (top/middle/bottom/custom offset). Three-state Inherit/Yes/No controls and a four-level resolution chain (per-action → global → icon metadata → defaults) keep it predictable, with a global Title Defaults section.
  • Border indicator with inner glow: add a configurable border (width, color, optional glow) to any key icon. Toggle actions get state-driven border colors (green on, red off, gray N/A). Icon backgrounds also gain rounded corners.
  • Dynamic grid icon for Camera Cycling: the Cycle Camera target shows a miniature grid of your selected camera group icons, adapting the layout to the group count with a “+N” overflow indicator.
  • The Property Inspector was reorganized: Action and Global settings are separated by section headers, overrides are wrapped in collapsible accordions, global settings are split into focused sections, and accordion open/closed state persists across key selections.

Improvements

  • Black box icon titles simplified to concise one-line labels (e.g., “LAP TIMING”).

Bug Fixes

  • Race position is now calculated in real time from laps completed plus track distance percentage, giving instant updates during races. Practice and qualifying still use the official positions, with the official position as a fallback on pit road.

2026-03-29

Features

  • Long-press repeat for fuel controls — hold Fuel Add/Reduce to continuously adjust the amount.
  • Escape control added to the Car Control action.

Improvements

  • Locked color slots protect semantic colors (like flag overlays) from global color overrides.
  • New artwork for the Report Laps, Damage Report, and Weather Report icons (artwork by @NAVY).
  • Bottom-positioned icon labels moved lower for better readability.

Bug Fixes

  • Fixed replay next/previous car track navigation.
  • The fuel toggle now shows a “–” placeholder when no telemetry is available.
  • Fixed a hardcoded background color in replay car icons not respecting color overrides.

2026-03-28

Improvements

  • Redesigned camera select icons and improved Property Inspector usability.

Bug Fixes

  • Fixed camera group selection being shared across all buttons instead of stored per-action.

2026-03-27

Features

  • Telemetry-driven pit service states: pit toggles (Windshield Tearoff, Fast Repair) and a new Toggle Fuel Fill action now show live ON/OFF status from telemetry, and Toggle Fuel Service also shows the amount of fuel to be added.
  • Context-aware Enter/Exit/Tow: the Car Control action adapts its icon and behavior to your current state, with updated icons.

Improvements

  • The plugin version and a downloads link are now shown in all Property Inspector panels.
  • A documentation link was added to all Property Inspector panels.

2026-03-26

Bug Fixes

  • Fixed the Enter / Exit / Tow button.

2026-03-24

Features

  • SimHub Control Mapper integration: every key binding can now be routed through SimHub’s Control Mapper instead of keyboard shortcuts. A per-binding dropdown switches between Keyboard and SimHub mode; in SimHub mode you pick a Control Mapper role name (with autocomplete) and iRaceDeck sends the command over the network. Configure the SimHub host and port once in Global Settings (contributed by @kelchm).

2026-03-23

Features

  • Change Camera: switch directly to a specific camera group (Cockpit, Chase, TV1, and so on) with a single press. Pick from all 20 iRacing camera groups via a dropdown; the key icon updates to match.
  • Camera Group Subset Cycling: choose which camera groups to cycle through via a checkbox grid.
  • Car Control gains four new modes — Headlight Flash, Push to Pass (with live status), DRS (with live status), and Tear Off Visor.
  • Splits & Delta gains four new modes — Custom Sector Start/End for personalized split timing, and Active Reset for set-and-run reset points.

Improvements

  • Color overrides now work on dynamic template actions (Car Control, Session Info, Tire Service, Telemetry Display).
  • Telemetry Display updated with an improved default template, title, and font size.

Maintenance

  • The Stream Dock plugin was renamed to the Mirabox plugin to reflect the actual hardware brand.

2026-03-20

Features

  • Customizable icon colors: change background, text, and graphic colors on every action. Per-action overrides, global defaults, and preset buttons (Default / White / Black) make it easy to match your Stream Deck layout.
  • Splits & Reference (renamed from Splits Delta Cycle) now includes a “Toggle Reference Car” mode alongside the cycle mode. Dial rotation always cycles splits delta regardless of mode.

Improvements

  • The global key bindings section now starts collapsed for a cleaner Property Inspector.

Bug Fixes

  • Windshield Tearoff and Fast Repair now correctly toggle on/off instead of always enabling, and tire compound cycling is fixed for multi-compound cars.
  • Leading zeros are preserved in car numbers (e.g., “08”) for Race Admin commands and camera operations.

2026-03-15

Features

  • New Race Admin action (27 modes): quick access to admin chat commands for league race directors and hosted-session admins — throw yellows, issue black flags, disqualify drivers, manage pits, control restarts, and more. It can target the currently viewed car or a pre-defined car number.
  • Jump to car by number added to Replay Control.
  • Configurable font size for Chat action key text.

2026-03-15

Features

  • Jump to next, previous, and my car: new camera sub-actions added to Replay Control.

2026-03-14

Features

  • Progressive replay speed control spanning the full 1/16x to 16x range.
  • Long-press repeat for replay speed and transport controls.
  • Play backward mode with improved play/pause behavior.
  • Direction-aware speed control with turtle/rabbit icons.
  • Redesigned replay icons — a film strip for frame forward/backward, an oval track for next/previous lap, and a dynamic needle gauge for set-speed.

Improvements

  • Improved iRacing window focus reliability.
  • New website with documentation at iracedeck.com.

2026-03-14

Features

  • New Replay Control action that replaces the three separate replay actions with a single, unified action covering transport, speed, and navigation.
  • New AI Spotter Controls action: volume, silence, damage report, weather report, toggle report laps, and announce leader at the start/finish line.
  • Flag overlay: optional live flag indicators available for every action, displayed directly on your Stream Deck buttons.
  • Change All Tires sub-action added to Tire Service.
  • Toggle Wipers option added to Cockpit Misc.
  • Focus iRacing window: an optional setting to automatically focus iRacing before sending inputs, great for drivers using windowed mode.

Improvements

  • Template variables now resolve in chat message icon display when Key Text is not defined.
  • Chat modes reordered with Send Message as the default, and the chat window now closes automatically after sending.
  • Differentiated louder/quieter icons for audio controls, plus various icon improvements.

Breaking changes

  • Existing Replay Transport, Replay Speed, and Replay Navigation buttons still work but are hidden from the action list. Use the new Replay Control action going forward.
  • Spotter controls have moved from Audio Controls to the new AI Spotter Controls action. Reconfigure any existing spotter buttons using the new action.

Features

  • New Telemetry Display action: show any iRacing data on your Stream Deck using custom templates, with multiline support, configurable font size, and text color.
  • Template variables: use dynamic variables like car number, track name, and session info in chat messages.

Improvements

  • Boolean telemetry values now display as Yes/No instead of 0/1.
  • Updated fuel service icon designs and improved sub-label readability.
  • Reduced plugin package size.

Bug Fixes

  • Fixed an installation issue preventing some users from installing via Marketplace or by double-clicking the downloaded file.
  • Fixed the settings panel not showing default options on first load.