mirror of https://github.com/espruino/BangleApps
85 lines
1.7 KiB
JavaScript
85 lines
1.7 KiB
JavaScript
(function() {
|
|
var s = require('Storage').readJSON('@setting');
|
|
var adv = { uart: true };
|
|
if (s.HID) {
|
|
// Report from https://notes.iopush.net/custom-usb-hid-device-descriptor-media-keyboard/
|
|
Bangle.HID = new Uint8Array([
|
|
// Keyboard Controls
|
|
0x05, 0x01,
|
|
0x09, 0x06,
|
|
0xA1, 0x01,
|
|
0x85, 0x02,
|
|
0x05, 0x07,
|
|
0x19, 0xe0,
|
|
0x29, 0xe7,
|
|
0x15, 0x00,
|
|
0x25, 0x01,
|
|
0x75, 0x01,
|
|
0x95, 0x08,
|
|
0x81, 0x02,
|
|
0x95, 0x01,
|
|
0x75, 0x08,
|
|
0x81, 0x01,
|
|
0x95, 0x05,
|
|
0x75, 0x01,
|
|
0x05, 0x08,
|
|
0x19, 0x01,
|
|
0x29, 0x05,
|
|
0x91, 0x02,
|
|
0x95, 0x01,
|
|
0x75, 0x03,
|
|
0x91, 0x01,
|
|
0x95, 0x06,
|
|
0x75, 0x08,
|
|
0x15, 0x00,
|
|
0x25, 0x73,
|
|
0x05, 0x07,
|
|
0x19, 0x00,
|
|
0x29, 0x73,
|
|
0x81, 0x00,
|
|
0x09, 0x05,
|
|
0x15, 0x00,
|
|
0x26, 0xFF, 0x00,
|
|
0x75, 0x08,
|
|
0x95, 0x02,
|
|
0xB1, 0x02,
|
|
0xC0,
|
|
|
|
// Music Controls
|
|
0x05, 0x0C,
|
|
0x09, 0x01,
|
|
0xA1, 0x01,
|
|
0x85, 0x01,
|
|
0x15, 0x00,
|
|
0x25, 0x01,
|
|
0x75, 0x01,
|
|
0x95, 0x01,
|
|
0x09, 0xB5,
|
|
0x81, 0x02,
|
|
0x09, 0xB6,
|
|
0x81, 0x02,
|
|
0x09, 0xB7,
|
|
0x81, 0x02,
|
|
0x09, 0xB8,
|
|
0x81, 0x02,
|
|
0x09, 0xCD,
|
|
0x81, 0x02,
|
|
0x09, 0xE2,
|
|
0x81, 0x02,
|
|
0x09, 0xE9,
|
|
0x81, 0x02,
|
|
0x09, 0xEA,
|
|
0x81, 0x02,
|
|
0xC0
|
|
]);
|
|
adv.hid = Bangle.HID;
|
|
}
|
|
NRF.setServices(undefined, adv);
|
|
|
|
if (!s.vibrate) Bangle.buzz=()=>Promise.resolve();
|
|
if (!s.beep) Bangle.beep=()=>Promise.resolve();
|
|
Bangle.setLCDTimeout(s.timeout);
|
|
if (!s.timeout) Bangle.setLCDPower(1);
|
|
E.setTimeZone(s.timezone);
|
|
})()
|