pymammotion 0.5.69__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.
Files changed (154) hide show
  1. pymammotion/__init__.py +53 -0
  2. pymammotion/agora/__init__.py +0 -0
  3. pymammotion/agora/agora_api.py +755 -0
  4. pymammotion/agora/agora_rtc_capabilities.py +748 -0
  5. pymammotion/agora/agora_websockets.py +1175 -0
  6. pymammotion/aliyun/__init__.py +1 -0
  7. pymammotion/aliyun/client.py +235 -0
  8. pymammotion/aliyun/cloud_gateway.py +982 -0
  9. pymammotion/aliyun/model/aep_response.py +21 -0
  10. pymammotion/aliyun/model/connect_response.py +51 -0
  11. pymammotion/aliyun/model/dev_by_account_response.py +195 -0
  12. pymammotion/aliyun/model/login_by_oauth_response.py +64 -0
  13. pymammotion/aliyun/model/regions_response.py +29 -0
  14. pymammotion/aliyun/model/session_by_authcode_response.py +19 -0
  15. pymammotion/aliyun/model/thing_response.py +12 -0
  16. pymammotion/aliyun/regions.py +62 -0
  17. pymammotion/aliyun/tea/core.py +297 -0
  18. pymammotion/aliyun/tmp_constant.py +171 -0
  19. pymammotion/bluetooth/__init__.py +1 -0
  20. pymammotion/bluetooth/ble.py +62 -0
  21. pymammotion/bluetooth/ble_message.py +676 -0
  22. pymammotion/bluetooth/const.py +27 -0
  23. pymammotion/bluetooth/data/__init__.py +0 -0
  24. pymammotion/bluetooth/data/convert.py +25 -0
  25. pymammotion/bluetooth/data/framectrldata.py +40 -0
  26. pymammotion/bluetooth/data/notifydata.py +62 -0
  27. pymammotion/bluetooth/model/__init__.py +0 -0
  28. pymammotion/bluetooth/model/atomic_integer.py +54 -0
  29. pymammotion/const.py +13 -0
  30. pymammotion/data/__init__.py +0 -0
  31. pymammotion/data/model/__init__.py +8 -0
  32. pymammotion/data/model/account.py +8 -0
  33. pymammotion/data/model/device.py +192 -0
  34. pymammotion/data/model/device_config.py +72 -0
  35. pymammotion/data/model/device_info.py +60 -0
  36. pymammotion/data/model/device_limits.py +49 -0
  37. pymammotion/data/model/enums.py +77 -0
  38. pymammotion/data/model/errors.py +12 -0
  39. pymammotion/data/model/events.py +14 -0
  40. pymammotion/data/model/generate_geojson.py +565 -0
  41. pymammotion/data/model/generate_route_information.py +26 -0
  42. pymammotion/data/model/hash_list.py +475 -0
  43. pymammotion/data/model/location.py +36 -0
  44. pymammotion/data/model/mowing_modes.py +77 -0
  45. pymammotion/data/model/rapid_state.py +45 -0
  46. pymammotion/data/model/raw_data.py +215 -0
  47. pymammotion/data/model/region_data.py +102 -0
  48. pymammotion/data/model/report_info.py +182 -0
  49. pymammotion/data/model/work.py +27 -0
  50. pymammotion/data/mower_state_manager.py +369 -0
  51. pymammotion/data/mqtt/__init__.py +1 -0
  52. pymammotion/data/mqtt/event.py +227 -0
  53. pymammotion/data/mqtt/mammotion_properties.py +276 -0
  54. pymammotion/data/mqtt/properties.py +203 -0
  55. pymammotion/data/mqtt/status.py +57 -0
  56. pymammotion/event/__init__.py +6 -0
  57. pymammotion/event/event.py +96 -0
  58. pymammotion/homeassistant/__init__.py +3 -0
  59. pymammotion/homeassistant/mower_api.py +514 -0
  60. pymammotion/homeassistant/rtk_api.py +54 -0
  61. pymammotion/http/__init__.py +0 -0
  62. pymammotion/http/encryption.py +220 -0
  63. pymammotion/http/http.py +673 -0
  64. pymammotion/http/model/__init__.py +0 -0
  65. pymammotion/http/model/camera_stream.py +31 -0
  66. pymammotion/http/model/http.py +249 -0
  67. pymammotion/http/model/response_factory.py +61 -0
  68. pymammotion/http/model/rtk.py +16 -0
  69. pymammotion/mammotion/__init__.py +0 -0
  70. pymammotion/mammotion/commands/__init__.py +0 -0
  71. pymammotion/mammotion/commands/abstract_message.py +24 -0
  72. pymammotion/mammotion/commands/mammotion_command.py +81 -0
  73. pymammotion/mammotion/commands/messages/__init__.py +0 -0
  74. pymammotion/mammotion/commands/messages/basestation.py +43 -0
  75. pymammotion/mammotion/commands/messages/driver.py +122 -0
  76. pymammotion/mammotion/commands/messages/media.py +87 -0
  77. pymammotion/mammotion/commands/messages/navigation.py +564 -0
  78. pymammotion/mammotion/commands/messages/network.py +205 -0
  79. pymammotion/mammotion/commands/messages/ota.py +38 -0
  80. pymammotion/mammotion/commands/messages/system.py +330 -0
  81. pymammotion/mammotion/commands/messages/video.py +33 -0
  82. pymammotion/mammotion/control/__init__.py +0 -0
  83. pymammotion/mammotion/control/joystick.py +145 -0
  84. pymammotion/mammotion/devices/__init__.py +29 -0
  85. pymammotion/mammotion/devices/base.py +163 -0
  86. pymammotion/mammotion/devices/mammotion.py +571 -0
  87. pymammotion/mammotion/devices/mammotion_bluetooth.py +496 -0
  88. pymammotion/mammotion/devices/mammotion_cloud.py +355 -0
  89. pymammotion/mammotion/devices/mammotion_mower_ble.py +48 -0
  90. pymammotion/mammotion/devices/mammotion_mower_cloud.py +39 -0
  91. pymammotion/mammotion/devices/managers/managers.py +81 -0
  92. pymammotion/mammotion/devices/mower_device.py +120 -0
  93. pymammotion/mammotion/devices/mower_manager.py +107 -0
  94. pymammotion/mammotion/devices/rtk_ble.py +89 -0
  95. pymammotion/mammotion/devices/rtk_cloud.py +115 -0
  96. pymammotion/mammotion/devices/rtk_device.py +50 -0
  97. pymammotion/mammotion/devices/rtk_manager.py +125 -0
  98. pymammotion/mqtt/__init__.py +6 -0
  99. pymammotion/mqtt/aliyun_mqtt.py +237 -0
  100. pymammotion/mqtt/linkkit/__init__.py +5 -0
  101. pymammotion/mqtt/linkkit/h2client.py +585 -0
  102. pymammotion/mqtt/linkkit/linkkit.py +3025 -0
  103. pymammotion/mqtt/mammotion_future.py +26 -0
  104. pymammotion/mqtt/mammotion_mqtt.py +214 -0
  105. pymammotion/mqtt/mqtt_models.py +66 -0
  106. pymammotion/proto/__init__.py +4841 -0
  107. pymammotion/proto/basestation.proto +51 -0
  108. pymammotion/proto/basestation_pb2.py +35 -0
  109. pymammotion/proto/basestation_pb2.pyi +89 -0
  110. pymammotion/proto/common.proto +7 -0
  111. pymammotion/proto/common_pb2.py +25 -0
  112. pymammotion/proto/common_pb2.pyi +13 -0
  113. pymammotion/proto/dev_net.proto +321 -0
  114. pymammotion/proto/dev_net_pb2.py +111 -0
  115. pymammotion/proto/dev_net_pb2.pyi +515 -0
  116. pymammotion/proto/luba_msg.proto +76 -0
  117. pymammotion/proto/luba_msg_pb2.py +41 -0
  118. pymammotion/proto/luba_msg_pb2.pyi +97 -0
  119. pymammotion/proto/luba_mul.proto +129 -0
  120. pymammotion/proto/luba_mul_pb2.py +61 -0
  121. pymammotion/proto/luba_mul_pb2.pyi +178 -0
  122. pymammotion/proto/mctrl_driver.proto +107 -0
  123. pymammotion/proto/mctrl_driver_pb2.py +57 -0
  124. pymammotion/proto/mctrl_driver_pb2.pyi +167 -0
  125. pymammotion/proto/mctrl_nav.proto +591 -0
  126. pymammotion/proto/mctrl_nav_pb2.py +136 -0
  127. pymammotion/proto/mctrl_nav_pb2.pyi +1067 -0
  128. pymammotion/proto/mctrl_ota.proto +80 -0
  129. pymammotion/proto/mctrl_ota_pb2.py +45 -0
  130. pymammotion/proto/mctrl_ota_pb2.pyi +128 -0
  131. pymammotion/proto/mctrl_pept.proto +34 -0
  132. pymammotion/proto/mctrl_pept_pb2.py +33 -0
  133. pymammotion/proto/mctrl_pept_pb2.pyi +58 -0
  134. pymammotion/proto/mctrl_sys.proto +741 -0
  135. pymammotion/proto/mctrl_sys_pb2.py +206 -0
  136. pymammotion/proto/mctrl_sys_pb2.pyi +1213 -0
  137. pymammotion/proto/message_pool.py +3 -0
  138. pymammotion/proto/py.typed +0 -0
  139. pymammotion/py.typed +0 -0
  140. pymammotion/utility/constant/__init__.py +3 -0
  141. pymammotion/utility/constant/device_constant.py +315 -0
  142. pymammotion/utility/conversions.py +5 -0
  143. pymammotion/utility/datatype_converter.py +124 -0
  144. pymammotion/utility/device_config.py +755 -0
  145. pymammotion/utility/device_type.py +489 -0
  146. pymammotion/utility/map.py +259 -0
  147. pymammotion/utility/movement.py +18 -0
  148. pymammotion/utility/mur_mur_hash.py +159 -0
  149. pymammotion/utility/periodic.py +106 -0
  150. pymammotion/utility/rocker_util.py +194 -0
  151. pymammotion-0.5.69.dist-info/METADATA +93 -0
  152. pymammotion-0.5.69.dist-info/RECORD +154 -0
  153. pymammotion-0.5.69.dist-info/WHEEL +4 -0
  154. pymammotion-0.5.69.dist-info/licenses/LICENSE +674 -0
@@ -0,0 +1,97 @@
1
+ from pymammotion.proto import basestation_pb2 as _basestation_pb2
2
+ from pymammotion.proto import mctrl_driver_pb2 as _mctrl_driver_pb2
3
+ from pymammotion.proto import mctrl_nav_pb2 as _mctrl_nav_pb2
4
+ from pymammotion.proto import mctrl_sys_pb2 as _mctrl_sys_pb2
5
+ from pymammotion.proto import dev_net_pb2 as _dev_net_pb2
6
+ from pymammotion.proto import mctrl_ota_pb2 as _mctrl_ota_pb2
7
+ from pymammotion.proto import luba_mul_pb2 as _luba_mul_pb2
8
+ from pymammotion.proto import mctrl_pept_pb2 as _mctrl_pept_pb2
9
+ from google.protobuf.internal import enum_type_wrapper as _enum_type_wrapper
10
+ from google.protobuf import descriptor as _descriptor
11
+ from google.protobuf import message as _message
12
+ from typing import ClassVar as _ClassVar, Mapping as _Mapping, Optional as _Optional, Union as _Union
13
+
14
+ DESCRIPTOR: _descriptor.FileDescriptor
15
+ DEV_BASESTATION: MsgDevice
16
+ DEV_BMS: MsgDevice
17
+ DEV_COMM_ESP: MsgDevice
18
+ DEV_IOTCTRL: MsgDevice
19
+ DEV_IOTSERVER: MsgDevice
20
+ DEV_LEFTMOTOR: MsgDevice
21
+ DEV_LOCALIZATION: MsgDevice
22
+ DEV_MAINCTL: MsgDevice
23
+ DEV_MOBILEAPP: MsgDevice
24
+ DEV_NAVIGATION: MsgDevice
25
+ DEV_PERCEPTION: MsgDevice
26
+ DEV_RIGHTMOTOR: MsgDevice
27
+ DEV_RTKCLI: MsgDevice
28
+ DEV_USBHOST: MsgDevice
29
+ MSG_ATTR_NONE: MsgAttr
30
+ MSG_ATTR_REPORT: MsgAttr
31
+ MSG_ATTR_REQ: MsgAttr
32
+ MSG_ATTR_RESP: MsgAttr
33
+ MSG_CMD_TYPE_APPLICATION: MsgCmdType
34
+ MSG_CMD_TYPE_BASESTATION: MsgCmdType
35
+ MSG_CMD_TYPE_EMBED_DRIVER: MsgCmdType
36
+ MSG_CMD_TYPE_EMBED_MIDWARE: MsgCmdType
37
+ MSG_CMD_TYPE_EMBED_OTA: MsgCmdType
38
+ MSG_CMD_TYPE_EMBED_SYS: MsgCmdType
39
+ MSG_CMD_TYPE_ESP: MsgCmdType
40
+ MSG_CMD_TYPE_LOCALIZATION: MsgCmdType
41
+ MSG_CMD_TYPE_MUL: MsgCmdType
42
+ MSG_CMD_TYPE_NAV: MsgCmdType
43
+ MSG_CMD_TYPE_PEPT: MsgCmdType
44
+ MSG_CMD_TYPE_PLANNING: MsgCmdType
45
+ MSG_CMD_TYPE_START: MsgCmdType
46
+ SOC_MODULE_MULTIMEDIA: MsgDevice
47
+
48
+ class LubaMsg(_message.Message):
49
+ __slots__ = ["base", "driver", "msgattr", "msgtype", "mul", "nav", "net", "null", "ota", "pept", "rcver", "sender", "seqs", "subtype", "sys", "timestamp", "version"]
50
+ BASE_FIELD_NUMBER: _ClassVar[int]
51
+ DRIVER_FIELD_NUMBER: _ClassVar[int]
52
+ MSGATTR_FIELD_NUMBER: _ClassVar[int]
53
+ MSGTYPE_FIELD_NUMBER: _ClassVar[int]
54
+ MUL_FIELD_NUMBER: _ClassVar[int]
55
+ NAV_FIELD_NUMBER: _ClassVar[int]
56
+ NET_FIELD_NUMBER: _ClassVar[int]
57
+ NULL_FIELD_NUMBER: _ClassVar[int]
58
+ OTA_FIELD_NUMBER: _ClassVar[int]
59
+ PEPT_FIELD_NUMBER: _ClassVar[int]
60
+ RCVER_FIELD_NUMBER: _ClassVar[int]
61
+ SENDER_FIELD_NUMBER: _ClassVar[int]
62
+ SEQS_FIELD_NUMBER: _ClassVar[int]
63
+ SUBTYPE_FIELD_NUMBER: _ClassVar[int]
64
+ SYS_FIELD_NUMBER: _ClassVar[int]
65
+ TIMESTAMP_FIELD_NUMBER: _ClassVar[int]
66
+ VERSION_FIELD_NUMBER: _ClassVar[int]
67
+ base: _basestation_pb2.BaseStation
68
+ driver: _mctrl_driver_pb2.MctlDriver
69
+ msgattr: MsgAttr
70
+ msgtype: MsgCmdType
71
+ mul: _luba_mul_pb2.SocMul
72
+ nav: _mctrl_nav_pb2.MctlNav
73
+ net: _dev_net_pb2.DevNet
74
+ null: MsgNull
75
+ ota: _mctrl_ota_pb2.MctlOta
76
+ pept: _mctrl_pept_pb2.MctlPept
77
+ rcver: MsgDevice
78
+ sender: MsgDevice
79
+ seqs: int
80
+ subtype: int
81
+ sys: _mctrl_sys_pb2.MctlSys
82
+ timestamp: int
83
+ version: int
84
+ def __init__(self, msgtype: _Optional[_Union[MsgCmdType, str]] = ..., sender: _Optional[_Union[MsgDevice, str]] = ..., rcver: _Optional[_Union[MsgDevice, str]] = ..., msgattr: _Optional[_Union[MsgAttr, str]] = ..., seqs: _Optional[int] = ..., version: _Optional[int] = ..., subtype: _Optional[int] = ..., net: _Optional[_Union[_dev_net_pb2.DevNet, _Mapping]] = ..., sys: _Optional[_Union[_mctrl_sys_pb2.MctlSys, _Mapping]] = ..., nav: _Optional[_Union[_mctrl_nav_pb2.MctlNav, _Mapping]] = ..., driver: _Optional[_Union[_mctrl_driver_pb2.MctlDriver, _Mapping]] = ..., ota: _Optional[_Union[_mctrl_ota_pb2.MctlOta, _Mapping]] = ..., mul: _Optional[_Union[_luba_mul_pb2.SocMul, _Mapping]] = ..., null: _Optional[_Union[MsgNull, _Mapping]] = ..., pept: _Optional[_Union[_mctrl_pept_pb2.MctlPept, _Mapping]] = ..., base: _Optional[_Union[_basestation_pb2.BaseStation, _Mapping]] = ..., timestamp: _Optional[int] = ...) -> None: ...
85
+
86
+ class MsgNull(_message.Message):
87
+ __slots__ = []
88
+ def __init__(self) -> None: ...
89
+
90
+ class MsgCmdType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
91
+ __slots__ = []
92
+
93
+ class MsgAttr(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
94
+ __slots__ = []
95
+
96
+ class MsgDevice(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
97
+ __slots__ = []
@@ -0,0 +1,129 @@
1
+ syntax = "proto3";
2
+
3
+ enum MUL_LANGUAGE {
4
+ ENGLISH = 0;
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;
19
+ }
20
+
21
+ enum MUL_CAMERA_POSITION {
22
+ LEFT = 0;
23
+ RIGHT = 1;
24
+ REAR = 2;
25
+ ALL = 3;
26
+ }
27
+
28
+ enum MUL_VIDEO_ERROR_CODE {
29
+ SUCCESS = 0;
30
+ ACTIVATION_FAILED = 1;
31
+ NETWORK_NOT_AVAILABLE = 2;
32
+ CREATE_CHANNEL_FAILED = 3;
33
+ PARAM_INVAILD = 4;
34
+ }
35
+
36
+ enum MUL_WIPER_ERROR_CODE {
37
+ SET_SUCCESS = 0;
38
+ HW_ERROR = 1;
39
+ NAVIGATION_WORK_FORBID = 2;
40
+ }
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
+
53
+ message MulSetAudio {
54
+ oneof AudioCfg_u {
55
+ int32 at_switch = 1;
56
+ MUL_LANGUAGE au_language = 2;
57
+ MUL_SEX sex = 3;
58
+ }
59
+ }
60
+
61
+ message MulSetVideo {
62
+ MUL_CAMERA_POSITION position = 1;
63
+ int32 vi_switch = 2;
64
+ }
65
+
66
+ message MulSetVideoAck {
67
+ MUL_VIDEO_ERROR_CODE error_code = 1;
68
+ }
69
+
70
+ message MulAudioCfg {
71
+ int32 au_switch = 1;
72
+ MUL_LANGUAGE au_language = 2;
73
+ MUL_SEX sex = 3;
74
+ }
75
+
76
+ message MulSetWiper {
77
+ int32 round = 1;
78
+ }
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
+
107
+ message MulSetWiperAck {
108
+ MUL_WIPER_ERROR_CODE error_code = 1;
109
+ }
110
+
111
+ message MulSetEncode {
112
+ bool encode = 1;
113
+ }
114
+
115
+ message SocMul {
116
+ oneof SubMul {
117
+ MulSetAudio set_audio = 1;
118
+ MulAudioCfg audio_cfg = 2;
119
+ MulSetVideo set_video = 3;
120
+ MulSetVideoAck set_video_ack = 4;
121
+ MulSetWiper set_wiper = 5;
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;
128
+ }
129
+ }
@@ -0,0 +1,61 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # source: pymammotion/proto/luba_mul.proto
4
+ """Generated protocol buffer code."""
5
+ from google.protobuf.internal import builder as _builder
6
+ from google.protobuf import descriptor as _descriptor
7
+ from google.protobuf import descriptor_pool as _descriptor_pool
8
+ from google.protobuf import symbol_database as _symbol_database
9
+ # @@protoc_insertion_point(imports)
10
+
11
+ _sym_db = _symbol_database.Default()
12
+
13
+
14
+
15
+
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
+
18
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, globals())
19
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'pymammotion.proto.luba_mul_pb2', globals())
20
+ if _descriptor._USE_C_DESCRIPTORS == False:
21
+
22
+ DESCRIPTOR._options = None
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
37
+ _MULSETAUDIO._serialized_start=36
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
61
+ # @@protoc_insertion_point(module_scope)
@@ -0,0 +1,178 @@
1
+ from google.protobuf.internal import enum_type_wrapper as _enum_type_wrapper
2
+ from google.protobuf import descriptor as _descriptor
3
+ from google.protobuf import message as _message
4
+ from typing import ClassVar as _ClassVar, Mapping as _Mapping, Optional as _Optional, Union as _Union
5
+
6
+ ACTIVATION_FAILED: MUL_VIDEO_ERROR_CODE
7
+ ALL: MUL_CAMERA_POSITION
8
+ CREATE_CHANNEL_FAILED: MUL_VIDEO_ERROR_CODE
9
+ DESCRIPTOR: _descriptor.FileDescriptor
10
+ DUTCH: MUL_LANGUAGE
11
+ ENGLISH: MUL_LANGUAGE
12
+ FRENCH: MUL_LANGUAGE
13
+ GERMAN: MUL_LANGUAGE
14
+ HW_ERROR: MUL_WIPER_ERROR_CODE
15
+ ITALIAN: MUL_LANGUAGE
16
+ LEFT: MUL_CAMERA_POSITION
17
+ MAN: MUL_SEX
18
+ NAVIGATION_WORK_FORBID: MUL_WIPER_ERROR_CODE
19
+ NETWORK_NOT_AVAILABLE: MUL_VIDEO_ERROR_CODE
20
+ NONE_LAN: MUL_LANGUAGE
21
+ NONE_SEX: MUL_SEX
22
+ PARAM_INVAILD: MUL_VIDEO_ERROR_CODE
23
+ PORTUGUESE: MUL_LANGUAGE
24
+ REAR: MUL_CAMERA_POSITION
25
+ RIGHT: MUL_CAMERA_POSITION
26
+ SET_SUCCESS: MUL_WIPER_ERROR_CODE
27
+ SPANISH: MUL_LANGUAGE
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: ...
56
+
57
+ class MulAudioCfg(_message.Message):
58
+ __slots__ = ["au_language", "au_switch", "sex"]
59
+ AU_LANGUAGE_FIELD_NUMBER: _ClassVar[int]
60
+ AU_SWITCH_FIELD_NUMBER: _ClassVar[int]
61
+ SEX_FIELD_NUMBER: _ClassVar[int]
62
+ au_language: MUL_LANGUAGE
63
+ au_switch: int
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: ...
66
+
67
+ class MulSetAudio(_message.Message):
68
+ __slots__ = ["at_switch", "au_language", "sex"]
69
+ AT_SWITCH_FIELD_NUMBER: _ClassVar[int]
70
+ AU_LANGUAGE_FIELD_NUMBER: _ClassVar[int]
71
+ SEX_FIELD_NUMBER: _ClassVar[int]
72
+ at_switch: int
73
+ au_language: MUL_LANGUAGE
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: ...
82
+
83
+ class MulSetVideo(_message.Message):
84
+ __slots__ = ["position", "vi_switch"]
85
+ POSITION_FIELD_NUMBER: _ClassVar[int]
86
+ VI_SWITCH_FIELD_NUMBER: _ClassVar[int]
87
+ position: MUL_CAMERA_POSITION
88
+ vi_switch: int
89
+ def __init__(self, position: _Optional[_Union[MUL_CAMERA_POSITION, str]] = ..., vi_switch: _Optional[int] = ...) -> None: ...
90
+
91
+ class MulSetVideoAck(_message.Message):
92
+ __slots__ = ["error_code"]
93
+ ERROR_CODE_FIELD_NUMBER: _ClassVar[int]
94
+ error_code: MUL_VIDEO_ERROR_CODE
95
+ def __init__(self, error_code: _Optional[_Union[MUL_VIDEO_ERROR_CODE, str]] = ...) -> None: ...
96
+
97
+ class MulSetWiper(_message.Message):
98
+ __slots__ = ["round"]
99
+ ROUND_FIELD_NUMBER: _ClassVar[int]
100
+ round: int
101
+ def __init__(self, round: _Optional[int] = ...) -> None: ...
102
+
103
+ class MulSetWiperAck(_message.Message):
104
+ __slots__ = ["error_code"]
105
+ ERROR_CODE_FIELD_NUMBER: _ClassVar[int]
106
+ error_code: MUL_WIPER_ERROR_CODE
107
+ def __init__(self, error_code: _Optional[_Union[MUL_WIPER_ERROR_CODE, str]] = ...) -> None: ...
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
+
133
+ class SocMul(_message.Message):
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"]
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]
139
+ SET_AUDIO_FIELD_NUMBER: _ClassVar[int]
140
+ SET_LAMP_FIELD_NUMBER: _ClassVar[int]
141
+ SET_LAMP_RSP_FIELD_NUMBER: _ClassVar[int]
142
+ SET_VIDEO_ACK_FIELD_NUMBER: _ClassVar[int]
143
+ SET_VIDEO_FIELD_NUMBER: _ClassVar[int]
144
+ SET_WIPER_ACK_FIELD_NUMBER: _ClassVar[int]
145
+ SET_WIPER_FIELD_NUMBER: _ClassVar[int]
146
+ audio_cfg: MulAudioCfg
147
+ get_lamp: GetHeadlamp
148
+ get_lamp_rsp: Getlamprsp
149
+ req_encode: MulSetEncode
150
+ set_audio: MulSetAudio
151
+ set_lamp: SetHeadlamp
152
+ set_lamp_rsp: Setlamprsp
153
+ set_video: MulSetVideo
154
+ set_video_ack: MulSetVideoAck
155
+ set_wiper: MulSetWiper
156
+ set_wiper_ack: MulSetWiperAck
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: ...
158
+
159
+ class MUL_LANGUAGE(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
160
+ __slots__ = []
161
+
162
+ class MUL_SEX(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
163
+ __slots__ = []
164
+
165
+ class MUL_CAMERA_POSITION(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
166
+ __slots__ = []
167
+
168
+ class MUL_VIDEO_ERROR_CODE(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
169
+ __slots__ = []
170
+
171
+ class MUL_WIPER_ERROR_CODE(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
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__ = []
@@ -0,0 +1,107 @@
1
+ syntax = "proto3";
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
+
23
+ message DrvMotionCtrl {
24
+ int32 setLinearSpeed = 1;
25
+ int32 setAngularSpeed = 2;
26
+ }
27
+
28
+ message DrvKnifeHeight {
29
+ int32 knifeHeight = 1;
30
+ }
31
+
32
+ message DrvSrSpeed {
33
+ int32 rw = 1;
34
+ float speed = 2;
35
+ }
36
+
37
+ message DrvKnifeStatus {
38
+ int32 knife_status = 1;
39
+ }
40
+
41
+ message DrvKnifeChangeReport {
42
+ int32 is_start = 1;
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;
51
+ }
52
+
53
+ message DrvMowCtrlByHand {
54
+ int32 main_ctrl = 1;
55
+ int32 cut_knife_ctrl = 2;
56
+ int32 cut_knife_height = 3;
57
+ float max_run_speed = 4;
58
+ }
59
+
60
+ message rtk_cfg_req_t {
61
+ int32 cmd_length = 1;
62
+ string cmd_req = 2;
63
+ }
64
+
65
+ message rtk_cfg_req_ack_t {
66
+ int32 cmd_length = 1;
67
+ string cmd_response = 2;
68
+ }
69
+
70
+ message rtk_sys_mask_query_t {
71
+ uint32 sat_system = 1;
72
+ }
73
+
74
+ message rtk_sys_mask_query_ack_t {
75
+ uint32 sat_system = 1;
76
+ repeated uint32 system_mask_bits = 2;
77
+ }
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
+
90
+ message MctlDriver {
91
+ oneof SubDrvMsg {
92
+ DrvMotionCtrl todev_devmotion_ctrl = 1;
93
+ DrvKnifeHeight todev_knife_height_set = 2;
94
+ DrvSrSpeed bidire_speed_read_set = 3;
95
+ DrvKnifeHeight bidire_knife_height_report = 4;
96
+ DrvKnifeStatus toapp_knife_status = 5;
97
+ DrvMowCtrlByHand mow_ctrl_by_hand = 6;
98
+ rtk_cfg_req_t rtk_cfg_req = 7;
99
+ rtk_cfg_req_ack_t rtk_cfg_req_ack = 8;
100
+ rtk_sys_mask_query_t rtk_sys_mask_query = 9;
101
+ rtk_sys_mask_query_ack_t rtk_sys_mask_query_ack = 10;
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;
106
+ }
107
+ }
@@ -0,0 +1,57 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # source: pymammotion/proto/mctrl_driver.proto
4
+ """Generated protocol buffer code."""
5
+ from google.protobuf.internal import builder as _builder
6
+ from google.protobuf import descriptor as _descriptor
7
+ from google.protobuf import descriptor_pool as _descriptor_pool
8
+ from google.protobuf import symbol_database as _symbol_database
9
+ # @@protoc_insertion_point(imports)
10
+
11
+ _sym_db = _symbol_database.Default()
12
+
13
+
14
+
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\"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
+
18
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, globals())
19
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'pymammotion.proto.mctrl_driver_pb2', globals())
20
+ if _descriptor._USE_C_DESCRIPTORS == False:
21
+
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
29
+ _DRVMOTIONCTRL._serialized_start=40
30
+ _DRVMOTIONCTRL._serialized_end=104
31
+ _DRVKNIFEHEIGHT._serialized_start=106
32
+ _DRVKNIFEHEIGHT._serialized_end=143
33
+ _DRVSRSPEED._serialized_start=145
34
+ _DRVSRSPEED._serialized_end=184
35
+ _DRVKNIFESTATUS._serialized_start=186
36
+ _DRVKNIFESTATUS._serialized_end=224
37
+ _DRVKNIFECHANGEREPORT._serialized_start=226
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
57
+ # @@protoc_insertion_point(module_scope)