Buttplug sex toy control library

feat: Add support for Qingnan #16

authored by

blackspherefollower and committed by qdot.tngl.sh c6fcae59 64b14298

+40 -5
+2 -2
crates/buttplug_server/src/device/protocol_impl/sensee_v2.rs
··· 56 .await?; 57 info!("Sensee model data: {:X?}", res.data()); 58 59 - let device_type = if res.data().len() >= 6 { 60 res.data()[6] 61 } else { 62 - 0x66 63 }; 64 65 let feature_map = |output_type| {
··· 56 .await?; 57 info!("Sensee model data: {:X?}", res.data()); 58 59 + let device_type = if res.data().len() >= 6 && res.data()[6] != 0x00 { 60 res.data()[6] 61 } else { 62 + 0x65 63 }; 64 65 let feature_map = |output_type| {
+24 -2
crates/buttplug_server_device_config/build-config/buttplug-device-config-v4.json
··· 1 { 2 "version": { 3 "major": 4, 4 - "minor": 74 5 }, 6 "protocols": { 7 "activejoy": { ··· 16213 "CTY916S4", 16214 "PTYB22S2", 16215 "CCP322S5", 16216 - "CTY823S5" 16217 ], 16218 "services": { 16219 "0000fff0-0000-1000-8000-00805f9b34fb": { ··· 16424 "CTY916S4" 16425 ], 16426 "name": "Sensee Dream Stick" 16427 } 16428 ], 16429 "defaults": {
··· 1 { 2 "version": { 3 "major": 4, 4 + "minor": 78 5 }, 6 "protocols": { 7 "activejoy": { ··· 16213 "CTY916S4", 16214 "PTYB22S2", 16215 "CCP322S5", 16216 + "CTY823S5", 16217 + "qingnan#16" 16218 ], 16219 "services": { 16220 "0000fff0-0000-1000-8000-00805f9b34fb": { ··· 16425 "CTY916S4" 16426 ], 16427 "name": "Sensee Dream Stick" 16428 + }, 16429 + { 16430 + "features": [ 16431 + { 16432 + "feature-type": "Constrict", 16433 + "id": "4464ae6b-20bc-4c99-9e63-bfda99b7c8cc", 16434 + "output": { 16435 + "Constrict": { 16436 + "step-range": [ 16437 + 0, 16438 + 100 16439 + ] 16440 + } 16441 + } 16442 + } 16443 + ], 16444 + "id": "00dc1d7e-9ede-4ae5-95f6-bd70363de806", 16445 + "identifier": [ 16446 + "qingnan#16" 16447 + ], 16448 + "name": "Qingnan #16" 16449 } 16450 ], 16451 "defaults": {
+13
crates/buttplug_server_device_config/device-config-v4/protocols/sensee-v2.yml
··· 125 - 0 126 - 100 127 id: f8032396-8384-448f-88e9-4c754d4ae12e 128 communication: 129 - btle: 130 names: ··· 136 - PTYB22S2 137 - CCP322S5 138 - CTY823S5 139 services: 140 0000fff0-0000-1000-8000-00805f9b34fb: 141 tx: 0000fff5-0000-1000-8000-00805f9b34fb
··· 125 - 0 126 - 100 127 id: f8032396-8384-448f-88e9-4c754d4ae12e 128 + - identifier: 129 + - "qingnan#16" 130 + name: "Qingnan #16" 131 + features: 132 + - feature-type: Constrict 133 + id: 4464ae6b-20bc-4c99-9e63-bfda99b7c8cc 134 + output: 135 + Constrict: 136 + step-range: 137 + - 0 138 + - 100 139 + id: 00dc1d7e-9ede-4ae5-95f6-bd70363de806 140 communication: 141 - btle: 142 names: ··· 148 - PTYB22S2 149 - CCP322S5 150 - CTY823S5 151 + - "qingnan#16" 152 services: 153 0000fff0-0000-1000-8000-00805f9b34fb: 154 tx: 0000fff5-0000-1000-8000-00805f9b34fb
+1 -1
crates/buttplug_server_device_config/device-config-v4/version.yaml
··· 1 version: 2 major: 4 3 - minor: 74
··· 1 version: 2 major: 4 3 + minor: 78