pymammotion 0.2.62__py3-none-any.whl → 0.5.51__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of pymammotion might be problematic. Click here for more details.
- pymammotion/__init__.py +9 -6
- pymammotion/aliyun/client.py +235 -0
- pymammotion/aliyun/cloud_gateway.py +320 -69
- pymammotion/aliyun/model/aep_response.py +1 -2
- pymammotion/aliyun/model/dev_by_account_response.py +170 -23
- pymammotion/aliyun/model/login_by_oauth_response.py +2 -3
- pymammotion/aliyun/model/regions_response.py +3 -3
- pymammotion/aliyun/model/session_by_authcode_response.py +2 -2
- pymammotion/aliyun/model/thing_response.py +12 -0
- pymammotion/aliyun/regions.py +62 -0
- pymammotion/aliyun/tea/core.py +297 -0
- pymammotion/bluetooth/ble.py +11 -15
- pymammotion/bluetooth/ble_message.py +389 -106
- pymammotion/bluetooth/model/atomic_integer.py +54 -0
- pymammotion/const.py +3 -0
- pymammotion/data/model/__init__.py +1 -2
- pymammotion/data/model/device.py +92 -240
- pymammotion/data/model/device_config.py +10 -24
- pymammotion/data/model/device_info.py +35 -0
- pymammotion/data/model/device_limits.py +49 -0
- pymammotion/data/model/enums.py +12 -2
- pymammotion/data/model/errors.py +12 -0
- pymammotion/data/model/events.py +14 -0
- pymammotion/data/model/generate_geojson.py +521 -0
- pymammotion/data/model/generate_route_information.py +3 -4
- pymammotion/data/model/hash_list.py +384 -48
- pymammotion/data/model/location.py +4 -4
- pymammotion/data/model/mowing_modes.py +24 -1
- pymammotion/data/model/raw_data.py +215 -0
- pymammotion/data/model/region_data.py +10 -11
- pymammotion/data/model/report_info.py +62 -6
- pymammotion/data/model/work.py +27 -0
- pymammotion/data/mower_state_manager.py +316 -0
- pymammotion/data/mqtt/event.py +73 -28
- pymammotion/data/mqtt/mammotion_properties.py +257 -0
- pymammotion/data/mqtt/properties.py +93 -78
- pymammotion/data/mqtt/status.py +18 -17
- pymammotion/event/event.py +32 -8
- pymammotion/homeassistant/__init__.py +3 -0
- pymammotion/homeassistant/mower_api.py +484 -0
- pymammotion/homeassistant/rtk_api.py +54 -0
- pymammotion/http/__init__.py +0 -0
- pymammotion/http/encryption.py +220 -0
- pymammotion/http/http.py +652 -44
- pymammotion/http/model/__init__.py +0 -0
- pymammotion/{aliyun/model/stream_subscription_response.py → http/model/camera_stream.py} +14 -2
- pymammotion/http/model/http.py +160 -9
- pymammotion/http/model/response_factory.py +61 -0
- pymammotion/http/model/rtk.py +16 -0
- pymammotion/mammotion/commands/abstract_message.py +7 -5
- pymammotion/mammotion/commands/mammotion_command.py +32 -3
- pymammotion/mammotion/commands/messages/basestation.py +43 -0
- pymammotion/mammotion/commands/messages/driver.py +61 -29
- pymammotion/mammotion/commands/messages/media.py +68 -15
- pymammotion/mammotion/commands/messages/navigation.py +61 -25
- pymammotion/mammotion/commands/messages/network.py +93 -100
- pymammotion/mammotion/commands/messages/ota.py +18 -18
- pymammotion/mammotion/commands/messages/system.py +97 -72
- pymammotion/mammotion/commands/messages/video.py +17 -12
- pymammotion/mammotion/devices/__init__.py +27 -3
- pymammotion/mammotion/devices/base.py +50 -127
- pymammotion/mammotion/devices/mammotion.py +447 -212
- pymammotion/mammotion/devices/mammotion_bluetooth.py +105 -60
- pymammotion/mammotion/devices/mammotion_cloud.py +157 -105
- pymammotion/mammotion/devices/mammotion_mower_ble.py +49 -0
- pymammotion/mammotion/devices/mammotion_mower_cloud.py +39 -0
- pymammotion/mammotion/devices/managers/managers.py +81 -0
- pymammotion/mammotion/devices/mower_device.py +124 -0
- pymammotion/mammotion/devices/mower_manager.py +107 -0
- pymammotion/mammotion/devices/rtk_ble.py +89 -0
- pymammotion/mammotion/devices/rtk_cloud.py +113 -0
- pymammotion/mammotion/devices/rtk_device.py +50 -0
- pymammotion/mammotion/devices/rtk_manager.py +122 -0
- pymammotion/mqtt/__init__.py +2 -1
- pymammotion/mqtt/aliyun_mqtt.py +232 -0
- pymammotion/mqtt/linkkit/__init__.py +5 -0
- pymammotion/mqtt/linkkit/h2client.py +585 -0
- pymammotion/mqtt/linkkit/linkkit.py +3023 -0
- pymammotion/mqtt/mammotion_mqtt.py +176 -169
- pymammotion/mqtt/mqtt_models.py +66 -0
- pymammotion/proto/__init__.py +4839 -4
- pymammotion/proto/basestation.proto +8 -0
- pymammotion/proto/basestation_pb2.py +11 -9
- pymammotion/proto/basestation_pb2.pyi +16 -2
- pymammotion/proto/dev_net.proto +79 -55
- pymammotion/proto/dev_net_pb2.py +60 -56
- pymammotion/proto/dev_net_pb2.pyi +49 -6
- pymammotion/proto/luba_msg.proto +2 -1
- pymammotion/proto/luba_msg_pb2.py +6 -6
- pymammotion/proto/luba_msg_pb2.pyi +1 -0
- pymammotion/proto/luba_mul.proto +62 -1
- pymammotion/proto/luba_mul_pb2.py +38 -22
- pymammotion/proto/luba_mul_pb2.pyi +94 -7
- pymammotion/proto/mctrl_driver.proto +44 -4
- pymammotion/proto/mctrl_driver_pb2.py +26 -14
- pymammotion/proto/mctrl_driver_pb2.pyi +66 -11
- pymammotion/proto/mctrl_nav.proto +97 -51
- pymammotion/proto/mctrl_nav_pb2.py +75 -67
- pymammotion/proto/mctrl_nav_pb2.pyi +142 -56
- pymammotion/proto/mctrl_ota.proto +40 -2
- pymammotion/proto/mctrl_ota_pb2.py +23 -13
- pymammotion/proto/mctrl_ota_pb2.pyi +67 -4
- pymammotion/proto/mctrl_pept.proto +8 -3
- pymammotion/proto/mctrl_pept_pb2.py +8 -6
- pymammotion/proto/mctrl_pept_pb2.pyi +14 -6
- pymammotion/proto/mctrl_sys.proto +325 -86
- pymammotion/proto/mctrl_sys_pb2.py +162 -98
- pymammotion/proto/mctrl_sys_pb2.pyi +451 -25
- pymammotion/proto/message_pool.py +3 -0
- pymammotion/proto/py.typed +0 -0
- pymammotion/utility/constant/device_constant.py +65 -21
- pymammotion/utility/datatype_converter.py +13 -12
- pymammotion/utility/device_config.py +755 -0
- pymammotion/utility/device_type.py +218 -21
- pymammotion/utility/map.py +238 -51
- pymammotion/utility/mur_mur_hash.py +159 -0
- {pymammotion-0.2.62.dist-info → pymammotion-0.5.51.dist-info}/METADATA +27 -31
- pymammotion-0.5.51.dist-info/RECORD +152 -0
- {pymammotion-0.2.62.dist-info → pymammotion-0.5.51.dist-info}/WHEEL +1 -1
- pymammotion/aliyun/cloud_service.py +0 -65
- pymammotion/data/model/plan.py +0 -58
- pymammotion/data/state_manager.py +0 -130
- pymammotion/proto/basestation.py +0 -59
- pymammotion/proto/common.py +0 -12
- pymammotion/proto/dev_net.py +0 -381
- pymammotion/proto/luba_msg.py +0 -81
- pymammotion/proto/luba_mul.py +0 -76
- pymammotion/proto/mctrl_driver.py +0 -100
- pymammotion/proto/mctrl_nav.py +0 -660
- pymammotion/proto/mctrl_ota.py +0 -48
- pymammotion/proto/mctrl_pept.py +0 -41
- pymammotion/proto/mctrl_sys.py +0 -574
- pymammotion-0.2.62.dist-info/RECORD +0 -125
- /pymammotion/{http/_init_.py → bluetooth/model/__init__.py} +0 -0
- {pymammotion-0.2.62.dist-info → pymammotion-0.5.51.dist-info/licenses}/LICENSE +0 -0
|
@@ -31,6 +31,7 @@ MSG_ATTR_REPORT: MsgAttr
|
|
|
31
31
|
MSG_ATTR_REQ: MsgAttr
|
|
32
32
|
MSG_ATTR_RESP: MsgAttr
|
|
33
33
|
MSG_CMD_TYPE_APPLICATION: MsgCmdType
|
|
34
|
+
MSG_CMD_TYPE_BASESTATION: MsgCmdType
|
|
34
35
|
MSG_CMD_TYPE_EMBED_DRIVER: MsgCmdType
|
|
35
36
|
MSG_CMD_TYPE_EMBED_MIDWARE: MsgCmdType
|
|
36
37
|
MSG_CMD_TYPE_EMBED_OTA: MsgCmdType
|
pymammotion/proto/luba_mul.proto
CHANGED
|
@@ -3,6 +3,19 @@ syntax = "proto3";
|
|
|
3
3
|
enum MUL_LANGUAGE {
|
|
4
4
|
ENGLISH = 0;
|
|
5
5
|
GERMAN = 1;
|
|
6
|
+
FRENCH = 2;
|
|
7
|
+
ITALIAN = 3;
|
|
8
|
+
SPANISH = 4;
|
|
9
|
+
PORTUGUESE = 5;
|
|
10
|
+
DUTCH = 6;
|
|
11
|
+
SWEDISH = 7;
|
|
12
|
+
NONE_LAN = 8;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
enum MUL_SEX {
|
|
16
|
+
MAN = 0;
|
|
17
|
+
WOMAN = 1;
|
|
18
|
+
NONE_SEX = 2;
|
|
6
19
|
}
|
|
7
20
|
|
|
8
21
|
enum MUL_CAMERA_POSITION {
|
|
@@ -18,7 +31,6 @@ enum MUL_VIDEO_ERROR_CODE {
|
|
|
18
31
|
NETWORK_NOT_AVAILABLE = 2;
|
|
19
32
|
CREATE_CHANNEL_FAILED = 3;
|
|
20
33
|
PARAM_INVAILD = 4;
|
|
21
|
-
CELLULAR_RESTRICTION = 5;
|
|
22
34
|
}
|
|
23
35
|
|
|
24
36
|
enum MUL_WIPER_ERROR_CODE {
|
|
@@ -27,10 +39,22 @@ enum MUL_WIPER_ERROR_CODE {
|
|
|
27
39
|
NAVIGATION_WORK_FORBID = 2;
|
|
28
40
|
}
|
|
29
41
|
|
|
42
|
+
enum lamp_ctrl_sta {
|
|
43
|
+
power_off = 0;
|
|
44
|
+
power_on = 1;
|
|
45
|
+
power_ctrl_on = 2;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
enum lamp_manual_ctrl_sta {
|
|
49
|
+
manual_power_off = 0;
|
|
50
|
+
manual_power_on = 1;
|
|
51
|
+
}
|
|
52
|
+
|
|
30
53
|
message MulSetAudio {
|
|
31
54
|
oneof AudioCfg_u {
|
|
32
55
|
int32 at_switch = 1;
|
|
33
56
|
MUL_LANGUAGE au_language = 2;
|
|
57
|
+
MUL_SEX sex = 3;
|
|
34
58
|
}
|
|
35
59
|
}
|
|
36
60
|
|
|
@@ -46,16 +70,48 @@ message MulSetVideoAck {
|
|
|
46
70
|
message MulAudioCfg {
|
|
47
71
|
int32 au_switch = 1;
|
|
48
72
|
MUL_LANGUAGE au_language = 2;
|
|
73
|
+
MUL_SEX sex = 3;
|
|
49
74
|
}
|
|
50
75
|
|
|
51
76
|
message MulSetWiper {
|
|
52
77
|
int32 round = 1;
|
|
53
78
|
}
|
|
54
79
|
|
|
80
|
+
message GetHeadlamp {
|
|
81
|
+
int32 get_ids = 1;
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
|
|
85
|
+
message SetHeadlamp {
|
|
86
|
+
int32 set_ids = 1;
|
|
87
|
+
int32 lamp_power_ctrl = 2;
|
|
88
|
+
lamp_ctrl_sta lamp_ctrl = 3;
|
|
89
|
+
bool ctrl_lamp_bright = 4;
|
|
90
|
+
int32 lamp_bright = 5;
|
|
91
|
+
lamp_manual_ctrl_sta lamp_manual_ctrl = 6;
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
message Setlamprsp {
|
|
95
|
+
int32 set_ids = 1;
|
|
96
|
+
int32 result = 2;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
message Getlamprsp {
|
|
100
|
+
int32 get_ids = 1;
|
|
101
|
+
int32 result = 2;
|
|
102
|
+
lamp_ctrl_sta lamp_ctrl = 3;
|
|
103
|
+
int32 lamp_bright = 4;
|
|
104
|
+
lamp_manual_ctrl_sta lamp_manual_ctrl = 5;
|
|
105
|
+
}
|
|
106
|
+
|
|
55
107
|
message MulSetWiperAck {
|
|
56
108
|
MUL_WIPER_ERROR_CODE error_code = 1;
|
|
57
109
|
}
|
|
58
110
|
|
|
111
|
+
message MulSetEncode {
|
|
112
|
+
bool encode = 1;
|
|
113
|
+
}
|
|
114
|
+
|
|
59
115
|
message SocMul {
|
|
60
116
|
oneof SubMul {
|
|
61
117
|
MulSetAudio set_audio = 1;
|
|
@@ -64,5 +120,10 @@ message SocMul {
|
|
|
64
120
|
MulSetVideoAck set_video_ack = 4;
|
|
65
121
|
MulSetWiper set_wiper = 5;
|
|
66
122
|
MulSetWiperAck set_wiper_ack = 6;
|
|
123
|
+
GetHeadlamp get_lamp = 7;
|
|
124
|
+
SetHeadlamp set_lamp = 8;
|
|
125
|
+
Setlamprsp set_lamp_rsp = 9;
|
|
126
|
+
Getlamprsp get_lamp_rsp = 10;
|
|
127
|
+
MulSetEncode req_encode = 11;
|
|
67
128
|
}
|
|
68
129
|
}
|
|
@@ -13,33 +13,49 @@ _sym_db = _symbol_database.Default()
|
|
|
13
13
|
|
|
14
14
|
|
|
15
15
|
|
|
16
|
-
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n pymammotion/proto/luba_mul.proto\"
|
|
16
|
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n pymammotion/proto/luba_mul.proto\"o\n\x0bMulSetAudio\x12\x13\n\tat_switch\x18\x01 \x01(\x05H\x00\x12$\n\x0b\x61u_language\x18\x02 \x01(\x0e\x32\r.MUL_LANGUAGEH\x00\x12\x17\n\x03sex\x18\x03 \x01(\x0e\x32\x08.MUL_SEXH\x00\x42\x0c\n\nAudioCfg_u\"H\n\x0bMulSetVideo\x12&\n\x08position\x18\x01 \x01(\x0e\x32\x14.MUL_CAMERA_POSITION\x12\x11\n\tvi_switch\x18\x02 \x01(\x05\";\n\x0eMulSetVideoAck\x12)\n\nerror_code\x18\x01 \x01(\x0e\x32\x15.MUL_VIDEO_ERROR_CODE\"[\n\x0bMulAudioCfg\x12\x11\n\tau_switch\x18\x01 \x01(\x05\x12\"\n\x0b\x61u_language\x18\x02 \x01(\x0e\x32\r.MUL_LANGUAGE\x12\x15\n\x03sex\x18\x03 \x01(\x0e\x32\x08.MUL_SEX\"\x1c\n\x0bMulSetWiper\x12\r\n\x05round\x18\x01 \x01(\x05\"\x1e\n\x0bGetHeadlamp\x12\x0f\n\x07get_ids\x18\x01 \x01(\x05\"\xba\x01\n\x0bSetHeadlamp\x12\x0f\n\x07set_ids\x18\x01 \x01(\x05\x12\x17\n\x0flamp_power_ctrl\x18\x02 \x01(\x05\x12!\n\tlamp_ctrl\x18\x03 \x01(\x0e\x32\x0e.lamp_ctrl_sta\x12\x18\n\x10\x63trl_lamp_bright\x18\x04 \x01(\x08\x12\x13\n\x0blamp_bright\x18\x05 \x01(\x05\x12/\n\x10lamp_manual_ctrl\x18\x06 \x01(\x0e\x32\x15.lamp_manual_ctrl_sta\"-\n\nSetlamprsp\x12\x0f\n\x07set_ids\x18\x01 \x01(\x05\x12\x0e\n\x06result\x18\x02 \x01(\x05\"\x96\x01\n\nGetlamprsp\x12\x0f\n\x07get_ids\x18\x01 \x01(\x05\x12\x0e\n\x06result\x18\x02 \x01(\x05\x12!\n\tlamp_ctrl\x18\x03 \x01(\x0e\x32\x0e.lamp_ctrl_sta\x12\x13\n\x0blamp_bright\x18\x04 \x01(\x05\x12/\n\x10lamp_manual_ctrl\x18\x05 \x01(\x0e\x32\x15.lamp_manual_ctrl_sta\";\n\x0eMulSetWiperAck\x12)\n\nerror_code\x18\x01 \x01(\x0e\x32\x15.MUL_WIPER_ERROR_CODE\"\x1e\n\x0cMulSetEncode\x12\x0e\n\x06\x65ncode\x18\x01 \x01(\x08\"\xa5\x03\n\x06SocMul\x12!\n\tset_audio\x18\x01 \x01(\x0b\x32\x0c.MulSetAudioH\x00\x12!\n\taudio_cfg\x18\x02 \x01(\x0b\x32\x0c.MulAudioCfgH\x00\x12!\n\tset_video\x18\x03 \x01(\x0b\x32\x0c.MulSetVideoH\x00\x12(\n\rset_video_ack\x18\x04 \x01(\x0b\x32\x0f.MulSetVideoAckH\x00\x12!\n\tset_wiper\x18\x05 \x01(\x0b\x32\x0c.MulSetWiperH\x00\x12(\n\rset_wiper_ack\x18\x06 \x01(\x0b\x32\x0f.MulSetWiperAckH\x00\x12 \n\x08get_lamp\x18\x07 \x01(\x0b\x32\x0c.GetHeadlampH\x00\x12 \n\x08set_lamp\x18\x08 \x01(\x0b\x32\x0c.SetHeadlampH\x00\x12#\n\x0cset_lamp_rsp\x18\t \x01(\x0b\x32\x0b.SetlamprspH\x00\x12#\n\x0cget_lamp_rsp\x18\n \x01(\x0b\x32\x0b.GetlamprspH\x00\x12#\n\nreq_encode\x18\x0b \x01(\x0b\x32\r.MulSetEncodeH\x00\x42\x08\n\x06SubMul*\x83\x01\n\x0cMUL_LANGUAGE\x12\x0b\n\x07\x45NGLISH\x10\x00\x12\n\n\x06GERMAN\x10\x01\x12\n\n\x06\x46RENCH\x10\x02\x12\x0b\n\x07ITALIAN\x10\x03\x12\x0b\n\x07SPANISH\x10\x04\x12\x0e\n\nPORTUGUESE\x10\x05\x12\t\n\x05\x44UTCH\x10\x06\x12\x0b\n\x07SWEDISH\x10\x07\x12\x0c\n\x08NONE_LAN\x10\x08*+\n\x07MUL_SEX\x12\x07\n\x03MAN\x10\x00\x12\t\n\x05WOMAN\x10\x01\x12\x0c\n\x08NONE_SEX\x10\x02*=\n\x13MUL_CAMERA_POSITION\x12\x08\n\x04LEFT\x10\x00\x12\t\n\x05RIGHT\x10\x01\x12\x08\n\x04REAR\x10\x02\x12\x07\n\x03\x41LL\x10\x03*\x83\x01\n\x14MUL_VIDEO_ERROR_CODE\x12\x0b\n\x07SUCCESS\x10\x00\x12\x15\n\x11\x41\x43TIVATION_FAILED\x10\x01\x12\x19\n\x15NETWORK_NOT_AVAILABLE\x10\x02\x12\x19\n\x15\x43REATE_CHANNEL_FAILED\x10\x03\x12\x11\n\rPARAM_INVAILD\x10\x04*Q\n\x14MUL_WIPER_ERROR_CODE\x12\x0f\n\x0bSET_SUCCESS\x10\x00\x12\x0c\n\x08HW_ERROR\x10\x01\x12\x1a\n\x16NAVIGATION_WORK_FORBID\x10\x02*?\n\rlamp_ctrl_sta\x12\r\n\tpower_off\x10\x00\x12\x0c\n\x08power_on\x10\x01\x12\x11\n\rpower_ctrl_on\x10\x02*A\n\x14lamp_manual_ctrl_sta\x12\x14\n\x10manual_power_off\x10\x00\x12\x13\n\x0fmanual_power_on\x10\x01\x62\x06proto3')
|
|
17
17
|
|
|
18
18
|
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, globals())
|
|
19
19
|
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'pymammotion.proto.luba_mul_pb2', globals())
|
|
20
20
|
if _descriptor._USE_C_DESCRIPTORS == False:
|
|
21
21
|
|
|
22
22
|
DESCRIPTOR._options = None
|
|
23
|
-
_MUL_LANGUAGE._serialized_start=
|
|
24
|
-
_MUL_LANGUAGE._serialized_end=
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
23
|
+
_MUL_LANGUAGE._serialized_start=1346
|
|
24
|
+
_MUL_LANGUAGE._serialized_end=1477
|
|
25
|
+
_MUL_SEX._serialized_start=1479
|
|
26
|
+
_MUL_SEX._serialized_end=1522
|
|
27
|
+
_MUL_CAMERA_POSITION._serialized_start=1524
|
|
28
|
+
_MUL_CAMERA_POSITION._serialized_end=1585
|
|
29
|
+
_MUL_VIDEO_ERROR_CODE._serialized_start=1588
|
|
30
|
+
_MUL_VIDEO_ERROR_CODE._serialized_end=1719
|
|
31
|
+
_MUL_WIPER_ERROR_CODE._serialized_start=1721
|
|
32
|
+
_MUL_WIPER_ERROR_CODE._serialized_end=1802
|
|
33
|
+
_LAMP_CTRL_STA._serialized_start=1804
|
|
34
|
+
_LAMP_CTRL_STA._serialized_end=1867
|
|
35
|
+
_LAMP_MANUAL_CTRL_STA._serialized_start=1869
|
|
36
|
+
_LAMP_MANUAL_CTRL_STA._serialized_end=1934
|
|
31
37
|
_MULSETAUDIO._serialized_start=36
|
|
32
|
-
_MULSETAUDIO._serialized_end=
|
|
33
|
-
_MULSETVIDEO._serialized_start=
|
|
34
|
-
_MULSETVIDEO._serialized_end=
|
|
35
|
-
_MULSETVIDEOACK._serialized_start=
|
|
36
|
-
_MULSETVIDEOACK._serialized_end=
|
|
37
|
-
_MULAUDIOCFG._serialized_start=
|
|
38
|
-
_MULAUDIOCFG._serialized_end=
|
|
39
|
-
_MULSETWIPER._serialized_start=
|
|
40
|
-
_MULSETWIPER._serialized_end=
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
38
|
+
_MULSETAUDIO._serialized_end=147
|
|
39
|
+
_MULSETVIDEO._serialized_start=149
|
|
40
|
+
_MULSETVIDEO._serialized_end=221
|
|
41
|
+
_MULSETVIDEOACK._serialized_start=223
|
|
42
|
+
_MULSETVIDEOACK._serialized_end=282
|
|
43
|
+
_MULAUDIOCFG._serialized_start=284
|
|
44
|
+
_MULAUDIOCFG._serialized_end=375
|
|
45
|
+
_MULSETWIPER._serialized_start=377
|
|
46
|
+
_MULSETWIPER._serialized_end=405
|
|
47
|
+
_GETHEADLAMP._serialized_start=407
|
|
48
|
+
_GETHEADLAMP._serialized_end=437
|
|
49
|
+
_SETHEADLAMP._serialized_start=440
|
|
50
|
+
_SETHEADLAMP._serialized_end=626
|
|
51
|
+
_SETLAMPRSP._serialized_start=628
|
|
52
|
+
_SETLAMPRSP._serialized_end=673
|
|
53
|
+
_GETLAMPRSP._serialized_start=676
|
|
54
|
+
_GETLAMPRSP._serialized_end=826
|
|
55
|
+
_MULSETWIPERACK._serialized_start=828
|
|
56
|
+
_MULSETWIPERACK._serialized_end=887
|
|
57
|
+
_MULSETENCODE._serialized_start=889
|
|
58
|
+
_MULSETENCODE._serialized_end=919
|
|
59
|
+
_SOCMUL._serialized_start=922
|
|
60
|
+
_SOCMUL._serialized_end=1343
|
|
45
61
|
# @@protoc_insertion_point(module_scope)
|
|
@@ -5,36 +5,80 @@ from typing import ClassVar as _ClassVar, Mapping as _Mapping, Optional as _Opti
|
|
|
5
5
|
|
|
6
6
|
ACTIVATION_FAILED: MUL_VIDEO_ERROR_CODE
|
|
7
7
|
ALL: MUL_CAMERA_POSITION
|
|
8
|
-
CELLULAR_RESTRICTION: MUL_VIDEO_ERROR_CODE
|
|
9
8
|
CREATE_CHANNEL_FAILED: MUL_VIDEO_ERROR_CODE
|
|
10
9
|
DESCRIPTOR: _descriptor.FileDescriptor
|
|
10
|
+
DUTCH: MUL_LANGUAGE
|
|
11
11
|
ENGLISH: MUL_LANGUAGE
|
|
12
|
+
FRENCH: MUL_LANGUAGE
|
|
12
13
|
GERMAN: MUL_LANGUAGE
|
|
13
14
|
HW_ERROR: MUL_WIPER_ERROR_CODE
|
|
15
|
+
ITALIAN: MUL_LANGUAGE
|
|
14
16
|
LEFT: MUL_CAMERA_POSITION
|
|
17
|
+
MAN: MUL_SEX
|
|
15
18
|
NAVIGATION_WORK_FORBID: MUL_WIPER_ERROR_CODE
|
|
16
19
|
NETWORK_NOT_AVAILABLE: MUL_VIDEO_ERROR_CODE
|
|
20
|
+
NONE_LAN: MUL_LANGUAGE
|
|
21
|
+
NONE_SEX: MUL_SEX
|
|
17
22
|
PARAM_INVAILD: MUL_VIDEO_ERROR_CODE
|
|
23
|
+
PORTUGUESE: MUL_LANGUAGE
|
|
18
24
|
REAR: MUL_CAMERA_POSITION
|
|
19
25
|
RIGHT: MUL_CAMERA_POSITION
|
|
20
26
|
SET_SUCCESS: MUL_WIPER_ERROR_CODE
|
|
27
|
+
SPANISH: MUL_LANGUAGE
|
|
21
28
|
SUCCESS: MUL_VIDEO_ERROR_CODE
|
|
29
|
+
SWEDISH: MUL_LANGUAGE
|
|
30
|
+
WOMAN: MUL_SEX
|
|
31
|
+
manual_power_off: lamp_manual_ctrl_sta
|
|
32
|
+
manual_power_on: lamp_manual_ctrl_sta
|
|
33
|
+
power_ctrl_on: lamp_ctrl_sta
|
|
34
|
+
power_off: lamp_ctrl_sta
|
|
35
|
+
power_on: lamp_ctrl_sta
|
|
36
|
+
|
|
37
|
+
class GetHeadlamp(_message.Message):
|
|
38
|
+
__slots__ = ["get_ids"]
|
|
39
|
+
GET_IDS_FIELD_NUMBER: _ClassVar[int]
|
|
40
|
+
get_ids: int
|
|
41
|
+
def __init__(self, get_ids: _Optional[int] = ...) -> None: ...
|
|
42
|
+
|
|
43
|
+
class Getlamprsp(_message.Message):
|
|
44
|
+
__slots__ = ["get_ids", "lamp_bright", "lamp_ctrl", "lamp_manual_ctrl", "result"]
|
|
45
|
+
GET_IDS_FIELD_NUMBER: _ClassVar[int]
|
|
46
|
+
LAMP_BRIGHT_FIELD_NUMBER: _ClassVar[int]
|
|
47
|
+
LAMP_CTRL_FIELD_NUMBER: _ClassVar[int]
|
|
48
|
+
LAMP_MANUAL_CTRL_FIELD_NUMBER: _ClassVar[int]
|
|
49
|
+
RESULT_FIELD_NUMBER: _ClassVar[int]
|
|
50
|
+
get_ids: int
|
|
51
|
+
lamp_bright: int
|
|
52
|
+
lamp_ctrl: lamp_ctrl_sta
|
|
53
|
+
lamp_manual_ctrl: lamp_manual_ctrl_sta
|
|
54
|
+
result: int
|
|
55
|
+
def __init__(self, get_ids: _Optional[int] = ..., result: _Optional[int] = ..., lamp_ctrl: _Optional[_Union[lamp_ctrl_sta, str]] = ..., lamp_bright: _Optional[int] = ..., lamp_manual_ctrl: _Optional[_Union[lamp_manual_ctrl_sta, str]] = ...) -> None: ...
|
|
22
56
|
|
|
23
57
|
class MulAudioCfg(_message.Message):
|
|
24
|
-
__slots__ = ["au_language", "au_switch"]
|
|
58
|
+
__slots__ = ["au_language", "au_switch", "sex"]
|
|
25
59
|
AU_LANGUAGE_FIELD_NUMBER: _ClassVar[int]
|
|
26
60
|
AU_SWITCH_FIELD_NUMBER: _ClassVar[int]
|
|
61
|
+
SEX_FIELD_NUMBER: _ClassVar[int]
|
|
27
62
|
au_language: MUL_LANGUAGE
|
|
28
63
|
au_switch: int
|
|
29
|
-
|
|
64
|
+
sex: MUL_SEX
|
|
65
|
+
def __init__(self, au_switch: _Optional[int] = ..., au_language: _Optional[_Union[MUL_LANGUAGE, str]] = ..., sex: _Optional[_Union[MUL_SEX, str]] = ...) -> None: ...
|
|
30
66
|
|
|
31
67
|
class MulSetAudio(_message.Message):
|
|
32
|
-
__slots__ = ["at_switch", "au_language"]
|
|
68
|
+
__slots__ = ["at_switch", "au_language", "sex"]
|
|
33
69
|
AT_SWITCH_FIELD_NUMBER: _ClassVar[int]
|
|
34
70
|
AU_LANGUAGE_FIELD_NUMBER: _ClassVar[int]
|
|
71
|
+
SEX_FIELD_NUMBER: _ClassVar[int]
|
|
35
72
|
at_switch: int
|
|
36
73
|
au_language: MUL_LANGUAGE
|
|
37
|
-
|
|
74
|
+
sex: MUL_SEX
|
|
75
|
+
def __init__(self, at_switch: _Optional[int] = ..., au_language: _Optional[_Union[MUL_LANGUAGE, str]] = ..., sex: _Optional[_Union[MUL_SEX, str]] = ...) -> None: ...
|
|
76
|
+
|
|
77
|
+
class MulSetEncode(_message.Message):
|
|
78
|
+
__slots__ = ["encode"]
|
|
79
|
+
ENCODE_FIELD_NUMBER: _ClassVar[int]
|
|
80
|
+
encode: bool
|
|
81
|
+
def __init__(self, encode: bool = ...) -> None: ...
|
|
38
82
|
|
|
39
83
|
class MulSetVideo(_message.Message):
|
|
40
84
|
__slots__ = ["position", "vi_switch"]
|
|
@@ -62,25 +106,62 @@ class MulSetWiperAck(_message.Message):
|
|
|
62
106
|
error_code: MUL_WIPER_ERROR_CODE
|
|
63
107
|
def __init__(self, error_code: _Optional[_Union[MUL_WIPER_ERROR_CODE, str]] = ...) -> None: ...
|
|
64
108
|
|
|
109
|
+
class SetHeadlamp(_message.Message):
|
|
110
|
+
__slots__ = ["ctrl_lamp_bright", "lamp_bright", "lamp_ctrl", "lamp_manual_ctrl", "lamp_power_ctrl", "set_ids"]
|
|
111
|
+
CTRL_LAMP_BRIGHT_FIELD_NUMBER: _ClassVar[int]
|
|
112
|
+
LAMP_BRIGHT_FIELD_NUMBER: _ClassVar[int]
|
|
113
|
+
LAMP_CTRL_FIELD_NUMBER: _ClassVar[int]
|
|
114
|
+
LAMP_MANUAL_CTRL_FIELD_NUMBER: _ClassVar[int]
|
|
115
|
+
LAMP_POWER_CTRL_FIELD_NUMBER: _ClassVar[int]
|
|
116
|
+
SET_IDS_FIELD_NUMBER: _ClassVar[int]
|
|
117
|
+
ctrl_lamp_bright: bool
|
|
118
|
+
lamp_bright: int
|
|
119
|
+
lamp_ctrl: lamp_ctrl_sta
|
|
120
|
+
lamp_manual_ctrl: lamp_manual_ctrl_sta
|
|
121
|
+
lamp_power_ctrl: int
|
|
122
|
+
set_ids: int
|
|
123
|
+
def __init__(self, set_ids: _Optional[int] = ..., lamp_power_ctrl: _Optional[int] = ..., lamp_ctrl: _Optional[_Union[lamp_ctrl_sta, str]] = ..., ctrl_lamp_bright: bool = ..., lamp_bright: _Optional[int] = ..., lamp_manual_ctrl: _Optional[_Union[lamp_manual_ctrl_sta, str]] = ...) -> None: ...
|
|
124
|
+
|
|
125
|
+
class Setlamprsp(_message.Message):
|
|
126
|
+
__slots__ = ["result", "set_ids"]
|
|
127
|
+
RESULT_FIELD_NUMBER: _ClassVar[int]
|
|
128
|
+
SET_IDS_FIELD_NUMBER: _ClassVar[int]
|
|
129
|
+
result: int
|
|
130
|
+
set_ids: int
|
|
131
|
+
def __init__(self, set_ids: _Optional[int] = ..., result: _Optional[int] = ...) -> None: ...
|
|
132
|
+
|
|
65
133
|
class SocMul(_message.Message):
|
|
66
|
-
__slots__ = ["audio_cfg", "set_audio", "set_video", "set_video_ack", "set_wiper", "set_wiper_ack"]
|
|
134
|
+
__slots__ = ["audio_cfg", "get_lamp", "get_lamp_rsp", "req_encode", "set_audio", "set_lamp", "set_lamp_rsp", "set_video", "set_video_ack", "set_wiper", "set_wiper_ack"]
|
|
67
135
|
AUDIO_CFG_FIELD_NUMBER: _ClassVar[int]
|
|
136
|
+
GET_LAMP_FIELD_NUMBER: _ClassVar[int]
|
|
137
|
+
GET_LAMP_RSP_FIELD_NUMBER: _ClassVar[int]
|
|
138
|
+
REQ_ENCODE_FIELD_NUMBER: _ClassVar[int]
|
|
68
139
|
SET_AUDIO_FIELD_NUMBER: _ClassVar[int]
|
|
140
|
+
SET_LAMP_FIELD_NUMBER: _ClassVar[int]
|
|
141
|
+
SET_LAMP_RSP_FIELD_NUMBER: _ClassVar[int]
|
|
69
142
|
SET_VIDEO_ACK_FIELD_NUMBER: _ClassVar[int]
|
|
70
143
|
SET_VIDEO_FIELD_NUMBER: _ClassVar[int]
|
|
71
144
|
SET_WIPER_ACK_FIELD_NUMBER: _ClassVar[int]
|
|
72
145
|
SET_WIPER_FIELD_NUMBER: _ClassVar[int]
|
|
73
146
|
audio_cfg: MulAudioCfg
|
|
147
|
+
get_lamp: GetHeadlamp
|
|
148
|
+
get_lamp_rsp: Getlamprsp
|
|
149
|
+
req_encode: MulSetEncode
|
|
74
150
|
set_audio: MulSetAudio
|
|
151
|
+
set_lamp: SetHeadlamp
|
|
152
|
+
set_lamp_rsp: Setlamprsp
|
|
75
153
|
set_video: MulSetVideo
|
|
76
154
|
set_video_ack: MulSetVideoAck
|
|
77
155
|
set_wiper: MulSetWiper
|
|
78
156
|
set_wiper_ack: MulSetWiperAck
|
|
79
|
-
def __init__(self, set_audio: _Optional[_Union[MulSetAudio, _Mapping]] = ..., audio_cfg: _Optional[_Union[MulAudioCfg, _Mapping]] = ..., set_video: _Optional[_Union[MulSetVideo, _Mapping]] = ..., set_video_ack: _Optional[_Union[MulSetVideoAck, _Mapping]] = ..., set_wiper: _Optional[_Union[MulSetWiper, _Mapping]] = ..., set_wiper_ack: _Optional[_Union[MulSetWiperAck, _Mapping]] = ...) -> None: ...
|
|
157
|
+
def __init__(self, set_audio: _Optional[_Union[MulSetAudio, _Mapping]] = ..., audio_cfg: _Optional[_Union[MulAudioCfg, _Mapping]] = ..., set_video: _Optional[_Union[MulSetVideo, _Mapping]] = ..., set_video_ack: _Optional[_Union[MulSetVideoAck, _Mapping]] = ..., set_wiper: _Optional[_Union[MulSetWiper, _Mapping]] = ..., set_wiper_ack: _Optional[_Union[MulSetWiperAck, _Mapping]] = ..., get_lamp: _Optional[_Union[GetHeadlamp, _Mapping]] = ..., set_lamp: _Optional[_Union[SetHeadlamp, _Mapping]] = ..., set_lamp_rsp: _Optional[_Union[Setlamprsp, _Mapping]] = ..., get_lamp_rsp: _Optional[_Union[Getlamprsp, _Mapping]] = ..., req_encode: _Optional[_Union[MulSetEncode, _Mapping]] = ...) -> None: ...
|
|
80
158
|
|
|
81
159
|
class MUL_LANGUAGE(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
|
|
82
160
|
__slots__ = []
|
|
83
161
|
|
|
162
|
+
class MUL_SEX(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
|
|
163
|
+
__slots__ = []
|
|
164
|
+
|
|
84
165
|
class MUL_CAMERA_POSITION(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
|
|
85
166
|
__slots__ = []
|
|
86
167
|
|
|
@@ -89,3 +170,9 @@ class MUL_VIDEO_ERROR_CODE(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
|
|
|
89
170
|
|
|
90
171
|
class MUL_WIPER_ERROR_CODE(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
|
|
91
172
|
__slots__ = []
|
|
173
|
+
|
|
174
|
+
class lamp_ctrl_sta(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
|
|
175
|
+
__slots__ = []
|
|
176
|
+
|
|
177
|
+
class lamp_manual_ctrl_sta(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
|
|
178
|
+
__slots__ = []
|
|
@@ -1,5 +1,25 @@
|
|
|
1
1
|
syntax = "proto3";
|
|
2
2
|
|
|
3
|
+
enum CutterWorkMode {
|
|
4
|
+
CUTTER_STANDARD = 0;
|
|
5
|
+
CUTTER_ECONOMIC = 1;
|
|
6
|
+
CUTTER_PERFORMANCE = 2;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
enum CollectMotorState {
|
|
10
|
+
COLLECT_CLOSE = 0;
|
|
11
|
+
COLLECT_OPEN = 1;
|
|
12
|
+
COLLECT_STUCK = 2;
|
|
13
|
+
COLLECT_ABNORMAL = 3;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
enum UnloadMotorState {
|
|
17
|
+
UNLOAD_CLOSE = 0;
|
|
18
|
+
UNLOAD_OPEN = 1;
|
|
19
|
+
UNLOAD_STOP = 2;
|
|
20
|
+
UNLOAD_RUNNING = 3;
|
|
21
|
+
}
|
|
22
|
+
|
|
3
23
|
message DrvMotionCtrl {
|
|
4
24
|
int32 setLinearSpeed = 1;
|
|
5
25
|
int32 setAngularSpeed = 2;
|
|
@@ -20,15 +40,21 @@ message DrvKnifeStatus {
|
|
|
20
40
|
|
|
21
41
|
message DrvKnifeChangeReport {
|
|
22
42
|
int32 is_start = 1;
|
|
23
|
-
int32
|
|
24
|
-
int32
|
|
43
|
+
int32 start_height = 2;
|
|
44
|
+
int32 end_height = 3;
|
|
45
|
+
int32 cur_height = 4;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
message DrvCollectCtrlByHand {
|
|
49
|
+
int32 collect_ctrl = 1;
|
|
50
|
+
int32 unload_ctrl = 2;
|
|
25
51
|
}
|
|
26
52
|
|
|
27
53
|
message DrvMowCtrlByHand {
|
|
28
54
|
int32 main_ctrl = 1;
|
|
29
55
|
int32 cut_knife_ctrl = 2;
|
|
30
56
|
int32 cut_knife_height = 3;
|
|
31
|
-
float
|
|
57
|
+
float max_run_speed = 4;
|
|
32
58
|
}
|
|
33
59
|
|
|
34
60
|
message rtk_cfg_req_t {
|
|
@@ -50,6 +76,17 @@ message rtk_sys_mask_query_ack_t {
|
|
|
50
76
|
repeated uint32 system_mask_bits = 2;
|
|
51
77
|
}
|
|
52
78
|
|
|
79
|
+
message AppSetCutterWorkMode {
|
|
80
|
+
int32 CutterMode = 1;
|
|
81
|
+
int32 SetResult = 2;
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
message AppGetCutterWorkMode {
|
|
85
|
+
int32 current_cutter_mode = 1;
|
|
86
|
+
int32 current_cutter_rpm = 2;
|
|
87
|
+
int32 QueryResult = 3;
|
|
88
|
+
}
|
|
89
|
+
|
|
53
90
|
message MctlDriver {
|
|
54
91
|
oneof SubDrvMsg {
|
|
55
92
|
DrvMotionCtrl todev_devmotion_ctrl = 1;
|
|
@@ -63,5 +100,8 @@ message MctlDriver {
|
|
|
63
100
|
rtk_sys_mask_query_t rtk_sys_mask_query = 9;
|
|
64
101
|
rtk_sys_mask_query_ack_t rtk_sys_mask_query_ack = 10;
|
|
65
102
|
DrvKnifeChangeReport toapp_knife_status_change = 11;
|
|
103
|
+
DrvCollectCtrlByHand collect_ctrl_by_hand = 12;
|
|
104
|
+
AppSetCutterWorkMode cutter_mode_ctrl_by_hand = 13;
|
|
105
|
+
AppGetCutterWorkMode current_cutter_mode = 14;
|
|
66
106
|
}
|
|
67
|
-
}
|
|
107
|
+
}
|
|
@@ -13,13 +13,19 @@ _sym_db = _symbol_database.Default()
|
|
|
13
13
|
|
|
14
14
|
|
|
15
15
|
|
|
16
|
-
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n$pymammotion/proto/mctrl_driver.proto\"@\n\rDrvMotionCtrl\x12\x16\n\x0esetLinearSpeed\x18\x01 \x01(\x05\x12\x17\n\x0fsetAngularSpeed\x18\x02 \x01(\x05\"%\n\x0e\x44rvKnifeHeight\x12\x13\n\x0bknifeHeight\x18\x01 \x01(\x05\"\'\n\nDrvSrSpeed\x12\n\n\x02rw\x18\x01 \x01(\x05\x12\r\n\x05speed\x18\x02 \x01(\x02\"&\n\x0e\x44rvKnifeStatus\x12\x14\n\x0cknife_status\x18\x01 \x01(\x05\"
|
|
16
|
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n$pymammotion/proto/mctrl_driver.proto\"@\n\rDrvMotionCtrl\x12\x16\n\x0esetLinearSpeed\x18\x01 \x01(\x05\x12\x17\n\x0fsetAngularSpeed\x18\x02 \x01(\x05\"%\n\x0e\x44rvKnifeHeight\x12\x13\n\x0bknifeHeight\x18\x01 \x01(\x05\"\'\n\nDrvSrSpeed\x12\n\n\x02rw\x18\x01 \x01(\x05\x12\r\n\x05speed\x18\x02 \x01(\x02\"&\n\x0e\x44rvKnifeStatus\x12\x14\n\x0cknife_status\x18\x01 \x01(\x05\"f\n\x14\x44rvKnifeChangeReport\x12\x10\n\x08is_start\x18\x01 \x01(\x05\x12\x14\n\x0cstart_height\x18\x02 \x01(\x05\x12\x12\n\nend_height\x18\x03 \x01(\x05\x12\x12\n\ncur_height\x18\x04 \x01(\x05\"A\n\x14\x44rvCollectCtrlByHand\x12\x14\n\x0c\x63ollect_ctrl\x18\x01 \x01(\x05\x12\x13\n\x0bunload_ctrl\x18\x02 \x01(\x05\"n\n\x10\x44rvMowCtrlByHand\x12\x11\n\tmain_ctrl\x18\x01 \x01(\x05\x12\x16\n\x0e\x63ut_knife_ctrl\x18\x02 \x01(\x05\x12\x18\n\x10\x63ut_knife_height\x18\x03 \x01(\x05\x12\x15\n\rmax_run_speed\x18\x04 \x01(\x02\"4\n\rrtk_cfg_req_t\x12\x12\n\ncmd_length\x18\x01 \x01(\x05\x12\x0f\n\x07\x63md_req\x18\x02 \x01(\t\"=\n\x11rtk_cfg_req_ack_t\x12\x12\n\ncmd_length\x18\x01 \x01(\x05\x12\x14\n\x0c\x63md_response\x18\x02 \x01(\t\"*\n\x14rtk_sys_mask_query_t\x12\x12\n\nsat_system\x18\x01 \x01(\r\"H\n\x18rtk_sys_mask_query_ack_t\x12\x12\n\nsat_system\x18\x01 \x01(\r\x12\x18\n\x10system_mask_bits\x18\x02 \x03(\r\"=\n\x14\x41ppSetCutterWorkMode\x12\x12\n\nCutterMode\x18\x01 \x01(\x05\x12\x11\n\tSetResult\x18\x02 \x01(\x05\"d\n\x14\x41ppGetCutterWorkMode\x12\x1b\n\x13\x63urrent_cutter_mode\x18\x01 \x01(\x05\x12\x1a\n\x12\x63urrent_cutter_rpm\x18\x02 \x01(\x05\x12\x13\n\x0bQueryResult\x18\x03 \x01(\x05\"\xeb\x05\n\nMctlDriver\x12.\n\x14todev_devmotion_ctrl\x18\x01 \x01(\x0b\x32\x0e.DrvMotionCtrlH\x00\x12\x31\n\x16todev_knife_height_set\x18\x02 \x01(\x0b\x32\x0f.DrvKnifeHeightH\x00\x12,\n\x15\x62idire_speed_read_set\x18\x03 \x01(\x0b\x32\x0b.DrvSrSpeedH\x00\x12\x35\n\x1a\x62idire_knife_height_report\x18\x04 \x01(\x0b\x32\x0f.DrvKnifeHeightH\x00\x12-\n\x12toapp_knife_status\x18\x05 \x01(\x0b\x32\x0f.DrvKnifeStatusH\x00\x12-\n\x10mow_ctrl_by_hand\x18\x06 \x01(\x0b\x32\x11.DrvMowCtrlByHandH\x00\x12%\n\x0brtk_cfg_req\x18\x07 \x01(\x0b\x32\x0e.rtk_cfg_req_tH\x00\x12-\n\x0frtk_cfg_req_ack\x18\x08 \x01(\x0b\x32\x12.rtk_cfg_req_ack_tH\x00\x12\x33\n\x12rtk_sys_mask_query\x18\t \x01(\x0b\x32\x15.rtk_sys_mask_query_tH\x00\x12;\n\x16rtk_sys_mask_query_ack\x18\n \x01(\x0b\x32\x19.rtk_sys_mask_query_ack_tH\x00\x12:\n\x19toapp_knife_status_change\x18\x0b \x01(\x0b\x32\x15.DrvKnifeChangeReportH\x00\x12\x35\n\x14\x63ollect_ctrl_by_hand\x18\x0c \x01(\x0b\x32\x15.DrvCollectCtrlByHandH\x00\x12\x39\n\x18\x63utter_mode_ctrl_by_hand\x18\r \x01(\x0b\x32\x15.AppSetCutterWorkModeH\x00\x12\x34\n\x13\x63urrent_cutter_mode\x18\x0e \x01(\x0b\x32\x15.AppGetCutterWorkModeH\x00\x42\x0b\n\tSubDrvMsg*R\n\x0e\x43utterWorkMode\x12\x13\n\x0f\x43UTTER_STANDARD\x10\x00\x12\x13\n\x0f\x43UTTER_ECONOMIC\x10\x01\x12\x16\n\x12\x43UTTER_PERFORMANCE\x10\x02*a\n\x11\x43ollectMotorState\x12\x11\n\rCOLLECT_CLOSE\x10\x00\x12\x10\n\x0c\x43OLLECT_OPEN\x10\x01\x12\x11\n\rCOLLECT_STUCK\x10\x02\x12\x14\n\x10\x43OLLECT_ABNORMAL\x10\x03*Z\n\x10UnloadMotorState\x12\x10\n\x0cUNLOAD_CLOSE\x10\x00\x12\x0f\n\x0bUNLOAD_OPEN\x10\x01\x12\x0f\n\x0bUNLOAD_STOP\x10\x02\x12\x12\n\x0eUNLOAD_RUNNING\x10\x03\x62\x06proto3')
|
|
17
17
|
|
|
18
18
|
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, globals())
|
|
19
19
|
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'pymammotion.proto.mctrl_driver_pb2', globals())
|
|
20
20
|
if _descriptor._USE_C_DESCRIPTORS == False:
|
|
21
21
|
|
|
22
22
|
DESCRIPTOR._options = None
|
|
23
|
+
_CUTTERWORKMODE._serialized_start=1659
|
|
24
|
+
_CUTTERWORKMODE._serialized_end=1741
|
|
25
|
+
_COLLECTMOTORSTATE._serialized_start=1743
|
|
26
|
+
_COLLECTMOTORSTATE._serialized_end=1840
|
|
27
|
+
_UNLOADMOTORSTATE._serialized_start=1842
|
|
28
|
+
_UNLOADMOTORSTATE._serialized_end=1932
|
|
23
29
|
_DRVMOTIONCTRL._serialized_start=40
|
|
24
30
|
_DRVMOTIONCTRL._serialized_end=104
|
|
25
31
|
_DRVKNIFEHEIGHT._serialized_start=106
|
|
@@ -29,17 +35,23 @@ if _descriptor._USE_C_DESCRIPTORS == False:
|
|
|
29
35
|
_DRVKNIFESTATUS._serialized_start=186
|
|
30
36
|
_DRVKNIFESTATUS._serialized_end=224
|
|
31
37
|
_DRVKNIFECHANGEREPORT._serialized_start=226
|
|
32
|
-
_DRVKNIFECHANGEREPORT._serialized_end=
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
38
|
+
_DRVKNIFECHANGEREPORT._serialized_end=328
|
|
39
|
+
_DRVCOLLECTCTRLBYHAND._serialized_start=330
|
|
40
|
+
_DRVCOLLECTCTRLBYHAND._serialized_end=395
|
|
41
|
+
_DRVMOWCTRLBYHAND._serialized_start=397
|
|
42
|
+
_DRVMOWCTRLBYHAND._serialized_end=507
|
|
43
|
+
_RTK_CFG_REQ_T._serialized_start=509
|
|
44
|
+
_RTK_CFG_REQ_T._serialized_end=561
|
|
45
|
+
_RTK_CFG_REQ_ACK_T._serialized_start=563
|
|
46
|
+
_RTK_CFG_REQ_ACK_T._serialized_end=624
|
|
47
|
+
_RTK_SYS_MASK_QUERY_T._serialized_start=626
|
|
48
|
+
_RTK_SYS_MASK_QUERY_T._serialized_end=668
|
|
49
|
+
_RTK_SYS_MASK_QUERY_ACK_T._serialized_start=670
|
|
50
|
+
_RTK_SYS_MASK_QUERY_ACK_T._serialized_end=742
|
|
51
|
+
_APPSETCUTTERWORKMODE._serialized_start=744
|
|
52
|
+
_APPSETCUTTERWORKMODE._serialized_end=805
|
|
53
|
+
_APPGETCUTTERWORKMODE._serialized_start=807
|
|
54
|
+
_APPGETCUTTERWORKMODE._serialized_end=907
|
|
55
|
+
_MCTLDRIVER._serialized_start=910
|
|
56
|
+
_MCTLDRIVER._serialized_end=1657
|
|
45
57
|
# @@protoc_insertion_point(module_scope)
|
|
@@ -1,19 +1,59 @@
|
|
|
1
1
|
from google.protobuf.internal import containers as _containers
|
|
2
|
+
from google.protobuf.internal import enum_type_wrapper as _enum_type_wrapper
|
|
2
3
|
from google.protobuf import descriptor as _descriptor
|
|
3
4
|
from google.protobuf import message as _message
|
|
4
5
|
from typing import ClassVar as _ClassVar, Iterable as _Iterable, Mapping as _Mapping, Optional as _Optional, Union as _Union
|
|
5
6
|
|
|
7
|
+
COLLECT_ABNORMAL: CollectMotorState
|
|
8
|
+
COLLECT_CLOSE: CollectMotorState
|
|
9
|
+
COLLECT_OPEN: CollectMotorState
|
|
10
|
+
COLLECT_STUCK: CollectMotorState
|
|
11
|
+
CUTTER_ECONOMIC: CutterWorkMode
|
|
12
|
+
CUTTER_PERFORMANCE: CutterWorkMode
|
|
13
|
+
CUTTER_STANDARD: CutterWorkMode
|
|
6
14
|
DESCRIPTOR: _descriptor.FileDescriptor
|
|
15
|
+
UNLOAD_CLOSE: UnloadMotorState
|
|
16
|
+
UNLOAD_OPEN: UnloadMotorState
|
|
17
|
+
UNLOAD_RUNNING: UnloadMotorState
|
|
18
|
+
UNLOAD_STOP: UnloadMotorState
|
|
19
|
+
|
|
20
|
+
class AppGetCutterWorkMode(_message.Message):
|
|
21
|
+
__slots__ = ["QueryResult", "current_cutter_mode", "current_cutter_rpm"]
|
|
22
|
+
CURRENT_CUTTER_MODE_FIELD_NUMBER: _ClassVar[int]
|
|
23
|
+
CURRENT_CUTTER_RPM_FIELD_NUMBER: _ClassVar[int]
|
|
24
|
+
QUERYRESULT_FIELD_NUMBER: _ClassVar[int]
|
|
25
|
+
QueryResult: int
|
|
26
|
+
current_cutter_mode: int
|
|
27
|
+
current_cutter_rpm: int
|
|
28
|
+
def __init__(self, current_cutter_mode: _Optional[int] = ..., current_cutter_rpm: _Optional[int] = ..., QueryResult: _Optional[int] = ...) -> None: ...
|
|
29
|
+
|
|
30
|
+
class AppSetCutterWorkMode(_message.Message):
|
|
31
|
+
__slots__ = ["CutterMode", "SetResult"]
|
|
32
|
+
CUTTERMODE_FIELD_NUMBER: _ClassVar[int]
|
|
33
|
+
CutterMode: int
|
|
34
|
+
SETRESULT_FIELD_NUMBER: _ClassVar[int]
|
|
35
|
+
SetResult: int
|
|
36
|
+
def __init__(self, CutterMode: _Optional[int] = ..., SetResult: _Optional[int] = ...) -> None: ...
|
|
37
|
+
|
|
38
|
+
class DrvCollectCtrlByHand(_message.Message):
|
|
39
|
+
__slots__ = ["collect_ctrl", "unload_ctrl"]
|
|
40
|
+
COLLECT_CTRL_FIELD_NUMBER: _ClassVar[int]
|
|
41
|
+
UNLOAD_CTRL_FIELD_NUMBER: _ClassVar[int]
|
|
42
|
+
collect_ctrl: int
|
|
43
|
+
unload_ctrl: int
|
|
44
|
+
def __init__(self, collect_ctrl: _Optional[int] = ..., unload_ctrl: _Optional[int] = ...) -> None: ...
|
|
7
45
|
|
|
8
46
|
class DrvKnifeChangeReport(_message.Message):
|
|
9
|
-
__slots__ = ["
|
|
10
|
-
|
|
47
|
+
__slots__ = ["cur_height", "end_height", "is_start", "start_height"]
|
|
48
|
+
CUR_HEIGHT_FIELD_NUMBER: _ClassVar[int]
|
|
49
|
+
END_HEIGHT_FIELD_NUMBER: _ClassVar[int]
|
|
11
50
|
IS_START_FIELD_NUMBER: _ClassVar[int]
|
|
12
|
-
|
|
13
|
-
|
|
51
|
+
START_HEIGHT_FIELD_NUMBER: _ClassVar[int]
|
|
52
|
+
cur_height: int
|
|
53
|
+
end_height: int
|
|
14
54
|
is_start: int
|
|
15
|
-
|
|
16
|
-
def __init__(self, is_start: _Optional[int] = ...,
|
|
55
|
+
start_height: int
|
|
56
|
+
def __init__(self, is_start: _Optional[int] = ..., start_height: _Optional[int] = ..., end_height: _Optional[int] = ..., cur_height: _Optional[int] = ...) -> None: ...
|
|
17
57
|
|
|
18
58
|
class DrvKnifeHeight(_message.Message):
|
|
19
59
|
__slots__ = ["knifeHeight"]
|
|
@@ -36,7 +76,7 @@ class DrvMotionCtrl(_message.Message):
|
|
|
36
76
|
def __init__(self, setLinearSpeed: _Optional[int] = ..., setAngularSpeed: _Optional[int] = ...) -> None: ...
|
|
37
77
|
|
|
38
78
|
class DrvMowCtrlByHand(_message.Message):
|
|
39
|
-
__slots__ = ["cut_knife_ctrl", "cut_knife_height", "main_ctrl", "
|
|
79
|
+
__slots__ = ["cut_knife_ctrl", "cut_knife_height", "main_ctrl", "max_run_speed"]
|
|
40
80
|
CUT_KNIFE_CTRL_FIELD_NUMBER: _ClassVar[int]
|
|
41
81
|
CUT_KNIFE_HEIGHT_FIELD_NUMBER: _ClassVar[int]
|
|
42
82
|
MAIN_CTRL_FIELD_NUMBER: _ClassVar[int]
|
|
@@ -44,8 +84,8 @@ class DrvMowCtrlByHand(_message.Message):
|
|
|
44
84
|
cut_knife_ctrl: int
|
|
45
85
|
cut_knife_height: int
|
|
46
86
|
main_ctrl: int
|
|
47
|
-
|
|
48
|
-
def __init__(self, main_ctrl: _Optional[int] = ..., cut_knife_ctrl: _Optional[int] = ..., cut_knife_height: _Optional[int] = ...,
|
|
87
|
+
max_run_speed: float
|
|
88
|
+
def __init__(self, main_ctrl: _Optional[int] = ..., cut_knife_ctrl: _Optional[int] = ..., cut_knife_height: _Optional[int] = ..., max_run_speed: _Optional[float] = ...) -> None: ...
|
|
49
89
|
|
|
50
90
|
class DrvSrSpeed(_message.Message):
|
|
51
91
|
__slots__ = ["rw", "speed"]
|
|
@@ -56,9 +96,12 @@ class DrvSrSpeed(_message.Message):
|
|
|
56
96
|
def __init__(self, rw: _Optional[int] = ..., speed: _Optional[float] = ...) -> None: ...
|
|
57
97
|
|
|
58
98
|
class MctlDriver(_message.Message):
|
|
59
|
-
__slots__ = ["bidire_knife_height_report", "bidire_speed_read_set", "mow_ctrl_by_hand", "rtk_cfg_req", "rtk_cfg_req_ack", "rtk_sys_mask_query", "rtk_sys_mask_query_ack", "toapp_knife_status", "toapp_knife_status_change", "todev_devmotion_ctrl", "todev_knife_height_set"]
|
|
99
|
+
__slots__ = ["bidire_knife_height_report", "bidire_speed_read_set", "collect_ctrl_by_hand", "current_cutter_mode", "cutter_mode_ctrl_by_hand", "mow_ctrl_by_hand", "rtk_cfg_req", "rtk_cfg_req_ack", "rtk_sys_mask_query", "rtk_sys_mask_query_ack", "toapp_knife_status", "toapp_knife_status_change", "todev_devmotion_ctrl", "todev_knife_height_set"]
|
|
60
100
|
BIDIRE_KNIFE_HEIGHT_REPORT_FIELD_NUMBER: _ClassVar[int]
|
|
61
101
|
BIDIRE_SPEED_READ_SET_FIELD_NUMBER: _ClassVar[int]
|
|
102
|
+
COLLECT_CTRL_BY_HAND_FIELD_NUMBER: _ClassVar[int]
|
|
103
|
+
CURRENT_CUTTER_MODE_FIELD_NUMBER: _ClassVar[int]
|
|
104
|
+
CUTTER_MODE_CTRL_BY_HAND_FIELD_NUMBER: _ClassVar[int]
|
|
62
105
|
MOW_CTRL_BY_HAND_FIELD_NUMBER: _ClassVar[int]
|
|
63
106
|
RTK_CFG_REQ_ACK_FIELD_NUMBER: _ClassVar[int]
|
|
64
107
|
RTK_CFG_REQ_FIELD_NUMBER: _ClassVar[int]
|
|
@@ -70,6 +113,9 @@ class MctlDriver(_message.Message):
|
|
|
70
113
|
TODEV_KNIFE_HEIGHT_SET_FIELD_NUMBER: _ClassVar[int]
|
|
71
114
|
bidire_knife_height_report: DrvKnifeHeight
|
|
72
115
|
bidire_speed_read_set: DrvSrSpeed
|
|
116
|
+
collect_ctrl_by_hand: DrvCollectCtrlByHand
|
|
117
|
+
current_cutter_mode: AppGetCutterWorkMode
|
|
118
|
+
cutter_mode_ctrl_by_hand: AppSetCutterWorkMode
|
|
73
119
|
mow_ctrl_by_hand: DrvMowCtrlByHand
|
|
74
120
|
rtk_cfg_req: rtk_cfg_req_t
|
|
75
121
|
rtk_cfg_req_ack: rtk_cfg_req_ack_t
|
|
@@ -79,7 +125,7 @@ class MctlDriver(_message.Message):
|
|
|
79
125
|
toapp_knife_status_change: DrvKnifeChangeReport
|
|
80
126
|
todev_devmotion_ctrl: DrvMotionCtrl
|
|
81
127
|
todev_knife_height_set: DrvKnifeHeight
|
|
82
|
-
def __init__(self, todev_devmotion_ctrl: _Optional[_Union[DrvMotionCtrl, _Mapping]] = ..., todev_knife_height_set: _Optional[_Union[DrvKnifeHeight, _Mapping]] = ..., bidire_speed_read_set: _Optional[_Union[DrvSrSpeed, _Mapping]] = ..., bidire_knife_height_report: _Optional[_Union[DrvKnifeHeight, _Mapping]] = ..., toapp_knife_status: _Optional[_Union[DrvKnifeStatus, _Mapping]] = ..., mow_ctrl_by_hand: _Optional[_Union[DrvMowCtrlByHand, _Mapping]] = ..., rtk_cfg_req: _Optional[_Union[rtk_cfg_req_t, _Mapping]] = ..., rtk_cfg_req_ack: _Optional[_Union[rtk_cfg_req_ack_t, _Mapping]] = ..., rtk_sys_mask_query: _Optional[_Union[rtk_sys_mask_query_t, _Mapping]] = ..., rtk_sys_mask_query_ack: _Optional[_Union[rtk_sys_mask_query_ack_t, _Mapping]] = ..., toapp_knife_status_change: _Optional[_Union[DrvKnifeChangeReport, _Mapping]] = ...) -> None: ...
|
|
128
|
+
def __init__(self, todev_devmotion_ctrl: _Optional[_Union[DrvMotionCtrl, _Mapping]] = ..., todev_knife_height_set: _Optional[_Union[DrvKnifeHeight, _Mapping]] = ..., bidire_speed_read_set: _Optional[_Union[DrvSrSpeed, _Mapping]] = ..., bidire_knife_height_report: _Optional[_Union[DrvKnifeHeight, _Mapping]] = ..., toapp_knife_status: _Optional[_Union[DrvKnifeStatus, _Mapping]] = ..., mow_ctrl_by_hand: _Optional[_Union[DrvMowCtrlByHand, _Mapping]] = ..., rtk_cfg_req: _Optional[_Union[rtk_cfg_req_t, _Mapping]] = ..., rtk_cfg_req_ack: _Optional[_Union[rtk_cfg_req_ack_t, _Mapping]] = ..., rtk_sys_mask_query: _Optional[_Union[rtk_sys_mask_query_t, _Mapping]] = ..., rtk_sys_mask_query_ack: _Optional[_Union[rtk_sys_mask_query_ack_t, _Mapping]] = ..., toapp_knife_status_change: _Optional[_Union[DrvKnifeChangeReport, _Mapping]] = ..., collect_ctrl_by_hand: _Optional[_Union[DrvCollectCtrlByHand, _Mapping]] = ..., cutter_mode_ctrl_by_hand: _Optional[_Union[AppSetCutterWorkMode, _Mapping]] = ..., current_cutter_mode: _Optional[_Union[AppGetCutterWorkMode, _Mapping]] = ...) -> None: ...
|
|
83
129
|
|
|
84
130
|
class rtk_cfg_req_ack_t(_message.Message):
|
|
85
131
|
__slots__ = ["cmd_length", "cmd_response"]
|
|
@@ -110,3 +156,12 @@ class rtk_sys_mask_query_t(_message.Message):
|
|
|
110
156
|
SAT_SYSTEM_FIELD_NUMBER: _ClassVar[int]
|
|
111
157
|
sat_system: int
|
|
112
158
|
def __init__(self, sat_system: _Optional[int] = ...) -> None: ...
|
|
159
|
+
|
|
160
|
+
class CutterWorkMode(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
|
|
161
|
+
__slots__ = []
|
|
162
|
+
|
|
163
|
+
class CollectMotorState(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
|
|
164
|
+
__slots__ = []
|
|
165
|
+
|
|
166
|
+
class UnloadMotorState(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
|
|
167
|
+
__slots__ = []
|