Skip to content

Releases: WootingKb/wooting-analog-sdk

v0.8.0 - Overall improvements + 80HE support

30 Oct 16:16
v0.8.0
07c4ee0
Compare
Choose a tag to compare

Main Changes

  • General improvements have been made to the Wooting Keyboard plugin, which includes a more generic handling for new devices. Meaning 80HE is now supported and new devices should get picked up without needing a new Analog SDK version
  • The ABI/API for Plugins written in C has been cleaned up and is now on version 1 (previously 0).
    • Main changes is that the plugin can just work with the plain DeviceInfo_FFI type and does not need to interact with Rust to create instances of it. Additionally, the _ prefix has been removed from all functions that had it, so it's much cleaner now
  • General stability fixes and improvements
  • The default Wooting plugin now only interacts with Wooting devices, fixing some interference issues that affected some users #40

Many thanks to @Sainan for contributing a substantial amount of the changes for the this release! 🎉

Full Changelog (PRs merged)

  • Don't enable logging by default by @Sainan in #63
  • Fix crash when attempting to get device info from c plugin by @Sainan in #61
  • Add Rust usage note to SDK Usage by @Sainan in #72
  • Fix wooting-analog-plugin instability by @Sainan in #70
  • Only enumerate Wooting HID devices by @Sainan in #74
  • Simplify device matching by @Sainan in #80
  • Simplify C/C++ headers using cbindgen's cpp-compat option by @Sainan in #79
  • Fix crashing when attempting to lock shared memory in debug build by @Sainan in #76
  • Update CI flow by @simon-wh in #82
  • Include .dll.lib file in the artifacts on Windows to simplify dynamic linking by @simon-wh in #81
  • Cleanup to C Plugins by @simon-wh in #66
  • Ensure plugin.h uses C ABI when used via C++ by @Sainan in #83
  • Update plugin.h for ABIv1 by @Sainan in #84
  • Updated deployment workflow that includes EV Code signing on windows by @simon-wh in #88
  • Safer handling of DeviceType value coming from FFI by @simon-wh in #90
  • Rewrite VirtualKey mapping to correctly handle non-translate by @Sainan in #86

Full Changelog: v0.7.5...v0.8.0

v0.7.5 - Add 60HE+ support

31 Jan 16:23
v0.7.5
a459c73
Compare
Choose a tag to compare
  • Add support for Wooting 60HE+
  • All DLLs and exe's of the Windows build are now signed

Full Changelog: v0.7.4...v0.7.5

v0.7.4 - Add Wooting UwU Support

10 Oct 12:47
1564f02
Compare
Choose a tag to compare
  • Add support for Wooting UwU #56
  • Fix SCANCODE_MAP for PAUSE and NUM LOCK #55

Full Changelog: v0.7.3...v0.7.4

v0.7.4 Test extended windows signing

25 Jan 20:25
1564f02
Compare
Choose a tag to compare
Pre-release

This release is intended to test out signing of all the DLLs of the Analog SDK on Windows, not just the installer

v0.7.3 - Wooting Two HE ARM support

03 Apr 16:35
5b3e643
Compare
Choose a tag to compare

The primary goal of this release is to include support for the Two HE ARM, it also fixes an issue with analog values coming from Flaretech boards updated to v2 firmware being scaled incorrectly.

v0.7.2 - Wooting 60HE ARM support

06 Sep 10:55
Compare
Choose a tag to compare

This is just a small bump release that includes the IDs for 60HE ARM so it can be used with the Analog SDK

v0.7.1 - Bug fixes & cleanup + Apple Silicon native builds

14 Jun 16:15
Compare
Choose a tag to compare
  • Fixed some issues with uninitialising the SDK on Windows
  • Added builds for Apple Silicon Macs
  • Some fixes to the rust wrapper

v0.7.0 - Wider device support

30 Nov 10:59
Compare
Choose a tag to compare

What's Changed

  • Add support for alt device mode PIDs, add One/Two v2 and 60HE PIDs in #20

Just rust things

  • Add serde derive optional feature to wooting-analog-common, named serdes, which adds Serialize, Deserialize traits to most types
  • Updated iced in wooting-analog-virtual-control to v0.3

Full Changelog: v0.6.0...v0.7.0

v0.6.0 - Wooting Two Lekker Edition & HE support

14 May 12:13
Compare
Choose a tag to compare
  • Added support for Wooting Two Lekker Edition & Wooting Two HE
  • Cleanup error logging
  • Improve device detection on Linux

v0.5.0 - Polish

06 Aug 10:55
Compare
Choose a tag to compare
  • Rewrite Virtual Keyboard app using Iced.This allows you to emulate Analog input without needing a physical device for development. It's included with the .deb package but not with .msi at this time. It is available in each platform's .tar.gz under wrapper/sdk/wooting-analog-virutal-control
  • MacOS: The MacOS plugin path has been switched from /Library/WootingAnalogPlugins to /usr/local/share/WootingAnalogPlugins. So if you've manually installed on MacOS you'll need to adjust this path when updating. This is for streamlining the Homebrew packages for the Analog SDK that'll we'll be publishing soon to our own tap.
  • Windows: The updater has received some improvements including improved logging to help debugging potential issues, the log file will be located at %APPDATA%/wooting-analog-sdk/updater.log
  • Add WootingAnalogResult::DLLNotFound error to have a clear distinction between a function not being present and the SDK not being found. So this error should only be received if the wooting-analog-wrapper could not find the SDK installed on the system
  • Add initial version of a Rust interface for the Analog SDK. To use you can add wooting-analog-wrapper = { git = "https://github.com/WootingKb/wooting-analog-sdk", branch = "release/v0.5" } to your Cargo.toml dependencies for now until it's fully finished and published on crates.io
    • The main limitation currently with this interface is that the set_device_event_cb does not accept a closure yet (SoonTM) and takes a C function. But I hope to resolve this by the next release. See here for an example of using it.
    • There's a HIDCodes enum available which represents the default Keycode set used by the Analog SDK. It implements num_traits::{FromPrimitive, ToPrimitive} to be able to easily convert between the number and enum representation.
    • The [wooting-analog-wrapper/bin/main.rs](https://github.com/WootingKb/wooting-analog-sdk/blob/release/v0.5/wooting-analog-wrapper/src/bin/main.rs) serves as a decent usage example