Download Latest Version OpenTabletDriver-0.6.6.0_osx-x64.tar.gz (36.5 MB)
Email in envelope

Get an email when there's a new version of OpenTabletDriver

Home / v0.6.6.0
Name Modified Size InfoDownloads / Week
Parent folder
opentabletdriver-0.6.6.0-1-x64.deb 2025-09-28 5.5 MB
opentabletdriver-0.6.6.0-x64.tar.gz 2025-09-28 8.2 MB
OpenTabletDriver-0.6.6.0_osx-x64.tar.gz 2025-09-28 36.5 MB
OpenTabletDriver-0.6.6.0_win-x64.zip 2025-09-28 7.6 MB
opentabletdriver-0.6.6.0-1.x86_64.rpm 2025-09-28 5.5 MB
OpenTabletDriver v0.6.6.0 source code.tar.gz 2025-09-28 312.9 kB
OpenTabletDriver v0.6.6.0 source code.zip 2025-09-28 815.1 kB
README.md 2025-09-28 11.5 kB
Totals: 8 Items   64.3 MB 35

OpenTabletDriver v0.6.6 finally releases after over a half a year of development!

This version mostly focuses on added support for more tablets, but also has some bug fixes and quality of life changes.

Notably, plugin API and bindings have been looked at closely to fix up some small annoyances for end users.


Additionally, we have some sad news to bring:

During this release window, long time contributor @jamesbt365 passed away. We have memorialized his impact on the OpenTabletDriver project in the driver user interface.

James joined the OpenTabletDriver team more than 4 years ago, and has provided outstanding support for users on our Discord, helped the team keep multiple OpenTabletDriver projects updated (core, web and bot) with documentation and code.

Among his over 300 pull requests for the driver, dating all the way back to [#1503], James has helped add and improve support for scores of tablet models, and fix cross-platform compatibility of dozens tablets, finishing off with his last pull requests in [#3931] and [#3736].


With all that being said, we hope you enjoy the v0.6.6 release! Further details about this release can be seen below:

Notable changes

Adaptive Bindings by @gonX in [#4010]

This version of OpenTabletDriver introduces a new default binding: Adaptive Bindings

Adaptive Bindings automatically adapt to your output mode - no more fiddling with bindings just to use your other output mode properly.

Plugin developers making output mode plugins: Make sure your output mode implements IPenActionHandler to properly support this. IMouseButtonHandler is also supported.

Migrate Tablet Configuration properties to match avalonia by @gonX in [#4027]

This changes the tablet configuration schema to match that of our other branches. Any custom tablet configurations that worked with v0.6.5.1 should still work with this version.

This improves the user experience for users with unsupported tablets, as they now don't have to worry (quite as much) about their tablet missing features because they used a configuration targeted for another driver version.

Add options to disable pressure & tilt by @AkiSakurai in [#3564]

You can now disable these settings per-tablet. It disables reporting of these values to the OS, which implicitly disables pen tip in the Linux Artist Mode output mode.

Integrate Preset Bindings by @Mrcubix in [#3995]

Adds support for loading presets directly from bindings.

Plugin developers: This also exposes the current IDriverDaemon to the pluginmanager service collection, should you need direct Daemon access in your plugin.

Invert tilt in UCLogicTiltReportParser by @gonX in [#3701]

This hopefully fixes the inverted tilt present on many UCLogic tablets (Artisul, Gaomon, Huion). Please see the linked pull request for a full list of affected tablets.

Bug fixes

MacOS

  • macOS: Track modifier status in OTD, not system by @AkiSakurai in [#4014]

    This should improve the reliability of multi-key bindings

  • Ensure user configuration is loaded correctly on macos by @AkiSakurai in [#3994]

    Solves some instances of user-defined tablet configurations being unable to be loaded.

  • Fix occasional sticky modifier keys issue on macOS by @AkiSakurai in [#3808]

    Solves an issue where looked up modifier state might not match actual modifier state (e.g. changed between lookup and sync/flush)

Misc Bug Fixes

  • Fix an exception when unplugging a tablet then closing a binding editor by @Mrcubix in [#3837]
  • Fix UX Plugin Manager desync when updating plugins by @Mrcubix in [#4022]

  • Enhance handling of invalid settings by @gonX in [#3999]

    This solves oddities when attempting to load master/avalonia driver settings into the 0.6.x version of OpenTabletDriver.

  • Cleanup Temp before plugin install by @Mrcubix in [#4019]

    This ensures that only the intended files are installed with plugins, in case of the temp dir going stale for some reason.

  • DriverDaemon: Create settings file when none are detected by @gonX in [#4000]

    This solves the setup wizard repeatedly popping up for users with no saved configuration.

  • PluginSettingStoreCollection: Check upper bounds by @gonX in [#4012]

    Solves a minor issue where saved settings could save more bindings than the tablet supported. This was noticeable only when the used tablet has had any of its button counts reduced.

  • Fix Plugin manager Metadata Desynchronization by @Mrcubix in [#4007]

    Displayed plugin metadata should now be properly refreshed when a plugin is reinstalled or updated.

  • Load Plugin assemblies using LoadFromStream instead of LoadFromAssemblyPath by @Mrcubix in [#4009]

    This should hopefully make plugin file management (uninstalling/updating) a bit more consistent

  • Revert Huion 420 parser change by @Kuuuube in [#3758]

    This reverts the used parser for Huion 420 to the one used in v0.6.5.0.

  • Handle type being null in the Advanced Binding Editor when getting controls by @Mrcubix in [#3783]

    Resolves a bug with uninstalling plugins providing bindings, and the bindings remaining unchangable.

  • Only clamp width and height in Lock to usable area if rotation is 0 or 180 by @Kuuuube in [#3815]

    This solves weird tablet area mapping behavior on rotated areas in the user interface

Tablet Support

Added support

  • Gaomon M5 by @gonX in [#4087]
  • Huion Kamvas 16 (Gen 3) by @Kuuuube in [#4129]
  • Huion Kamvas 24 (GS2401) by @nahkd123 in [#3794]
  • Huion GT-191 V2 by @nahkd123 in [#3825]
  • Huion HC16 16k variant by @jamesbt365 in [#3865]
  • Huion L310 by @cueavyqwp in [#4083]
  • Huion L610 by @Ceciliaaw in [#3879]
  • Huion Kamvas Pro 27 by @Kuuuube in [#3949]
  • UGEE UE16 by @Kuuuube in [#4135]
  • Wacom Cintiq Pro 22 (DTH-227) by @Kuuuube in [#4044]
  • Wacom DTH-2200 by @Kuuuube in [#4121]
  • Wacom DTK-2100 by @Kuuuube in [#4043]
  • Wacom PTK-470 by @nahkd123 in [#3882]
  • Wacom PTK-670 by @nahkd123 in [#3845]
  • Wacom PTK-870 by @Kuuuube in [#3915]
  • XP-Pen Artist Pro 14 (Gen2) by @Kuuuube in [#3948]
  • XP-Pen Artist Pro 19 (Gen2) by @Kuuuube in [#4040]
  • XP-Pen Artist 15.6 Pro V2 by @Kuuuube in [#4041]
  • XP-Pen Artist Pro 24 (Gen2) by @Kuuuube in [#4039]
  • XP-Pen Deco 01 V3 (Variant 2) by @Kuuuube in [#4038]
  • XP-Pen Deco 640 (IT640) by @gonX in [#3801]
  • XP-Pen Deco Pro MW Gen2 by @Kuuuube in [#3859]

Improved detection

  • Add identifier to deco 01 v2 variant 2 by @Kuuuube in [#4102]
  • XP-Pen Deco mini7 V2 by @Kuuuube in [#4071]
  • Huion HS610: Add HUION_T227_240925 by @gonX in [#4080]

  • Add interface attribute to WinUSB tablets where applicable by @Kuuuube in [#4020]

    Solves broken Linux/Mac detection of some tablets that requires WinUSB on Windows.

  • Fix incorrectly using Kamvas 20 by @jamesbt365 in [#3931]

    Solves some Huion Kamvas Pro 20's being detected as a Huion Kamvas 20.

Improved support

  • Include IProximityReport for BambooTabletReport by @Kuuuube in [#4100]
  • Add mouse support for PTK-x40 aka Intuos4 by @Kuuuube in [#1791]
  • Huion H1161: Fix wheel reports emitting aux buttons by @gonX in [#3896]
  • XP-Pen Deco 01: Fix incorrect Auxiliary button count: 6 -> 8 by @gonX in [#4002]
  • XP-Pen Deco L: Remove OutputReportLength requirement by @gonX in [#3884]

  • Fix XP-Pen Artist 12 init for newer revision by @Kuuuube in [#4025]

    Solves double cursor on Windows for some XP-Pen Artist 12 variants.

  • Reintroduce 10moon parser by @gonX in [#4029]

    This only reintroduces the parser that was removed in 0.6.5.1. This should allow users to continue using a local configuration.

  • Candidate fix for Wacom Graphire AUX buttons. by @gonX in [#4058]

    Fixes aux buttons for the following Wacom models: CTE-430, CTE-440, CTE-630, ET-0405-U, ET-0405A-U

  • Fix messy tablet naming by @Kuuuube in [#4123]

  • Fix a few incorrect pressure maxes by @Kuuuube in [#4122]

    Fixes pressure max being off by 1 for Genius G-Pen 560, Wacom DTK-1200, and Wacom DTK-2200.

Driver Core

  • Allow matching FeatureReportLength by @Kuuuube in [#4101]

  • Clean up Linux diagnostics env vars by @gonX in [#3876]

    Introduces XDG_CURRENT_DESKTOP and XDG_CURRENT_DIR environment variables to diagnostic output.

  • Add proper getter for Settings by @Mrcubix in [#3839]

    Simplifies the OpenTabletDriver.Desktop.Preset class

Driver GUI ("UX")

  • UX/TabletDebugger: Use epoch timestamp for data recording file name by @gonX in [#3988]
  • Show max recorded position in the Tablet Debugger by @silkneko in [#3427]
  • Hide number of recorded reports until non-zero by @Mrcubix in [#4048]
  • Reset NumberOfReportsRecorded when recording is enabled by @Mrcubix in [#4060]
  • AreaConverter: Add Gaomon 2024 converter by @gonX in [#4003]
  • Fix license button not showing license in about dialog by @Kuuuube in [#4046]
  • Order Filters & Tools by Name by @Mrcubix in [#4049]

Meta/CI/Tests

  • Tests: Add check for Tablet Config names in tablets.md by @gonX in [#4098]
  • Tests: Add tests for GetFriendlyName() TypeInfo extension function by @gonX in [#4054]
  • Automatic labeling for pull requests by @gonX in [#3667]
  • Remove * from labeler meta by @Kuuuube in [#4026]
  • PR Labeler: Fix constant meta tag application by @gonX in [#4030]
  • ConfigurationTest: Consider whitespace/indentation when diffing by @gonX in [#3901]
  • Improve config dir detection in tests by @gepbird in [#3796]

  • Build: Remove LangVersion by @gonX in [#4011]

This ensures that the compiler used is not newer than the targeted framework, avoids developers with .NET 10 SDK installed from submitting .NET 8-incompatible code.

  • Refactor tests by @gonX in [#4091]

This overhauls some of our unit tests to use more modern testing techniques

Miscellaneous Changes

  • Add MacOS UI & Daemon Config and Update Build Instructions by @AkiSakurai in [#4084]
  • PluginManager: Disable obsoletion warning on necessary field by @gonX in [#4059]
  • Default to PassthroughReportParser when no parser is present in config by @Kuuuube in [#4052]
  • Move addition of Daemon service to LoadPlugins by @Mrcubix in [#4013]
  • Actually implement MaxSupportedDriverVersion by @Mrcubix in [#4006]
  • BindingSettings: Use new ButtonCount property (fix deprecation warnings) by @gonX in [#4055]

  • LinuxArtistModeButtonBinding: Add ToString by @gonX in [#4035]

    This allows diagnostics/logs to correctly emit which button is used when using Linux Artist Mode Button Bindings.

  • Cache results of TypeInfo.GetFriendlyName() by @gonX in [#4051]

    This improves performance in anything displaying user-friendly strings, such as plugin names.

Documentation-only Changes

  • TABLETS.md: Deco 01 V2 and variants support tilt by @gonX in [#4001]
  • README: Add Troubleshooting section refering to website by @gonX in [#4034]
  • Fix tablets.md not mentioning Huion osu! tablet is a Huion 420 by @Kuuuube in [#4062]

New Contributors

  • @gepbird made their first contribution in [#3796]
  • @Ceciliaaw made their first contribution in [#3879]
  • @silkneko made their first contribution in [#3427]
  • @cueavyqwp made their first contribution in [#4083]

Full Changelog: https://github.com/OpenTabletDriver/OpenTabletDriver/compare/v0.6.5.1...v0.6.6.0

Source: README.md, updated 2025-09-28