esp32、c2、c3、s3增加蓝牙模拟键盘、鼠标
This commit is contained in:
@@ -1356,4 +1356,164 @@ export const analog_keyboard_str = {
|
||||
this.setNextStatement(true);
|
||||
this.setInputsInline(true);
|
||||
}
|
||||
};
|
||||
};
|
||||
|
||||
export const analog_ble_keyboard_init = {
|
||||
init:function(){
|
||||
this.setColour(ACTUATOR_ONBOARD_HUE);
|
||||
this.appendDummyInput()
|
||||
.appendField(Blockly.Msg.LISTS_SET_INDEX_SET+ Blockly.Msg.MIXLY_BLUETOOTH +Blockly.Msg.ANALOG+Blockly.Msg.MIXLY_KEYBOARD);
|
||||
this.appendValueInput('kname')
|
||||
.appendField(Blockly.Msg.MIXLY_MICROBIT_JS_SYSTEM_DEVICE_NAME);
|
||||
this.setPreviousStatement(true);
|
||||
this.setNextStatement(true);
|
||||
this.setInputsInline(true);
|
||||
}
|
||||
}
|
||||
|
||||
export const ble_keyboard_get_mac = {
|
||||
init:function(){
|
||||
this.setColour(ACTUATOR_ONBOARD_HUE);
|
||||
this.appendDummyInput()
|
||||
.appendField(Blockly.Msg.MIXLY_GET+Blockly.Msg.MIXLY_BLUETOOTH +Blockly.Msg.ANALOG+Blockly.Msg.MIXLY_KEYBOARD+Blockly.Msg.MIXLY_BELONG+Blockly.Msg.MIXLY_ETHERNET_MAC_ADDRESS);
|
||||
this.setOutput(true);
|
||||
this.setInputsInline(true);
|
||||
}
|
||||
}
|
||||
|
||||
export const ble_keyboard_connect = {
|
||||
init:function(){
|
||||
this.setColour(ACTUATOR_ONBOARD_HUE);
|
||||
this.appendDummyInput()
|
||||
.appendField(Blockly.Msg.MIXLY_BLUETOOTH +Blockly.Msg.ANALOG+Blockly.Msg.MIXLY_KEYBOARD+Blockly.Msg.MIXLY_IS_CONNECT);
|
||||
this.setOutput(true);
|
||||
this.setInputsInline(true);
|
||||
}
|
||||
}
|
||||
|
||||
export const analog_ble_keyboard_input = {
|
||||
init: function () {
|
||||
this.setColour(ACTUATOR_ONBOARD_HUE);
|
||||
this.appendDummyInput()
|
||||
.appendField(Blockly.Msg.MIXLY_BLUETOOTH+Blockly.Msg.ANALOG+Blockly.Msg.MIXLY_KEYBOARD)
|
||||
.appendField(Blockly.Msg.MIXLY_SEND_KEYBOARD);
|
||||
this.appendValueInput('special');
|
||||
this.appendValueInput('general');
|
||||
this.appendDummyInput()
|
||||
.appendField(Blockly.Msg.MIXLY_RELEASE)
|
||||
.appendField(new Blockly.FieldDropdown([
|
||||
[Blockly.Msg.MICROPYTHON_DISPLAY_YES, "True"],
|
||||
[Blockly.Msg.MICROPYTHON_DISPLAY_NO, "False"]
|
||||
]),'release');
|
||||
this.setPreviousStatement(true);
|
||||
this.setNextStatement(true);
|
||||
this.setInputsInline(true);
|
||||
this.setTooltip(Blockly.Msg.MIXLY_BLUETOOTH+Blockly.Msg.ANALOG+ Blockly.Msg.MIXLY_KEYBOARD_INPUT);
|
||||
}
|
||||
};
|
||||
|
||||
export const analog_ble_keyboard_str = {
|
||||
init:function(){
|
||||
this.setColour(ACTUATOR_ONBOARD_HUE);
|
||||
this.appendDummyInput()
|
||||
.appendField(Blockly.Msg.MIXLY_BLUETOOTH+Blockly.Msg.ANALOG+Blockly.Msg.MIXLY_KEYBOARD);
|
||||
this.appendValueInput('str')
|
||||
.appendField(Blockly.Msg.MIXLY_SEND_KEYBOARD +Blockly.Msg.MIXLY_STR_PRINT);
|
||||
this.appendValueInput('time')
|
||||
.appendField(Blockly.Msg.MIXLY_STR_PRINT_TIME_DELAY);
|
||||
this.appendDummyInput()
|
||||
.appendField('ms');
|
||||
this.setPreviousStatement(true);
|
||||
this.setNextStatement(true);
|
||||
this.setInputsInline(true);
|
||||
}
|
||||
}
|
||||
|
||||
export const analog_ble_keyboard_send_battery = {
|
||||
init:function(){
|
||||
this.setColour(ACTUATOR_ONBOARD_HUE);
|
||||
this.appendDummyInput()
|
||||
.appendField(Blockly.Msg.MIXLY_BLUETOOTH+Blockly.Msg.ANALOG+Blockly.Msg.MIXLY_KEYBOARD);
|
||||
this.appendValueInput('battery')
|
||||
.appendField(Blockly.Msg.MIXLY_SEND_KEYBOARD+Blockly.Msg.MIXLY_BELONG+Blockly.Msg.MIXLY_BATTERY+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO);
|
||||
this.appendDummyInput()
|
||||
.appendField('%');
|
||||
this.setPreviousStatement(true);
|
||||
this.setNextStatement(true);
|
||||
this.setInputsInline(true);
|
||||
}
|
||||
}
|
||||
|
||||
export const analog_ble_mouse_init = {
|
||||
init:function(){
|
||||
this.setColour(ACTUATOR_ONBOARD_HUE);
|
||||
this.appendDummyInput()
|
||||
.appendField(Blockly.Msg.LISTS_SET_INDEX_SET+ Blockly.Msg.MIXLY_BLUETOOTH +Blockly.Msg.ANALOG+Blockly.Msg.MIXLY_MOUSE);
|
||||
this.appendValueInput('name')
|
||||
.appendField(Blockly.Msg.MIXLY_MICROBIT_JS_SYSTEM_DEVICE_NAME);
|
||||
this.setPreviousStatement(true);
|
||||
this.setNextStatement(true);
|
||||
this.setInputsInline(true);
|
||||
}
|
||||
}
|
||||
|
||||
export const ble_mouse_get_mac = {
|
||||
init:function(){
|
||||
this.setColour(ACTUATOR_ONBOARD_HUE);
|
||||
this.appendDummyInput()
|
||||
.appendField(Blockly.Msg.MIXLY_GET+Blockly.Msg.MIXLY_BLUETOOTH +Blockly.Msg.ANALOG+Blockly.Msg.MIXLY_MOUSE+Blockly.Msg.MIXLY_BELONG+Blockly.Msg.MIXLY_ETHERNET_MAC_ADDRESS);
|
||||
this.setOutput(true);
|
||||
this.setInputsInline(true);
|
||||
}
|
||||
}
|
||||
|
||||
export const ble_mouse_connect = {
|
||||
init:function(){
|
||||
this.setColour(ACTUATOR_ONBOARD_HUE);
|
||||
this.appendDummyInput()
|
||||
.appendField(Blockly.Msg.MIXLY_BLUETOOTH +Blockly.Msg.ANALOG+Blockly.Msg.MIXLY_MOUSE+Blockly.Msg.MIXLY_IS_CONNECT);
|
||||
this.setOutput(true);
|
||||
this.setInputsInline(true);
|
||||
}
|
||||
}
|
||||
|
||||
export const analog_ble_mouse_input = {
|
||||
init: function () {
|
||||
this.setColour(ACTUATOR_ONBOARD_HUE);
|
||||
this.appendDummyInput()
|
||||
.appendField(Blockly.Msg.MIXLY_BLUETOOTH+Blockly.Msg.ANALOG+Blockly.Msg.MIXLY_MOUSE)
|
||||
.appendField(Blockly.Msg.MIXLY_SEND +Blockly.Msg.MIXLY_MOUSE_INPUT);
|
||||
this.appendValueInput('key');
|
||||
this.appendValueInput('x')
|
||||
.appendField(Blockly.Msg.MIXLY_X_CHANGES);
|
||||
this.appendValueInput('y')
|
||||
.appendField(Blockly.Msg.MIXLY_Y_CHANGES);
|
||||
this.appendValueInput('wheel')
|
||||
.appendField(Blockly.Msg.MIXLY_WHEEL_CHANGES);
|
||||
this.appendDummyInput()
|
||||
.appendField(Blockly.Msg.MIXLY_RELEASE)
|
||||
.appendField(new Blockly.FieldDropdown([
|
||||
[Blockly.Msg.MICROPYTHON_DISPLAY_YES, "True"],
|
||||
[Blockly.Msg.MICROPYTHON_DISPLAY_NO, "False"]
|
||||
]),'release');
|
||||
this.setPreviousStatement(true);
|
||||
this.setNextStatement(true);
|
||||
this.setInputsInline(true);
|
||||
this.setTooltip(Blockly.Msg.MIXLY_BLUETOOTH+Blockly.Msg.ANALOG + Blockly.Msg.MIXLY_KEYBOARD_INPUT);
|
||||
}
|
||||
};
|
||||
|
||||
export const analog_ble_mouse_send_battery = {
|
||||
init:function(){
|
||||
this.setColour(ACTUATOR_ONBOARD_HUE);
|
||||
this.appendDummyInput()
|
||||
.appendField(Blockly.Msg.MIXLY_BLUETOOTH+Blockly.Msg.ANALOG+Blockly.Msg.MIXLY_MOUSE);
|
||||
this.appendValueInput('battery')
|
||||
.appendField(Blockly.Msg.MIXLY_SEND+Blockly.Msg.MIXLY_MOUSE+Blockly.Msg.MIXLY_BELONG+Blockly.Msg.MIXLY_BATTERY+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO);
|
||||
this.appendDummyInput()
|
||||
.appendField('%');
|
||||
this.setPreviousStatement(true);
|
||||
this.setNextStatement(true);
|
||||
this.setInputsInline(true);
|
||||
}
|
||||
}
|
||||
@@ -505,4 +505,84 @@ export const general_key_tuple = function (_, generator) {
|
||||
}
|
||||
|
||||
return [code, generator.ORDER_ATOMIC];
|
||||
};
|
||||
};
|
||||
|
||||
export const analog_ble_keyboard_init = function(_, generator){
|
||||
generator.definitions_['import_ble_keyboard'] = 'from ble_hid_keyboard import Keyboard';
|
||||
var kname = generator.valueToCode(this, 'kname', generator.ORDER_ATOMIC)
|
||||
var code = 'ble_keyboard=Keyboard('+kname+')\n';
|
||||
return code;
|
||||
}
|
||||
|
||||
export const ble_keyboard_get_mac = function(_, generator){
|
||||
generator.definitions_['import_ble_keyboard'] = 'from ble_hid_keyboard import Keyboard';
|
||||
var code = 'ble_keyboard.mac';
|
||||
return[code, generator.ORDER_ATOMIC];
|
||||
}
|
||||
|
||||
export const ble_keyboard_connect = function(_, generator){
|
||||
generator.definitions_['import_ble_keyboard'] = 'from ble_hid_keyboard import Keyboard';
|
||||
var code = 'ble_keyboard.is_connected()';
|
||||
return[code, generator.ORDER_ATOMIC];
|
||||
}
|
||||
|
||||
export const analog_ble_keyboard_input = function (_, generator) {
|
||||
var sp = generator.valueToCode(this, 'special', generator.ORDER_ATOMIC);
|
||||
var ge = generator.valueToCode(this, 'general', generator.ORDER_ATOMIC);
|
||||
var re = this.getFieldValue('release');
|
||||
generator.definitions_['import_ble_keyboard'] = 'from ble_hid_keyboard import Keyboard';
|
||||
var code = "ble_keyboard.notify_hid("+sp+","+ge+","+re+")\n";
|
||||
return code;
|
||||
}
|
||||
|
||||
export const analog_ble_keyboard_str = function (_, generator) {
|
||||
var str = generator.valueToCode(this, 'str', generator.ORDER_ATOMIC);
|
||||
var t = generator.valueToCode(this, 'time', generator.ORDER_ATOMIC);
|
||||
generator.definitions_['import_ble_keyboard'] = 'from ble_hid_keyboard import Keyboard';
|
||||
var code = "ble_keyboard.notify_str("+str+",delay="+t+")\n";
|
||||
return code;
|
||||
}
|
||||
|
||||
export const analog_ble_keyboard_send_battery = function (_, generator) {
|
||||
var b = generator.valueToCode(this, 'battery', generator.ORDER_ATOMIC);
|
||||
generator.definitions_['import_ble_keyboard'] = 'from ble_hid_keyboard import Keyboard';
|
||||
var code = "ble_keyboard.notify_battery("+b+")\n";
|
||||
return code;
|
||||
}
|
||||
|
||||
export const analog_ble_mouse_init = function(_, generator){
|
||||
generator.definitions_['import_ble_mouse'] = 'from ble_hid_mouse import Mouse';
|
||||
var name = generator.valueToCode(this, 'name', generator.ORDER_ATOMIC)
|
||||
var code = 'ble_mouse=Mouse('+name+')\n';
|
||||
return code;
|
||||
}
|
||||
|
||||
export const ble_mouse_get_mac = function(_, generator){
|
||||
generator.definitions_['import_ble_mouse'] = 'from ble_hid_mouse import Mouse';
|
||||
var code = 'ble_mouse.mac';
|
||||
return[code, generator.ORDER_ATOMIC];
|
||||
}
|
||||
|
||||
export const ble_mouse_connect = function(_, generator){
|
||||
generator.definitions_['import_ble_mouse'] = 'from ble_hid_mouse import Mouse';
|
||||
var code = 'ble_mouse.is_connected()';
|
||||
return[code, generator.ORDER_ATOMIC];
|
||||
}
|
||||
|
||||
export const analog_ble_mouse_input = function (_, generator) {
|
||||
var key = generator.valueToCode(this, 'key', generator.ORDER_ATOMIC);
|
||||
var x = generator.valueToCode(this, 'x', generator.ORDER_ATOMIC);
|
||||
var y = generator.valueToCode(this, 'y', generator.ORDER_ATOMIC);
|
||||
var wheel = generator.valueToCode(this, 'wheel', generator.ORDER_ATOMIC);
|
||||
var re = this.getFieldValue('release');
|
||||
generator.definitions_['import_ble_mouse'] = 'from ble_hid_mouse import Mouse';
|
||||
var code = "ble_mouse.notify_hid("+key+",("+x+","+y+"),"+wheel+","+re+")\n";
|
||||
return code;
|
||||
}
|
||||
|
||||
export const analog_ble_mouse_send_battery = function (_, generator) {
|
||||
var b = generator.valueToCode(this, 'battery', generator.ORDER_ATOMIC);
|
||||
generator.definitions_['import_ble_mouse'] = 'from ble_hid_mouse import Mouse';
|
||||
var code = "ble_mouse.notify_battery("+b+")\n";
|
||||
return code;
|
||||
}
|
||||
|
||||
@@ -1704,6 +1704,78 @@
|
||||
</shadow>
|
||||
</value>
|
||||
</block>
|
||||
<block type="analog_ble_keyboard_init">
|
||||
<value name="kname">
|
||||
<shadow type="text">
|
||||
<field name="TEXT">ble_keyboard</field>
|
||||
</shadow>
|
||||
</value>
|
||||
</block>
|
||||
<block type="ble_keyboard_get_mac"></block>
|
||||
<block type="ble_keyboard_connect"></block>
|
||||
<block type="analog_ble_keyboard_input" >
|
||||
<value name="special">
|
||||
<block type="special_key">
|
||||
</block>
|
||||
</value>
|
||||
<value name="general">
|
||||
<block type="general_key">
|
||||
</block>
|
||||
</value>
|
||||
</block>
|
||||
<block type="analog_ble_keyboard_str">
|
||||
<value name="str">
|
||||
<shadow type="text">
|
||||
<field name="TEXT">Hello, Mixly!</field>
|
||||
</shadow>
|
||||
</value>
|
||||
<value name="time">
|
||||
<shadow type="math_number">
|
||||
<field name="NUM">10</field>
|
||||
</shadow>
|
||||
</value>
|
||||
</block>
|
||||
<block type="analog_ble_keyboard_send_battery">
|
||||
<value name="battery">
|
||||
<shadow type="math_number">
|
||||
<field name="NUM">10</field>
|
||||
</shadow>
|
||||
</value>
|
||||
</block>
|
||||
<block type="analog_ble_mouse_init">
|
||||
<value name="name">
|
||||
<shadow type="text">
|
||||
<field name="TEXT">ble_Mouse</field>
|
||||
</shadow>
|
||||
</value>
|
||||
</block>
|
||||
<block type="ble_mouse_get_mac"></block>
|
||||
<block type="ble_mouse_connect"></block>
|
||||
<block type="analog_ble_mouse_input" >
|
||||
<value name="key">
|
||||
<block type="mouse_key">
|
||||
</block>
|
||||
</value>
|
||||
<value name="x">
|
||||
<shadow type="math_number">
|
||||
</shadow>
|
||||
</value>
|
||||
<value name="y">
|
||||
<shadow type="math_number">
|
||||
</shadow>
|
||||
</value>
|
||||
<value name="wheel">
|
||||
<shadow type="math_number">
|
||||
</shadow>
|
||||
</value>
|
||||
</block>
|
||||
<block type="analog_ble_mouse_send_battery">
|
||||
<value name="battery">
|
||||
<shadow type="math_number">
|
||||
<field name="NUM">10</field>
|
||||
</shadow>
|
||||
</value>
|
||||
</block>
|
||||
</category>
|
||||
<category id="catOnBoardDisplay" name="catOnBoardDisplay" colour='#569A98'
|
||||
m-show="micropython:esp32:mixgo micropython:esp32:mixgo_pe">
|
||||
|
||||
@@ -1751,6 +1751,78 @@
|
||||
</shadow>
|
||||
</value>
|
||||
</block>
|
||||
<block type="analog_ble_keyboard_init">
|
||||
<value name="kname">
|
||||
<shadow type="text">
|
||||
<field name="TEXT">ble_keyboard</field>
|
||||
</shadow>
|
||||
</value>
|
||||
</block>
|
||||
<block type="ble_keyboard_get_mac"></block>
|
||||
<block type="ble_keyboard_connect"></block>
|
||||
<block type="analog_ble_keyboard_input" >
|
||||
<value name="special">
|
||||
<block type="special_key">
|
||||
</block>
|
||||
</value>
|
||||
<value name="general">
|
||||
<block type="general_key">
|
||||
</block>
|
||||
</value>
|
||||
</block>
|
||||
<block type="analog_ble_keyboard_str">
|
||||
<value name="str">
|
||||
<shadow type="text">
|
||||
<field name="TEXT">Hello, Mixly!</field>
|
||||
</shadow>
|
||||
</value>
|
||||
<value name="time">
|
||||
<shadow type="math_number">
|
||||
<field name="NUM">10</field>
|
||||
</shadow>
|
||||
</value>
|
||||
</block>
|
||||
<block type="analog_ble_keyboard_send_battery">
|
||||
<value name="battery">
|
||||
<shadow type="math_number">
|
||||
<field name="NUM">10</field>
|
||||
</shadow>
|
||||
</value>
|
||||
</block>
|
||||
<block type="analog_ble_mouse_init">
|
||||
<value name="name">
|
||||
<shadow type="text">
|
||||
<field name="TEXT">ble_Mouse</field>
|
||||
</shadow>
|
||||
</value>
|
||||
</block>
|
||||
<block type="ble_mouse_get_mac"></block>
|
||||
<block type="ble_mouse_connect"></block>
|
||||
<block type="analog_ble_mouse_input" >
|
||||
<value name="key">
|
||||
<block type="mouse_key">
|
||||
</block>
|
||||
</value>
|
||||
<value name="x">
|
||||
<shadow type="math_number">
|
||||
</shadow>
|
||||
</value>
|
||||
<value name="y">
|
||||
<shadow type="math_number">
|
||||
</shadow>
|
||||
</value>
|
||||
<value name="wheel">
|
||||
<shadow type="math_number">
|
||||
</shadow>
|
||||
</value>
|
||||
</block>
|
||||
<block type="analog_ble_mouse_send_battery">
|
||||
<value name="battery">
|
||||
<shadow type="math_number">
|
||||
<field name="NUM">10</field>
|
||||
</shadow>
|
||||
</value>
|
||||
</block>
|
||||
</category>
|
||||
<category id="catOnBoardDisplay" name="catOnBoardDisplay" colour='#569A98'
|
||||
m-hide='micropython:esp32c3:generic micropython:esp32c3:mixgocar_c3'>
|
||||
|
||||
@@ -1697,6 +1697,78 @@
|
||||
</block>
|
||||
<block type="actuator_onboard_neopixel_write">
|
||||
</block>
|
||||
<block type="analog_ble_keyboard_init">
|
||||
<value name="kname">
|
||||
<shadow type="text">
|
||||
<field name="TEXT">ble_keyboard</field>
|
||||
</shadow>
|
||||
</value>
|
||||
</block>
|
||||
<block type="ble_keyboard_get_mac"></block>
|
||||
<block type="ble_keyboard_connect"></block>
|
||||
<block type="analog_ble_keyboard_input" >
|
||||
<value name="special">
|
||||
<block type="special_key">
|
||||
</block>
|
||||
</value>
|
||||
<value name="general">
|
||||
<block type="general_key">
|
||||
</block>
|
||||
</value>
|
||||
</block>
|
||||
<block type="analog_ble_keyboard_str">
|
||||
<value name="str">
|
||||
<shadow type="text">
|
||||
<field name="TEXT">Hello, Mixly!</field>
|
||||
</shadow>
|
||||
</value>
|
||||
<value name="time">
|
||||
<shadow type="math_number">
|
||||
<field name="NUM">10</field>
|
||||
</shadow>
|
||||
</value>
|
||||
</block>
|
||||
<block type="analog_ble_keyboard_send_battery">
|
||||
<value name="battery">
|
||||
<shadow type="math_number">
|
||||
<field name="NUM">10</field>
|
||||
</shadow>
|
||||
</value>
|
||||
</block>
|
||||
<block type="analog_ble_mouse_init">
|
||||
<value name="name">
|
||||
<shadow type="text">
|
||||
<field name="TEXT">ble_Mouse</field>
|
||||
</shadow>
|
||||
</value>
|
||||
</block>
|
||||
<block type="ble_mouse_get_mac"></block>
|
||||
<block type="ble_mouse_connect"></block>
|
||||
<block type="analog_ble_mouse_input" >
|
||||
<value name="key">
|
||||
<block type="mouse_key">
|
||||
</block>
|
||||
</value>
|
||||
<value name="x">
|
||||
<shadow type="math_number">
|
||||
</shadow>
|
||||
</value>
|
||||
<value name="y">
|
||||
<shadow type="math_number">
|
||||
</shadow>
|
||||
</value>
|
||||
<value name="wheel">
|
||||
<shadow type="math_number">
|
||||
</shadow>
|
||||
</value>
|
||||
</block>
|
||||
<block type="analog_ble_mouse_send_battery">
|
||||
<value name="battery">
|
||||
<shadow type="math_number">
|
||||
<field name="NUM">10</field>
|
||||
</shadow>
|
||||
</value>
|
||||
</block>
|
||||
</category>
|
||||
<category id="catOnBoardDisplay" name="catOnBoardDisplay" colour='#569A98'
|
||||
m-hide='micropython:esp32c3:generic micropython:esp32c3:mixgocar_c3'>
|
||||
|
||||
@@ -1725,9 +1725,79 @@
|
||||
</value>
|
||||
</block>
|
||||
<block type="actuator_onboard_neopixel_write">
|
||||
</block>
|
||||
<block type="analog_ble_keyboard_init">
|
||||
<value name="kname">
|
||||
<shadow type="text">
|
||||
<field name="TEXT">ble_keyboard</field>
|
||||
</shadow>
|
||||
</value>
|
||||
</block>
|
||||
<block type="ble_keyboard_get_mac"></block>
|
||||
<block type="ble_keyboard_connect"></block>
|
||||
<block type="analog_ble_keyboard_input" >
|
||||
<value name="special">
|
||||
<block type="special_key">
|
||||
</block>
|
||||
</value>
|
||||
<value name="general">
|
||||
<block type="general_key">
|
||||
</block>
|
||||
</value>
|
||||
</block>
|
||||
<block type="analog_ble_keyboard_str">
|
||||
<value name="str">
|
||||
<shadow type="text">
|
||||
<field name="TEXT">Hello, Mixly!</field>
|
||||
</shadow>
|
||||
</value>
|
||||
<value name="time">
|
||||
<shadow type="math_number">
|
||||
<field name="NUM">10</field>
|
||||
</shadow>
|
||||
</value>
|
||||
</block>
|
||||
<block type="analog_ble_keyboard_send_battery">
|
||||
<value name="battery">
|
||||
<shadow type="math_number">
|
||||
<field name="NUM">10</field>
|
||||
</shadow>
|
||||
</value>
|
||||
</block>
|
||||
<block type="analog_ble_mouse_init">
|
||||
<value name="name">
|
||||
<shadow type="text">
|
||||
<field name="TEXT">ble_Mouse</field>
|
||||
</shadow>
|
||||
</value>
|
||||
</block>
|
||||
<block type="ble_mouse_get_mac"></block>
|
||||
<block type="ble_mouse_connect"></block>
|
||||
<block type="analog_ble_mouse_input" >
|
||||
<value name="key">
|
||||
<block type="mouse_key">
|
||||
</block>
|
||||
</value>
|
||||
<value name="x">
|
||||
<shadow type="math_number">
|
||||
</shadow>
|
||||
</value>
|
||||
<value name="y">
|
||||
<shadow type="math_number">
|
||||
</shadow>
|
||||
</value>
|
||||
<value name="wheel">
|
||||
<shadow type="math_number">
|
||||
</shadow>
|
||||
</value>
|
||||
</block>
|
||||
<block type="analog_ble_mouse_send_battery">
|
||||
<value name="battery">
|
||||
<shadow type="math_number">
|
||||
<field name="NUM">10</field>
|
||||
</shadow>
|
||||
</value>
|
||||
</block>
|
||||
|
||||
|
||||
</category>
|
||||
<category id="catOnBoardDisplay" colour='#78B5B4'>
|
||||
<block type="mpython_pbm_image"></block>
|
||||
|
||||
Reference in New Issue
Block a user