From 10d9cabac7967fadc57048ff1fe4fdd1eaaf7d7f Mon Sep 17 00:00:00 2001 From: Karolis Stasaitis Date: Wed, 9 Sep 2026 21:59:18 +0200 Subject: [PATCH] device: dierya-dk68se fixups --- README.md | 3 ++- src/device_spec.rs | 13 ++++++++++++- src/platform_spec.rs | 6 ++++++ 3 files changed, 20 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 07146ff..3163945 100644 --- a/README.md +++ b/README.md @@ -75,7 +75,7 @@ sinowisp write \ | [Aula F87](https://www.aulastar.com/index.php/gaming-keyboard/157.html) | 3e0ebd0c440af5236d7ff8872343f85d | SH68F90A (?) | BYK916 (?) | ✅ | ✅ | | [CIY X77](https://a.co/d/fKEpeLU) | 571ea8b315654c39046e4cc3b1e43777 | SH68F89 (?) | BYK816 | ✅ | ✅ | | Deltaco Gaming WK95R | 2d169670eae0d36eae8188562c1f66e8 | SH68F90A | BYK916 | ✅ | ✅ | -| Dierya DK68SE | ❓ | ❓ | BYK903 | ✅ | ✅ | +| Dierya DK68SE | f7e71254659953fd1d139b815fd9880b | SH68F903A | BYK903 | ✅ | ✅ | | Digital Alliance Meca Warrior X | 2d169670eae0d36eae8188562c1f66e8 | SH68F90 | SH68F90S | ✅ | ✅ | | E-Yooso Z11 | 3e0ebd0c440af5236d7ff8872343f85d | SH68F90A | BYK901 | ✅ | ✅ | | E-Yooso Z82 | 3e0ebd0c440af5236d7ff8872343f85d | SH68F90A | BYK916 | ✅ | ✅ | @@ -141,6 +141,7 @@ sinowisp write \ | 3e0ebd0c440af5236d7ff8872343f85d | SH68F90 / SH68F90A | 4096 | ok | ok | ok | only bootloader with USB strings (`Gaming KB`) and an interrupt IN endpoint | | cfc8661da8c9d7e351b36c0a763426aa | SH68F90 / SH68F90A | 4096 | ok | ok | ok | | | 6dac0d2288f2a3d83b5703d979c114ec | SH68F902A | 3072 | ok | ? | ? | `2d169670` relinked to a 0x3000 base | +| f7e71254659953fd1d139b815fd9880b | SH68F903A | 4096 | ? | ? | ok | | ## Prerequisites diff --git a/src/device_spec.rs b/src/device_spec.rs index 768fad8..c4349f7 100644 --- a/src/device_spec.rs +++ b/src/device_spec.rs @@ -2,6 +2,7 @@ use phf::{phf_map, Map}; use crate::platform_spec::{ PlatformSpec, PLATFORM_SH68F881, PLATFORM_SH68F89, PLATFORM_SH68F90, PLATFORM_SH68F902, + PLATFORM_SH68F903, }; const DEFAULT_ISP_IFACE_NUM: i32 = 1; @@ -85,6 +86,16 @@ pub const DEVICE_BASE_SH68F902: DeviceSpec = DeviceSpec { isp_transform: None, }; +pub const DEVICE_BASE_SH68F903: DeviceSpec = DeviceSpec { + vendor_id: 0x0000, + product_id: 0x0000, + platform: PLATFORM_SH68F903, + isp_iface_num: DEFAULT_ISP_IFACE_NUM, + isp_report_id: DEFAULT_ISP_REPORT_ID, + reboot: DEFAULT_REBOOT, + isp_transform: None, +}; + pub const DEVICE_AOKO_K101: DeviceSpec = DeviceSpec { vendor_id: 0x258a, product_id: 0x0155, @@ -124,7 +135,7 @@ pub const DEVICE_DELTACO_WK95R: DeviceSpec = DeviceSpec { pub const DEVICE_DIERYA_DK68SE: DeviceSpec = DeviceSpec { vendor_id: 0x258a, product_id: 0x013b, - ..DEVICE_BASE_SH68F90 + ..DEVICE_BASE_SH68F903 }; pub const DEVICE_DIGITALALLIANCE_MECA_WARRIOR_X: DeviceSpec = DeviceSpec { diff --git a/src/platform_spec.rs b/src/platform_spec.rs index a5cdbef..f207951 100644 --- a/src/platform_spec.rs +++ b/src/platform_spec.rs @@ -38,11 +38,17 @@ pub const PLATFORM_SH68F902: PlatformSpec = PlatformSpec { ..PLATFORM_DEFAULT }; +pub const PLATFORM_SH68F903: PlatformSpec = PlatformSpec { + firmware_size: 32768 - PLATFORM_DEFAULT.bootloader_size, // 28672 until bootloader + ..PLATFORM_DEFAULT +}; + pub static PLATFORMS: Map<&'static str, PlatformSpec> = phf_map! { "sh68f89" => PLATFORM_SH68F89, "sh68f881" => PLATFORM_SH68F881, "sh68f90" => PLATFORM_SH68F90, "sh68f902" => PLATFORM_SH68F902, + "sh68f903" => PLATFORM_SH68F903, }; impl PlatformSpec {