Frequently asked questions
Important information about designing, building, installing, and using Dually Studio dashboards.
Dually Studio Training Overview
Watch the complete overview of arranging widgets, adjusting properties, saving a Garage dashboard, and building the finished Android APK.
Choose a subject below, then select a question to read its answer.
Getting started and installation5 questions
What is Dually Studio?
Dually Studio is a browser-based Porsche dashboard designer. It lets an authorised user arrange supported widgets, save dashboard projects, and package a finished dashboard as an Android APK for a compatible replacement display.
Which vehicles and displays are supported?
Dually Studio is Porsche-only. Development and physical testing are centred on a 2018 Porsche Macan using the supported ACarDash-style Android replacement display. Other Android devices, Android versions, screen resolutions, sensor layouts, and vendor firmware may behave differently and are not automatically compatible.
Why can tapping beside the Compatibility Test open a file or another app?
The Dually test dashboard occupies the supported 1420 × 720 ACarDash dashboard surface. The head unit's native side shortcut areas remain active and are not Dually widgets or test controls. Depending on the vendor launcher configuration, tapping one can open an installed application, a recent browser page, or a locally downloaded file.
A browser address beginning with content://media/external/downloads/ refers to a file stored locally in Android's Downloads collection; it does not mean Dually uploaded the file. Press Android Back to return to the test. Compatibility Test 1.1.0 and later displays an amber notice along the dashboard's lower edge to identify the separate ACarDash shortcut area.
Is Dually Studio a replacement for the factory instruments?
No. Dually Studio is an auxiliary display and customisation product. Do not rely on it for safety-critical warnings, legal speed measurement, vehicle diagnostics, or any function normally provided by the Porsche instrument cluster.
How do I build and install an APK?
Open the finished dashboard in Studio, start the Android APK build, and wait for compilation and signing to finish. Save the resulting APK to the desired local or USB location, then install it on the compatible Android head unit. Android may require permission to install unknown apps. Keep a known-good APK available before replacing an installed dashboard.
Accounts, subscriptions and devices4 questions
How do I register my Porsche head unit?
- Download and install the free Compatibility Test APK from the Pricing page.
- Open it on the supported Macan display and find the Device Registration · Android ID panel.
- Sign in to Dually Studio, open My Account, and enter that Android ID exactly as displayed.
- Return to Studio and build a new dashboard APK.
This is a one-time registration for the head unit. The Compatibility Test APK is deliberately not locked to an account because it must work before purchase and registration.
Why does each newly built APK need one-time activation?
Every dashboard APK built by Studio 1.10.0 or later contains the registered head unit's Android ID and a unique activation credential. On its first launch, the APK uses an encrypted HTTPS request to confirm that its Android ID matches the account's registered device. A successful approval is stored locally for that specific APK, so normal later starts work offline and there is no continuous location or driving-data check.
The one-time activation makes casual APK copying ineffective: a dashboard built for one account will display a device-mismatch message on another head unit. This is practical account protection rather than a claim of unbreakable copy protection. Connect the registered head unit to the Internet for the first launch of each new or reinstalled APK.
What if I replace or factory-reset the head unit?
Contact Dually Studio support and request a registered-device reset. After the reset, use the Compatibility Test APK to read the current Android ID, register it in My Account, and rebuild the dashboard. Previously built APKs remain tied to the old Android ID. APKs made before the 1.10.0 security update were not device-bound and should be rebuilt if protection is required.
How do subscriptions and APK access work?
Paid accounts receive unlimited APK building after successful payment processing and registration of one supported Porsche head unit. Every new APK is tied to that registered Android ID and requires a one-time online activation on the head unit. The account owner can reset a device registration for a legitimate replacement or factory reset.
Dashboard design and customization11 questions
Where are my dashboard projects stored?
Projects explicitly saved to My Garage are stored with the user's Dually Studio account. Unsaved editor changes can still be lost if the browser storage is cleared or the page is left without saving. Downloaded APK and exported JSON files remain wherever the browser or user saves them.
What is the difference between Save, Save As, and Export?
Save updates the current Garage dashboard. Save As creates a separately named Garage dashboard and leaves the original unchanged. Export downloads a JSON copy for backup or transfer; it does not create another Garage entry.
Can I share a dashboard with another user?
Yes. Account sharing uses the recipient's registered email address to identify their Dually Studio account and place a copy in their Garage. The dashboard is copied rather than jointly edited, so later changes do not alter the sender's original.
What are Community dashboards?
Community dashboards are user-submitted designs that other authorised users can copy into their own Garage. Open a saved Garage dashboard in Studio and use the prominent Share with Community button. Each shared design has a layout-derived thumbnail; select it to open a larger preview before adding a copy to your Garage. Sharing provides a copyable design and does not let other users edit your original.
If you shared the dashboard, use Remove My Dashboard on its Community card to stop sharing it. The dashboard is not deleted: it becomes private again and remains in My Garage. Do not include personal information, private images, credentials, or material you do not have permission to share.
Can I share wallpapers with the Community?
Yes. Open the Community page, choose Share a Wallpaper, and upload a PNG, JPEG, or WebP image up to 8 MB. Other authorised users can download it and import it into Studio. Only upload artwork you own or have permission to distribute.
How do I use or share Community artwork?
Community artwork is intended for the resizable Image widget: Porsche and Macan silhouettes, badges, track graphics, and other transparent overlays. Add or select an Image widget, choose Choose Local or Community Image, then select a thumbnail from the Community Artwork library. Dually copies the selected image into the saved dashboard and finished APK, so it does not require an internet connection while driving.
To contribute, open Community and use Share Image-widget Artwork. PNG, JPEG, and WebP images up to 8 MB are accepted; transparent PNG or WebP usually produces the best overlay. Owners can remove their own shared artwork. Only upload work you own or have permission to distribute.
Can the Dashboard Preset numbers match my wallpaper?
Yes. Select the Dashboard Presets widget and choose Preset Number Colour. The selected colour is saved with that preset-control widget and is used by both the Studio preview and installed Android dashboard.
Why might the browser not ask where to save the APK?
The save-location prompt is controlled by the browser's download settings and security policy. Enable the browser option that asks where to save each download if you want to select a USB drive. Dually Studio cannot override a browser or operating-system download restriction.
Can Dually wallpapers be animated?
Yes. The Wallpaper Library includes 25 procedural backgrounds organised under Animated — Performance, Animated — Navigation & GPS, Animated — Racing, Animated — Technical and Animated — Porsche Heritage. They include a drag-racing Christmas Tree sequence, LED shift lights, G-force vectors, GPS lap traces, animated topographic contours, satellite tracking, OBD data, green digital rain and a warp-speed starfield. They animate live in Studio and in a newly built Android dashboard. Dually generates the motion directly, so no video file, internet connection or separate app is required.
Performance notice: animated wallpapers use more graphics processing than static images. Dually pauses animations for hidden presets and the Android renderer follows the display's frame timing, but some slower head units may still show less-smooth motion or reduced dashboard responsiveness. Test the finished APK while safely parked. If gauges, buttons or swipes become less responsive, select a static wallpaper instead.
The main Studio designer uses a 1420×720 Canvas renderer matched to the Android renderer's geometry, colours and timing. Small library thumbnails are simplified previews, but the full editing surface is the representation to use when judging the installed result. The Porsche clock and all widgets remain stationary; only the selected wallpaper moves. Static wallpapers are unchanged and remain the lowest-overhead choice.
Can launcher icons and wallpapers be customised?
Supported launcher slots and packaged wallpapers can be selected in Studio. An icon can only launch an application that is installed and addressable on the head unit. Wallpaper rendering can vary slightly between Studio and Android because of scaling, crop, display density and vendor layout behaviour.
Why can Studio and the installed APK look different?
Studio is a browser preview while the APK uses native Android views and packaged assets. Font rendering, scaling, display density and cached browser or builder files can produce differences. Refresh Studio after an update and rebuild the builder container when runtime code changes. Confirm the builder health version before testing a newly generated APK.
Companion and Apple CarPlay5 questions
Can the left Companion screen show a different preset from the right screen?
Yes. Companion 0.1.33, updated September 19, 2026 adds independent preset selection. Install this updated APK even if an earlier build already displays 0.1.33. It can also update the tested 0.1.34-preset-test app without uninstalling it.
- Start your normal right-screen dashboard, then open Dually Driver Display. It starts synchronized with the right screen.
- In the branded filler area on the left edge of Companion, check Independent preset.
- Tap LEFT PRESET and choose the preset for the left screen. Preset buttons within the left dashboard also select only the left preset while this option is enabled.
- Change presets on the right screen as usual; the left keeps its own selection.
- Uncheck Independent preset to immediately follow the right screen again. Reopening Companion starts in synchronized mode.
Both presets come from the same installed dashboard APK; this does not run a second Garage dashboard. The selector needs at least two presets and sufficient left filler space. If it is absent, check the installed dashboard's preset count and screen layout.
Live gauges, Data Logger controls and Dragon Run continue using the existing shared dashboard state. This option changes the displayed preset, not the hardware connection or recording session. Dragon Run's configured second-screen presentation remains available when its preset is selected. Keep the right-screen dashboard running.
How do I blank only the left or right screen?
In Studio, open Screen Controls and add Blank Left Screen or Blank Right Screen. Both widgets use a crescent moon: the L badge targets the left driver display and R targets the right dashboard. Move and resize them like other widgets.
Install Companion 0.1.25 and a fresh dashboard built with Dually 1.10.90.34 or later. Start the right dashboard and then Companion. Either widget can be pressed on either screen. The selected app surface stays black until you tap it; that first tap restores the display without pressing a hidden control. Closing and reopening the app also restores visibility.
This draws a black cover; it does not switch off the shared backlight. Telemetry and camera connections continue, and blanking one screen does not black out the other. The left-screen widget requires Companion to be running.
How do I download, install and use the Dually Driver Display Companion?
New Companion version 0.1.72 is available. Everyone using the companion should update. The September 19, 2026 update of 0.1.33 adds independent left-screen presets while retaining shared telemetry, data logging and Dragon Run. See the detailed instructions above. Update even if an earlier installed build also says 0.1.33.
The companion places an interactive copy of the currently installed Dually dashboard on the driver-side screen while the normal dashboard continues running on the right. By default it mirrors the selected preset; the Independent preset option lets the left screen choose a different preset from the same dashboard. It preserves the packaged layout, Porsche fonts, animated wallpaper, LED tach, gauges, WitMotion displays and live values packaged in that dashboard. You do not design or maintain a separate left-screen dashboard.
Download the Dually Driver Display Companion APK
Current companion version: 0.1.72, updated October 21, 2026. If your installed app is older than 0.1.72, please update to the latest version.
After Studio finishes building a dashboard APK, the save step also asks whether you want the companion. Choose OK to save both APK files together. Browsers with folder-write support save both into one selected folder; other browsers may show a second save prompt for the companion.
Initial installation
- Download Dually-Driver-Display-Companion.Ver0.1.72.apk using the button above, or choose OK when Studio offers the companion after a successful dashboard build. Copy both APK files to the USB drive normally used with the head unit.
- Install Dually-Driver-Display-Companion.Ver0.1.72.apk on the head unit. If Android asks for permission to install from that file manager, approve it. The installed app is named Dually Driver Display and uses the Dually Studio icon.
- In Studio, build and install a fresh dashboard using the companion-enabled runtime. Dashboards built before companion support do not contain the secure local display bridge.
- Start the normal Dually dashboard on the right screen first. Wait for OBDLink and WitMotion to connect normally and confirm that the right-screen widgets are updating.
- Open Dually Driver Display. On the verified Porsche Macan dual-screen head unit it opens as a separate app on the left driver-side screen.
- Wait for CONNECTING TO RIGHT-SCREEN DASHBOARD to disappear. The left screen should then match the selected right-screen preset and continue updating live.
Normal use
- Always start the normal right-screen dashboard before opening the companion.
- Preset buttons, performance ARM/CANCEL and reset, G-force calibration and peak reset, GPS lap ARM/reset/custom line, and volume are interactive from either screen.
- DJI Osmo SCAN, CONNECT, PAIR, RECORD/STOP and DISCONNECT are interactive from either screen in Companion 0.1.20. The right-screen dashboard remains the only owner of the DJI BLE connection.
- Motorsport Track, GT and Race/Lap dashboards also display on the left screen. Their live vehicle and lap data are mirrored from the right-screen dashboard, so the Companion does not open a second OBD connection.
- Companion 0.1.23 reconstructs segmented level bars from the live right-screen snapshot. Supported LED bars use live right-screen readings on both screens.
- Shared controls on the driver display are sent to the normal dashboard. Independent preset selection changes only the left view; telemetry and recording state remain shared.
- Future dashboard layouts automatically appear in the companion after the new dashboard APK is installed. The companion normally needs to be reinstalled only when Dually Studio publishes a companion update.
Why are there branded black bars?
The Studio design canvas is 1420×720, while the driver-side display has a different usable aspect ratio. The companion preserves the dashboard's original proportions so round gauges remain round, fonts retain their intended shape and widgets are not stretched or clipped. The unused side area is therefore shown as black bars with subtle Dually Studio branding. This is intentional and provides a more accurate dashboard than stretching it to fill the entire driver display.
Troubleshooting
- If the companion says WAITING FOR RIGHT-SCREEN DASHBOARD, make sure a newly built companion-enabled dashboard is open and running on the right.
- If the left screen shows an older layout, install the latest dashboard APK and then close and reopen the companion.
- If Android opens the companion on the wrong screen, close it and launch it from the driver-side application list after the normal dashboard is already running.
- If the Companion says Dually Motorsport dashboards use the right screen only, update to Companion 0.1.23 or later and install a fresh dashboard built with Dually 1.10.90.23 or later.
The companion never opens Bluetooth, OBD, DJI BLE, WitMotion USB or GPS. The right-screen dashboard remains the only owner of hardware connections, timing state and device activation. This prevents the companion from competing with the proven OBDLink or WitMotion connection.
How do I swap Apple CarPlay and the dashboard between screens?
The double-arrow (↔) button lets you put Apple CarPlay on the right screen and your Dually dashboard on the left. Press it again to return to the normal arrangement.
Required updates: install the Dually Driver Display Companion 0.1.61 or later and a fresh dashboard APK built with Dually builder 1.10.90.118 or later. Updating Companion alone does not add the button to an older dashboard APK. This feature is for supported dual-screen AcarDash head units.
- With the car safely parked, start your updated main dashboard and Companion, and connect your iPhone to Apple CarPlay normally.
- On the main screen, find the double-arrow button below the factory Porsche icon. Companion has the same arrows on its far-left border.
- Press either swap button once. Apple CarPlay appears on the right screen; Companion displays your dashboard on the left.
- To return, press the arrows on the left-screen Companion. Apple CarPlay returns to the left screen; the main Dually dashboard returns to the right.
The buttons share the same swap state, so you can start the swap from one app and restore it from the other. Companion keeps your selected preset, including when independent presets are enabled. The main dashboard continues running behind CarPlay while the screens are swapped.
If the arrows are missing: check that both apps were updated, then build and install a fresh dashboard APK. The separate Display Switch Test app is a diagnostic tool; installing it alone does not add buttons to your dashboard.
If swapping is unavailable: start the updated right-screen dashboard first and make sure the CarPlay app and both screens are available. Keep Companion installed and available on the left so you can use its return button. If you have closed Companion, reopen Dually Driver Display from the head unit's launcher. Screen-launch support can vary by head-unit firmware; include your head-unit model, app versions and the displayed message when requesting help.
How do I show my dashboard on the left driver-side screen?
The dashboard APK cannot be moved to the left screen with the ACarDash two-finger swipe. Instead, install and launch the Dually Driver Display Companion. The normal dashboard remains open on the right screen and the companion displays a fully interactive copy on the left.
Start the normal dashboard first, wait for OBDLink and WitMotion to connect, and then launch Dually Driver Display from the left screen. Preset selection, performance controls, G-force calibration and reset, lap-timer controls, and volume remain interactive from either screen.
Download the Dually Driver Display Companion APK
Read the complete installation, normal-use and troubleshooting instructions above.
The left screen has a different usable aspect ratio, so the companion centres the dashboard at its correct proportions. The unused side areas are intentional branded black bars; they prevent stretched gauges, distorted Porsche fonts and clipped widgets.
OBD and vehicle gauges11 questions
Can Digital Speed retain the maximum speed?
Yes. Select the Digital Speed widget and enable Show Maximum Speed. The live speed remains the large value, while the smaller MAX value appears underneath in its independently selected colour. The maximum is session-only and resets when the dashboard runtime restarts.
Which data sources are supported?
Depending on the widget, Dually Studio can use supported native head-unit values, Android GPS, Android motion sensors, system time and volume, and proven OBDLink values. A value appearing in another Android application does not guarantee that the vendor exposes it to Dually Studio.
Which OBD adapter is supported?
The proven target is the OBDLink LX using Bluetooth Classic. The adapter normally permits only one active application connection, so close the official OBDLink app and other diagnostic software before connecting the installed dashboard. Bluetooth permissions, pairing state, ignition state, and vendor firmware can all affect connection time.
Can Dually read and clear OBD-II trouble codes?
Yes. Add the OBD-II Trouble Codes widget from the Studio's OBD section. In the installed dashboard, SCAN CODES reads standard stored (Mode 03), pending (Mode 07), and permanent (Mode 0A) emissions-related codes through the same OBDLink LX connection used by the gauges. The widget shows the actual code identifiers, such as P0300, so they can be researched or given to a qualified technician.
This is a standard OBD-II engine/emissions scan, not a complete Porsche diagnostic-system replacement. It does not promise access to manufacturer-specific modules such as ABS, airbags, PSM, transmission, or body electronics.
CLEAR CODES sends the standard Mode 04 command. Dually requires the vehicle to be parked with the ignition on and engine off, then requires a second confirmation tap within ten seconds. Clearing codes does not repair the underlying fault. It may erase freeze-frame information and reset emissions-readiness monitors, which can affect an inspection until the vehicle completes the required drive cycles. Permanent codes may remain until the ECU confirms that the fault is repaired.
Why doesn't the water temperature match my Porsche gauge?
Dually displays the engine-coolant value reported by the ECU through the standard OBD coolant-temperature PID. The Porsche instrument-cluster gauge is not necessarily a direct numerical display of that same live value. Like many factory gauges, it is deliberately damped and buffered so normal thermostat cycling, fan operation and small temperature changes do not make the needle constantly move. The factory needle can therefore remain near its normal position while the ECU value shown by Dually rises or falls by several degrees.
OBD polling interval, ECU rounding and Fahrenheit/Celsius conversion can add a small delay or difference as well. This does not automatically mean either display is faulty. Compare readings only after the engine is fully warm and the OBD connection is stable. A large or persistent difference, an overheating warning, coolant loss or abnormal engine behaviour should be investigated with proper Porsche diagnostic equipment; Dually is an auxiliary display and must not replace the factory warning system.
Why do my Bluetooth OBD gauges show “Disconnected” or take time to start?
Bluetooth can be slow or unreliable, especially on Android automotive head units. After the Dually starts, allow several minutes for the head unit and OBD adapter to finish booting, reconnect and begin supplying live gauge readings. A temporary Disconnected message during startup does not necessarily indicate a dashboard or vehicle fault.
If the gauges remain disconnected:
- Confirm the ignition is on and the Bluetooth OBD adapter is fully seated in the vehicle's diagnostic port.
- Close the OBDLink app, Torque or any other OBD application. Only one application can normally use the adapter at a time.
- Unplug the OBD adapter, wait at least five seconds, plug it back in, and allow several minutes for Dually to reconnect.
- Close and reopen the dashboard APK, or use its disconnect/reconnect control if one is available.
- If it still does not connect, reboot the Dually head unit and start the dashboard again.
If the problem continues, verify that the adapter is powered, paired or otherwise available to Android, and test it with the adapter manufacturer's app. Repeated disconnects can also be caused by another app taking control of the adapter, weak adapter power, an unstable Bluetooth link or a failing dongle.
Are all vehicle measurements available through OBD?
No. Standard and manufacturer-specific availability varies by vehicle and control module. Unsupported oil-temperature and oil-pressure widgets are intentionally excluded. Displayed OBD data can be delayed, unavailable, or interrupted if the adapter disconnects.
Can speedometer widgets display MPH or km/h?
Yes. Select the Digital Speed, analog Speedometer, GPS Speed or Porsche Dashboard widget, then choose MPH or km/h under Speed Units. The choice is saved per widget, so one dashboard may contain different units if desired. Clear Show units on dashboard when you want the converted number and scale without a visible MPH or KPH label. Dually converts the live reading and the digital maximum-speed high-water mark; it does not merely change the printed label. Existing saved dashboards default to MPH with the units visible until changed.
Can Boost display PSI or bar?
Yes, where the supported boost data is available. The selected units and range must match the intended display. OBD and calculated boost values can differ from a dedicated calibrated pressure sensor.
How do high-water-mark needles work?
Supported tachometer, boost and speedometer widgets can retain a session peak. Reset controls clear the recorded peak. Session values are not intended as permanent vehicle records and normally clear when the runtime restarts.
How do staged RPM warnings work?
The selected thresholds can trigger progressive visual warnings, including the configured glow or full-flash behaviour. Actual timing and whether both physical display areas react depend on the head-unit firmware and its multiscreen implementation. Always shift based on safe engine operation, not solely on an auxiliary visual warning.
GPS, WitMotion and performance19 questions
How do I set up and use Dragon Run for the Tail of the Dragon?
Dragon Run is Dually's dedicated dual-screen dashboard for the Tail of the Dragon. Add Dragon Run · Tail of the Dragon from the Studio Performance section, then select the widget to configure its appearance and screen arrangement.
Configure and build the dashboard
- Choose an accent colour, map orientation and MPH or km/h.
- Leave Direction on Auto Detect, or lock it to Deals Gap → Tabcat or Tabcat → Deals Gap.
- Choose whether the route map or telemetry display appears on the left screen. You can also show or hide landmark callouts, the GPS breadcrumb, eleven-sector strip, safety banner and live telemetry cards.
- Build and install the dashboard APK, then start the normal right-screen dashboard before opening the Dually Driver Display Companion.
- Launch the Companion App. It recognises the Dragon Run dashboard automatically and displays the selected second-screen layout instead of mirroring the ordinary daily dashboard.
How the route and timer work
The complete 11.1-mile route, endpoints, eleven sectors and familiar landmarks are packaged inside the APK. The map therefore works without cellular service or an online mapping provider. The GPS position marker and breadcrumb show progress, while the display reports the next landmark and estimated distance remaining.
Dragon Run uses the published Deals Gap/state-line and Tabcat Bridge endpoints as its GPS gates. With Auto Detect selected, approaching either endpoint with an accurate fix identifies the direction and arms the correct start gate. Crossing that gate starts the timer automatically; crossing the opposite gate finishes the run.
- Solid red or the selected accent colour: completed sector.
- Dim accent colour: current sector.
- Dark: upcoming sector.
After completing one direction, you can arm another run from the opposite endpoint. Personal bests and sector bests are stored separately for Deals Gap → Tabcat and Tabcat → Deals Gap because the two directions have different climbing and descending characteristics.
Check readiness before moving
Accurate GPS is required for automatic start, finish, route progress and sector timing. Wait for the dashboard to move beyond ACQUIRING GPS or WAITING FOR ACCURATE GPS. Near an endpoint, the status should identify the direction and show AUTO START ARMED.
OBDLink and WitMotion readiness are separate from GPS readiness. Dragon Run can still time the route from GPS when either accessory is unavailable, but the affected RPM, boost, G-force, braking or grade values may be missing from the telemetry and summary.
Run summary and saved records
At the finish gate, the telemetry display changes to a Dragon Run Summary. Depending on the available signals, it includes total time, moving time, average and maximum speed, maximum RPM and boost, lateral and braking G, uphill and downhill grade, traffic-affected status, sector times, personal bests and time deltas.
A text report is also saved in Android's Downloads folder with a name such as Dually-Dragon-Run-20260824-154502.txt. Tap the completed summary while stopped to arm another run.
Safety: The Tail of the Dragon is a public road. Obey all posted limits, stay in your lane and never operate dashboard controls while the vehicle is moving. Dragon Run is a driver-reference tool, not certified competition timing. GPS accuracy, antenna placement, sky view and device hardware can affect gate detection and results; verify both endpoint gates during the first careful field test.
Exactly how do I connect and use the WitMotion BWT901CL?
Do not install the WitMotion app or any WitMotion software on the head unit. Do not pair the sensor in Android Bluetooth settings, and do not enter a PIN. Dually communicates directly with the BWT901CL through its USB cable, not Bluetooth.
- Fasten the sensor rigidly to the vehicle with its X axis pointing forward and Y axis pointing left.
- Connect the sensor's USB cable directly to the head unit, or to a compatible USB data hub.
- Start a Dually dashboard that contains a WitMotion or performance widget.
- The first time Android asks which app may use the USB device, choose Dually and enable Always use if that option is offered.
- Wait for the widget to show USB LIVE and a live sample rate, normally close to 50–51 Hz. Move the sensor gently and confirm that the values or graph respond.
- With the vehicle parked on level ground and completely still, press CALIBRATE on the G-Force Meter. The button turns green and reads CALIBRATED when it is ready.
Dually opens the USB serial interface at 115,200 baud, requests the 50 Hz WitMotion output stream and reconnects automatically whenever the dashboard starts. It identifies the sensor independently of its changing /dev/bus/usb address and retries after a delayed attachment or disconnect. This USB connection is separate from Bluetooth OBDLink, so both can operate at the same time.
Which WitMotion displays are available?
The Studio Performance section includes a compact USB connection indicator, live acceleration/angular-velocity/attitude values, a scrolling three-axis acceleration-history graph, a G-G traction plot, an aviation-style attitude display, the G-Force Meter, and the Macan Off-Road Attitude widget. Seven additional resizable displays are available: Yaw Rate / Rotation, 60-0 Braking Performance, Launch Analyzer, Road Grade, Vertical-G / Road Impact, Driver Smoothness, and Cornering Rotation.
Mount the BWT901CL flat and rigid with X forward, Y left and Z up, then calibrate on level ground. Braking Performance combines WitMotion deceleration with the ACarDash native speed display. Launch Analyzer shares the existing Performance Controls ARM/run state. Cornering Rotation compares yaw, lateral acceleration and speed as a driver-coaching estimate; it is not a certified chassis-dynamics or motorsport timing instrument. Every display is an independent widget that can be moved and resized alongside the rest of the dashboard.
What are the OBD and WitMotion feature packs?
Dually Studio Core includes dashboard design, native Android/GPS widgets, Community, Garage, Forum access and unlimited APK building. The OBD Pack adds OBDLink connection and live vehicle gauges for $4.99 per year. The WitMotion & Performance Pack adds USB motion displays, G-force and acceleration timing for $4.99 per year. Complete includes both packs.
Existing paid users at the time feature packs were introduced are automatically grandfathered into Complete access. Owner and approved Friend accounts also retain Complete access. Anyone can place, resize and inspect premium widgets in Studio. Unavailable widgets retain a lock and display a Requires Premium Subscription preview watermark. During an APK build, the protected server replaces each unlicensed premium widget with a matching-size subscription placeholder, preserving the dashboard layout without including the paid functionality.
What happens if WitMotion is not connected?
The 0-60 MPH, 1/8 Mile and 1/4 Mile timers require the USB-connected WitMotion sensor and display CONNECT SENSOR if it is unavailable. They do not fall back to GPS, ACarDash speed, OBD speed or the head unit's internal accelerometer. The G-Force Meter can still fall back to a working Android accelerometer when one is present; otherwise it displays NO SENSOR.
Dually treats fresh WitMotion packets as the authoritative connection test. If G-force values are changing, a delayed USB status message can no longer incorrectly change the display to disconnected. If no valid packet arrives for two seconds, Dually shows WITMOTION USB DATA STALE and cancels an armed or active performance run rather than retaining a frozen reading.
How do the performance timers measure a run accurately?
The 0-60 MPH, 1/8 Mile and 1/4 Mile timers are completely WitMotion-based. One ARM control starts all performance timers present on the dashboard. Use this sequence:
- Mount WitMotion flat and rigidly with X forward, Y left and Z up. Connect it by USB and wait for WITMOTION USB LIVE, normally near 50–51 Hz.
- Park on a level surface and stop completely. The G-Force Meter's CALIBRATE button calibrates that meter, but the performance timers still collect their own launch baseline after ARM.
- Press ARM. The timers show KEEP STILL while Dually collects 50 stationary samples. Do not touch the throttle or allow the car to roll.
- Wait until every timer says ARMED and the message confirms that the WitMotion baseline is ready. Launching while KEEP STILL is displayed will not start a valid run.
- Launch normally and decisively. Two consecutive changes of at least 0.04 G on the forward X axis start the clock at the first qualifying sensor timestamp.
- The 0-60 timer stops when the integrated speed reaches 60 MPH. The 1/8-mile and 1/4-mile timers stop when integrated distance reaches 660 and 1,320 feet. LAST and BEST remain visible after completion.
- Press ARM again for another run. Press CANCEL to abandon an armed or active run, or RESET to clear the stored session results.
Two consecutive forward-axis changes of at least 0.04 G identify the launch, and the clock starts at the first qualifying 50–51 Hz sensor timestamp. Dually removes the stationary bias and integrates forward acceleration into velocity for the 60 MPH crossing. It integrates that velocity again into distance for the 660-foot and 1,320-foot crossings, interpolating the final sample interval. GPS, ACarDash, OBD speed and the head unit's internal accelerometer are not used by these three timers. Use these features only on a legal closed course.
Why did a performance timer not start?
Read the timer status before launching:
- CONNECT SENSOR: no fresh WitMotion USB packets were received.
- KEEP STILL: the one-second stationary baseline is still being collected, or vibration and movement forced it to restart.
- ARMED: the baseline is ready and the next valid forward launch will start the run.
- SENSOR TILTED: the stationary gravity reading shows that the unit is not flat with Z facing up.
- SENSOR MISALIGNED: launch motion appeared mainly on Y or Z instead of the forward X axis. Dually cancels the arm and displays a message telling you to correct the mounting.
- SENSOR LOST: fresh USB packets stopped during the arm or run, so the result was cancelled rather than presenting an inaccurate time.
If ARMED appeared but the clock still did not start, confirm X is pointed straight forward, the sensor cannot slide or flex, and the launch produces at least 0.04 G for two consecutive samples. Very gentle throttle application may remain below the intentional launch threshold.
Why are my 0–60 and performance results different from Dragy?
Dually and Dragy do not measure a run the same way. Dually uses the USB-connected WitMotion sensor at approximately 50–51 Hz. It removes the stationary baseline, starts at the first of two forward-axis samples of at least 0.04 G, then integrates acceleration into speed and distance. Dragy uses its own high-rate satellite positioning hardware and its app's selected start, rollout and validation settings.
A small difference is therefore normal. WitMotion mounting angle, sensor movement, vibration, vehicle pitch, wheelspin, road grade, baseline movement and accumulated integration drift can affect Dually. Satellite reception, the selected rollout option, slope correction and the exact start-detection rules can affect the Dragy result. Even when both devices record the same run, they may assign slightly different start and finish timestamps.
For the fairest comparison, mount WitMotion rigidly with X forward, Y left and Z up; perform the run on the same level road in the same direction; wait for ARMED; and compare against a Dragy result configured without rollout or other corrections. Dually is intended as an integrated driver-reference tool, not a replacement for Dragy, certified drag-strip timing or competition data acquisition.
How should WitMotion be mounted for performance timing?
Fasten the sensor rigidly and flat with X pointing forward, Y pointing left and Z pointing up. It must not move, flex or slide during a run. Dually checks the stationary gravity direction while arming and then verifies that launch acceleration is dominated by the X axis. A tilted unit produces SENSOR TILTED; a launch detected mainly on Y or Z produces SENSOR MISALIGNED and a pop-up mounting reminder.
Arm the timer on a level stationary surface and do not launch until ARMED appears. If vibration or movement prevents a stable baseline, the timer displays KEEP STILL and automatically collects another sample window.
What do LAST and BEST mean?
LAST is the most recently completed result. BEST is the lowest completed result during the current dashboard runtime session. RESET BESTS clears both values. They are deliberately session-only and clear when the dashboard process or head unit is restarted.
Are the performance results certified?
No. The three acceleration-run timers are inertial measurements, so mounting angle, vibration, road grade, vehicle pitch, wheelspin, baseline movement, sensor bias and numerical integration drift can affect the result. GPS quality does not affect these timers because GPS is not used. Use performance features only on a closed course or other legal controlled environment. They are not certified drag-strip or competition timing equipment.
How does the GPS Signal widget work?
The widget reports satellites used by the Android GPS fix, satellites in view when available, horizontal accuracy in metres, and a segmented quality bar. Red means no usable or poor fix, orange means marginal accuracy, and green means a strong fix. Satellite reporting depends on what the head unit's GPS provider exposes and may be unavailable indoors or near obstructions.
What affects GPS accuracy?
A clear sky view, antenna placement, nearby buildings, trees, tunnels, weather, head-unit hardware and time since startup all affect the fix. Wait for a stable green indication before relying on GPS-based statistics or lap timing. Elevation is generally less accurate than horizontal position.
How does the G-Force Meter work?
Mount the WitMotion sensor securely with its X axis pointing forward and Y axis pointing left. Park on level ground, keep the vehicle still and press CALIBRATE. After READY appears, the widget shows lateral and longitudinal acceleration and retains separate positive and negative peaks for both axes. RESET PEAKS clears the session readings; recalibration or restarting the dashboard also clears them.
What are the G-force limitations?
Mounting angle, vibration, flex, smoothing, sensor orientation and the calibration surface affect the reading. WitMotion is substantially more useful than the missing accelerometer in many aftermarket head units, but these displays remain driver-reference instruments rather than certified laboratory or motorsport data acquisition.
Exactly how does the GPS Lap Timer work?
The first accepted start/finish crossing after ARM starts the clock. The second crossing completes lap 1. You do not receive a lap time on the first crossing because no full lap has been driven yet. Once timing has started, every later accepted crossing finishes the current lap and immediately starts the next one.
The GPS Lap Timer uses the Android head unit's GPS. It does not use the WitMotion sensor, OBD speed, ACarDash speed or an internet connection.
Prepare the widget in Studio
- Add GPS Lap Timer from the Performance category.
- Choose a built-in track or Custom Start / Finish in the widget properties.
- Choose the gate width. This is the permitted side-to-side width of the invisible GPS start/finish line. A wider gate is easier to cross but can be less selective on a track with nearby sections.
- Choose the minimum lap time. Any return crossing before this time has elapsed is ignored, which prevents GPS noise or a nearby pass from being counted as a lap.
- Build the APK and install it on the Porsche head unit.
Set a custom start/finish line
- Wait for a stable GPS fix. Do not set the line while the widget says GPS SIGNAL LOW.
- Stop on the physical start/finish line with the vehicle facing in the normal racing direction.
- Press SET LINE. This saves the GPS position and vehicle heading; it does not arm or start the timer.
- Wait for LINE SET · READY TO ARM. The custom line remains saved after the dashboard restarts.
- Drive or move the vehicle back to the approach side of the line before arming. As a practical guide, be roughly 20–30 metres before the line and pointed in the same racing direction.
A built-in track already contains its start/finish position. The current library includes Lime Rock, Watkins Glen, Laguna Seca, Sebring, Circuit of the Americas, Virginia International Raceway, Mid-Ohio and Road America at Elkhart Lake. When a named track is selected, its name appears at the top right and the widget displays only ARM and RESET; SET LINE is available only for Custom Start / Finish. The stored track position should still be physically verified before relying on it, and Custom mode remains available if a venue changes its timing line or layout.
Start and record laps
- Approach from before the line. Do not press ARM while sitting on the line or after passing it.
- Press ARM. The button changes to CANCEL and the status must read ARMED · CROSS LINE TO START.
- Cross the line in the saved racing direction and within the configured gate width. This is the start crossing: the timer changes to RUNNING and begins counting from zero. It does not increment the lap counter yet.
- Drive one complete circuit.
- Cross the same line again in the same direction. This is the lap 1 finish crossing: LAST is stored, BEST is updated when appropriate, the lap count becomes 1, and timing for lap 2 begins immediately.
- Every following accepted crossing completes another lap and immediately begins timing the next one. You do not need to press ARM between consecutive laps.
- Press CANCEL to stop an armed or running session without erasing completed results. Press RESET to clear LAST, BEST and the lap count.
What each status means
- IDLE: the timer is not armed or running.
- SET LINE FIRST: Custom Start / Finish is selected but no custom line has been saved.
- GPS SIGNAL LOW: the current GPS fix is not good enough to set, arm or reliably time the line.
- POINT IN RACE DIRECTION: Dually cannot obtain a usable heading while setting a custom line.
- LINE SET · READY TO ARM: the custom GPS position and direction were saved successfully.
- ARMED · CROSS LINE TO START: timing has not begun; Dually is waiting for the first valid crossing.
- RUNNING: the start crossing was accepted and the current lap clock is active.
- LAP n COMPLETE: a return crossing was accepted and LAST, BEST and the lap counter were updated.
Simple example: press ARM 20–30 metres before the line. Crossing A starts the timer. After one complete circuit, crossing B records lap 1 and starts lap 2. Crossing C records lap 2 and starts lap 3.
Accuracy depends on GPS update rate, antenna placement, sky view, speed and track geometry. Use the results for driver reference only; they are not official event timing.
Why did the GPS Lap Timer wait until my second crossing to start?
That is not the intended sequence. When properly armed before the line, the first accepted crossing should change the status to RUNNING and the current time should begin increasing immediately. The second accepted crossing should complete lap 1.
If the display remained at 0.00 until your second physical crossing, Dually rejected the first one. Check these items:
- ARM position: press ARM while clearly before the line. If you arm on the line or after it, Dually must wait until you travel around and approach from the correct side.
- ARM status: confirm the display says ARMED · CROSS LINE TO START before reaching the line.
- Direction: cross in the same racing direction used when the custom line was set. Reverse-direction crossings are intentionally rejected.
- GPS quality: wait for a stable fix and clear sky view. A stale or inaccurate location can miss the crossing.
- Gate width: the vehicle must cross within the configured side-to-side gate. Increase the width if the racing line or GPS position varies significantly.
- Custom line position: if the saved location or heading is wrong, return to the physical line, face the racing direction and press SET LINE again.
The minimum-lap-time setting does not delay the initial start crossing. It only prevents an unrealistically early return crossing from being recorded after the timer is already running.
Does Dually Studio support Dragy?
No. The tested ACarDash head unit does not provide the Bluetooth Low Energy support required by the BLE-only Dragy hardware. Dually Studio does not require or support an external ESP32, phone, or gateway bridge.
Data logging and Race Analysis2 questions
How does data logging work with a DJI Action camera?
Dually has two logging profiles: Daily Driving for normal journeys and Race for more frequent capture of important driving signals. Auto-start logging defaults to Daily Driving. When camera-linked logging is enabled, pressing RECORD in Dually's connected DJI camera widget starts a separate Race session to accompany your video.
Required updates: use a dashboard built with Dually builder 1.10.90.117 or later and Companion 0.1.60 or later if you use the left-screen app. Install a freshly built dashboard APK after updating the builder.
- Start the main dashboard, connect the supported DJI Action camera using its Dually widget, and open Data Logger.
- Enable Camera Record starts Race logging; Camera Stop saves it. The option is enabled by default when no previous preference exists; an earlier choice to disable it is retained.
- Choose the available metrics you want to capture. Race mode automatically includes its essential driving metrics, such as RPM, TPS, brake pressure and gear, where supported. GPS is needed for a route; WitMotion must be connected for inertial readings.
- Press RECORD in the DJI widget, including the lightweight camera widget. Dually displays “Stopping data logging, switching to race mode data logging”, saves any current session and starts a new Race data file while requesting camera recording.
- When finished, press STOP recording in the DJI widget. Dually ends and saves the camera-linked Race session. Check the logger's saved status before exporting or emailing it.
Finding the matching file: camera-linked sessions have an obvious Dually-Race-Log…csv filename. Keep that CSV together with the corresponding original camera video. To resume ordinary logging afterwards, select Daily Driving and start a new session.
How synchronization works: Dually records timestamps for the camera recording request and the camera's recording confirmation when received, as well as timestamped telemetry. This creates a close starting reference without assuming the camera responds instantly. In a video-enabled Race Analysis build, import both the CSV and video and try automatic synchronization first. It matches available timestamps across the whole data log, so a short video can align with a segment in the middle of a longer journey. Use manual offset adjustment if the camera clock, video metadata or processing delay prevents an accurate automatic match.
Race mode prioritizes fast-changing signals rather than polling every temperature or fuel reading equally often. Actual rates depend on the adapter, ECU response times, GPS and connected sensors. Timestamp alignment cannot create samples that were not captured or guarantee frame-perfect synchronization. Start recording through Dually's camera controls for the automatic log switch; recording directly on the camera or through another app does not necessarily start a Dually Race log.
If there is no Race file: confirm the camera-linked option is enabled, check both installed app versions and the camera connection, and inspect the logger status for a save error. The main dashboard owns the recorder; Companion controls the same session rather than creating a second log. See emailing and queuing logs for transferring a saved file.
How do I record vehicle data and graph it with the Data Logger widget?
Add and open the logger
- In Studio, add the Data Logger chart-icon widget, position and size it, then save your dashboard and build and install its APK.
- Start the normal right-screen dashboard. Tap the chart icon on either screen to open DUALLY STUDIO / DATA LOGGER. For left-screen operation, run the current Companion app as well.
- The logger uses the dashboard's existing OBD and WitMotion readings. It does not make a second Bluetooth connection. Red Waiting for OBD changes to a green check and Ready when the selected source is supplying fresh data. Sensor-only selections wait for WitMotion instead.
Select readings and record
- Before starting, tap METRICS and select the readings you want. Scroll the list to see every choice.
- Available choices include RPM, speed, coolant and oil temperature, actual and Porsche-adjusted oil pressure, PDK temperature, boost, adapter voltage, fuel level, and WitMotion acceleration, pitch and roll. Availability depends on the vehicle and connected hardware; selecting a metric does not make an unsupported signal available.
- Tap START. The current connection is reused. Recording waits for valid selected data, so connection setup time does not create an empty section at the beginning of the graph.
- Tap the large MARK button to label a moment for later review. It briefly turns green to confirm the mark; there is no confirmation dialog to dismiss.
- Return to dually studio closes the panel while recording continues. Reopen the chart widget to see status or stop. Changing presets does not stop the recording.
- Tap STOP & GRAPH to finish, save and review the session. Configure metrics and review graphs while parked.
Review graphs and marked events
Scroll down for additional graphs. Tap a graph to inspect values, drag to pan and pinch to zoom. ZOOM + enlarges the time view; FIT restores the whole session. TRACES selects which recorded metrics are displayed. EVENTS lets you jump to a mark. Event labels can be renamed from the right-screen dashboard; re-export the CSV after renaming to include the change.
SAVED SESSIONS opens previous recordings. Stop an active recording before opening a saved graph. Missing or stale data appears as N/A or gaps, not a fabricated zero. Zero RPM or oil pressure with the engine stopped can be a valid reading.
Export and find the CSV
- On the saved graph, tap SAVE CSV TO DOWNLOADS. Allow storage access if Android requests it.
- Wait for CSV saved successfully and the saved path. If an error appears, the export has not completed; the original session remains available in SAVED SESSIONS.
- Open the head unit's Files or File Manager and browse to Internal storage → Download → DuallyDataLogger. The file starts with
Dually-Log-and ends in.csv. Copy or share it from there to open it in a spreadsheet.
No USB drive is required. Keep WitMotion plugged in for sensor metrics. If a thumb drive takes its USB port, those readings are unavailable and should be deselected or treated as N/A.
Storage limits and shared operation
The logger retains the newest five saved sessions and removes older sessions automatically. Downloads exports have a separate five-file retention limit for exports managed by the app; exporting the same session again replaces its previous export. Copies you make elsewhere are not removed. Each recording is limited to two hours or approximately 12 MB. Copy important recordings elsewhere before they rotate out.
Both screens control the same dashboard recording, not two separate sessions. Keep the right-screen dashboard running when using the logger from Companion. Independent left-screen presets do not create a second OBD or USB connection.
Cameras and accessories1 question
How do I pair and control a DJI Osmo Action camera?
Dually controls supported DJI Osmo Action cameras over Bluetooth Low Energy only. It does not use camera Wi-Fi or live preview, so the camera widget does not take over the head unit network connection used by wireless CarPlay.
Add the camera widget
- In Studio, open Action Cams and add DJI Osmo.
- Double-click the widget to choose the optional telemetry you want: Battery %, Time Remaining, Camera Mode and Camera Status.
- Record / Stop, the recording indicator, elapsed recording time, connection state and camera connection controls are always included.
- Build and install a fresh dashboard APK. To control the camera from the left screen too, install Dually Driver Display Companion 0.1.20 or later.
Pair the camera
- Turn on the DJI camera and keep it close to the head unit.
- At startup, SCAN is the only green connection button. CONNECT, PAIR and DISCONNECT remain brown until their prerequisites are reached. Press SCAN; one press automatically tries up to three scan windows. Dually assumes one action camera and automatically selects the first supported DJI camera it finds.
- When a camera is found, CONNECT turns green. Press CONNECT.
- When the BLE connection is ready, PAIR turns green. Press PAIR.
- After pairing succeeds, DISCONNECT turns red and the Record/Stop control becomes active.
Normal use
- Press RECORD to start recording and STOP to stop. The red recording indicator and elapsed time update from the camera.
- Battery percentage, time remaining, camera mode and status update live when those metrics are enabled.
- A successfully paired camera address is remembered. On a later dashboard start, Dually waits briefly for the rest of the head unit to initialise and then attempts to reconnect the saved camera.
- With Companion 0.1.23 or later, the same DJI controls and live telemetry appear on the left screen. Left-screen taps are sent to the right-screen dashboard, which performs the real BLE operation, so there is never a second DJI Bluetooth connection.
If the camera is not found
- Make sure the camera is powered on and not being controlled by another phone or DJI application.
- Press SCAN again after the three-round scan finishes, or power-cycle the camera and retry.
- If a saved camera no longer connects, press DISCONNECT if available, then SCAN, CONNECT and PAIR again.
Do not operate camera or dashboard controls while driving. Configure and pair the camera while the vehicle is safely parked.
Dually Race Analysis — Windows & Mac
What is Race Analysis, and where do I download it?
Download Dually Race Analysis here and select your computer. It is a desktop app for reviewing normal Dually driving logs: GPS paths, linked telemetry charts, replay, marks, peak callouts, estimated lap times, point-to-point runs, braking events and recording quality.
Windows: download the portable EXE and double-click it. There is no setup wizard or separate runtime to install. Mac: download the Apple Silicon ZIP, double-click it to extract, and open Dually Studio Race Analysis. You may move the app to Applications for convenience. The Mac build requires M1 or newer; this release does not include Intel Macs.
These beta builds are not publisher-signed or Apple-notarised yet. Windows may offer More info → Run anyway. On Mac, after trying to open the app, use System Settings → Privacy & Security → Open Anyway if offered. Only approve a download you obtained from Dually and trust; do not disable security globally. Organisation-managed computers may need administrator approval.
How do I record, transfer and open my first session?
- On the head unit, open the Data Logger widget and select the metrics you want. GPS data is needed to draw the route and estimate laps; connect WitMotion for inertial readings. Only available recorded signals can be analysed.
- Start logging manually, or enable Auto start logging on the on-screen logger. This preference is stored on the head unit and applies at the next dashboard launch; you do not need to rebuild the APK when changing it.
- Use the large MARK button to identify a moment you want to revisit. After the session, choose STOP & GRAPH to save it.
- Return to Data Logger and choose Email me latest log, or export CSV from the saved session graph and transfer it by your usual file-copy method.
- Save the attachment on your computer. If it ends in
.csv.gz, extract it first to obtain the CSV. - In Race Analysis, choose Open data log and select
Dually-Log-…csv. Use Explore demo to learn the interface with clearly labelled simulated data.
Use a normal data log, not a CAN capture or an older Telemetry / Screen Test export. Opening a new primary log replaces the current session; original files are unchanged. Keep your CSV files and save reports or track definitions you want to retain. Files are limited to 128 MiB / two million rows.
How do I inspect the route, peaks and graphs?
The GPS path is drawn automatically when suitable fixes exist. Hover the route or a chart to link the cursor, speed, temperature, TPS and other available readings to the same time. Use Colour by to choose a recorded channel; pan and zoom the offline trace, or choose Fit route. The replay controls step through the session.
Expand Peak callouts and tick the metrics you want. Each callout identifies the highest recorded value across the whole session. Tied peaks use the first occurrence. An arrow is shown only when a suitable GPS position can be determined; otherwise the result remains in the list without an invented location. Logger marks and braking events help you find moments to review.
Channels & quality shows actual captured rates, missing samples, gaps and minimum/mean/maximum readings. Missing data is not replaced with zero. TPMS appears when supported values are actually present in the log; the desktop app does not decode CAN PIDs.
How do I set up laps or a self-defined start and finish?
Open Laps & runs. For a closed circuit, choose the closed course type and Draw start / finish gate, then click two points across the driven line. For point-to-point runs, choose that course type and draw a separate finish gate. Adjust the minimum run interval if needed and save the track definition to reuse the gates.
Only complete intervals are listed; first and last partial laps are omitted. GPS gaps, poor fixes and implausible jumps can exclude or flag intervals. Times are GPS estimates, not transponder measurements. Compare log overlays a second session by elapsed time, not distance-aligned laps. Sector/ideal-lap analysis and automatic circuit recognition are not included in this release.
Brake pressure is an estimated percentage, and brake temperature is ECU-calculated. Raw inertial readings include gravity and mounting effects. Set the forward axis and sign before using inertial braking estimates. Review these values as recorded evidence rather than certified measurements.
Do maps need internet or my own API key? Is my log uploaded?
Trace works offline. Satellite and the regular Google map view need internet and load through Dually’s hosted map service. Users do not need to obtain or enter their own Google API key.
CSV analysis happens on your computer. When you open the connected map, route coordinates and peak labels are passed to the embedded map in memory; Google receives map requests for the viewed area. The hosted map does not persist your telemetry, and the complete CSV is not uploaded for analysis. Emailing a log is a separate, explicit action described below.
Where do I ask questions or report a bug?
Use the Race Analysis App forum for app questions, interpreting sessions and feature ideas. Use Bugs and Known Issues for reproducible problems and known-issue discussions.
Include the app version, Windows or Mac details, dashboard/Companion versions when relevant, the steps taken, and what you expected versus what happened. Logs and screenshots can reveal routes and other private details; review them before sharing. Existing forum read/post permissions still apply.
Emailing and queuing driving logs
How do I email my latest log?
Use a dashboard built with the email-enabled runtime (1.10.90.68 or newer) and Companion 0.1.41 or newer for the compact controls on both screens. Add the Data Logger widget to your dashboard if needed. Both screens control one recorder and one email queue on the right-screen dashboard.
- Finish the session with STOP & GRAPH, then return to Data Logger.
- Choose Email me latest log and confirm Email my log. The button is unavailable while recording, armed or saving.
- The latest completed CSV is queued for the email address registered on your Dually account. The recipient is not entered on the head unit.
- Watch the email status, or open Email queue for the full message. Check your inbox and spam folder when it says Sent — accepted by email server.
The head unit uploads the selected copy over HTTPS; Dually’s server authenticates the registered dashboard and sends the attachment using its email service. Logs may contain GPS locations. No phone email app or SMTP password is required on the head unit. “Sent” means the mail server accepted it, not a confirmed inbox delivery.
What if the car has no internet? Can I queue a log for later?
Yes. Stop and save the session, choose Email me latest log, and confirm even while offline. A separate copy waits in the head unit’s email queue. Later, connect the right-screen dashboard to internet using its SIM, Wi-Fi or your phone’s hotspot.
CarPlay or ordinary Bluetooth pairing alone does not supply the upload connection. A phone hotspot can provide internet when the head unit supports that network connection. Alternatively, send when back on home Wi-Fi.
Dually retries roughly every minute while the native dashboard process is running, and resumes queued work at the next start. Nothing can upload while the head unit is powered off or Dually is stopped. You do not need to press Email again each time connectivity returns.
How many logs can wait, and how do Retry and Clear queue work?
Up to three logs can wait in the email queue. These are separate copies, so normal rotation of the newest five saved sessions does not remove queued logs. Open Email queue → Retry to retry waiting items after resolving a connection, account or server issue.
Clear queue removes waiting email copies after confirmation and keeps the normal saved sessions. It cannot recall an email already being sent. Uninstalling Dually or clearing its application data removes queued copies. If power was lost while a log was still being prepared for email, queue that saved log again.
The server prevents duplicate sending of the same attachment content and accepts up to 20 distinct logs per account per day. If it reports an uncertain email handoff, contact support before retrying; the system holds that request to avoid duplicate mail.
Why did I receive a .gz file, or why has sending failed?
Logs up to 8 MiB are attached as CSV. Larger logs are compressed to .csv.gz, with an 8 MiB compressed attachment limit and 96 MiB original-log limit. Extract the file with an archive tool before opening its CSV in Race Analysis. Logs still too large after compression need manual export/transfer.
An incomplete log must be stopped and saved before sending. If sending waits, check head-unit internet and the status under Email queue. Account/licence issues require an active registered dashboard; server configuration or upload-limit errors may need Dually support. A queue-full message means three copies are already waiting—connect to internet or clear unwanted waiting copies.
If accepted mail does not arrive, check spam and the email address on your Dually account. The server keeps delivery metadata and checksums for duplicate prevention, rather than saving uploaded CSV files as a server log library.
General questions and support2 questions
What should I include in a support request?
Include the dashboard name, browser, builder health version, Android version, head-unit model, APK version, affected widget, exact error text and steps to reproduce. Screenshots are helpful, but never submit passwords, PayPal credentials, private keys or other secrets.
How can I ask another question?
Use the private contact form. It forwards the request to Dually Studio support without publishing the destination email address on the page.
Can I swipe between dashboard presets?
Yes. In a dashboard built with version 1.10.90.143 or later, swipe left with two fingers for the next preset, or right for the previous one. It wraps from the last available preset to the first. Start on an open area of the dashboard, away from buttons, sliders and camera controls. Use a short, mostly horizontal swipe; a pinch or vertical movement does not switch presets.
Install Companion 0.1.72 or later for the same gesture on the left screen. With Independent presets selected, swiping the Companion changes its own preset. With presets linked, it uses the normal shared preset controls. A short fade confirms the change. Existing one-finger widget controls continue to work. The gesture applies inside Dually dashboards, not Apple CarPlay or other apps.