Open blackspherefollower opened 8 months ago
function isTwoEngineDevice(e) {
var i = e.indexOf("GS08");
return -1 != i || -1 != (i = e.indexOf("GSA8")) || -1 != (i = e.indexOf("GS13")) || -1 != (i = e.indexOf("G29A")) || -1 != (i = e.indexOf("GK36")) || -1 != (i = e.indexOf("K311")) || -1 != (i = e.indexOf("G311")) || -1 != (i = e.indexOf("G317")) || -1 != (i = e.indexOf("G312")) || -1 != (i = e.indexOf("G307")) || -1 != (i = e.indexOf("G320"))
}
function isDianjiDevice(e) {
var i = e.indexOf("GK36");
return -1 != i || -1 != (i = e.indexOf("K311")) || -1 != (i = e.indexOf("G311"))
}
/** All devices **/
function getDisplayNameByName(e) {
var i = e.indexOf("EJX-Para");
return -1 != i ? "觅雅Miya" : -1 != (i = e.indexOf("GK03")) ? "胶囊跳蛋" : -1 != (i = e.indexOf("GK10085")) ? "夏娜" : -1 != (i = e.indexOf("GS03")) ? "胶囊跳蛋" : -1 != (i = e.indexOf("GS07")) ? "觅雅Miya" : -1 != (i = e.indexOf("GS85")) ? "夏娜" : -1 != (i = e.indexOf("GS02")) ? "超薄穿戴" : -1 != (i = e.indexOf("GS10")) ? "贝拉" : -1 != (i = e.indexOf("GS01")) ? "进阶后庭" : -1 != (i = e.indexOf("GS08")) ? "线控双跳" : -1 != (i = e.indexOf("GSA8")) ? "线控双跳" : -1 != (i = e.indexOf("GS04")) ? "章鱼" : -1 != (i = e.indexOf("GS17")) ? "胶囊口红" : -1 != (i = e.indexOf("GS13")) ? "元气章鱼Mini" : -1 != (i = e.indexOf("GS21")) ? "元气猫" : -1 != (i = e.indexOf("GS23")) ? "异次元1号" : -1 != (i = e.indexOf("GS22")) ? "幻影X" : -1 != (i = e.indexOf("GS16")) ? "元气草莓" : -1 != (i = e.indexOf("GS19")) ? "觅喜mini" : -1 != (i = e.indexOf("AK04")) ? "Doris 朵丽丝" : -1 != (i = e.indexOf("AS67")) ? "振动棒" : -1 != (i = e.indexOf("AS90")) ? "飞机杯" : -1 != (i = e.indexOf("K020")) ? "蘑菇跳蛋" : -1 != (i = e.indexOf("GS25")) ? "花季系列" : -1 != (i = e.indexOf("GH28")) ? "后庭战士" : -1 != (i = e.indexOf("GS28")) ? "后庭战士" : -1 != (i = e.indexOf("LL18")) ? "角斗士" : -1 != (i = e.indexOf("GK23")) ? "元气萌宠" : -1 != (i = e.indexOf("GK27")) ? "小钢炮Cannon-GT" : -1 != (i = e.indexOf("G29B")) ? "小魔盒" : -1 != (i = e.indexOf("G29A")) ? "小魔方" : -1 != (i = e.indexOf("GA23")) ? "小鲸鱼" : -1 != (i = e.indexOf("L26H")) ? "角斗士" : -1 != (i = e.indexOf("GA25")) ? "丁丁穿戴" : -1 != (i = e.indexOf("GA26")) ? "小豌豆pea" : -1 != (i = e.indexOf("GK22")) ? "觅糖 META" : -1 != (i = e.indexOf("GX85")) ? "夏娜" : -1 != (i = e.indexOf("GX07")) ? "觅雅" : -1 != (i = e.indexOf("GX17")) ? "胶囊口红" : -1 != (i = e.indexOf("GX21")) ? "元气猫" : -1 != (i = e.indexOf("GX33")) ? "异次元1号" : -1 != (i = e.indexOf("GX22")) ? "幻影X" : -1 != (i = e.indexOf("GX16")) ? "元气草莓" : -1 != (i = e.indexOf("GX29")) ? "小魔盒" : -1 != (i = e.indexOf("GX23")) ? "小鲸鱼" : -1 != (i = e.indexOf("GX25")) ? "丁丁穿戴" : -1 != (i = e.indexOf("GX26")) ? "小豌豆" : -1 != (i = e.indexOf("GX36")) ? "电击跳蛋" : -1 != (i = e.indexOf("GX39")) ? "雪糕筒miniAV棒" : -1 != (i = e.indexOf("GK36")) ? "小捣蛋" : -1 != (i = e.indexOf("K311")) ? "芙蕾雅" : -1 != (i = e.indexOf("G311")) ? "芙蕾雅" : -1 != (i = e.indexOf("GX25")) ? "快乐制动器" : -1 != (i = e.indexOf("G317")) ? "扎古飞机杯" : -1 != (i = e.indexOf("G312")) ? "机甲-原主飞机杯" : -1 != (i = e.indexOf("G326")) ? "爱丽丝" : -1 != (i = e.indexOf("G335")) ? "独角兽肛塞" : -1 != (i = e.indexOf("G307")) ? "蜂后炮机" : -1 != (i = e.indexOf("G320")) ? "雅典娜" : e
}
Call sendIntentsity()
function sendIntentsity(e) {
var t = wx.getStorageSync("ble-params").localName,
i = n.isDianjiDevice(t),
a = n.isTwoEngineDevice(t);
if (n.isDianjiDeviceSingle(t) && (a = !1), this.cWrite) {
if (a) return void this.didSendIntensityTwo(e);
if (this.intensity1 != e && !i) {
var r = this.getValue1(e);
this.intensity1 = r, this.didSendIntensity(r)
}
}
if (i) {
var s = e,
c = this.getDianjiInfo();
if (c.intensity != this.currentDianjiInfo.intensity || c.frequency != this.currentDianjiInfo.frequency) {
this.currentDianjiInfo = c;
var o = this,
u = c.frequency,
e = c.intensity;
o.sendDianji(u, e), setTimeout(function() {
o.didSendIntensity(s)
}, 100)
}
}
}
function didSendIntensity(e) {
var t = [90, 0, 0, 1, 49, 0, 0, 0, 0, 0];
t[5] = e;
var n = i.sendBytes(t, 10),
a = new Uint8Array(n.length);
n.forEach(function(e, t) {
return a[t] = e
});
var r = wx.getStorageSync("ble-params"),
s = r.deviceId,
c = r.serviceId,
o = this.cWrite;
r.localName;
console.log("serviceId:" + c), console.log("characteristicId:" + o), this.cmd = "set-intensity", wx.writeBLECharacteristicValue({
deviceId: s,
serviceId: c,
characteristicId: o,
value: a.buffer,
success: function(e) {}
})
}
function didSendIntensityTwo(e) {
var t = e,
n = e;
this.madaAEnable || (t = 0), this.madaBEnable || (n = 0);
var a = [90, 0, 0, 1, 64, 3, t, n, 0, 0];
a[5] = e;
var r = i.sendBytes(a, 10),
s = new Uint8Array(r.length);
r.forEach(function(e, t) {
return s[t] = e
});
var c = wx.getStorageSync("ble-params"),
o = c.deviceId,
u = c.serviceId,
l = this.cWrite;
c.localName;
console.log("serviceId:" + u), console.log("characteristicId:" + l), this.cmd = "set-intensity", wx.writeBLECharacteristicValue({
deviceId: o,
serviceId: u,
characteristicId: l,
value: s.buffer,
success: function(e) {}
})
}
function sendDianji(e, t) {
console.log("sendDianji fequency:" + e), console.log("sendDianji intensity:" + t);
var n = [90, 0, 0, 1, 144, 0, 0, 0, 0, 0];
n[5] = e, n[6] = t;
var a = i.sendBytes(n, 10),
r = new Uint8Array(a.length);
a.forEach(function(e, t) {
return r[t] = e
});
var s = wx.getStorageSync("ble-params"),
c = s.deviceId,
o = s.serviceId,
u = this.cWrite;
console.log("serviceId:" + o), console.log("characteristicId:" + u), this.cmd = "set-intensity", wx.writeBLECharacteristicValue({
deviceId: c,
serviceId: o,
characteristicId: u,
value: r.buffer,
success: function(e) {
console.log("writeBLECharacteristicValue"), console.log(e)
}
})
}
Call sendCommandGetBattery()
before readValue(e)
function sendCommandGetBattery() {
console.log("sendCommandGetBattery");
var e = [90, 0, 0, 1, 19, 0, 0, 0, 0, 0],
t = i.sendBytes(e, 10),
n = new Uint8Array(t.length);
t.forEach(function(e, t) {
return n[t] = e
});
var a = wx.getStorageSync("ble-params"),
r = a.deviceId,
s = a.serviceId,
c = this.cWrite;
this.cmd = "get-battery", wx.writeBLECharacteristicValue({
deviceId: r,
serviceId: s,
characteristicId: c,
value: n.buffer,
success: function(e) {
console.log("sendCommandGetBattery success", e.errMsg)
}
})
}
function readValue(e) {
var t = this.ab2hex(e),
i = this.stringToHex(t),
n = enDesCommand.decrypt(i),
s = 0;
if (n.length > 0 && (s = n[4]), s > 0)
for (var r = getCurrentPages(), o = 0; o < r.length; o++)(u = r[o]).updateBattery && u.updateBattery(s);
for (var r = getCurrentPages(), a = 0; a < r.length; a++) {
var u = r[a];
u.didReadValue && u.didReadValue(this.cmd)
}
this.cmd = "", i = []
}
function ab2hex(e) {
return Array.prototype.map.call(new Uint8Array(e), function(e) {
return ("00" + e.toString(16)).slice(-2)
})
}
function stringToHex(e) {
for (var t = e.length, i = [], n = 0; n < t; n++) {
var s = e[n],
r = parseInt(s, 16);
i.push(r)
}
return i
}
function getKeyTab() {
return [
[0, 24, 152, 247, 165, 61, 13, 41, 37, 80, 68, 70],
[0, 69, 110, 106, 111, 120, 32, 83, 45, 49, 46, 55],
[0, 101, 120, 32, 84, 111, 121, 115, 10, 142, 157, 163],
[0, 197, 214, 231, 248, 10, 50, 32, 111, 98, 13, 10]
]
}
function getTabKey(r, t) {
var e = 3 & r;
return this.getKeyTab()[e][t]
}
function parseIntToByte(r) {
var t = r;
return r > 256 ? t = r - 256 : r < 0 && (t = 256 + r), t
}
function calcCheckSum(r, t) {
for (var e = 0, n = 0; n < t; n++) e += r[n];
return e
}
function encrypt(r) {
var t = [],
e = r[0];
t.push(e);
for (var n = 1; n < 12; n++) {
var a = this.getTabKey(t[n - 1], n),
u = (a ^ e ^ r[n]) + a,
s = this.parseIntToByte(u);
t.push(s)
}
return t
}
function decrypt(r) {
var t = [],
e = r[0];
t.push(e);
for (var n = 1; n < 12; n++) {
var a = this.getTabKey(r[n - 1], n),
u = r[n] - a ^ e ^ a,
s = this.parseIntToByte(u);
t.push(s)
}
return t
}
function sendBytes(r, t) {
var e = [];
e[0] = 35;
for (var n = 0; n < t; n++) {
var a = r[n];
e[n + 1] = a
}
var u = this.calcCheckSum(e, 11);
return e[11] = u, this.encrypt(e)
}
{
"localName": "TFG1",
"displayName": "Aurora Aircraft Cup",
"deviceType": 2,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "GK27",
"displayName": "Cannon-GT",
"deviceType": 2,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "GK25",
"displayName": "Phantom PLUS",
"deviceType": 2,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "AC695X_1(BLE)",
"displayName": "vision",
"deviceType": 2,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "V415",
"displayName": "Nebula",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "GK22",
"displayName": "Mitang META",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": false,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G29B",
"displayName": "Little Magic Box",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": false,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "GA25",
"displayName": "Ding Ding wears",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": false,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G29A",
"displayName": "Little Rubik's Cube",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": false,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "GA23",
"displayName": "Little Whale",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": false,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "GA26",
"displayName": "Little Pea",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": false,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "GX85",
"displayName": "Shana",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "GX07",
"displayName": "Miya",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "GX17",
"displayName": "Capsule lipstick",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "GX21",
"displayName": "Vitality Cat",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "GX33",
"displayName": "Dimension No. 1",
"deviceType": 2,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "GX22",
"displayName": "Phantom X",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "GX16",
"displayName": "Vitality Strawberry",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "GX29",
"displayName": "Little Magic Box",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "GX23",
"displayName": "Little Whale",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "GX25",
"displayName": "Happy Vibrator",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "GX26",
"displayName": "Xiaobao Beans",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "GK03",
"displayName": "Capsule Vibrator",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "GX36",
"displayName": "Electric Vibrator",
"deviceType": 3,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "GX39",
"displayName": "Ice cone miniAV stick",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G311",
"displayName": "Freya",
"deviceType": 4,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 2,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "GK36",
"displayName": "Little Troublemaker",
"deviceType": 3,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G317",
"displayName": "Zaku Aircraft Cup",
"deviceType": 1,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 2,
"isStrong": true,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G312",
"displayName": "Mecha-Original Owner's Aircraft Cup",
"deviceType": 1,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 2,
"isStrong": true,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G302",
"displayName": "Little Devil",
"deviceType": 1,
"isHotDevice": true,
"isBleDevice": true,
"madaCount": 2,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G321",
"displayName": "mini ice cream cone",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G304",
"displayName": "Shia's Collar",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G320",
"displayName": "Athena",
"deviceType": 1,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 2,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": true
}, {
"localName": "G314",
"displayName": "Vitality Octopus II",
"deviceType": 1,
"isHotDevice": true,
"isBleDevice": true,
"madaCount": 2,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G228",
"displayName": "Little Dolphin",
"deviceType": 1,
"isHotDevice": true,
"isBleDevice": true,
"madaCount": 2,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G315",
"displayName": "Unicorn",
"deviceType": 1,
"isHotDevice": true,
"isBleDevice": true,
"madaCount": 2,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G307",
"displayName": "Queen Bee Gun",
"deviceType": 1,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 2,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": true
}, {
"localName": "K311",
"displayName": "Freya",
"deviceType": 1,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 2,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G336",
"displayName": "The Second Generation of Vitality Bird",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G331",
"displayName": "Octopus glans massager",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G326",
"displayName": "Alice",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G335",
"displayName": "Unicorn Butt Plug",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "GXA3",
"displayName": "Whale Test",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": false,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": true,
"isTelescoping": false
}, {
"localName": "A456",
"displayName": "Ace",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": false,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G341",
"displayName": "Ace",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G324",
"displayName": "Athena Pulse",
"deviceType": 6,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 2,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G339",
"displayName": "Rhino Prostate Massager",
"deviceType": 1,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 2,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G350",
"displayName": "Vitality Whale",
"deviceType": 5,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G355",
"displayName": "Little cute turtle",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G349",
"displayName": "Little Bullet",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G354",
"displayName": "Double-A Aircraft Cup",
"deviceType": 1,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 2,
"isStrong": true,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G303",
"displayName": "Little Dinosaur",
"deviceType": 6,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 2,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G407",
"displayName": "Joy Vibrator",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G204",
"displayName": "Bowling",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G171",
"displayName": "Mixin Controller",
"deviceType": 0,
"isHotDevice": true,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G12D",
"displayName": "Hua Chao Brush",
"deviceType": 0,
"isHotDevice": true,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G123",
"displayName": "花sai",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G12B",
"displayName": "Flower Season",
"deviceType": 1,
"isHotDevice": true,
"isBleDevice": true,
"madaCount": 2,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G231",
"displayName": "Dream Pulse",
"deviceType": 7,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G23A",
"displayName": "Dream Vibration",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G29C",
"displayName": "Little Rubik's Cube",
"deviceType": 1,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 2,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G29D",
"displayName": "Small powder cake",
"deviceType": 1,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 2,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G336",
"displayName": "The Second Generation of Vitality Bird",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "GKML",
"displayName": "Milly",
"deviceType": 1,
"isHotDevice": true,
"isBleDevice": true,
"madaCount": 2,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G348",
"displayName": "Rhinoceros Back Court",
"deviceType": 1,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 2,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G23A",
"displayName": "Dream Vibration",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "A073",
"displayName": "Joy Vibrator",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "GLMT",
"displayName": "Rogue Rabbit",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G901",
"displayName": "Suck the vibrator",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G912",
"displayName": "Donut",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G913",
"displayName": "Unicorn II",
"deviceType": 1,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 2,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G213",
"displayName": "Phantom",
"deviceType": 1,
"isHotDevice": true,
"isBleDevice": true,
"madaCount": 2,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "TFF1",
"displayName": "F1 Aircraft Cup",
"deviceType": 1,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 2,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G310",
"displayName": "Scepter AV Stick",
"deviceType": 1,
"isHotDevice": true,
"isBleDevice": true,
"madaCount": 2,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G901",
"displayName": "Suck the vibrator",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G20B",
"displayName": "Ballet Vibrator",
"deviceType": 0,
"isHotDevice": true,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "K112",
"displayName": "Donut",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "K113",
"displayName": "Unicorn II",
"deviceType": 1,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 2,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G202",
"displayName": "Flirting Pen",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "K118",
"displayName": "Ball vibrator",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "K107",
"displayName": "Cyberpunk Airplane Cup",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G203",
"displayName": "Vitality Cute Pet",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "WSXK",
"displayName": "Starry Sky CUP",
"deviceType": 2,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G228",
"displayName": "Little Dolphin",
"deviceType": 1,
"isHotDevice": true,
"isBleDevice": true,
"madaCount": 2,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G310",
"displayName": "Scepter AV Stick",
"deviceType": 1,
"isHotDevice": true,
"isBleDevice": true,
"madaCount": 2,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "TFF1",
"displayName": "F1 Aircraft Cup",
"deviceType": 1,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 2,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": true
}, {
"localName": "TXHL",
"displayName": "Little gourd vibrating egg",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "TXMM",
"displayName": "little kitten",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "TXKL",
"displayName": "Little Dinosaur",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "D358",
"displayName": "Classic vibration-absorbing AV state",
"deviceType": 1,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 2,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "K108",
"displayName": "Bell sucking",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "K109",
"displayName": "Ring vibration",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G322",
"displayName": "Unicorn",
"deviceType": 1,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 2,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "KWL2",
"displayName": "Erection Booster",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "TFHL",
"displayName": "Gyoyo-G (meaning Yue-little gourd)",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "TFMM",
"displayName": "Gyoyo (meaning joy)",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "TFKL",
"displayName": "Gyoyo (meaning joy)",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "D402",
"displayName": "New series of vibrators",
"deviceType": 1,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 2,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G40A",
"displayName": "New series of vibrators",
"deviceType": 1,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 2,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G403",
"displayName": "New series of vibrators",
"deviceType": 1,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 2,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "G43A",
"displayName": "New series of vibrators",
"deviceType": 1,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 2,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "K120",
"displayName": "Pinky stick",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "K12A",
"displayName": "Little Turtle Stick",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "K12B",
"displayName": "Little Turtle Stick",
"deviceType": 1,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 2,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "K12C",
"displayName": "Xiao Xian Wan",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "K125",
"displayName": "Muscular Man",
"deviceType": 6,
"isHotDevice": true,
"isBleDevice": true,
"madaCount": 2,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "K119",
"displayName": "Feather Point Tide Brush",
"deviceType": 0,
"isHotDevice": true,
"isBleDevice": false,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}, {
"localName": "LL18",
"displayName": "Mitang",
"deviceType": 0,
"isHotDevice": false,
"isBleDevice": true,
"madaCount": 1,
"isStrong": false,
"isNewBroadcast": false,
"isTelescoping": false
}
]
}
DeviceType | Name |
---|---|
0 | ShakeOne |
1 | DeviceShakeTwo |
2 | DeviceShakeAndPump |
3 | DeviceShakeAndDianji |
4 | DeviceShakeTwoAndDianji |
5 | DeviceShakeAndDianji2 |
6 | DeviceXiAndChouCha |
7 | DeviceChouCha |
BT Name: GX29
0x2381bbabd2ecXXX3bba33bYY where
--
BT Name: GK36
Value: 0x2381bbabd24b47202ba33b46