pymammotion 0.1.1__py3-none-any.whl → 0.1.2__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.

@@ -12,7 +12,8 @@ from pymammotion.proto.mctrl_driver import MctlDriver
12
12
  from pymammotion.proto.mctrl_nav import MctlNav
13
13
  from pymammotion.proto.mctrl_ota import MctlOta
14
14
  from pymammotion.proto.mctrl_pept import MctlPept
15
- from pymammotion.proto.mctrl_sys import MctlSys, MowToAppInfoT, SystemUpdateBufMsg
15
+ from pymammotion.proto.mctrl_sys import MctlSys, MowToAppInfoT, SystemUpdateBufMsg, ReportInfoData
16
+ from pymammotion.utility.map import CoordinateConverter
16
17
 
17
18
 
18
19
  @dataclass
@@ -84,6 +85,16 @@ class MowingDevice:
84
85
  ]
85
86
  )
86
87
 
88
+ def report_data(self, toapp_report_data: ReportInfoData):
89
+ coordinate_converter = CoordinateConverter(self.location.RTK.latitude, self.location.RTK.longitude)
90
+ for index, location in enumerate(toapp_report_data.locations):
91
+ if index == 0:
92
+ self.location.position_type = location.pos_type
93
+ self.location.orientation = location.real_toward / 10000
94
+ self.location.device = coordinate_converter.enu_to_lla(location.real_pos_y, location.real_pos_x)
95
+
96
+
97
+
87
98
  def mow_info(self, toapp_mow_info: MowToAppInfoT):
88
99
  pass
89
100
 
@@ -10,9 +10,9 @@ class Point:
10
10
  latitude: float
11
11
  longitude: float
12
12
 
13
- def __init__(self):
14
- self.latitude = 0
15
- self.longitude = 0
13
+ def __init__(self, latitude=0.0, longitude=0.0):
14
+ self.latitude = latitude
15
+ self.longitude = longitude
16
16
 
17
17
 
18
18
  @dataclass
@@ -33,6 +33,8 @@ class Location:
33
33
  device: Point
34
34
  RTK: Point
35
35
  dock: Dock
36
+ position_type: int
37
+ orientation: int # 360 degree rotation +-
36
38
 
37
39
  def __init__(self):
38
40
  self.device = Point()
@@ -68,7 +68,7 @@ class StateManager:
68
68
  case "system_update_buf":
69
69
  self._device.buffer(sys_msg[1])
70
70
  case "toapp_report_data":
71
- pass
71
+ self._device.report_data(sys_msg[1])
72
72
  case "mow_to_app_info":
73
73
  self._device.mow_info(sys_msg[1])
74
74
 
@@ -534,12 +534,12 @@ class MammotionBaseBLEDevice(MammotionBaseDevice):
534
534
 
535
535
  async def _notification_handler(self, _sender: BleakGATTCharacteristic, data: bytearray) -> None:
536
536
  """Handle notification responses."""
537
- _LOGGER.debug("%s: Received notification: %s", self.name, data)
538
537
  result = self._message.parseNotification(data)
539
538
  if result == 0:
540
539
  data = await self._message.parseBlufiNotifyData(True)
541
540
  self._update_raw_data(data)
542
541
  self._message.clearNotification()
542
+ _LOGGER.debug("%s: Received notification: %s", self.name, data)
543
543
  else:
544
544
  return
545
545
  new_msg = LubaMsg().parse(data)
@@ -0,0 +1,43 @@
1
+ syntax = "proto3";
2
+
3
+ message request_basestation_info_t {
4
+ uint32 request_type = 1;
5
+ }
6
+
7
+ message response_basestation_info_t {
8
+ uint64 system_status = 1;
9
+ uint32 app_connect_type = 2;
10
+ int32 ble_rssi = 3;
11
+ int32 wifi_rssi = 4;
12
+ uint64 sats_num = 5;
13
+ int64 lora_scan = 6;
14
+ int64 lora_channel = 7;
15
+ int64 lora_locid = 8;
16
+ int64 lora_netid = 9;
17
+ uint64 rtk_status = 10;
18
+ int32 lowpower_status = 11;
19
+ int32 mqtt_rtk_status = 12;
20
+ int32 rtk_channel = 13;
21
+ int32 rtk_switch = 14;
22
+ }
23
+
24
+ message app_to_base_mqtt_rtk_t {
25
+ int32 rtk_switch = 1;
26
+ string rtk_url = 2;
27
+ int32 rtk_port = 3;
28
+ string rtk_username = 4;
29
+ string rtk_password = 5;
30
+ }
31
+
32
+ message base_to_app_mqtt_rtk_t {
33
+ int32 rtk_switch_status = 1;
34
+ }
35
+
36
+ message BaseStation {
37
+ oneof BaseStationSubType {
38
+ request_basestation_info_t to_dev = 1;
39
+ response_basestation_info_t to_app = 2;
40
+ app_to_base_mqtt_rtk_t app_to_base_mqtt_rtk_msg = 3;
41
+ base_to_app_mqtt_rtk_t base_to_app_mqtt_rtk_msg = 4;
42
+ }
43
+ }
@@ -0,0 +1,59 @@
1
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
2
+ # sources: pymammotion/proto/basestation.proto
3
+ # plugin: python-betterproto
4
+ from dataclasses import dataclass
5
+
6
+ import betterproto
7
+
8
+
9
+ @dataclass
10
+ class RequestBasestationInfoT(betterproto.Message):
11
+ request_type: int = betterproto.uint32_field(1)
12
+
13
+
14
+ @dataclass
15
+ class ResponseBasestationInfoT(betterproto.Message):
16
+ system_status: int = betterproto.uint64_field(1)
17
+ app_connect_type: int = betterproto.uint32_field(2)
18
+ ble_rssi: int = betterproto.int32_field(3)
19
+ wifi_rssi: int = betterproto.int32_field(4)
20
+ sats_num: int = betterproto.uint64_field(5)
21
+ lora_scan: int = betterproto.int64_field(6)
22
+ lora_channel: int = betterproto.int64_field(7)
23
+ lora_locid: int = betterproto.int64_field(8)
24
+ lora_netid: int = betterproto.int64_field(9)
25
+ rtk_status: int = betterproto.uint64_field(10)
26
+ lowpower_status: int = betterproto.int32_field(11)
27
+ mqtt_rtk_status: int = betterproto.int32_field(12)
28
+ rtk_channel: int = betterproto.int32_field(13)
29
+ rtk_switch: int = betterproto.int32_field(14)
30
+
31
+
32
+ @dataclass
33
+ class AppToBaseMqttRtkT(betterproto.Message):
34
+ rtk_switch: int = betterproto.int32_field(1)
35
+ rtk_url: str = betterproto.string_field(2)
36
+ rtk_port: int = betterproto.int32_field(3)
37
+ rtk_username: str = betterproto.string_field(4)
38
+ rtk_password: str = betterproto.string_field(5)
39
+
40
+
41
+ @dataclass
42
+ class BaseToAppMqttRtkT(betterproto.Message):
43
+ rtk_switch_status: int = betterproto.int32_field(1)
44
+
45
+
46
+ @dataclass
47
+ class BaseStation(betterproto.Message):
48
+ to_dev: "RequestBasestationInfoT" = betterproto.message_field(
49
+ 1, group="BaseStationSubType"
50
+ )
51
+ to_app: "ResponseBasestationInfoT" = betterproto.message_field(
52
+ 2, group="BaseStationSubType"
53
+ )
54
+ app_to_base_mqtt_rtk_msg: "AppToBaseMqttRtkT" = betterproto.message_field(
55
+ 3, group="BaseStationSubType"
56
+ )
57
+ base_to_app_mqtt_rtk_msg: "BaseToAppMqttRtkT" = betterproto.message_field(
58
+ 4, group="BaseStationSubType"
59
+ )
@@ -0,0 +1,33 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # source: pymammotion/proto/basestation.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/basestation.proto\"2\n\x1arequest_basestation_info_t\x12\x14\n\x0crequest_type\x18\x01 \x01(\r\"\xc5\x02\n\x1bresponse_basestation_info_t\x12\x15\n\rsystem_status\x18\x01 \x01(\x04\x12\x18\n\x10\x61pp_connect_type\x18\x02 \x01(\r\x12\x10\n\x08\x62le_rssi\x18\x03 \x01(\x05\x12\x11\n\twifi_rssi\x18\x04 \x01(\x05\x12\x10\n\x08sats_num\x18\x05 \x01(\x04\x12\x11\n\tlora_scan\x18\x06 \x01(\x03\x12\x14\n\x0clora_channel\x18\x07 \x01(\x03\x12\x12\n\nlora_locid\x18\x08 \x01(\x03\x12\x12\n\nlora_netid\x18\t \x01(\x03\x12\x12\n\nrtk_status\x18\n \x01(\x04\x12\x17\n\x0flowpower_status\x18\x0b \x01(\x05\x12\x17\n\x0fmqtt_rtk_status\x18\x0c \x01(\x05\x12\x13\n\x0brtk_channel\x18\r \x01(\x05\x12\x12\n\nrtk_switch\x18\x0e \x01(\x05\"{\n\x16\x61pp_to_base_mqtt_rtk_t\x12\x12\n\nrtk_switch\x18\x01 \x01(\x05\x12\x0f\n\x07rtk_url\x18\x02 \x01(\t\x12\x10\n\x08rtk_port\x18\x03 \x01(\x05\x12\x14\n\x0crtk_username\x18\x04 \x01(\t\x12\x14\n\x0crtk_password\x18\x05 \x01(\t\"3\n\x16\x62\x61se_to_app_mqtt_rtk_t\x12\x19\n\x11rtk_switch_status\x18\x01 \x01(\x05\"\xfc\x01\n\x0b\x42\x61seStation\x12-\n\x06to_dev\x18\x01 \x01(\x0b\x32\x1b.request_basestation_info_tH\x00\x12.\n\x06to_app\x18\x02 \x01(\x0b\x32\x1c.response_basestation_info_tH\x00\x12;\n\x18\x61pp_to_base_mqtt_rtk_msg\x18\x03 \x01(\x0b\x32\x17.app_to_base_mqtt_rtk_tH\x00\x12;\n\x18\x62\x61se_to_app_mqtt_rtk_msg\x18\x04 \x01(\x0b\x32\x17.base_to_app_mqtt_rtk_tH\x00\x42\x14\n\x12\x42\x61seStationSubTypeb\x06proto3')
17
+
18
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, globals())
19
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'pymammotion.proto.basestation_pb2', globals())
20
+ if _descriptor._USE_C_DESCRIPTORS == False:
21
+
22
+ DESCRIPTOR._options = None
23
+ _REQUEST_BASESTATION_INFO_T._serialized_start=39
24
+ _REQUEST_BASESTATION_INFO_T._serialized_end=89
25
+ _RESPONSE_BASESTATION_INFO_T._serialized_start=92
26
+ _RESPONSE_BASESTATION_INFO_T._serialized_end=417
27
+ _APP_TO_BASE_MQTT_RTK_T._serialized_start=419
28
+ _APP_TO_BASE_MQTT_RTK_T._serialized_end=542
29
+ _BASE_TO_APP_MQTT_RTK_T._serialized_start=544
30
+ _BASE_TO_APP_MQTT_RTK_T._serialized_end=595
31
+ _BASESTATION._serialized_start=598
32
+ _BASESTATION._serialized_end=850
33
+ # @@protoc_insertion_point(module_scope)
@@ -0,0 +1,75 @@
1
+ from google.protobuf import descriptor as _descriptor
2
+ from google.protobuf import message as _message
3
+ from typing import ClassVar as _ClassVar, Mapping as _Mapping, Optional as _Optional, Union as _Union
4
+
5
+ DESCRIPTOR: _descriptor.FileDescriptor
6
+
7
+ class BaseStation(_message.Message):
8
+ __slots__ = ["app_to_base_mqtt_rtk_msg", "base_to_app_mqtt_rtk_msg", "to_app", "to_dev"]
9
+ APP_TO_BASE_MQTT_RTK_MSG_FIELD_NUMBER: _ClassVar[int]
10
+ BASE_TO_APP_MQTT_RTK_MSG_FIELD_NUMBER: _ClassVar[int]
11
+ TO_APP_FIELD_NUMBER: _ClassVar[int]
12
+ TO_DEV_FIELD_NUMBER: _ClassVar[int]
13
+ app_to_base_mqtt_rtk_msg: app_to_base_mqtt_rtk_t
14
+ base_to_app_mqtt_rtk_msg: base_to_app_mqtt_rtk_t
15
+ to_app: response_basestation_info_t
16
+ to_dev: request_basestation_info_t
17
+ def __init__(self, to_dev: _Optional[_Union[request_basestation_info_t, _Mapping]] = ..., to_app: _Optional[_Union[response_basestation_info_t, _Mapping]] = ..., app_to_base_mqtt_rtk_msg: _Optional[_Union[app_to_base_mqtt_rtk_t, _Mapping]] = ..., base_to_app_mqtt_rtk_msg: _Optional[_Union[base_to_app_mqtt_rtk_t, _Mapping]] = ...) -> None: ...
18
+
19
+ class app_to_base_mqtt_rtk_t(_message.Message):
20
+ __slots__ = ["rtk_password", "rtk_port", "rtk_switch", "rtk_url", "rtk_username"]
21
+ RTK_PASSWORD_FIELD_NUMBER: _ClassVar[int]
22
+ RTK_PORT_FIELD_NUMBER: _ClassVar[int]
23
+ RTK_SWITCH_FIELD_NUMBER: _ClassVar[int]
24
+ RTK_URL_FIELD_NUMBER: _ClassVar[int]
25
+ RTK_USERNAME_FIELD_NUMBER: _ClassVar[int]
26
+ rtk_password: str
27
+ rtk_port: int
28
+ rtk_switch: int
29
+ rtk_url: str
30
+ rtk_username: str
31
+ def __init__(self, rtk_switch: _Optional[int] = ..., rtk_url: _Optional[str] = ..., rtk_port: _Optional[int] = ..., rtk_username: _Optional[str] = ..., rtk_password: _Optional[str] = ...) -> None: ...
32
+
33
+ class base_to_app_mqtt_rtk_t(_message.Message):
34
+ __slots__ = ["rtk_switch_status"]
35
+ RTK_SWITCH_STATUS_FIELD_NUMBER: _ClassVar[int]
36
+ rtk_switch_status: int
37
+ def __init__(self, rtk_switch_status: _Optional[int] = ...) -> None: ...
38
+
39
+ class request_basestation_info_t(_message.Message):
40
+ __slots__ = ["request_type"]
41
+ REQUEST_TYPE_FIELD_NUMBER: _ClassVar[int]
42
+ request_type: int
43
+ def __init__(self, request_type: _Optional[int] = ...) -> None: ...
44
+
45
+ class response_basestation_info_t(_message.Message):
46
+ __slots__ = ["app_connect_type", "ble_rssi", "lora_channel", "lora_locid", "lora_netid", "lora_scan", "lowpower_status", "mqtt_rtk_status", "rtk_channel", "rtk_status", "rtk_switch", "sats_num", "system_status", "wifi_rssi"]
47
+ APP_CONNECT_TYPE_FIELD_NUMBER: _ClassVar[int]
48
+ BLE_RSSI_FIELD_NUMBER: _ClassVar[int]
49
+ LORA_CHANNEL_FIELD_NUMBER: _ClassVar[int]
50
+ LORA_LOCID_FIELD_NUMBER: _ClassVar[int]
51
+ LORA_NETID_FIELD_NUMBER: _ClassVar[int]
52
+ LORA_SCAN_FIELD_NUMBER: _ClassVar[int]
53
+ LOWPOWER_STATUS_FIELD_NUMBER: _ClassVar[int]
54
+ MQTT_RTK_STATUS_FIELD_NUMBER: _ClassVar[int]
55
+ RTK_CHANNEL_FIELD_NUMBER: _ClassVar[int]
56
+ RTK_STATUS_FIELD_NUMBER: _ClassVar[int]
57
+ RTK_SWITCH_FIELD_NUMBER: _ClassVar[int]
58
+ SATS_NUM_FIELD_NUMBER: _ClassVar[int]
59
+ SYSTEM_STATUS_FIELD_NUMBER: _ClassVar[int]
60
+ WIFI_RSSI_FIELD_NUMBER: _ClassVar[int]
61
+ app_connect_type: int
62
+ ble_rssi: int
63
+ lora_channel: int
64
+ lora_locid: int
65
+ lora_netid: int
66
+ lora_scan: int
67
+ lowpower_status: int
68
+ mqtt_rtk_status: int
69
+ rtk_channel: int
70
+ rtk_status: int
71
+ rtk_switch: int
72
+ sats_num: int
73
+ system_status: int
74
+ wifi_rssi: int
75
+ def __init__(self, system_status: _Optional[int] = ..., app_connect_type: _Optional[int] = ..., ble_rssi: _Optional[int] = ..., wifi_rssi: _Optional[int] = ..., sats_num: _Optional[int] = ..., lora_scan: _Optional[int] = ..., lora_channel: _Optional[int] = ..., lora_locid: _Optional[int] = ..., lora_netid: _Optional[int] = ..., rtk_status: _Optional[int] = ..., lowpower_status: _Optional[int] = ..., mqtt_rtk_status: _Optional[int] = ..., rtk_channel: _Optional[int] = ..., rtk_switch: _Optional[int] = ...) -> None: ...
@@ -1,11 +1,11 @@
1
1
  syntax = "proto3";
2
2
 
3
3
  message DrvWifiUpload {
4
- int32 Wifi_Msg_Upload = 1;
4
+ int32 wifi_msg_upload = 1;
5
5
  }
6
6
 
7
7
  message DrvWifiList {
8
- int32 NVS_Wifi_Upload = 1;
8
+ int32 nvs_wifi_upload = 1;
9
9
  }
10
10
 
11
11
  message DrvWifiSet {
@@ -17,8 +17,8 @@ message DrvWifiSet {
17
17
  message DrvWifiMsg {
18
18
  bool status1 = 1;
19
19
  bool status2 = 2;
20
- string IP = 3;
21
- string Msgssid = 4;
20
+ string ip = 3;
21
+ string msgssid = 4;
22
22
  string password = 5;
23
23
  int32 rssi = 6;
24
24
  string productkey = 7;
@@ -149,7 +149,7 @@ class DrvDevInfoReqId(betterproto.Message):
149
149
  class DrvDevInfoRespId(betterproto.Message):
150
150
  id: int = betterproto.int32_field(1)
151
151
  type: int = betterproto.int32_field(2)
152
- res: DrvDevInfoResult = betterproto.enum_field(3)
152
+ res: "DrvDevInfoResult" = betterproto.enum_field(3)
153
153
  info: str = betterproto.string_field(4)
154
154
 
155
155
 
@@ -233,7 +233,7 @@ class GetMnetInfoReq(betterproto.Message):
233
233
  class GetMnetInfoRsp(betterproto.Message):
234
234
  req_ids: int = betterproto.int32_field(1)
235
235
  result: int = betterproto.int32_field(2)
236
- mnet: MnetInfo = betterproto.message_field(3)
236
+ mnet: "MnetInfo" = betterproto.message_field(3)
237
237
 
238
238
 
239
239
  @dataclass
@@ -13,7 +13,7 @@ _sym_db = _symbol_database.Default()
13
13
 
14
14
 
15
15
 
16
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1fpymammotion/proto/dev_net.proto\"(\n\rDrvWifiUpload\x12\x17\n\x0fWifi_Msg_Upload\x18\x01 \x01(\x05\"&\n\x0b\x44rvWifiList\x12\x17\n\x0fNVS_Wifi_Upload\x18\x01 \x01(\x05\"H\n\nDrvWifiSet\x12\x13\n\x0b\x63onfigParam\x18\x01 \x01(\x05\x12\x10\n\x08\x43onfssid\x18\x02 \x01(\t\x12\x13\n\x0bwifi_enable\x18\x03 \x01(\x08\"\xa8\x01\n\nDrvWifiMsg\x12\x0f\n\x07status1\x18\x01 \x01(\x08\x12\x0f\n\x07status2\x18\x02 \x01(\x08\x12\n\n\x02IP\x18\x03 \x01(\t\x12\x0f\n\x07Msgssid\x18\x04 \x01(\t\x12\x10\n\x08password\x18\x05 \x01(\t\x12\x0c\n\x04rssi\x18\x06 \x01(\x05\x12\x12\n\nproductkey\x18\x07 \x01(\t\x12\x12\n\ndevicename\x18\x08 \x01(\t\x12\x13\n\x0bwifi_enable\x18\t \x01(\x08\"?\n\x0b\x44rvWifiConf\x12\x10\n\x08succFlag\x18\x01 \x01(\x08\x12\x0c\n\x04\x63ode\x18\x02 \x01(\x05\x12\x10\n\x08\x43onfssid\x18\x03 \x01(\t\"\\\n\rDrvListUpload\x12\x0b\n\x03sum\x18\x01 \x01(\x05\x12\x0f\n\x07\x63urrent\x18\x02 \x01(\x05\x12\x0e\n\x06status\x18\x03 \x01(\x05\x12\x0f\n\x07Memssid\x18\x04 \x01(\t\x12\x0c\n\x04rssi\x18\x05 \x01(\x05\"Y\n\x10\x44rvUploadFileReq\x12\r\n\x05\x62izId\x18\x01 \x01(\t\x12\x0b\n\x03url\x18\x02 \x01(\t\x12\x0e\n\x06userId\x18\x03 \x01(\t\x12\x0b\n\x03num\x18\x04 \x01(\x05\x12\x0c\n\x04type\x18\x05 \x01(\x05\"$\n\x13\x44rvUploadFileCancel\x12\r\n\x05\x62izId\x18\x01 \x01(\t\"z\n\x15\x44rvUploadFileToAppReq\x12\r\n\x05\x62izId\x18\x01 \x01(\t\x12\x11\n\toperation\x18\x02 \x01(\x05\x12\x10\n\x08serverIp\x18\x03 \x01(\x07\x12\x12\n\nserverPort\x18\x04 \x01(\x05\x12\x0b\n\x03num\x18\x05 \x01(\x05\x12\x0c\n\x04type\x18\x06 \x01(\x05\"I\n\x15\x44rvUploadFileToAppRsp\x12\r\n\x05\x62izId\x18\x01 \x01(\t\x12\x11\n\toperation\x18\x02 \x01(\x05\x12\x0e\n\x06result\x18\x03 \x01(\x05\"+\n\x0f\x44rvDevInfoReqId\x12\n\n\x02id\x18\x01 \x01(\x05\x12\x0c\n\x04type\x18\x02 \x01(\x05\"Z\n\x10\x44rvDevInfoRespId\x12\n\n\x02id\x18\x01 \x01(\x05\x12\x0c\n\x04type\x18\x02 \x01(\x05\x12\x1e\n\x03res\x18\x03 \x01(\x0e\x32\x11.DrvDevInfoResult\x12\x0c\n\x04info\x18\x04 \x01(\t\"2\n\rDrvDevInfoReq\x12!\n\x07req_ids\x18\x01 \x03(\x0b\x32\x10.DrvDevInfoReqId\"5\n\x0e\x44rvDevInfoResp\x12#\n\x08resp_ids\x18\x01 \x03(\x0b\x32\x11.DrvDevInfoRespId\"\x8a\x01\n\x10\x44rvUpgradeReport\x12\x0f\n\x07\x64\x65vname\x18\x01 \x01(\t\x12\r\n\x05otaid\x18\x02 \x01(\t\x12\x0f\n\x07version\x18\x03 \x01(\t\x12\x10\n\x08progress\x18\x04 \x01(\x05\x12\x0e\n\x06result\x18\x05 \x01(\x05\x12\x0f\n\x07message\x18\x06 \x01(\t\x12\x12\n\nproperties\x18\x07 \x01(\t\"l\n\x13WifiIotStatusReport\x12\x16\n\x0ewifi_connected\x18\x01 \x01(\x08\x12\x15\n\riot_connected\x18\x02 \x01(\x08\x12\x12\n\nproductkey\x18\x03 \x01(\t\x12\x12\n\ndevicename\x18\x04 \x01(\t\"*\n\x0c\x42leTestBytes\x12\x0c\n\x04seqs\x18\x01 \x01(\x05\x12\x0c\n\x04\x64\x61ta\x18\x02 \x03(\x07\"$\n\x11GetNetworkInfoReq\x12\x0f\n\x07req_ids\x18\x01 \x01(\x05\"\x87\x01\n\x11GetNetworkInfoRsp\x12\x0f\n\x07req_ids\x18\x01 \x01(\x05\x12\x11\n\twifi_ssid\x18\x02 \x01(\t\x12\x10\n\x08wifi_mac\x18\x03 \x01(\t\x12\x11\n\twifi_rssi\x18\x04 \x01(\x05\x12\n\n\x02ip\x18\x05 \x01(\x07\x12\x0c\n\x04mask\x18\x06 \x01(\x07\x12\x0f\n\x07gateway\x18\x07 \x01(\x07\"N\n\x10mnet_inet_status\x12\x0f\n\x07\x63onnect\x18\x01 \x01(\x08\x12\n\n\x02ip\x18\x02 \x01(\x07\x12\x0c\n\x04mask\x18\x03 \x01(\x07\x12\x0f\n\x07gateway\x18\x04 \x01(\x07\"\xb6\x01\n\x08MnetInfo\x12\r\n\x05model\x18\x01 \x01(\t\x12\x10\n\x08revision\x18\x02 \x01(\t\x12\x0c\n\x04imei\x18\x03 \x01(\t\x12\x1a\n\x03sim\x18\x04 \x01(\x0e\x32\r.sim_card_sta\x12\x0c\n\x04imsi\x18\x05 \x01(\t\x12\"\n\tlink_type\x18\x06 \x01(\x0e\x32\x0f.mnet_link_type\x12\x0c\n\x04rssi\x18\x07 \x01(\x05\x12\x1f\n\x04inet\x18\x08 \x01(\x0b\x32\x11.mnet_inet_status\"!\n\x0eGetMnetInfoReq\x12\x0f\n\x07req_ids\x18\x01 \x01(\x05\"J\n\x0eGetMnetInfoRsp\x12\x0f\n\x07req_ids\x18\x01 \x01(\x05\x12\x0e\n\x06result\x18\x02 \x01(\x05\x12\x17\n\x04mnet\x18\x03 \x01(\x0b\x32\t.MnetInfo\"}\n\x07MnetApn\x12\x0b\n\x03\x63id\x18\x01 \x01(\x05\x12\x11\n\tapn_alias\x18\x02 \x01(\t\x12\x10\n\x08\x61pn_name\x18\x03 \x01(\t\x12\x1c\n\x04\x61uth\x18\x04 \x01(\x0e\x32\x0e.apn_auth_type\x12\x10\n\x08username\x18\x05 \x01(\t\x12\x10\n\x08password\x18\x06 \x01(\t\"9\n\nMnetApnCfg\x12\x14\n\x0c\x61pn_used_idx\x18\x01 \x01(\x05\x12\x15\n\x03\x61pn\x18\x02 \x03(\x0b\x32\x08.MnetApn\">\n\rMnetApnSetCfg\x12\x13\n\x0buse_default\x18\x01 \x01(\x08\x12\x18\n\x03\x63\x66g\x18\x02 \x01(\x0b\x32\x0b.MnetApnCfg\"~\n\x07MnetCfg\x12\x13\n\x0bmnet_enable\x18\x01 \x01(\x08\x12\x13\n\x0binet_enable\x18\x02 \x01(\x08\x12\x17\n\x04type\x18\x03 \x01(\x0e\x32\t.net_type\x12\x1b\n\x03\x61pn\x18\x04 \x01(\x0b\x32\x0e.MnetApnSetCfg\x12\x13\n\x0b\x61uto_select\x18\x05 \x01(\x08\" \n\rGetMnetCfgReq\x12\x0f\n\x07req_ids\x18\x01 \x01(\x05\"G\n\rGetMnetCfgRsp\x12\x0f\n\x07req_ids\x18\x01 \x01(\x05\x12\x0e\n\x06result\x18\x02 \x01(\x05\x12\x15\n\x03\x63\x66g\x18\x03 \x01(\x0b\x32\x08.MnetCfg\"7\n\rSetMnetCfgReq\x12\x0f\n\x07req_ids\x18\x01 \x01(\x05\x12\x15\n\x03\x63\x66g\x18\x02 \x01(\x0b\x32\x08.MnetCfg\"0\n\rSetMnetCfgRsp\x12\x0f\n\x07req_ids\x18\x01 \x01(\x05\x12\x0e\n\x06result\x18\x02 \x01(\x05\"N\n\x0e\x44rvDebugDdsZmq\x12\x11\n\tis_enable\x18\x01 \x01(\x08\x12\x15\n\rrx_topic_name\x18\x02 \x01(\t\x12\x12\n\ntx_zmq_url\x18\x03 \x01(\t\"!\n\x0cSetDrvBleMTU\x12\x11\n\tmtu_count\x18\x01 \x01(\x05\"\xca\n\n\x06\x44\x65vNet\x12\x18\n\x0etodev_ble_sync\x18\x01 \x01(\x05H\x00\x12\'\n\x0etodev_ConfType\x18\x02 \x01(\x0e\x32\r.WifiConfTypeH\x00\x12-\n\x13todev_WifiMsgUpload\x18\x03 \x01(\x0b\x32\x0e.DrvWifiUploadH\x00\x12,\n\x14todev_WifiListUpload\x18\x04 \x01(\x0b\x32\x0c.DrvWifiListH\x00\x12/\n\x18todev_Wifi_Configuration\x18\x05 \x01(\x0b\x32\x0b.DrvWifiSetH\x00\x12$\n\rtoapp_WifiMsg\x18\x06 \x01(\x0b\x32\x0b.DrvWifiMsgH\x00\x12&\n\x0etoapp_WifiConf\x18\x07 \x01(\x0b\x32\x0c.DrvWifiConfH\x00\x12*\n\x10toapp_ListUpload\x18\x08 \x01(\x0b\x32\x0e.DrvListUploadH\x00\x12/\n\x12todev_req_log_info\x18\t \x01(\x0b\x32\x11.DrvUploadFileReqH\x00\x12\x35\n\x15todev_log_data_cancel\x18\n \x01(\x0b\x32\x14.DrvUploadFileCancelH\x00\x12+\n\x11todev_devinfo_req\x18\x0b \x01(\x0b\x32\x0e.DrvDevInfoReqH\x00\x12-\n\x12toapp_devinfo_resp\x18\x0c \x01(\x0b\x32\x0f.DrvDevInfoRespH\x00\x12\x31\n\x14toapp_upgrade_report\x18\r \x01(\x0b\x32\x11.DrvUpgradeReportH\x00\x12\x35\n\x15toapp_wifi_iot_status\x18\x0e \x01(\x0b\x32\x14.WifiIotStatusReportH\x00\x12\x36\n\x14todev_uploadfile_req\x18\x0f \x01(\x0b\x32\x16.DrvUploadFileToAppReqH\x00\x12\x36\n\x14toapp_uploadfile_rsp\x18\x10 \x01(\x0b\x32\x16.DrvUploadFileToAppRspH\x00\x12\x33\n\x15todev_networkinfo_req\x18\x11 \x01(\x0b\x32\x12.GetNetworkInfoReqH\x00\x12\x33\n\x15toapp_networkinfo_rsp\x18\x12 \x01(\x0b\x32\x12.GetNetworkInfoRspH\x00\x12%\n\x0c\x62ir_testdata\x18\x13 \x01(\x0b\x32\r.BleTestBytesH\x00\x12.\n\x13todev_mnet_info_req\x18\x14 \x01(\x0b\x32\x0f.GetMnetInfoReqH\x00\x12.\n\x13toapp_mnet_info_rsp\x18\x15 \x01(\x0b\x32\x0f.GetMnetInfoRspH\x00\x12\x30\n\x16todev_get_mnet_cfg_req\x18\x16 \x01(\x0b\x32\x0e.GetMnetCfgReqH\x00\x12\x30\n\x16toapp_get_mnet_cfg_rsp\x18\x17 \x01(\x0b\x32\x0e.GetMnetCfgRspH\x00\x12\x30\n\x16todev_set_mnet_cfg_req\x18\x18 \x01(\x0b\x32\x0e.SetMnetCfgReqH\x00\x12\x30\n\x16toapp_set_mnet_cfg_rsp\x18\x19 \x01(\x0b\x32\x0e.SetMnetCfgRspH\x00\x12,\n\x11todev_set_dds2zmq\x18\x1a \x01(\x0b\x32\x0f.DrvDebugDdsZmqH\x00\x12*\n\x11todev_set_ble_mtu\x18\x1b \x01(\x0b\x32\r.SetDrvBleMTUH\x00\x12\x36\n\x19todev_set_iot_offline_req\x18\x1c \x01(\x0e\x32\x11.iot_conctrl_typeH\x00\x42\x0c\n\nNetSubType*l\n\x0cWifiConfType\x12\x12\n\x0e\x44isconnectWifi\x10\x00\x12\x0e\n\nForgetWifi\x10\x01\x12\x15\n\x11\x44irectConnectWifi\x10\x02\x12\x11\n\rReconnectWifi\x10\x03\x12\x0e\n\nset_enable\x10\x04*l\n\x15\x44rvUploadFileFileType\x12\x11\n\rFILE_TYPE_ALL\x10\x00\x12\x14\n\x10\x46ILE_TYPE_SYSLOG\x10\x01\x12\x14\n\x10\x46ILE_TYPE_NAVLOG\x10\x02\x12\x14\n\x10\x46ILE_TYPE_RTKLOG\x10\x03*R\n\x10\x44rvDevInfoResult\x12\x13\n\x0f\x44RV_RESULT_FAIL\x10\x00\x12\x12\n\x0e\x44RV_RESULT_SUC\x10\x01\x12\x15\n\x11\x44RV_RESULT_NOTSUP\x10\x02*p\n\x0csim_card_sta\x12\x0c\n\x08SIM_NONE\x10\x00\x12\x0f\n\x0bSIM_NO_CARD\x10\x01\x12\x0f\n\x0bSIM_INVALID\x10\x02\x12\x11\n\rSIM_INPUT_PIN\x10\x03\x12\x11\n\rSIM_INPUT_PUK\x10\x04\x12\n\n\x06SIM_OK\x10\x05*Z\n\x0emnet_link_type\x12\x12\n\x0eMNET_LINK_NONE\x10\x00\x12\x10\n\x0cMNET_LINK_2G\x10\x01\x12\x10\n\x0cMNET_LINK_3G\x10\x02\x12\x10\n\x0cMNET_LINK_4G\x10\x03*^\n\rapn_auth_type\x12\x11\n\rAPN_AUTH_NONE\x10\x00\x12\x10\n\x0c\x41PN_AUTH_PAP\x10\x01\x12\x11\n\rAPN_AUTH_CHAP\x10\x02\x12\x15\n\x11\x41PN_AUTH_PAP_CHAP\x10\x03*0\n\x08net_type\x12\x11\n\rNET_TYPE_WIFI\x10\x00\x12\x11\n\rNET_TYPE_MNET\x10\x01*Q\n\x10iot_conctrl_type\x12\x14\n\x10IOT_TYPE_OFFLINE\x10\x00\x12\x13\n\x0fIOT_TYPE_ONLINE\x10\x01\x12\x12\n\x0eIOT_TYPE_RESET\x10\x02\x62\x06proto3')
16
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1fpymammotion/proto/dev_net.proto\"(\n\rDrvWifiUpload\x12\x17\n\x0fwifi_msg_upload\x18\x01 \x01(\x05\"&\n\x0b\x44rvWifiList\x12\x17\n\x0fnvs_wifi_upload\x18\x01 \x01(\x05\"H\n\nDrvWifiSet\x12\x13\n\x0b\x63onfigParam\x18\x01 \x01(\x05\x12\x10\n\x08\x43onfssid\x18\x02 \x01(\t\x12\x13\n\x0bwifi_enable\x18\x03 \x01(\x08\"\xa8\x01\n\nDrvWifiMsg\x12\x0f\n\x07status1\x18\x01 \x01(\x08\x12\x0f\n\x07status2\x18\x02 \x01(\x08\x12\n\n\x02ip\x18\x03 \x01(\t\x12\x0f\n\x07msgssid\x18\x04 \x01(\t\x12\x10\n\x08password\x18\x05 \x01(\t\x12\x0c\n\x04rssi\x18\x06 \x01(\x05\x12\x12\n\nproductkey\x18\x07 \x01(\t\x12\x12\n\ndevicename\x18\x08 \x01(\t\x12\x13\n\x0bwifi_enable\x18\t \x01(\x08\"?\n\x0b\x44rvWifiConf\x12\x10\n\x08succFlag\x18\x01 \x01(\x08\x12\x0c\n\x04\x63ode\x18\x02 \x01(\x05\x12\x10\n\x08\x43onfssid\x18\x03 \x01(\t\"\\\n\rDrvListUpload\x12\x0b\n\x03sum\x18\x01 \x01(\x05\x12\x0f\n\x07\x63urrent\x18\x02 \x01(\x05\x12\x0e\n\x06status\x18\x03 \x01(\x05\x12\x0f\n\x07Memssid\x18\x04 \x01(\t\x12\x0c\n\x04rssi\x18\x05 \x01(\x05\"Y\n\x10\x44rvUploadFileReq\x12\r\n\x05\x62izId\x18\x01 \x01(\t\x12\x0b\n\x03url\x18\x02 \x01(\t\x12\x0e\n\x06userId\x18\x03 \x01(\t\x12\x0b\n\x03num\x18\x04 \x01(\x05\x12\x0c\n\x04type\x18\x05 \x01(\x05\"$\n\x13\x44rvUploadFileCancel\x12\r\n\x05\x62izId\x18\x01 \x01(\t\"z\n\x15\x44rvUploadFileToAppReq\x12\r\n\x05\x62izId\x18\x01 \x01(\t\x12\x11\n\toperation\x18\x02 \x01(\x05\x12\x10\n\x08serverIp\x18\x03 \x01(\x07\x12\x12\n\nserverPort\x18\x04 \x01(\x05\x12\x0b\n\x03num\x18\x05 \x01(\x05\x12\x0c\n\x04type\x18\x06 \x01(\x05\"I\n\x15\x44rvUploadFileToAppRsp\x12\r\n\x05\x62izId\x18\x01 \x01(\t\x12\x11\n\toperation\x18\x02 \x01(\x05\x12\x0e\n\x06result\x18\x03 \x01(\x05\"+\n\x0f\x44rvDevInfoReqId\x12\n\n\x02id\x18\x01 \x01(\x05\x12\x0c\n\x04type\x18\x02 \x01(\x05\"Z\n\x10\x44rvDevInfoRespId\x12\n\n\x02id\x18\x01 \x01(\x05\x12\x0c\n\x04type\x18\x02 \x01(\x05\x12\x1e\n\x03res\x18\x03 \x01(\x0e\x32\x11.DrvDevInfoResult\x12\x0c\n\x04info\x18\x04 \x01(\t\"2\n\rDrvDevInfoReq\x12!\n\x07req_ids\x18\x01 \x03(\x0b\x32\x10.DrvDevInfoReqId\"5\n\x0e\x44rvDevInfoResp\x12#\n\x08resp_ids\x18\x01 \x03(\x0b\x32\x11.DrvDevInfoRespId\"\x8a\x01\n\x10\x44rvUpgradeReport\x12\x0f\n\x07\x64\x65vname\x18\x01 \x01(\t\x12\r\n\x05otaid\x18\x02 \x01(\t\x12\x0f\n\x07version\x18\x03 \x01(\t\x12\x10\n\x08progress\x18\x04 \x01(\x05\x12\x0e\n\x06result\x18\x05 \x01(\x05\x12\x0f\n\x07message\x18\x06 \x01(\t\x12\x12\n\nproperties\x18\x07 \x01(\t\"l\n\x13WifiIotStatusReport\x12\x16\n\x0ewifi_connected\x18\x01 \x01(\x08\x12\x15\n\riot_connected\x18\x02 \x01(\x08\x12\x12\n\nproductkey\x18\x03 \x01(\t\x12\x12\n\ndevicename\x18\x04 \x01(\t\"*\n\x0c\x42leTestBytes\x12\x0c\n\x04seqs\x18\x01 \x01(\x05\x12\x0c\n\x04\x64\x61ta\x18\x02 \x03(\x07\"$\n\x11GetNetworkInfoReq\x12\x0f\n\x07req_ids\x18\x01 \x01(\x05\"\x87\x01\n\x11GetNetworkInfoRsp\x12\x0f\n\x07req_ids\x18\x01 \x01(\x05\x12\x11\n\twifi_ssid\x18\x02 \x01(\t\x12\x10\n\x08wifi_mac\x18\x03 \x01(\t\x12\x11\n\twifi_rssi\x18\x04 \x01(\x05\x12\n\n\x02ip\x18\x05 \x01(\x07\x12\x0c\n\x04mask\x18\x06 \x01(\x07\x12\x0f\n\x07gateway\x18\x07 \x01(\x07\"N\n\x10mnet_inet_status\x12\x0f\n\x07\x63onnect\x18\x01 \x01(\x08\x12\n\n\x02ip\x18\x02 \x01(\x07\x12\x0c\n\x04mask\x18\x03 \x01(\x07\x12\x0f\n\x07gateway\x18\x04 \x01(\x07\"\xb6\x01\n\x08MnetInfo\x12\r\n\x05model\x18\x01 \x01(\t\x12\x10\n\x08revision\x18\x02 \x01(\t\x12\x0c\n\x04imei\x18\x03 \x01(\t\x12\x1a\n\x03sim\x18\x04 \x01(\x0e\x32\r.sim_card_sta\x12\x0c\n\x04imsi\x18\x05 \x01(\t\x12\"\n\tlink_type\x18\x06 \x01(\x0e\x32\x0f.mnet_link_type\x12\x0c\n\x04rssi\x18\x07 \x01(\x05\x12\x1f\n\x04inet\x18\x08 \x01(\x0b\x32\x11.mnet_inet_status\"!\n\x0eGetMnetInfoReq\x12\x0f\n\x07req_ids\x18\x01 \x01(\x05\"J\n\x0eGetMnetInfoRsp\x12\x0f\n\x07req_ids\x18\x01 \x01(\x05\x12\x0e\n\x06result\x18\x02 \x01(\x05\x12\x17\n\x04mnet\x18\x03 \x01(\x0b\x32\t.MnetInfo\"}\n\x07MnetApn\x12\x0b\n\x03\x63id\x18\x01 \x01(\x05\x12\x11\n\tapn_alias\x18\x02 \x01(\t\x12\x10\n\x08\x61pn_name\x18\x03 \x01(\t\x12\x1c\n\x04\x61uth\x18\x04 \x01(\x0e\x32\x0e.apn_auth_type\x12\x10\n\x08username\x18\x05 \x01(\t\x12\x10\n\x08password\x18\x06 \x01(\t\"9\n\nMnetApnCfg\x12\x14\n\x0c\x61pn_used_idx\x18\x01 \x01(\x05\x12\x15\n\x03\x61pn\x18\x02 \x03(\x0b\x32\x08.MnetApn\">\n\rMnetApnSetCfg\x12\x13\n\x0buse_default\x18\x01 \x01(\x08\x12\x18\n\x03\x63\x66g\x18\x02 \x01(\x0b\x32\x0b.MnetApnCfg\"~\n\x07MnetCfg\x12\x13\n\x0bmnet_enable\x18\x01 \x01(\x08\x12\x13\n\x0binet_enable\x18\x02 \x01(\x08\x12\x17\n\x04type\x18\x03 \x01(\x0e\x32\t.net_type\x12\x1b\n\x03\x61pn\x18\x04 \x01(\x0b\x32\x0e.MnetApnSetCfg\x12\x13\n\x0b\x61uto_select\x18\x05 \x01(\x08\" \n\rGetMnetCfgReq\x12\x0f\n\x07req_ids\x18\x01 \x01(\x05\"G\n\rGetMnetCfgRsp\x12\x0f\n\x07req_ids\x18\x01 \x01(\x05\x12\x0e\n\x06result\x18\x02 \x01(\x05\x12\x15\n\x03\x63\x66g\x18\x03 \x01(\x0b\x32\x08.MnetCfg\"7\n\rSetMnetCfgReq\x12\x0f\n\x07req_ids\x18\x01 \x01(\x05\x12\x15\n\x03\x63\x66g\x18\x02 \x01(\x0b\x32\x08.MnetCfg\"0\n\rSetMnetCfgRsp\x12\x0f\n\x07req_ids\x18\x01 \x01(\x05\x12\x0e\n\x06result\x18\x02 \x01(\x05\"N\n\x0e\x44rvDebugDdsZmq\x12\x11\n\tis_enable\x18\x01 \x01(\x08\x12\x15\n\rrx_topic_name\x18\x02 \x01(\t\x12\x12\n\ntx_zmq_url\x18\x03 \x01(\t\"!\n\x0cSetDrvBleMTU\x12\x11\n\tmtu_count\x18\x01 \x01(\x05\"\xca\n\n\x06\x44\x65vNet\x12\x18\n\x0etodev_ble_sync\x18\x01 \x01(\x05H\x00\x12\'\n\x0etodev_ConfType\x18\x02 \x01(\x0e\x32\r.WifiConfTypeH\x00\x12-\n\x13todev_WifiMsgUpload\x18\x03 \x01(\x0b\x32\x0e.DrvWifiUploadH\x00\x12,\n\x14todev_WifiListUpload\x18\x04 \x01(\x0b\x32\x0c.DrvWifiListH\x00\x12/\n\x18todev_Wifi_Configuration\x18\x05 \x01(\x0b\x32\x0b.DrvWifiSetH\x00\x12$\n\rtoapp_WifiMsg\x18\x06 \x01(\x0b\x32\x0b.DrvWifiMsgH\x00\x12&\n\x0etoapp_WifiConf\x18\x07 \x01(\x0b\x32\x0c.DrvWifiConfH\x00\x12*\n\x10toapp_ListUpload\x18\x08 \x01(\x0b\x32\x0e.DrvListUploadH\x00\x12/\n\x12todev_req_log_info\x18\t \x01(\x0b\x32\x11.DrvUploadFileReqH\x00\x12\x35\n\x15todev_log_data_cancel\x18\n \x01(\x0b\x32\x14.DrvUploadFileCancelH\x00\x12+\n\x11todev_devinfo_req\x18\x0b \x01(\x0b\x32\x0e.DrvDevInfoReqH\x00\x12-\n\x12toapp_devinfo_resp\x18\x0c \x01(\x0b\x32\x0f.DrvDevInfoRespH\x00\x12\x31\n\x14toapp_upgrade_report\x18\r \x01(\x0b\x32\x11.DrvUpgradeReportH\x00\x12\x35\n\x15toapp_wifi_iot_status\x18\x0e \x01(\x0b\x32\x14.WifiIotStatusReportH\x00\x12\x36\n\x14todev_uploadfile_req\x18\x0f \x01(\x0b\x32\x16.DrvUploadFileToAppReqH\x00\x12\x36\n\x14toapp_uploadfile_rsp\x18\x10 \x01(\x0b\x32\x16.DrvUploadFileToAppRspH\x00\x12\x33\n\x15todev_networkinfo_req\x18\x11 \x01(\x0b\x32\x12.GetNetworkInfoReqH\x00\x12\x33\n\x15toapp_networkinfo_rsp\x18\x12 \x01(\x0b\x32\x12.GetNetworkInfoRspH\x00\x12%\n\x0c\x62ir_testdata\x18\x13 \x01(\x0b\x32\r.BleTestBytesH\x00\x12.\n\x13todev_mnet_info_req\x18\x14 \x01(\x0b\x32\x0f.GetMnetInfoReqH\x00\x12.\n\x13toapp_mnet_info_rsp\x18\x15 \x01(\x0b\x32\x0f.GetMnetInfoRspH\x00\x12\x30\n\x16todev_get_mnet_cfg_req\x18\x16 \x01(\x0b\x32\x0e.GetMnetCfgReqH\x00\x12\x30\n\x16toapp_get_mnet_cfg_rsp\x18\x17 \x01(\x0b\x32\x0e.GetMnetCfgRspH\x00\x12\x30\n\x16todev_set_mnet_cfg_req\x18\x18 \x01(\x0b\x32\x0e.SetMnetCfgReqH\x00\x12\x30\n\x16toapp_set_mnet_cfg_rsp\x18\x19 \x01(\x0b\x32\x0e.SetMnetCfgRspH\x00\x12,\n\x11todev_set_dds2zmq\x18\x1a \x01(\x0b\x32\x0f.DrvDebugDdsZmqH\x00\x12*\n\x11todev_set_ble_mtu\x18\x1b \x01(\x0b\x32\r.SetDrvBleMTUH\x00\x12\x36\n\x19todev_set_iot_offline_req\x18\x1c \x01(\x0e\x32\x11.iot_conctrl_typeH\x00\x42\x0c\n\nNetSubType*l\n\x0cWifiConfType\x12\x12\n\x0e\x44isconnectWifi\x10\x00\x12\x0e\n\nForgetWifi\x10\x01\x12\x15\n\x11\x44irectConnectWifi\x10\x02\x12\x11\n\rReconnectWifi\x10\x03\x12\x0e\n\nset_enable\x10\x04*l\n\x15\x44rvUploadFileFileType\x12\x11\n\rFILE_TYPE_ALL\x10\x00\x12\x14\n\x10\x46ILE_TYPE_SYSLOG\x10\x01\x12\x14\n\x10\x46ILE_TYPE_NAVLOG\x10\x02\x12\x14\n\x10\x46ILE_TYPE_RTKLOG\x10\x03*R\n\x10\x44rvDevInfoResult\x12\x13\n\x0f\x44RV_RESULT_FAIL\x10\x00\x12\x12\n\x0e\x44RV_RESULT_SUC\x10\x01\x12\x15\n\x11\x44RV_RESULT_NOTSUP\x10\x02*p\n\x0csim_card_sta\x12\x0c\n\x08SIM_NONE\x10\x00\x12\x0f\n\x0bSIM_NO_CARD\x10\x01\x12\x0f\n\x0bSIM_INVALID\x10\x02\x12\x11\n\rSIM_INPUT_PIN\x10\x03\x12\x11\n\rSIM_INPUT_PUK\x10\x04\x12\n\n\x06SIM_OK\x10\x05*Z\n\x0emnet_link_type\x12\x12\n\x0eMNET_LINK_NONE\x10\x00\x12\x10\n\x0cMNET_LINK_2G\x10\x01\x12\x10\n\x0cMNET_LINK_3G\x10\x02\x12\x10\n\x0cMNET_LINK_4G\x10\x03*^\n\rapn_auth_type\x12\x11\n\rAPN_AUTH_NONE\x10\x00\x12\x10\n\x0c\x41PN_AUTH_PAP\x10\x01\x12\x11\n\rAPN_AUTH_CHAP\x10\x02\x12\x15\n\x11\x41PN_AUTH_PAP_CHAP\x10\x03*0\n\x08net_type\x12\x11\n\rNET_TYPE_WIFI\x10\x00\x12\x11\n\rNET_TYPE_MNET\x10\x01*Q\n\x10iot_conctrl_type\x12\x14\n\x10IOT_TYPE_OFFLINE\x10\x00\x12\x13\n\x0fIOT_TYPE_ONLINE\x10\x01\x12\x12\n\x0eIOT_TYPE_RESET\x10\x02\x62\x06proto3')
17
17
 
18
18
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, globals())
19
19
  _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'pymammotion.proto.dev_net_pb2', globals())
@@ -236,18 +236,16 @@ class DrvWifiConf(_message.Message):
236
236
  def __init__(self, succFlag: bool = ..., code: _Optional[int] = ..., Confssid: _Optional[str] = ...) -> None: ...
237
237
 
238
238
  class DrvWifiList(_message.Message):
239
- __slots__ = ["NVS_Wifi_Upload"]
239
+ __slots__ = ["nvs_wifi_upload"]
240
240
  NVS_WIFI_UPLOAD_FIELD_NUMBER: _ClassVar[int]
241
- NVS_Wifi_Upload: int
242
- def __init__(self, NVS_Wifi_Upload: _Optional[int] = ...) -> None: ...
241
+ nvs_wifi_upload: int
242
+ def __init__(self, nvs_wifi_upload: _Optional[int] = ...) -> None: ...
243
243
 
244
244
  class DrvWifiMsg(_message.Message):
245
- __slots__ = ["IP", "Msgssid", "devicename", "password", "productkey", "rssi", "status1", "status2", "wifi_enable"]
245
+ __slots__ = ["devicename", "ip", "msgssid", "password", "productkey", "rssi", "status1", "status2", "wifi_enable"]
246
246
  DEVICENAME_FIELD_NUMBER: _ClassVar[int]
247
- IP: str
248
247
  IP_FIELD_NUMBER: _ClassVar[int]
249
248
  MSGSSID_FIELD_NUMBER: _ClassVar[int]
250
- Msgssid: str
251
249
  PASSWORD_FIELD_NUMBER: _ClassVar[int]
252
250
  PRODUCTKEY_FIELD_NUMBER: _ClassVar[int]
253
251
  RSSI_FIELD_NUMBER: _ClassVar[int]
@@ -255,13 +253,15 @@ class DrvWifiMsg(_message.Message):
255
253
  STATUS2_FIELD_NUMBER: _ClassVar[int]
256
254
  WIFI_ENABLE_FIELD_NUMBER: _ClassVar[int]
257
255
  devicename: str
256
+ ip: str
257
+ msgssid: str
258
258
  password: str
259
259
  productkey: str
260
260
  rssi: int
261
261
  status1: bool
262
262
  status2: bool
263
263
  wifi_enable: bool
264
- def __init__(self, status1: bool = ..., status2: bool = ..., IP: _Optional[str] = ..., Msgssid: _Optional[str] = ..., password: _Optional[str] = ..., rssi: _Optional[int] = ..., productkey: _Optional[str] = ..., devicename: _Optional[str] = ..., wifi_enable: bool = ...) -> None: ...
264
+ def __init__(self, status1: bool = ..., status2: bool = ..., ip: _Optional[str] = ..., msgssid: _Optional[str] = ..., password: _Optional[str] = ..., rssi: _Optional[int] = ..., productkey: _Optional[str] = ..., devicename: _Optional[str] = ..., wifi_enable: bool = ...) -> None: ...
265
265
 
266
266
  class DrvWifiSet(_message.Message):
267
267
  __slots__ = ["Confssid", "configParam", "wifi_enable"]
@@ -274,10 +274,10 @@ class DrvWifiSet(_message.Message):
274
274
  def __init__(self, configParam: _Optional[int] = ..., Confssid: _Optional[str] = ..., wifi_enable: bool = ...) -> None: ...
275
275
 
276
276
  class DrvWifiUpload(_message.Message):
277
- __slots__ = ["Wifi_Msg_Upload"]
277
+ __slots__ = ["wifi_msg_upload"]
278
278
  WIFI_MSG_UPLOAD_FIELD_NUMBER: _ClassVar[int]
279
- Wifi_Msg_Upload: int
280
- def __init__(self, Wifi_Msg_Upload: _Optional[int] = ...) -> None: ...
279
+ wifi_msg_upload: int
280
+ def __init__(self, wifi_msg_upload: _Optional[int] = ...) -> None: ...
281
281
 
282
282
  class GetMnetCfgReq(_message.Message):
283
283
  __slots__ = ["req_ids"]
@@ -1,5 +1,6 @@
1
1
  syntax = "proto3";
2
2
 
3
+ import "pymammotion/proto/basestation.proto";
3
4
  import "pymammotion/proto/mctrl_driver.proto";
4
5
  import "pymammotion/proto/mctrl_nav.proto";
5
6
  import "pymammotion/proto/mctrl_sys.proto";
@@ -28,6 +29,7 @@ message LubaMsg {
28
29
  SocMul mul = 14;
29
30
  MsgNull null = 16;
30
31
  MctlPept pept = 17;
32
+ BaseStation base = 18;
31
33
  }
32
34
  uint64 timestamp = 15;
33
35
  }
@@ -4,8 +4,8 @@
4
4
  from dataclasses import dataclass
5
5
 
6
6
  import betterproto
7
-
8
7
  from .common import *
8
+ from .basestation import *
9
9
  from .dev_net import *
10
10
  from .luba_mul import *
11
11
  from .mctrl_driver import *
@@ -77,4 +77,5 @@ class LubaMsg(betterproto.Message):
77
77
  mul: "SocMul" = betterproto.message_field(14, group="LubaSubMsg")
78
78
  null: "MsgNull" = betterproto.message_field(16, group="LubaSubMsg")
79
79
  pept: "MctlPept" = betterproto.message_field(17, group="LubaSubMsg")
80
+ base: "BaseStation" = betterproto.message_field(18, group="LubaSubMsg")
80
81
  timestamp: int = betterproto.uint64_field(15)
@@ -11,6 +11,7 @@ from google.protobuf import symbol_database as _symbol_database
11
11
  _sym_db = _symbol_database.Default()
12
12
 
13
13
 
14
+ from pymammotion.proto import basestation_pb2 as pymammotion_dot_proto_dot_basestation__pb2
14
15
  from pymammotion.proto import mctrl_driver_pb2 as pymammotion_dot_proto_dot_mctrl__driver__pb2
15
16
  from pymammotion.proto import mctrl_nav_pb2 as pymammotion_dot_proto_dot_mctrl__nav__pb2
16
17
  from pymammotion.proto import mctrl_sys_pb2 as pymammotion_dot_proto_dot_mctrl__sys__pb2
@@ -20,21 +21,21 @@ from pymammotion.proto import luba_mul_pb2 as pymammotion_dot_proto_dot_luba__mu
20
21
  from pymammotion.proto import mctrl_pept_pb2 as pymammotion_dot_proto_dot_mctrl__pept__pb2
21
22
 
22
23
 
23
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n pymammotion/proto/luba_msg.proto\x1a$pymammotion/proto/mctrl_driver.proto\x1a!pymammotion/proto/mctrl_nav.proto\x1a!pymammotion/proto/mctrl_sys.proto\x1a\x1fpymammotion/proto/dev_net.proto\x1a!pymammotion/proto/mctrl_ota.proto\x1a pymammotion/proto/luba_mul.proto\x1a\"pymammotion/proto/mctrl_pept.proto\"\t\n\x07MsgNull\"\x99\x03\n\x07LubaMsg\x12\x1c\n\x07msgtype\x18\x01 \x01(\x0e\x32\x0b.MsgCmdType\x12\x1a\n\x06sender\x18\x02 \x01(\x0e\x32\n.MsgDevice\x12\x19\n\x05rcver\x18\x03 \x01(\x0e\x32\n.MsgDevice\x12\x19\n\x07msgattr\x18\x04 \x01(\x0e\x32\x08.MsgAttr\x12\x0c\n\x04seqs\x18\x05 \x01(\x05\x12\x0f\n\x07version\x18\x06 \x01(\x05\x12\x0f\n\x07subtype\x18\x07 \x01(\x05\x12\x16\n\x03net\x18\x08 \x01(\x0b\x32\x07.DevNetH\x00\x12\x17\n\x03sys\x18\n \x01(\x0b\x32\x08.MctlSysH\x00\x12\x17\n\x03nav\x18\x0b \x01(\x0b\x32\x08.MctlNavH\x00\x12\x1d\n\x06\x64river\x18\x0c \x01(\x0b\x32\x0b.MctlDriverH\x00\x12\x17\n\x03ota\x18\r \x01(\x0b\x32\x08.MctlOtaH\x00\x12\x16\n\x03mul\x18\x0e \x01(\x0b\x32\x07.SocMulH\x00\x12\x18\n\x04null\x18\x10 \x01(\x0b\x32\x08.MsgNullH\x00\x12\x19\n\x04pept\x18\x11 \x01(\x0b\x32\t.MctlPeptH\x00\x12\x11\n\ttimestamp\x18\x0f \x01(\x04\x42\x0c\n\nLubaSubMsg*\xd7\x02\n\nMsgCmdType\x12\x16\n\x12MSG_CMD_TYPE_START\x10\x00\x12\x15\n\x10MSG_CMD_TYPE_NAV\x10\xf0\x01\x12\x1e\n\x19MSG_CMD_TYPE_LOCALIZATION\x10\xf1\x01\x12\x1a\n\x15MSG_CMD_TYPE_PLANNING\x10\xf2\x01\x12\x1e\n\x19MSG_CMD_TYPE_EMBED_DRIVER\x10\xf3\x01\x12\x1b\n\x16MSG_CMD_TYPE_EMBED_SYS\x10\xf4\x01\x12\x1f\n\x1aMSG_CMD_TYPE_EMBED_MIDWARE\x10\xf5\x01\x12\x1b\n\x16MSG_CMD_TYPE_EMBED_OTA\x10\xf6\x01\x12\x1d\n\x18MSG_CMD_TYPE_APPLICATION\x10\xf7\x01\x12\x15\n\x10MSG_CMD_TYPE_ESP\x10\xf8\x01\x12\x15\n\x10MSG_CMD_TYPE_MUL\x10\xf9\x01\x12\x16\n\x11MSG_CMD_TYPE_PEPT\x10\xfa\x01*V\n\x07MsgAttr\x12\x11\n\rMSG_ATTR_NONE\x10\x00\x12\x10\n\x0cMSG_ATTR_REQ\x10\x01\x12\x11\n\rMSG_ATTR_RESP\x10\x02\x12\x13\n\x0fMSG_ATTR_REPORT\x10\x03*\xa8\x02\n\tMsgDevice\x12\x10\n\x0c\x44\x45V_COMM_ESP\x10\x00\x12\x0f\n\x0b\x44\x45V_MAINCTL\x10\x01\x12\x11\n\rDEV_LEFTMOTOR\x10\x02\x12\x12\n\x0e\x44\x45V_RIGHTMOTOR\x10\x03\x12\x13\n\x0f\x44\x45V_BASESTATION\x10\x04\x12\x0e\n\nDEV_RTKCLI\x10\x05\x12\x0f\n\x0b\x44\x45V_USBHOST\x10\x06\x12\x11\n\rDEV_MOBILEAPP\x10\x07\x12\x11\n\rDEV_IOTSERVER\x10\x08\x12\x0b\n\x07\x44\x45V_BMS\x10\t\x12\x12\n\x0e\x44\x45V_NAVIGATION\x10\x11\x12\x14\n\x10\x44\x45V_LOCALIZATION\x10\x12\x12\x12\n\x0e\x44\x45V_PERCEPTION\x10\x13\x12\x19\n\x15SOC_MODULE_MULTIMEDIA\x10\x15\x12\x0f\n\x0b\x44\x45V_IOTCTRL\x10\x19\x62\x06proto3')
24
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n pymammotion/proto/luba_msg.proto\x1a#pymammotion/proto/basestation.proto\x1a$pymammotion/proto/mctrl_driver.proto\x1a!pymammotion/proto/mctrl_nav.proto\x1a!pymammotion/proto/mctrl_sys.proto\x1a\x1fpymammotion/proto/dev_net.proto\x1a!pymammotion/proto/mctrl_ota.proto\x1a pymammotion/proto/luba_mul.proto\x1a\"pymammotion/proto/mctrl_pept.proto\"\t\n\x07MsgNull\"\xb7\x03\n\x07LubaMsg\x12\x1c\n\x07msgtype\x18\x01 \x01(\x0e\x32\x0b.MsgCmdType\x12\x1a\n\x06sender\x18\x02 \x01(\x0e\x32\n.MsgDevice\x12\x19\n\x05rcver\x18\x03 \x01(\x0e\x32\n.MsgDevice\x12\x19\n\x07msgattr\x18\x04 \x01(\x0e\x32\x08.MsgAttr\x12\x0c\n\x04seqs\x18\x05 \x01(\x05\x12\x0f\n\x07version\x18\x06 \x01(\x05\x12\x0f\n\x07subtype\x18\x07 \x01(\x05\x12\x16\n\x03net\x18\x08 \x01(\x0b\x32\x07.DevNetH\x00\x12\x17\n\x03sys\x18\n \x01(\x0b\x32\x08.MctlSysH\x00\x12\x17\n\x03nav\x18\x0b \x01(\x0b\x32\x08.MctlNavH\x00\x12\x1d\n\x06\x64river\x18\x0c \x01(\x0b\x32\x0b.MctlDriverH\x00\x12\x17\n\x03ota\x18\r \x01(\x0b\x32\x08.MctlOtaH\x00\x12\x16\n\x03mul\x18\x0e \x01(\x0b\x32\x07.SocMulH\x00\x12\x18\n\x04null\x18\x10 \x01(\x0b\x32\x08.MsgNullH\x00\x12\x19\n\x04pept\x18\x11 \x01(\x0b\x32\t.MctlPeptH\x00\x12\x1c\n\x04\x62\x61se\x18\x12 \x01(\x0b\x32\x0c.BaseStationH\x00\x12\x11\n\ttimestamp\x18\x0f \x01(\x04\x42\x0c\n\nLubaSubMsg*\xd7\x02\n\nMsgCmdType\x12\x16\n\x12MSG_CMD_TYPE_START\x10\x00\x12\x15\n\x10MSG_CMD_TYPE_NAV\x10\xf0\x01\x12\x1e\n\x19MSG_CMD_TYPE_LOCALIZATION\x10\xf1\x01\x12\x1a\n\x15MSG_CMD_TYPE_PLANNING\x10\xf2\x01\x12\x1e\n\x19MSG_CMD_TYPE_EMBED_DRIVER\x10\xf3\x01\x12\x1b\n\x16MSG_CMD_TYPE_EMBED_SYS\x10\xf4\x01\x12\x1f\n\x1aMSG_CMD_TYPE_EMBED_MIDWARE\x10\xf5\x01\x12\x1b\n\x16MSG_CMD_TYPE_EMBED_OTA\x10\xf6\x01\x12\x1d\n\x18MSG_CMD_TYPE_APPLICATION\x10\xf7\x01\x12\x15\n\x10MSG_CMD_TYPE_ESP\x10\xf8\x01\x12\x15\n\x10MSG_CMD_TYPE_MUL\x10\xf9\x01\x12\x16\n\x11MSG_CMD_TYPE_PEPT\x10\xfa\x01*V\n\x07MsgAttr\x12\x11\n\rMSG_ATTR_NONE\x10\x00\x12\x10\n\x0cMSG_ATTR_REQ\x10\x01\x12\x11\n\rMSG_ATTR_RESP\x10\x02\x12\x13\n\x0fMSG_ATTR_REPORT\x10\x03*\xa8\x02\n\tMsgDevice\x12\x10\n\x0c\x44\x45V_COMM_ESP\x10\x00\x12\x0f\n\x0b\x44\x45V_MAINCTL\x10\x01\x12\x11\n\rDEV_LEFTMOTOR\x10\x02\x12\x12\n\x0e\x44\x45V_RIGHTMOTOR\x10\x03\x12\x13\n\x0f\x44\x45V_BASESTATION\x10\x04\x12\x0e\n\nDEV_RTKCLI\x10\x05\x12\x0f\n\x0b\x44\x45V_USBHOST\x10\x06\x12\x11\n\rDEV_MOBILEAPP\x10\x07\x12\x11\n\rDEV_IOTSERVER\x10\x08\x12\x0b\n\x07\x44\x45V_BMS\x10\t\x12\x12\n\x0e\x44\x45V_NAVIGATION\x10\x11\x12\x14\n\x10\x44\x45V_LOCALIZATION\x10\x12\x12\x12\n\x0e\x44\x45V_PERCEPTION\x10\x13\x12\x19\n\x15SOC_MODULE_MULTIMEDIA\x10\x15\x12\x0f\n\x0b\x44\x45V_IOTCTRL\x10\x19\x62\x06proto3')
24
25
 
25
26
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, globals())
26
27
  _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'pymammotion.proto.luba_msg_pb2', globals())
27
28
  if _descriptor._USE_C_DESCRIPTORS == False:
28
29
 
29
30
  DESCRIPTOR._options = None
30
- _MSGCMDTYPE._serialized_start=706
31
- _MSGCMDTYPE._serialized_end=1049
32
- _MSGATTR._serialized_start=1051
33
- _MSGATTR._serialized_end=1137
34
- _MSGDEVICE._serialized_start=1140
35
- _MSGDEVICE._serialized_end=1436
36
- _MSGNULL._serialized_start=282
37
- _MSGNULL._serialized_end=291
38
- _LUBAMSG._serialized_start=294
39
- _LUBAMSG._serialized_end=703
31
+ _MSGCMDTYPE._serialized_start=773
32
+ _MSGCMDTYPE._serialized_end=1116
33
+ _MSGATTR._serialized_start=1118
34
+ _MSGATTR._serialized_end=1204
35
+ _MSGDEVICE._serialized_start=1207
36
+ _MSGDEVICE._serialized_end=1503
37
+ _MSGNULL._serialized_start=319
38
+ _MSGNULL._serialized_end=328
39
+ _LUBAMSG._serialized_start=331
40
+ _LUBAMSG._serialized_end=770
40
41
  # @@protoc_insertion_point(module_scope)
@@ -1,3 +1,4 @@
1
+ from pymammotion.proto import basestation_pb2 as _basestation_pb2
1
2
  from pymammotion.proto import mctrl_driver_pb2 as _mctrl_driver_pb2
2
3
  from pymammotion.proto import mctrl_nav_pb2 as _mctrl_nav_pb2
3
4
  from pymammotion.proto import mctrl_sys_pb2 as _mctrl_sys_pb2
@@ -44,7 +45,8 @@ MSG_CMD_TYPE_START: MsgCmdType
44
45
  SOC_MODULE_MULTIMEDIA: MsgDevice
45
46
 
46
47
  class LubaMsg(_message.Message):
47
- __slots__ = ["driver", "msgattr", "msgtype", "mul", "nav", "net", "null", "ota", "pept", "rcver", "sender", "seqs", "subtype", "sys", "timestamp", "version"]
48
+ __slots__ = ["base", "driver", "msgattr", "msgtype", "mul", "nav", "net", "null", "ota", "pept", "rcver", "sender", "seqs", "subtype", "sys", "timestamp", "version"]
49
+ BASE_FIELD_NUMBER: _ClassVar[int]
48
50
  DRIVER_FIELD_NUMBER: _ClassVar[int]
49
51
  MSGATTR_FIELD_NUMBER: _ClassVar[int]
50
52
  MSGTYPE_FIELD_NUMBER: _ClassVar[int]
@@ -61,6 +63,7 @@ class LubaMsg(_message.Message):
61
63
  SYS_FIELD_NUMBER: _ClassVar[int]
62
64
  TIMESTAMP_FIELD_NUMBER: _ClassVar[int]
63
65
  VERSION_FIELD_NUMBER: _ClassVar[int]
66
+ base: _basestation_pb2.BaseStation
64
67
  driver: _mctrl_driver_pb2.MctlDriver
65
68
  msgattr: MsgAttr
66
69
  msgtype: MsgCmdType
@@ -77,7 +80,7 @@ class LubaMsg(_message.Message):
77
80
  sys: _mctrl_sys_pb2.MctlSys
78
81
  timestamp: int
79
82
  version: int
80
- 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]] = ..., timestamp: _Optional[int] = ...) -> None: ...
83
+ 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: ...
81
84
 
82
85
  class MsgNull(_message.Message):
83
86
  __slots__ = []
@@ -2,10 +2,10 @@
2
2
  # sources: pymammotion/proto/mctrl_nav.proto
3
3
  # plugin: python-betterproto
4
4
  from dataclasses import dataclass
5
- import betterproto
6
-
7
5
  from .common import *
8
6
 
7
+ import betterproto
8
+
9
9
 
10
10
  @dataclass
11
11
  class NavLatLonUp(betterproto.Message):
@@ -72,8 +72,8 @@ message SysMowInfo {
72
72
  int32 deviceState = 1;
73
73
  int32 batVal = 2;
74
74
  int32 knifeHeight = 3;
75
- int32 RTKstatus = 4;
76
- int32 RTKstars = 5;
75
+ int32 rtk_status = 4;
76
+ int32 rtk_stars = 5;
77
77
  }
78
78
 
79
79
  message SysOptiLineAck {
@@ -3,11 +3,10 @@
3
3
  # plugin: python-betterproto
4
4
  from dataclasses import dataclass
5
5
 
6
+ from .dev_net import *
6
7
 
7
8
  import betterproto
8
9
 
9
- from .dev_net import *
10
-
11
10
 
12
11
  class Operation(betterproto.Enum):
13
12
  WRITE = 0
@@ -287,8 +286,8 @@ class SystemUpdateBufMsg(betterproto.Message):
287
286
 
288
287
  @dataclass
289
288
  class SysOffChipFlash(betterproto.Message):
290
- op: Operation = betterproto.enum_field(1)
291
- id: OffPartId = betterproto.enum_field(2)
289
+ op: "Operation" = betterproto.enum_field(1)
290
+ id: "OffPartId" = betterproto.enum_field(2)
292
291
  start_addr: int = betterproto.uint32_field(3)
293
292
  offset: int = betterproto.uint32_field(4)
294
293
  length: int = betterproto.int32_field(5)
@@ -434,10 +433,10 @@ class RptDevStatus(betterproto.Message):
434
433
  last_status: int = betterproto.int32_field(5)
435
434
  sys_time_stamp: int = betterproto.int64_field(6)
436
435
  vslam_status: int = betterproto.int32_field(7)
437
- mnet_info: MnetInfo = betterproto.message_field(8)
438
- vio_survival_info: VioSurvivalInfoT = betterproto.message_field(9)
439
- collector_status: CollectorStatusT = betterproto.message_field(10)
440
- lock_state: LockStateT = betterproto.message_field(11)
436
+ mnet_info: "MnetInfo" = betterproto.message_field(8)
437
+ vio_survival_info: "VioSurvivalInfoT" = betterproto.message_field(9)
438
+ collector_status: "CollectorStatusT" = betterproto.message_field(10)
439
+ lock_state: "LockStateT" = betterproto.message_field(11)
441
440
 
442
441
 
443
442
  @dataclass
@@ -494,16 +493,16 @@ class ReportInfoCfg(betterproto.Message):
494
493
 
495
494
  @dataclass
496
495
  class ReportInfoData(betterproto.Message):
497
- connect: RptConnectStatus = betterproto.message_field(1)
498
- dev: RptDevStatus = betterproto.message_field(2)
499
- rtk: RptRtk = betterproto.message_field(3)
500
- locations: list[RptDevLocation] = betterproto.message_field(4)
501
- work: RptWork = betterproto.message_field(5)
502
- fw_info: DeviceFwInfo = betterproto.message_field(6)
503
- maintain: RptMaintain = betterproto.message_field(7)
504
- vision_point_info: list[VisionPointInfoMsg] = betterproto.message_field(8)
505
- vio_to_app_info: VioToAppInfoMsg = betterproto.message_field(9)
506
- vision_statistic_info: VisionStatisticInfoMsg = betterproto.message_field(10)
496
+ connect: "RptConnectStatus" = betterproto.message_field(1)
497
+ dev: "RptDevStatus" = betterproto.message_field(2)
498
+ rtk: "RptRtk" = betterproto.message_field(3)
499
+ locations: list["RptDevLocation"] = betterproto.message_field(4)
500
+ work: "RptWork" = betterproto.message_field(5)
501
+ fw_info: "DeviceFwInfo" = betterproto.message_field(6)
502
+ maintain: "RptMaintain" = betterproto.message_field(7)
503
+ vision_point_info: list["VisionPointInfoMsg"] = betterproto.message_field(8)
504
+ vio_to_app_info: "VioToAppInfoMsg" = betterproto.message_field(9)
505
+ vision_statistic_info: "VisionStatisticInfoMsg" = betterproto.message_field(10)
507
506
 
508
507
 
509
508
  @dataclass
@@ -566,7 +565,7 @@ class MctlSys(betterproto.Message):
566
565
  37, group="SubSysMsg"
567
566
  )
568
567
  todev_report_cfg: "ReportInfoCfg" = betterproto.message_field(38, group="SubSysMsg")
569
- toapp_report_data: ReportInfoData = betterproto.message_field(
568
+ toapp_report_data: "ReportInfoData" = betterproto.message_field(
570
569
  39, group="SubSysMsg"
571
570
  )
572
571
  simulation_cmd: "MCtrlSimulationCmdData" = betterproto.message_field(
@@ -14,25 +14,25 @@ _sym_db = _symbol_database.Default()
14
14
  from pymammotion.proto import dev_net_pb2 as pymammotion_dot_proto_dot_dev__net__pb2
15
15
 
16
16
 
17
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n!pymammotion/proto/mctrl_sys.proto\x1a\x1fpymammotion/proto/dev_net.proto\"\x1a\n\x08SysBatUp\x12\x0e\n\x06\x62\x61tVal\x18\x01 \x01(\x05\"Z\n\x0cSysWorkState\x12\x13\n\x0b\x64\x65viceState\x18\x01 \x01(\x05\x12\x13\n\x0b\x63hargeState\x18\x02 \x01(\x05\x12\x0e\n\x06\x63mHash\x18\x03 \x01(\x03\x12\x10\n\x08pathHash\x18\x04 \x01(\x03\"5\n\x0eSysSetTimeZone\x12\x11\n\ttimeStamp\x18\x01 \x01(\x05\x12\x10\n\x08timeArea\x18\x02 \x01(\x05\"\x9e\x01\n\x0eSysSetDateTime\x12\x0c\n\x04Year\x18\x01 \x01(\x05\x12\r\n\x05Month\x18\x02 \x01(\x05\x12\x0c\n\x04\x44\x61te\x18\x03 \x01(\x05\x12\x0c\n\x04Week\x18\x04 \x01(\x05\x12\r\n\x05Hours\x18\x05 \x01(\x05\x12\x0f\n\x07Minutes\x18\x06 \x01(\x05\x12\x0f\n\x07Seconds\x18\x07 \x01(\x05\x12\x10\n\x08timeZone\x18\x08 \x01(\x05\x12\x10\n\x08\x64\x61ylight\x18\t \x01(\x05\"V\n\nSysJobPlan\x12\r\n\x05jobId\x18\x01 \x01(\x03\x12\x0f\n\x07jobMode\x18\x02 \x01(\x05\x12\x13\n\x0brainTactics\x18\x03 \x01(\x05\x12\x13\n\x0bknifeHeight\x18\x04 \x01(\x05\"\"\n\rSysDevErrCode\x12\x11\n\terrorCode\x18\x01 \x01(\x05\"!\n\x0cSysBoardType\x12\x11\n\tboardType\x18\x01 \x01(\x05\"5\n\x0cSysSwVersion\x12\x11\n\tboardType\x18\x01 \x01(\x05\x12\x12\n\nversionLen\x18\x02 \x01(\x05\"1\n\rSysDelJobPlan\x12\x10\n\x08\x64\x65viceId\x18\x01 \x01(\t\x12\x0e\n\x06planId\x18\x02 \x01(\t\"\xec\x01\n\x0eSysJobPlanTime\x12\x0e\n\x06planId\x18\x01 \x01(\x03\x12\x16\n\x0estart_job_time\x18\x02 \x01(\x05\x12\x14\n\x0c\x65nd_job_time\x18\x03 \x01(\x05\x12\x13\n\x0btime_in_day\x18\x04 \x01(\x05\x12\x15\n\rjob_plan_mode\x18\x05 \x01(\x05\x12\x17\n\x0fjob_plan_enable\x18\x06 \x01(\x05\x12\x0f\n\x07weekDay\x18\x07 \x03(\x05\x12\x15\n\rtimeInWeekDay\x18\x08 \x03(\x05\x12\x10\n\x08\x65veryDay\x18\t \x01(\x05\x12\x1d\n\x08job_plan\x18\n \x01(\x0b\x32\x0b.SysJobPlan\"k\n\nSysMowInfo\x12\x13\n\x0b\x64\x65viceState\x18\x01 \x01(\x05\x12\x0e\n\x06\x62\x61tVal\x18\x02 \x01(\x05\x12\x13\n\x0bknifeHeight\x18\x03 \x01(\x05\x12\x11\n\tRTKstatus\x18\x04 \x01(\x05\x12\x10\n\x08RTKstars\x18\x05 \x01(\x05\";\n\x0eSysOptiLineAck\x12\x13\n\x0bresponesCmd\x18\x01 \x01(\x05\x12\x14\n\x0c\x63urrentFrame\x18\x02 \x01(\x05\"5\n\nSysCommCmd\x12\n\n\x02rw\x18\x01 \x01(\x05\x12\n\n\x02id\x18\x02 \x01(\x05\x12\x0f\n\x07\x63ontext\x18\x03 \x01(\x05\"H\n\x15SysUploadFileProgress\x12\r\n\x05\x62izId\x18\x01 \x01(\t\x12\x0e\n\x06result\x18\x02 \x01(\x05\x12\x10\n\x08progress\x18\x03 \x01(\x05\"\x1f\n\x0cSysErrorCode\x12\x0f\n\x07\x63ode_no\x18\x01 \x01(\x05\"\x1e\n\tSysBorder\x12\x11\n\tborderval\x18\x01 \x01(\x05\"*\n\x10SysPlanJobStatus\x12\x16\n\x0eplanjob_status\x18\x01 \x01(\x05\"=\n\x0fSysKnifeControl\x12\x14\n\x0cknife_status\x18\x01 \x01(\x05\x12\x14\n\x0cknife_height\x18\x02 \x01(\x05\"+\n\x14SysResetSystemStatus\x12\x13\n\x0breset_staus\x18\x01 \x01(\x05\"\x8a\x01\n\rTimeCtrlLight\x12\x0f\n\x07operate\x18\x01 \x01(\x05\x12\x0e\n\x06\x65nable\x18\x02 \x01(\x05\x12\x12\n\nstart_hour\x18\x03 \x01(\x05\x12\x11\n\tstart_min\x18\x04 \x01(\x05\x12\x10\n\x08\x65nd_hour\x18\x05 \x01(\x05\x12\x0f\n\x07\x65nd_min\x18\x06 \x01(\x05\x12\x0e\n\x06\x61\x63tion\x18\x07 \x01(\x05\"3\n\x10vision_point_msg\x12\t\n\x01x\x18\x01 \x01(\x02\x12\t\n\x01y\x18\x02 \x01(\x02\x12\t\n\x01z\x18\x03 \x01(\x02\"\\\n\x15vision_point_info_msg\x12\r\n\x05lable\x18\x01 \x01(\x05\x12\x0b\n\x03num\x18\x02 \x01(\x05\x12\'\n\x0cvision_point\x18\x03 \x03(\x0b\x32\x11.vision_point_msg\"\x9a\x01\n\x13vio_to_app_info_msg\x12\t\n\x01x\x18\x01 \x01(\x01\x12\t\n\x01y\x18\x02 \x01(\x01\x12\x0f\n\x07heading\x18\x03 \x01(\x01\x12\x11\n\tvio_state\x18\x04 \x01(\x05\x12\x12\n\nbrightness\x18\x05 \x01(\x05\x12\x1a\n\x12\x64\x65tect_feature_num\x18\x06 \x01(\x05\x12\x19\n\x11track_feature_num\x18\x07 \x01(\x05\"1\n\x14vision_statistic_msg\x12\x0c\n\x04mean\x18\x01 \x01(\x02\x12\x0b\n\x03var\x18\x02 \x01(\x02\"m\n\x19vision_statistic_info_msg\x12\x11\n\ttimestamp\x18\x01 \x01(\x01\x12\x0b\n\x03num\x18\x02 \x01(\x05\x12\x30\n\x11vision_statistics\x18\x03 \x03(\x0b\x32\x15.vision_statistic_msg\"\xd3\x01\n\x1asystemRapidStateTunnel_msg\x12\x18\n\x10rapid_state_data\x18\x01 \x03(\x03\x12\x31\n\x11vision_point_info\x18\x02 \x03(\x0b\x32\x16.vision_point_info_msg\x12-\n\x0fvio_to_app_info\x18\x03 \x01(\x0b\x32\x14.vio_to_app_info_msg\x12\x39\n\x15vision_statistic_info\x18\x04 \x01(\x0b\x32\x1a.vision_statistic_info_msg\"4\n\x19systemTardStateTunnel_msg\x12\x17\n\x0ftard_state_data\x18\x01 \x03(\x03\".\n\x13systemUpdateBuf_msg\x12\x17\n\x0fupdate_buf_data\x18\x01 \x03(\x03\"\x9e\x01\n\x0fSysOffChipFlash\x12\x16\n\x02op\x18\x01 \x01(\x0e\x32\n.Operation\x12\x16\n\x02id\x18\x02 \x01(\x0e\x32\n.OffPartId\x12\x12\n\nstart_addr\x18\x03 \x01(\r\x12\x0e\n\x06offset\x18\x04 \x01(\r\x12\x0e\n\x06length\x18\x05 \x01(\x05\x12\x0c\n\x04\x64\x61ta\x18\x06 \x01(\x0c\x12\x0c\n\x04\x63ode\x18\x07 \x01(\x05\x12\x0b\n\x03msg\x18\x08 \x01(\t\"-\n\x14systemTmpCycleTx_msg\x12\x15\n\rcycle_tx_data\x18\x01 \x03(\x03\"%\n\nLoraCfgReq\x12\n\n\x02op\x18\x01 \x01(\x05\x12\x0b\n\x03\x63\x66g\x18\x02 \x01(\t\"F\n\nLoraCfgRsp\x12\x0e\n\x06result\x18\x01 \x01(\x05\x12\n\n\x02op\x18\x02 \x01(\x05\x12\x0b\n\x03\x63\x66g\x18\x03 \x01(\t\x12\x0f\n\x07\x66\x61\x63_cfg\x18\x04 \x01(\t\">\n\x0bmod_fw_info\x12\x0c\n\x04type\x18\x01 \x01(\x05\x12\x10\n\x08identify\x18\x02 \x01(\t\x12\x0f\n\x07version\x18\x03 \x01(\t\"L\n\x0e\x64\x65vice_fw_info\x12\x0e\n\x06result\x18\x01 \x01(\x05\x12\x0f\n\x07version\x18\x02 \x01(\t\x12\x19\n\x03mod\x18\x03 \x03(\x0b\x32\x0c.mod_fw_info\"@\n\x11mow_to_app_info_t\x12\x0c\n\x04type\x18\x01 \x01(\x05\x12\x0b\n\x03\x63md\x18\x02 \x01(\x05\x12\x10\n\x08mow_data\x18\x03 \x03(\x05\"a\n\x1a\x64\x65vice_product_type_info_t\x12\x0e\n\x06result\x18\x01 \x01(\x05\x12\x19\n\x11main_product_type\x18\x02 \x01(\t\x12\x18\n\x10sub_product_type\x18\x03 \x01(\t\"P\n\x0fQCAppTestExcept\x12\x13\n\x0b\x65xcept_type\x18\x01 \x01(\t\x12(\n\nconditions\x18\x02 \x03(\x0b\x32\x14.QCAppTestConditions\"t\n\x13QCAppTestConditions\x12\x11\n\tcond_type\x18\x01 \x01(\t\x12\x0f\n\x07int_val\x18\x02 \x01(\x05\x12\x11\n\tfloat_val\x18\x03 \x01(\x02\x12\x12\n\ndouble_val\x18\x04 \x01(\x01\x12\x12\n\nstring_val\x18\x05 \x01(\t\"\x99\x01\n\x19mow_to_app_qctools_info_t\x12\x1a\n\x04type\x18\x01 \x01(\x0e\x32\x0c.QCAppTestId\x12\x16\n\x0etimeOfDuration\x18\x02 \x01(\x05\x12\x0e\n\x06result\x18\x03 \x01(\x05\x12\x16\n\x0eresult_details\x18\x04 \x01(\t\x12 \n\x06\x65xcept\x18\x05 \x03(\x0b\x32\x10.QCAppTestExcept\"O\n\x16mCtrlSimulationCmdData\x12\x0e\n\x06subCmd\x18\x01 \x01(\x05\x12\x10\n\x08param_id\x18\x02 \x01(\x05\x12\x13\n\x0bparam_value\x18\x03 \x03(\x05\"\x8f\x01\n\x08rpt_lora\x12\x16\n\x0epair_code_scan\x18\x01 \x01(\x05\x12\x19\n\x11pair_code_channel\x18\x02 \x01(\x05\x12\x17\n\x0fpair_code_locid\x18\x03 \x01(\x05\x12\x17\n\x0fpair_code_netid\x18\x04 \x01(\x05\x12\x1e\n\x16lora_connection_status\x18\x05 \x01(\x05\"\xf1\x01\n\x07rpt_rtk\x12\x0e\n\x06status\x18\x01 \x01(\x05\x12\x11\n\tpos_level\x18\x02 \x01(\x05\x12\x11\n\tgps_stars\x18\x03 \x01(\x05\x12\x0b\n\x03\x61ge\x18\x04 \x01(\x05\x12\x0f\n\x07lat_std\x18\x05 \x01(\x05\x12\x0f\n\x07lon_std\x18\x06 \x01(\x05\x12\x10\n\x08l2_stars\x18\x07 \x01(\x05\x12\x12\n\ndis_status\x18\x08 \x01(\x03\x12\x17\n\x0ftop4_total_mean\x18\t \x01(\x03\x12\x15\n\rco_view_stars\x18\n \x01(\x05\x12\r\n\x05reset\x18\x0b \x01(\x05\x12\x1c\n\tlora_info\x18\x0c \x01(\x0b\x32\t.rpt_lora\"\x86\x01\n\x10rpt_dev_location\x12\x12\n\nreal_pos_x\x18\x01 \x01(\x05\x12\x12\n\nreal_pos_y\x18\x02 \x01(\x05\x12\x13\n\x0breal_toward\x18\x03 \x01(\x05\x12\x10\n\x08pos_type\x18\x04 \x01(\x05\x12\x11\n\tzone_hash\x18\x05 \x01(\x03\x12\x10\n\x08\x62ol_hash\x18\x06 \x01(\x03\"4\n\x13vio_survival_info_t\x12\x1d\n\x15vio_survival_distance\x18\x01 \x01(\x02\";\n\x12\x63ollector_status_t\x12%\n\x1d\x63ollector_installation_status\x18\x01 \x01(\x05\"\"\n\x0clock_state_t\x12\x12\n\nlock_state\x18\x01 \x01(\r\"\xca\x02\n\x0erpt_dev_status\x12\x12\n\nsys_status\x18\x01 \x01(\x05\x12\x14\n\x0c\x63harge_state\x18\x02 \x01(\x05\x12\x13\n\x0b\x62\x61ttery_val\x18\x03 \x01(\x05\x12\x15\n\rsensor_status\x18\x04 \x01(\x05\x12\x13\n\x0blast_status\x18\x05 \x01(\x05\x12\x16\n\x0esys_time_stamp\x18\x06 \x01(\x03\x12\x14\n\x0cvslam_status\x18\x07 \x01(\x05\x12\x1c\n\tmnet_info\x18\x08 \x01(\x0b\x32\t.MnetInfo\x12/\n\x11vio_survival_info\x18\t \x01(\x0b\x32\x14.vio_survival_info_t\x12-\n\x10\x63ollector_status\x18\n \x01(\x0b\x32\x13.collector_status_t\x12!\n\nlock_state\x18\x0b \x01(\x0b\x32\r.lock_state_t\"\xaa\x01\n\x12rpt_connect_status\x12\x14\n\x0c\x63onnect_type\x18\x01 \x01(\x05\x12\x10\n\x08\x62le_rssi\x18\x02 \x01(\x05\x12\x11\n\twifi_rssi\x18\x03 \x01(\x05\x12\x11\n\tlink_type\x18\x04 \x01(\x05\x12\x11\n\tmnet_rssi\x18\x05 \x01(\x05\x12\x11\n\tmnet_inet\x18\x06 \x01(\x05\x12 \n\x08used_net\x18\x07 \x01(\x0e\x32\x0e.net_used_type\"\xa0\x03\n\x08rpt_work\x12\x0c\n\x04plan\x18\x01 \x01(\x05\x12\x11\n\tpath_hash\x18\x02 \x01(\x03\x12\x10\n\x08progress\x18\x03 \x01(\x05\x12\x0c\n\x04\x61rea\x18\x04 \x01(\x05\x12\x0f\n\x07\x62p_info\x18\x05 \x01(\x05\x12\x0f\n\x07\x62p_hash\x18\x06 \x01(\x03\x12\x10\n\x08\x62p_pos_x\x18\x07 \x01(\x05\x12\x10\n\x08\x62p_pos_y\x18\x08 \x01(\x05\x12\x15\n\rreal_path_num\x18\t \x01(\x03\x12\x12\n\npath_pos_x\x18\n \x01(\x05\x12\x12\n\npath_pos_y\x18\x0b \x01(\x05\x12\x14\n\x0cub_zone_hash\x18\x0c \x01(\x03\x12\x14\n\x0cub_path_hash\x18\r \x01(\x03\x12\x15\n\rinit_cfg_hash\x18\x0e \x01(\x03\x12\x15\n\rub_ecode_hash\x18\x0f \x01(\x03\x12\x14\n\x0cnav_run_mode\x18\x10 \x01(\x05\x12\x18\n\x10test_mode_status\x18\x11 \x01(\x03\x12\x15\n\rman_run_speed\x18\x12 \x01(\x05\x12\x17\n\x0fnav_edit_status\x18\x13 \x01(\x05\x12\x14\n\x0cknife_height\x18\x14 \x01(\x05\"F\n\x0crpt_maintain\x12\x0f\n\x07mileage\x18\x01 \x01(\x03\x12\x11\n\twork_time\x18\x02 \x01(\x05\x12\x12\n\nbat_cycles\x18\x03 \x01(\x05\"\x8f\x01\n\x0freport_info_cfg\x12\x15\n\x03\x61\x63t\x18\x01 \x01(\x0e\x32\x08.rpt_act\x12\x0f\n\x07timeout\x18\x02 \x01(\x05\x12\x0e\n\x06period\x18\x03 \x01(\x05\x12\x18\n\x10no_change_period\x18\x04 \x01(\x05\x12\r\n\x05\x63ount\x18\x05 \x01(\x05\x12\x1b\n\x03sub\x18\x06 \x03(\x0e\x32\x0e.rpt_info_type\"\x8c\x03\n\x10report_info_data\x12$\n\x07\x63onnect\x18\x01 \x01(\x0b\x32\x13.rpt_connect_status\x12\x1c\n\x03\x64\x65v\x18\x02 \x01(\x0b\x32\x0f.rpt_dev_status\x12\x15\n\x03rtk\x18\x03 \x01(\x0b\x32\x08.rpt_rtk\x12$\n\tlocations\x18\x04 \x03(\x0b\x32\x11.rpt_dev_location\x12\x17\n\x04work\x18\x05 \x01(\x0b\x32\t.rpt_work\x12 \n\x07\x66w_info\x18\x06 \x01(\x0b\x32\x0f.device_fw_info\x12\x1f\n\x08maintain\x18\x07 \x01(\x0b\x32\r.rpt_maintain\x12\x31\n\x11vision_point_info\x18\x08 \x03(\x0b\x32\x16.vision_point_info_msg\x12-\n\x0fvio_to_app_info\x18\t \x01(\x0b\x32\x14.vio_to_app_info_msg\x12\x39\n\x15vision_statistic_info\x18\n \x01(\x0b\x32\x1a.vision_statistic_info_msg\"\x9c\x0c\n\x07MctlSys\x12\"\n\rtoapp_batinfo\x18\x01 \x01(\x0b\x32\t.SysBatUpH\x00\x12)\n\x10toapp_work_state\x18\x02 \x01(\x0b\x32\r.SysWorkStateH\x00\x12*\n\x0ftodev_time_zone\x18\x03 \x01(\x0b\x32\x0f.SysSetTimeZoneH\x00\x12*\n\x0ftodev_data_time\x18\x04 \x01(\x0b\x32\x0f.SysSetDateTimeH\x00\x12\x1f\n\x08job_plan\x18\x06 \x01(\x0b\x32\x0b.SysJobPlanH\x00\x12(\n\x0etoapp_err_code\x18\x07 \x01(\x0b\x32\x0e.SysDevErrCodeH\x00\x12.\n\x13todev_job_plan_time\x18\n \x01(\x0b\x32\x0f.SysJobPlanTimeH\x00\x12%\n\x0etoapp_mow_info\x18\x0b \x01(\x0b\x32\x0b.SysMowInfoH\x00\x12&\n\x0f\x62idire_comm_cmd\x18\x0c \x01(\x0b\x32\x0b.SysCommCmdH\x00\x12\x16\n\x0cplan_job_del\x18\x0e \x01(\x03H\x00\x12\x1c\n\x06\x62order\x18\x0f \x01(\x0b\x32\n.SysBorderH\x00\x12.\n\x11toapp_plan_status\x18\x12 \x01(\x0b\x32\x11.SysPlanJobStatusH\x00\x12\x34\n\x12toapp_ul_fprogress\x18\x13 \x01(\x0b\x32\x16.SysUploadFileProgressH\x00\x12*\n\x10todev_deljobplan\x18\x14 \x01(\x0b\x32\x0e.SysDelJobPlanH\x00\x12\x1b\n\x11todev_mow_info_up\x18\x15 \x01(\x05H\x00\x12,\n\x10todev_knife_ctrl\x18\x16 \x01(\x0b\x32\x10.SysKnifeControlH\x00\x12\x1c\n\x12todev_reset_system\x18\x17 \x01(\x05H\x00\x12:\n\x19todev_reset_system_status\x18\x18 \x01(\x0b\x32\x15.SysResetSystemStatusH\x00\x12=\n\x16systemRapidStateTunnel\x18\x19 \x01(\x0b\x32\x1b.systemRapidStateTunnel_msgH\x00\x12;\n\x15systemTardStateTunnel\x18\x1a \x01(\x0b\x32\x1a.systemTardStateTunnel_msgH\x00\x12/\n\x0fsystemUpdateBuf\x18\x1b \x01(\x0b\x32\x14.systemUpdateBuf_msgH\x00\x12/\n\x15todev_time_ctrl_light\x18\x1c \x01(\x0b\x32\x0e.TimeCtrlLightH\x00\x12\x31\n\x10systemTmpCycleTx\x18\x1d \x01(\x0b\x32\x15.systemTmpCycleTx_msgH\x00\x12\x30\n\x14todev_off_chip_flash\x18\x1e \x01(\x0b\x32\x10.SysOffChipFlashH\x00\x12\x1f\n\x15todev_get_dev_fw_info\x18\x1f \x01(\x05H\x00\x12,\n\x11toapp_dev_fw_info\x18 \x01(\x0b\x32\x0f.device_fw_infoH\x00\x12)\n\x12todev_lora_cfg_req\x18! \x01(\x0b\x32\x0b.LoraCfgReqH\x00\x12)\n\x12toapp_lora_cfg_rsp\x18\" \x01(\x0b\x32\x0b.LoraCfgRspH\x00\x12-\n\x0fmow_to_app_info\x18# \x01(\x0b\x32\x12.mow_to_app_info_tH\x00\x12?\n\x18\x64\x65vice_product_type_info\x18$ \x01(\x0b\x32\x1b.device_product_type_info_tH\x00\x12=\n\x17mow_to_app_qctools_info\x18% \x01(\x0b\x32\x1a.mow_to_app_qctools_info_tH\x00\x12,\n\x10todev_report_cfg\x18& \x01(\x0b\x32\x10.report_info_cfgH\x00\x12.\n\x11toapp_report_data\x18\' \x01(\x0b\x32\x11.report_info_dataH\x00\x12\x31\n\x0esimulation_cmd\x18* \x01(\x0b\x32\x17.mCtrlSimulationCmdDataH\x00\x42\x0b\n\tSubSysMsg*+\n\tOperation\x12\t\n\x05WRITE\x10\x00\x12\x08\n\x04READ\x10\x01\x12\t\n\x05\x45RASE\x10\x02*\x8d\x02\n\tOffPartId\x12\x13\n\x0fOFF_PART_DL_IMG\x10\x00\x12\x19\n\x15OFF_PART_UPDINFO_BACK\x10\x01\x12\x14\n\x10OFF_PART_UPDINFO\x10\x02\x12\x13\n\x0fOFF_PART_NAKEDB\x10\x03\x12\x14\n\x10OFF_PART_FLASHDB\x10\x04\x12\x18\n\x14OFF_PART_UPD_APP_IMG\x10\x05\x12\x18\n\x14OFF_PART_UPD_BMS_IMG\x10\x06\x12\x18\n\x14OFF_PART_UPD_TMP_IMG\x10\x07\x12\x15\n\x11OFF_PART_DEV_INFO\x10\x08\x12\x18\n\x14OFF_PART_NAKEDB_BACK\x10\t\x12\x10\n\x0cOFF_PART_MAX\x10\n*\x95\x07\n\x0bQCAppTestId\x12!\n\x1dQC_APP_ITEM_ON_CHARGESATSTION\x10\x00\x12\x1a\n\x16QC_APP_TEST_X3_SPEAKER\x10\x01\x12)\n%QC_APP_TEST_STATIC_OBSTACLE_DETECTION\x10\x02\x12\"\n\x1eQC_APP_TEST_CHARGESTATION_TEMP\x10\x03\x12\x13\n\x0fQC_APP_ITEM_KEY\x10\x04\x12 \n\x1cQC_APP_TEST_BUMPER_FRONTLEFT\x10\x05\x12!\n\x1dQC_APP_TEST_BUMPER_FRONTRIGHT\x10\x06\x12\x14\n\x10QC_APP_TEST_STOP\x10\x07\x12\x16\n\x12QC_APP_TEST_UNLOCK\x10\x08\x12\x14\n\x10QC_APP_TEST_BUZZ\x10\t\x12\x14\n\x10QC_APP_TEST_LIFT\x10\n\x12\x16\n\x12QC_APP_ITEM_SENEOR\x10\x0b\x12\x19\n\x15QC_APP_TEST_ROLL_LEFT\x10\x0c\x12\x1a\n\x16QC_APP_TEST_ROLL_RIGHT\x10\r\x12\x1d\n\x19QC_APP_TEST_ULTRA_UNCOVER\x10\x0e\x12\x1c\n\x18QC_APP_TEST_ULTRA0_COVER\x10\x0f\x12\x1c\n\x18QC_APP_TEST_ULTRA1_COVER\x10\x10\x12\x1c\n\x18QC_APP_TEST_ULTRA2_COVER\x10\x11\x12\x14\n\x10QC_APP_TEST_RAIN\x10\x12\x12\x12\n\x0eQC_APP_ITEM_SQ\x10\x13\x12\x18\n\x14QC_APP_TEST_BLE_RSSI\x10\x14\x12 \n\x1cQC_APP_TEST_SATELLITES_ROVER\x10\x15\x12)\n%QC_APP_TEST_SATELLITES_REF_STATION_L1\x10\x16\x12)\n%QC_APP_TEST_SATELLITES_REF_STATION_L2\x10\x17\x12&\n\"QC_APP_TEST_SATELLITES_COMMON_VIEW\x10\x18\x12\x19\n\x15QC_APP_TEST_CNO_ROVER\x10\x19\x12\x1f\n\x1bQC_APP_TEST_CNO_REF_STATION\x10\x1a\x12\'\n#QC_APP_TEST_REF_STATION_LINK_STATUS\x10\x1b\x12\x1e\n\x1aQC_APP_TEST_LOCATION_STATE\x10\x1c\x12\x13\n\x0fQC_APP_TEST_MAX\x10\x1d*W\n\rnet_used_type\x12\x16\n\x12NET_USED_TYPE_NONE\x10\x00\x12\x16\n\x12NET_USED_TYPE_WIFI\x10\x01\x12\x16\n\x12NET_USED_TYPE_MNET\x10\x02*\xbf\x01\n\rrpt_info_type\x12\x0f\n\x0bRIT_CONNECT\x10\x00\x12\x0f\n\x0bRIT_DEV_STA\x10\x01\x12\x0b\n\x07RIT_RTK\x10\x02\x12\x11\n\rRIT_DEV_LOCAL\x10\x03\x12\x0c\n\x08RIT_WORK\x10\x04\x12\x0f\n\x0bRIT_FW_INFO\x10\x05\x12\x10\n\x0cRIT_MAINTAIN\x10\x06\x12\x14\n\x10RIT_VISION_POINT\x10\x07\x12\x0b\n\x07RIT_VIO\x10\x08\x12\x18\n\x14RIT_VISION_STATISTIC\x10\t*4\n\x07rpt_act\x12\r\n\tRPT_START\x10\x00\x12\x0c\n\x08RPT_STOP\x10\x01\x12\x0c\n\x08RPT_KEEP\x10\x02\x62\x06proto3')
17
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n!pymammotion/proto/mctrl_sys.proto\x1a\x1fpymammotion/proto/dev_net.proto\"\x1a\n\x08SysBatUp\x12\x0e\n\x06\x62\x61tVal\x18\x01 \x01(\x05\"Z\n\x0cSysWorkState\x12\x13\n\x0b\x64\x65viceState\x18\x01 \x01(\x05\x12\x13\n\x0b\x63hargeState\x18\x02 \x01(\x05\x12\x0e\n\x06\x63mHash\x18\x03 \x01(\x03\x12\x10\n\x08pathHash\x18\x04 \x01(\x03\"5\n\x0eSysSetTimeZone\x12\x11\n\ttimeStamp\x18\x01 \x01(\x05\x12\x10\n\x08timeArea\x18\x02 \x01(\x05\"\x9e\x01\n\x0eSysSetDateTime\x12\x0c\n\x04Year\x18\x01 \x01(\x05\x12\r\n\x05Month\x18\x02 \x01(\x05\x12\x0c\n\x04\x44\x61te\x18\x03 \x01(\x05\x12\x0c\n\x04Week\x18\x04 \x01(\x05\x12\r\n\x05Hours\x18\x05 \x01(\x05\x12\x0f\n\x07Minutes\x18\x06 \x01(\x05\x12\x0f\n\x07Seconds\x18\x07 \x01(\x05\x12\x10\n\x08timeZone\x18\x08 \x01(\x05\x12\x10\n\x08\x64\x61ylight\x18\t \x01(\x05\"V\n\nSysJobPlan\x12\r\n\x05jobId\x18\x01 \x01(\x03\x12\x0f\n\x07jobMode\x18\x02 \x01(\x05\x12\x13\n\x0brainTactics\x18\x03 \x01(\x05\x12\x13\n\x0bknifeHeight\x18\x04 \x01(\x05\"\"\n\rSysDevErrCode\x12\x11\n\terrorCode\x18\x01 \x01(\x05\"!\n\x0cSysBoardType\x12\x11\n\tboardType\x18\x01 \x01(\x05\"5\n\x0cSysSwVersion\x12\x11\n\tboardType\x18\x01 \x01(\x05\x12\x12\n\nversionLen\x18\x02 \x01(\x05\"1\n\rSysDelJobPlan\x12\x10\n\x08\x64\x65viceId\x18\x01 \x01(\t\x12\x0e\n\x06planId\x18\x02 \x01(\t\"\xec\x01\n\x0eSysJobPlanTime\x12\x0e\n\x06planId\x18\x01 \x01(\x03\x12\x16\n\x0estart_job_time\x18\x02 \x01(\x05\x12\x14\n\x0c\x65nd_job_time\x18\x03 \x01(\x05\x12\x13\n\x0btime_in_day\x18\x04 \x01(\x05\x12\x15\n\rjob_plan_mode\x18\x05 \x01(\x05\x12\x17\n\x0fjob_plan_enable\x18\x06 \x01(\x05\x12\x0f\n\x07weekDay\x18\x07 \x03(\x05\x12\x15\n\rtimeInWeekDay\x18\x08 \x03(\x05\x12\x10\n\x08\x65veryDay\x18\t \x01(\x05\x12\x1d\n\x08job_plan\x18\n \x01(\x0b\x32\x0b.SysJobPlan\"m\n\nSysMowInfo\x12\x13\n\x0b\x64\x65viceState\x18\x01 \x01(\x05\x12\x0e\n\x06\x62\x61tVal\x18\x02 \x01(\x05\x12\x13\n\x0bknifeHeight\x18\x03 \x01(\x05\x12\x12\n\nrtk_status\x18\x04 \x01(\x05\x12\x11\n\trtk_stars\x18\x05 \x01(\x05\";\n\x0eSysOptiLineAck\x12\x13\n\x0bresponesCmd\x18\x01 \x01(\x05\x12\x14\n\x0c\x63urrentFrame\x18\x02 \x01(\x05\"5\n\nSysCommCmd\x12\n\n\x02rw\x18\x01 \x01(\x05\x12\n\n\x02id\x18\x02 \x01(\x05\x12\x0f\n\x07\x63ontext\x18\x03 \x01(\x05\"H\n\x15SysUploadFileProgress\x12\r\n\x05\x62izId\x18\x01 \x01(\t\x12\x0e\n\x06result\x18\x02 \x01(\x05\x12\x10\n\x08progress\x18\x03 \x01(\x05\"\x1f\n\x0cSysErrorCode\x12\x0f\n\x07\x63ode_no\x18\x01 \x01(\x05\"\x1e\n\tSysBorder\x12\x11\n\tborderval\x18\x01 \x01(\x05\"*\n\x10SysPlanJobStatus\x12\x16\n\x0eplanjob_status\x18\x01 \x01(\x05\"=\n\x0fSysKnifeControl\x12\x14\n\x0cknife_status\x18\x01 \x01(\x05\x12\x14\n\x0cknife_height\x18\x02 \x01(\x05\"+\n\x14SysResetSystemStatus\x12\x13\n\x0breset_staus\x18\x01 \x01(\x05\"\x8a\x01\n\rTimeCtrlLight\x12\x0f\n\x07operate\x18\x01 \x01(\x05\x12\x0e\n\x06\x65nable\x18\x02 \x01(\x05\x12\x12\n\nstart_hour\x18\x03 \x01(\x05\x12\x11\n\tstart_min\x18\x04 \x01(\x05\x12\x10\n\x08\x65nd_hour\x18\x05 \x01(\x05\x12\x0f\n\x07\x65nd_min\x18\x06 \x01(\x05\x12\x0e\n\x06\x61\x63tion\x18\x07 \x01(\x05\"3\n\x10vision_point_msg\x12\t\n\x01x\x18\x01 \x01(\x02\x12\t\n\x01y\x18\x02 \x01(\x02\x12\t\n\x01z\x18\x03 \x01(\x02\"\\\n\x15vision_point_info_msg\x12\r\n\x05lable\x18\x01 \x01(\x05\x12\x0b\n\x03num\x18\x02 \x01(\x05\x12\'\n\x0cvision_point\x18\x03 \x03(\x0b\x32\x11.vision_point_msg\"\x9a\x01\n\x13vio_to_app_info_msg\x12\t\n\x01x\x18\x01 \x01(\x01\x12\t\n\x01y\x18\x02 \x01(\x01\x12\x0f\n\x07heading\x18\x03 \x01(\x01\x12\x11\n\tvio_state\x18\x04 \x01(\x05\x12\x12\n\nbrightness\x18\x05 \x01(\x05\x12\x1a\n\x12\x64\x65tect_feature_num\x18\x06 \x01(\x05\x12\x19\n\x11track_feature_num\x18\x07 \x01(\x05\"1\n\x14vision_statistic_msg\x12\x0c\n\x04mean\x18\x01 \x01(\x02\x12\x0b\n\x03var\x18\x02 \x01(\x02\"m\n\x19vision_statistic_info_msg\x12\x11\n\ttimestamp\x18\x01 \x01(\x01\x12\x0b\n\x03num\x18\x02 \x01(\x05\x12\x30\n\x11vision_statistics\x18\x03 \x03(\x0b\x32\x15.vision_statistic_msg\"\xd3\x01\n\x1asystemRapidStateTunnel_msg\x12\x18\n\x10rapid_state_data\x18\x01 \x03(\x03\x12\x31\n\x11vision_point_info\x18\x02 \x03(\x0b\x32\x16.vision_point_info_msg\x12-\n\x0fvio_to_app_info\x18\x03 \x01(\x0b\x32\x14.vio_to_app_info_msg\x12\x39\n\x15vision_statistic_info\x18\x04 \x01(\x0b\x32\x1a.vision_statistic_info_msg\"4\n\x19systemTardStateTunnel_msg\x12\x17\n\x0ftard_state_data\x18\x01 \x03(\x03\".\n\x13systemUpdateBuf_msg\x12\x17\n\x0fupdate_buf_data\x18\x01 \x03(\x03\"\x9e\x01\n\x0fSysOffChipFlash\x12\x16\n\x02op\x18\x01 \x01(\x0e\x32\n.Operation\x12\x16\n\x02id\x18\x02 \x01(\x0e\x32\n.OffPartId\x12\x12\n\nstart_addr\x18\x03 \x01(\r\x12\x0e\n\x06offset\x18\x04 \x01(\r\x12\x0e\n\x06length\x18\x05 \x01(\x05\x12\x0c\n\x04\x64\x61ta\x18\x06 \x01(\x0c\x12\x0c\n\x04\x63ode\x18\x07 \x01(\x05\x12\x0b\n\x03msg\x18\x08 \x01(\t\"-\n\x14systemTmpCycleTx_msg\x12\x15\n\rcycle_tx_data\x18\x01 \x03(\x03\"%\n\nLoraCfgReq\x12\n\n\x02op\x18\x01 \x01(\x05\x12\x0b\n\x03\x63\x66g\x18\x02 \x01(\t\"F\n\nLoraCfgRsp\x12\x0e\n\x06result\x18\x01 \x01(\x05\x12\n\n\x02op\x18\x02 \x01(\x05\x12\x0b\n\x03\x63\x66g\x18\x03 \x01(\t\x12\x0f\n\x07\x66\x61\x63_cfg\x18\x04 \x01(\t\">\n\x0bmod_fw_info\x12\x0c\n\x04type\x18\x01 \x01(\x05\x12\x10\n\x08identify\x18\x02 \x01(\t\x12\x0f\n\x07version\x18\x03 \x01(\t\"L\n\x0e\x64\x65vice_fw_info\x12\x0e\n\x06result\x18\x01 \x01(\x05\x12\x0f\n\x07version\x18\x02 \x01(\t\x12\x19\n\x03mod\x18\x03 \x03(\x0b\x32\x0c.mod_fw_info\"@\n\x11mow_to_app_info_t\x12\x0c\n\x04type\x18\x01 \x01(\x05\x12\x0b\n\x03\x63md\x18\x02 \x01(\x05\x12\x10\n\x08mow_data\x18\x03 \x03(\x05\"a\n\x1a\x64\x65vice_product_type_info_t\x12\x0e\n\x06result\x18\x01 \x01(\x05\x12\x19\n\x11main_product_type\x18\x02 \x01(\t\x12\x18\n\x10sub_product_type\x18\x03 \x01(\t\"P\n\x0fQCAppTestExcept\x12\x13\n\x0b\x65xcept_type\x18\x01 \x01(\t\x12(\n\nconditions\x18\x02 \x03(\x0b\x32\x14.QCAppTestConditions\"t\n\x13QCAppTestConditions\x12\x11\n\tcond_type\x18\x01 \x01(\t\x12\x0f\n\x07int_val\x18\x02 \x01(\x05\x12\x11\n\tfloat_val\x18\x03 \x01(\x02\x12\x12\n\ndouble_val\x18\x04 \x01(\x01\x12\x12\n\nstring_val\x18\x05 \x01(\t\"\x99\x01\n\x19mow_to_app_qctools_info_t\x12\x1a\n\x04type\x18\x01 \x01(\x0e\x32\x0c.QCAppTestId\x12\x16\n\x0etimeOfDuration\x18\x02 \x01(\x05\x12\x0e\n\x06result\x18\x03 \x01(\x05\x12\x16\n\x0eresult_details\x18\x04 \x01(\t\x12 \n\x06\x65xcept\x18\x05 \x03(\x0b\x32\x10.QCAppTestExcept\"O\n\x16mCtrlSimulationCmdData\x12\x0e\n\x06subCmd\x18\x01 \x01(\x05\x12\x10\n\x08param_id\x18\x02 \x01(\x05\x12\x13\n\x0bparam_value\x18\x03 \x03(\x05\"\x8f\x01\n\x08rpt_lora\x12\x16\n\x0epair_code_scan\x18\x01 \x01(\x05\x12\x19\n\x11pair_code_channel\x18\x02 \x01(\x05\x12\x17\n\x0fpair_code_locid\x18\x03 \x01(\x05\x12\x17\n\x0fpair_code_netid\x18\x04 \x01(\x05\x12\x1e\n\x16lora_connection_status\x18\x05 \x01(\x05\"\xf1\x01\n\x07rpt_rtk\x12\x0e\n\x06status\x18\x01 \x01(\x05\x12\x11\n\tpos_level\x18\x02 \x01(\x05\x12\x11\n\tgps_stars\x18\x03 \x01(\x05\x12\x0b\n\x03\x61ge\x18\x04 \x01(\x05\x12\x0f\n\x07lat_std\x18\x05 \x01(\x05\x12\x0f\n\x07lon_std\x18\x06 \x01(\x05\x12\x10\n\x08l2_stars\x18\x07 \x01(\x05\x12\x12\n\ndis_status\x18\x08 \x01(\x03\x12\x17\n\x0ftop4_total_mean\x18\t \x01(\x03\x12\x15\n\rco_view_stars\x18\n \x01(\x05\x12\r\n\x05reset\x18\x0b \x01(\x05\x12\x1c\n\tlora_info\x18\x0c \x01(\x0b\x32\t.rpt_lora\"\x86\x01\n\x10rpt_dev_location\x12\x12\n\nreal_pos_x\x18\x01 \x01(\x05\x12\x12\n\nreal_pos_y\x18\x02 \x01(\x05\x12\x13\n\x0breal_toward\x18\x03 \x01(\x05\x12\x10\n\x08pos_type\x18\x04 \x01(\x05\x12\x11\n\tzone_hash\x18\x05 \x01(\x03\x12\x10\n\x08\x62ol_hash\x18\x06 \x01(\x03\"4\n\x13vio_survival_info_t\x12\x1d\n\x15vio_survival_distance\x18\x01 \x01(\x02\";\n\x12\x63ollector_status_t\x12%\n\x1d\x63ollector_installation_status\x18\x01 \x01(\x05\"\"\n\x0clock_state_t\x12\x12\n\nlock_state\x18\x01 \x01(\r\"\xca\x02\n\x0erpt_dev_status\x12\x12\n\nsys_status\x18\x01 \x01(\x05\x12\x14\n\x0c\x63harge_state\x18\x02 \x01(\x05\x12\x13\n\x0b\x62\x61ttery_val\x18\x03 \x01(\x05\x12\x15\n\rsensor_status\x18\x04 \x01(\x05\x12\x13\n\x0blast_status\x18\x05 \x01(\x05\x12\x16\n\x0esys_time_stamp\x18\x06 \x01(\x03\x12\x14\n\x0cvslam_status\x18\x07 \x01(\x05\x12\x1c\n\tmnet_info\x18\x08 \x01(\x0b\x32\t.MnetInfo\x12/\n\x11vio_survival_info\x18\t \x01(\x0b\x32\x14.vio_survival_info_t\x12-\n\x10\x63ollector_status\x18\n \x01(\x0b\x32\x13.collector_status_t\x12!\n\nlock_state\x18\x0b \x01(\x0b\x32\r.lock_state_t\"\xaa\x01\n\x12rpt_connect_status\x12\x14\n\x0c\x63onnect_type\x18\x01 \x01(\x05\x12\x10\n\x08\x62le_rssi\x18\x02 \x01(\x05\x12\x11\n\twifi_rssi\x18\x03 \x01(\x05\x12\x11\n\tlink_type\x18\x04 \x01(\x05\x12\x11\n\tmnet_rssi\x18\x05 \x01(\x05\x12\x11\n\tmnet_inet\x18\x06 \x01(\x05\x12 \n\x08used_net\x18\x07 \x01(\x0e\x32\x0e.net_used_type\"\xa0\x03\n\x08rpt_work\x12\x0c\n\x04plan\x18\x01 \x01(\x05\x12\x11\n\tpath_hash\x18\x02 \x01(\x03\x12\x10\n\x08progress\x18\x03 \x01(\x05\x12\x0c\n\x04\x61rea\x18\x04 \x01(\x05\x12\x0f\n\x07\x62p_info\x18\x05 \x01(\x05\x12\x0f\n\x07\x62p_hash\x18\x06 \x01(\x03\x12\x10\n\x08\x62p_pos_x\x18\x07 \x01(\x05\x12\x10\n\x08\x62p_pos_y\x18\x08 \x01(\x05\x12\x15\n\rreal_path_num\x18\t \x01(\x03\x12\x12\n\npath_pos_x\x18\n \x01(\x05\x12\x12\n\npath_pos_y\x18\x0b \x01(\x05\x12\x14\n\x0cub_zone_hash\x18\x0c \x01(\x03\x12\x14\n\x0cub_path_hash\x18\r \x01(\x03\x12\x15\n\rinit_cfg_hash\x18\x0e \x01(\x03\x12\x15\n\rub_ecode_hash\x18\x0f \x01(\x03\x12\x14\n\x0cnav_run_mode\x18\x10 \x01(\x05\x12\x18\n\x10test_mode_status\x18\x11 \x01(\x03\x12\x15\n\rman_run_speed\x18\x12 \x01(\x05\x12\x17\n\x0fnav_edit_status\x18\x13 \x01(\x05\x12\x14\n\x0cknife_height\x18\x14 \x01(\x05\"F\n\x0crpt_maintain\x12\x0f\n\x07mileage\x18\x01 \x01(\x03\x12\x11\n\twork_time\x18\x02 \x01(\x05\x12\x12\n\nbat_cycles\x18\x03 \x01(\x05\"\x8f\x01\n\x0freport_info_cfg\x12\x15\n\x03\x61\x63t\x18\x01 \x01(\x0e\x32\x08.rpt_act\x12\x0f\n\x07timeout\x18\x02 \x01(\x05\x12\x0e\n\x06period\x18\x03 \x01(\x05\x12\x18\n\x10no_change_period\x18\x04 \x01(\x05\x12\r\n\x05\x63ount\x18\x05 \x01(\x05\x12\x1b\n\x03sub\x18\x06 \x03(\x0e\x32\x0e.rpt_info_type\"\x8c\x03\n\x10report_info_data\x12$\n\x07\x63onnect\x18\x01 \x01(\x0b\x32\x13.rpt_connect_status\x12\x1c\n\x03\x64\x65v\x18\x02 \x01(\x0b\x32\x0f.rpt_dev_status\x12\x15\n\x03rtk\x18\x03 \x01(\x0b\x32\x08.rpt_rtk\x12$\n\tlocations\x18\x04 \x03(\x0b\x32\x11.rpt_dev_location\x12\x17\n\x04work\x18\x05 \x01(\x0b\x32\t.rpt_work\x12 \n\x07\x66w_info\x18\x06 \x01(\x0b\x32\x0f.device_fw_info\x12\x1f\n\x08maintain\x18\x07 \x01(\x0b\x32\r.rpt_maintain\x12\x31\n\x11vision_point_info\x18\x08 \x03(\x0b\x32\x16.vision_point_info_msg\x12-\n\x0fvio_to_app_info\x18\t \x01(\x0b\x32\x14.vio_to_app_info_msg\x12\x39\n\x15vision_statistic_info\x18\n \x01(\x0b\x32\x1a.vision_statistic_info_msg\"\x9c\x0c\n\x07MctlSys\x12\"\n\rtoapp_batinfo\x18\x01 \x01(\x0b\x32\t.SysBatUpH\x00\x12)\n\x10toapp_work_state\x18\x02 \x01(\x0b\x32\r.SysWorkStateH\x00\x12*\n\x0ftodev_time_zone\x18\x03 \x01(\x0b\x32\x0f.SysSetTimeZoneH\x00\x12*\n\x0ftodev_data_time\x18\x04 \x01(\x0b\x32\x0f.SysSetDateTimeH\x00\x12\x1f\n\x08job_plan\x18\x06 \x01(\x0b\x32\x0b.SysJobPlanH\x00\x12(\n\x0etoapp_err_code\x18\x07 \x01(\x0b\x32\x0e.SysDevErrCodeH\x00\x12.\n\x13todev_job_plan_time\x18\n \x01(\x0b\x32\x0f.SysJobPlanTimeH\x00\x12%\n\x0etoapp_mow_info\x18\x0b \x01(\x0b\x32\x0b.SysMowInfoH\x00\x12&\n\x0f\x62idire_comm_cmd\x18\x0c \x01(\x0b\x32\x0b.SysCommCmdH\x00\x12\x16\n\x0cplan_job_del\x18\x0e \x01(\x03H\x00\x12\x1c\n\x06\x62order\x18\x0f \x01(\x0b\x32\n.SysBorderH\x00\x12.\n\x11toapp_plan_status\x18\x12 \x01(\x0b\x32\x11.SysPlanJobStatusH\x00\x12\x34\n\x12toapp_ul_fprogress\x18\x13 \x01(\x0b\x32\x16.SysUploadFileProgressH\x00\x12*\n\x10todev_deljobplan\x18\x14 \x01(\x0b\x32\x0e.SysDelJobPlanH\x00\x12\x1b\n\x11todev_mow_info_up\x18\x15 \x01(\x05H\x00\x12,\n\x10todev_knife_ctrl\x18\x16 \x01(\x0b\x32\x10.SysKnifeControlH\x00\x12\x1c\n\x12todev_reset_system\x18\x17 \x01(\x05H\x00\x12:\n\x19todev_reset_system_status\x18\x18 \x01(\x0b\x32\x15.SysResetSystemStatusH\x00\x12=\n\x16systemRapidStateTunnel\x18\x19 \x01(\x0b\x32\x1b.systemRapidStateTunnel_msgH\x00\x12;\n\x15systemTardStateTunnel\x18\x1a \x01(\x0b\x32\x1a.systemTardStateTunnel_msgH\x00\x12/\n\x0fsystemUpdateBuf\x18\x1b \x01(\x0b\x32\x14.systemUpdateBuf_msgH\x00\x12/\n\x15todev_time_ctrl_light\x18\x1c \x01(\x0b\x32\x0e.TimeCtrlLightH\x00\x12\x31\n\x10systemTmpCycleTx\x18\x1d \x01(\x0b\x32\x15.systemTmpCycleTx_msgH\x00\x12\x30\n\x14todev_off_chip_flash\x18\x1e \x01(\x0b\x32\x10.SysOffChipFlashH\x00\x12\x1f\n\x15todev_get_dev_fw_info\x18\x1f \x01(\x05H\x00\x12,\n\x11toapp_dev_fw_info\x18 \x01(\x0b\x32\x0f.device_fw_infoH\x00\x12)\n\x12todev_lora_cfg_req\x18! \x01(\x0b\x32\x0b.LoraCfgReqH\x00\x12)\n\x12toapp_lora_cfg_rsp\x18\" \x01(\x0b\x32\x0b.LoraCfgRspH\x00\x12-\n\x0fmow_to_app_info\x18# \x01(\x0b\x32\x12.mow_to_app_info_tH\x00\x12?\n\x18\x64\x65vice_product_type_info\x18$ \x01(\x0b\x32\x1b.device_product_type_info_tH\x00\x12=\n\x17mow_to_app_qctools_info\x18% \x01(\x0b\x32\x1a.mow_to_app_qctools_info_tH\x00\x12,\n\x10todev_report_cfg\x18& \x01(\x0b\x32\x10.report_info_cfgH\x00\x12.\n\x11toapp_report_data\x18\' \x01(\x0b\x32\x11.report_info_dataH\x00\x12\x31\n\x0esimulation_cmd\x18* \x01(\x0b\x32\x17.mCtrlSimulationCmdDataH\x00\x42\x0b\n\tSubSysMsg*+\n\tOperation\x12\t\n\x05WRITE\x10\x00\x12\x08\n\x04READ\x10\x01\x12\t\n\x05\x45RASE\x10\x02*\x8d\x02\n\tOffPartId\x12\x13\n\x0fOFF_PART_DL_IMG\x10\x00\x12\x19\n\x15OFF_PART_UPDINFO_BACK\x10\x01\x12\x14\n\x10OFF_PART_UPDINFO\x10\x02\x12\x13\n\x0fOFF_PART_NAKEDB\x10\x03\x12\x14\n\x10OFF_PART_FLASHDB\x10\x04\x12\x18\n\x14OFF_PART_UPD_APP_IMG\x10\x05\x12\x18\n\x14OFF_PART_UPD_BMS_IMG\x10\x06\x12\x18\n\x14OFF_PART_UPD_TMP_IMG\x10\x07\x12\x15\n\x11OFF_PART_DEV_INFO\x10\x08\x12\x18\n\x14OFF_PART_NAKEDB_BACK\x10\t\x12\x10\n\x0cOFF_PART_MAX\x10\n*\x95\x07\n\x0bQCAppTestId\x12!\n\x1dQC_APP_ITEM_ON_CHARGESATSTION\x10\x00\x12\x1a\n\x16QC_APP_TEST_X3_SPEAKER\x10\x01\x12)\n%QC_APP_TEST_STATIC_OBSTACLE_DETECTION\x10\x02\x12\"\n\x1eQC_APP_TEST_CHARGESTATION_TEMP\x10\x03\x12\x13\n\x0fQC_APP_ITEM_KEY\x10\x04\x12 \n\x1cQC_APP_TEST_BUMPER_FRONTLEFT\x10\x05\x12!\n\x1dQC_APP_TEST_BUMPER_FRONTRIGHT\x10\x06\x12\x14\n\x10QC_APP_TEST_STOP\x10\x07\x12\x16\n\x12QC_APP_TEST_UNLOCK\x10\x08\x12\x14\n\x10QC_APP_TEST_BUZZ\x10\t\x12\x14\n\x10QC_APP_TEST_LIFT\x10\n\x12\x16\n\x12QC_APP_ITEM_SENEOR\x10\x0b\x12\x19\n\x15QC_APP_TEST_ROLL_LEFT\x10\x0c\x12\x1a\n\x16QC_APP_TEST_ROLL_RIGHT\x10\r\x12\x1d\n\x19QC_APP_TEST_ULTRA_UNCOVER\x10\x0e\x12\x1c\n\x18QC_APP_TEST_ULTRA0_COVER\x10\x0f\x12\x1c\n\x18QC_APP_TEST_ULTRA1_COVER\x10\x10\x12\x1c\n\x18QC_APP_TEST_ULTRA2_COVER\x10\x11\x12\x14\n\x10QC_APP_TEST_RAIN\x10\x12\x12\x12\n\x0eQC_APP_ITEM_SQ\x10\x13\x12\x18\n\x14QC_APP_TEST_BLE_RSSI\x10\x14\x12 \n\x1cQC_APP_TEST_SATELLITES_ROVER\x10\x15\x12)\n%QC_APP_TEST_SATELLITES_REF_STATION_L1\x10\x16\x12)\n%QC_APP_TEST_SATELLITES_REF_STATION_L2\x10\x17\x12&\n\"QC_APP_TEST_SATELLITES_COMMON_VIEW\x10\x18\x12\x19\n\x15QC_APP_TEST_CNO_ROVER\x10\x19\x12\x1f\n\x1bQC_APP_TEST_CNO_REF_STATION\x10\x1a\x12\'\n#QC_APP_TEST_REF_STATION_LINK_STATUS\x10\x1b\x12\x1e\n\x1aQC_APP_TEST_LOCATION_STATE\x10\x1c\x12\x13\n\x0fQC_APP_TEST_MAX\x10\x1d*W\n\rnet_used_type\x12\x16\n\x12NET_USED_TYPE_NONE\x10\x00\x12\x16\n\x12NET_USED_TYPE_WIFI\x10\x01\x12\x16\n\x12NET_USED_TYPE_MNET\x10\x02*\xbf\x01\n\rrpt_info_type\x12\x0f\n\x0bRIT_CONNECT\x10\x00\x12\x0f\n\x0bRIT_DEV_STA\x10\x01\x12\x0b\n\x07RIT_RTK\x10\x02\x12\x11\n\rRIT_DEV_LOCAL\x10\x03\x12\x0c\n\x08RIT_WORK\x10\x04\x12\x0f\n\x0bRIT_FW_INFO\x10\x05\x12\x10\n\x0cRIT_MAINTAIN\x10\x06\x12\x14\n\x10RIT_VISION_POINT\x10\x07\x12\x0b\n\x07RIT_VIO\x10\x08\x12\x18\n\x14RIT_VISION_STATISTIC\x10\t*4\n\x07rpt_act\x12\r\n\tRPT_START\x10\x00\x12\x0c\n\x08RPT_STOP\x10\x01\x12\x0c\n\x08RPT_KEEP\x10\x02\x62\x06proto3')
18
18
 
19
19
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, globals())
20
20
  _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'pymammotion.proto.mctrl_sys_pb2', globals())
21
21
  if _descriptor._USE_C_DESCRIPTORS == False:
22
22
 
23
23
  DESCRIPTOR._options = None
24
- _OPERATION._serialized_start=7199
25
- _OPERATION._serialized_end=7242
26
- _OFFPARTID._serialized_start=7245
27
- _OFFPARTID._serialized_end=7514
28
- _QCAPPTESTID._serialized_start=7517
29
- _QCAPPTESTID._serialized_end=8434
30
- _NET_USED_TYPE._serialized_start=8436
31
- _NET_USED_TYPE._serialized_end=8523
32
- _RPT_INFO_TYPE._serialized_start=8526
33
- _RPT_INFO_TYPE._serialized_end=8717
34
- _RPT_ACT._serialized_start=8719
35
- _RPT_ACT._serialized_end=8771
24
+ _OPERATION._serialized_start=7201
25
+ _OPERATION._serialized_end=7244
26
+ _OFFPARTID._serialized_start=7247
27
+ _OFFPARTID._serialized_end=7516
28
+ _QCAPPTESTID._serialized_start=7519
29
+ _QCAPPTESTID._serialized_end=8436
30
+ _NET_USED_TYPE._serialized_start=8438
31
+ _NET_USED_TYPE._serialized_end=8525
32
+ _RPT_INFO_TYPE._serialized_start=8528
33
+ _RPT_INFO_TYPE._serialized_end=8719
34
+ _RPT_ACT._serialized_start=8721
35
+ _RPT_ACT._serialized_end=8773
36
36
  _SYSBATUP._serialized_start=70
37
37
  _SYSBATUP._serialized_end=96
38
38
  _SYSWORKSTATE._serialized_start=98
@@ -54,89 +54,89 @@ if _descriptor._USE_C_DESCRIPTORS == False:
54
54
  _SYSJOBPLANTIME._serialized_start=672
55
55
  _SYSJOBPLANTIME._serialized_end=908
56
56
  _SYSMOWINFO._serialized_start=910
57
- _SYSMOWINFO._serialized_end=1017
58
- _SYSOPTILINEACK._serialized_start=1019
59
- _SYSOPTILINEACK._serialized_end=1078
60
- _SYSCOMMCMD._serialized_start=1080
61
- _SYSCOMMCMD._serialized_end=1133
62
- _SYSUPLOADFILEPROGRESS._serialized_start=1135
63
- _SYSUPLOADFILEPROGRESS._serialized_end=1207
64
- _SYSERRORCODE._serialized_start=1209
65
- _SYSERRORCODE._serialized_end=1240
66
- _SYSBORDER._serialized_start=1242
67
- _SYSBORDER._serialized_end=1272
68
- _SYSPLANJOBSTATUS._serialized_start=1274
69
- _SYSPLANJOBSTATUS._serialized_end=1316
70
- _SYSKNIFECONTROL._serialized_start=1318
71
- _SYSKNIFECONTROL._serialized_end=1379
72
- _SYSRESETSYSTEMSTATUS._serialized_start=1381
73
- _SYSRESETSYSTEMSTATUS._serialized_end=1424
74
- _TIMECTRLLIGHT._serialized_start=1427
75
- _TIMECTRLLIGHT._serialized_end=1565
76
- _VISION_POINT_MSG._serialized_start=1567
77
- _VISION_POINT_MSG._serialized_end=1618
78
- _VISION_POINT_INFO_MSG._serialized_start=1620
79
- _VISION_POINT_INFO_MSG._serialized_end=1712
80
- _VIO_TO_APP_INFO_MSG._serialized_start=1715
81
- _VIO_TO_APP_INFO_MSG._serialized_end=1869
82
- _VISION_STATISTIC_MSG._serialized_start=1871
83
- _VISION_STATISTIC_MSG._serialized_end=1920
84
- _VISION_STATISTIC_INFO_MSG._serialized_start=1922
85
- _VISION_STATISTIC_INFO_MSG._serialized_end=2031
86
- _SYSTEMRAPIDSTATETUNNEL_MSG._serialized_start=2034
87
- _SYSTEMRAPIDSTATETUNNEL_MSG._serialized_end=2245
88
- _SYSTEMTARDSTATETUNNEL_MSG._serialized_start=2247
89
- _SYSTEMTARDSTATETUNNEL_MSG._serialized_end=2299
90
- _SYSTEMUPDATEBUF_MSG._serialized_start=2301
91
- _SYSTEMUPDATEBUF_MSG._serialized_end=2347
92
- _SYSOFFCHIPFLASH._serialized_start=2350
93
- _SYSOFFCHIPFLASH._serialized_end=2508
94
- _SYSTEMTMPCYCLETX_MSG._serialized_start=2510
95
- _SYSTEMTMPCYCLETX_MSG._serialized_end=2555
96
- _LORACFGREQ._serialized_start=2557
97
- _LORACFGREQ._serialized_end=2594
98
- _LORACFGRSP._serialized_start=2596
99
- _LORACFGRSP._serialized_end=2666
100
- _MOD_FW_INFO._serialized_start=2668
101
- _MOD_FW_INFO._serialized_end=2730
102
- _DEVICE_FW_INFO._serialized_start=2732
103
- _DEVICE_FW_INFO._serialized_end=2808
104
- _MOW_TO_APP_INFO_T._serialized_start=2810
105
- _MOW_TO_APP_INFO_T._serialized_end=2874
106
- _DEVICE_PRODUCT_TYPE_INFO_T._serialized_start=2876
107
- _DEVICE_PRODUCT_TYPE_INFO_T._serialized_end=2973
108
- _QCAPPTESTEXCEPT._serialized_start=2975
109
- _QCAPPTESTEXCEPT._serialized_end=3055
110
- _QCAPPTESTCONDITIONS._serialized_start=3057
111
- _QCAPPTESTCONDITIONS._serialized_end=3173
112
- _MOW_TO_APP_QCTOOLS_INFO_T._serialized_start=3176
113
- _MOW_TO_APP_QCTOOLS_INFO_T._serialized_end=3329
114
- _MCTRLSIMULATIONCMDDATA._serialized_start=3331
115
- _MCTRLSIMULATIONCMDDATA._serialized_end=3410
116
- _RPT_LORA._serialized_start=3413
117
- _RPT_LORA._serialized_end=3556
118
- _RPT_RTK._serialized_start=3559
119
- _RPT_RTK._serialized_end=3800
120
- _RPT_DEV_LOCATION._serialized_start=3803
121
- _RPT_DEV_LOCATION._serialized_end=3937
122
- _VIO_SURVIVAL_INFO_T._serialized_start=3939
123
- _VIO_SURVIVAL_INFO_T._serialized_end=3991
124
- _COLLECTOR_STATUS_T._serialized_start=3993
125
- _COLLECTOR_STATUS_T._serialized_end=4052
126
- _LOCK_STATE_T._serialized_start=4054
127
- _LOCK_STATE_T._serialized_end=4088
128
- _RPT_DEV_STATUS._serialized_start=4091
129
- _RPT_DEV_STATUS._serialized_end=4421
130
- _RPT_CONNECT_STATUS._serialized_start=4424
131
- _RPT_CONNECT_STATUS._serialized_end=4594
132
- _RPT_WORK._serialized_start=4597
133
- _RPT_WORK._serialized_end=5013
134
- _RPT_MAINTAIN._serialized_start=5015
135
- _RPT_MAINTAIN._serialized_end=5085
136
- _REPORT_INFO_CFG._serialized_start=5088
137
- _REPORT_INFO_CFG._serialized_end=5231
138
- _REPORT_INFO_DATA._serialized_start=5234
139
- _REPORT_INFO_DATA._serialized_end=5630
140
- _MCTLSYS._serialized_start=5633
141
- _MCTLSYS._serialized_end=7197
57
+ _SYSMOWINFO._serialized_end=1019
58
+ _SYSOPTILINEACK._serialized_start=1021
59
+ _SYSOPTILINEACK._serialized_end=1080
60
+ _SYSCOMMCMD._serialized_start=1082
61
+ _SYSCOMMCMD._serialized_end=1135
62
+ _SYSUPLOADFILEPROGRESS._serialized_start=1137
63
+ _SYSUPLOADFILEPROGRESS._serialized_end=1209
64
+ _SYSERRORCODE._serialized_start=1211
65
+ _SYSERRORCODE._serialized_end=1242
66
+ _SYSBORDER._serialized_start=1244
67
+ _SYSBORDER._serialized_end=1274
68
+ _SYSPLANJOBSTATUS._serialized_start=1276
69
+ _SYSPLANJOBSTATUS._serialized_end=1318
70
+ _SYSKNIFECONTROL._serialized_start=1320
71
+ _SYSKNIFECONTROL._serialized_end=1381
72
+ _SYSRESETSYSTEMSTATUS._serialized_start=1383
73
+ _SYSRESETSYSTEMSTATUS._serialized_end=1426
74
+ _TIMECTRLLIGHT._serialized_start=1429
75
+ _TIMECTRLLIGHT._serialized_end=1567
76
+ _VISION_POINT_MSG._serialized_start=1569
77
+ _VISION_POINT_MSG._serialized_end=1620
78
+ _VISION_POINT_INFO_MSG._serialized_start=1622
79
+ _VISION_POINT_INFO_MSG._serialized_end=1714
80
+ _VIO_TO_APP_INFO_MSG._serialized_start=1717
81
+ _VIO_TO_APP_INFO_MSG._serialized_end=1871
82
+ _VISION_STATISTIC_MSG._serialized_start=1873
83
+ _VISION_STATISTIC_MSG._serialized_end=1922
84
+ _VISION_STATISTIC_INFO_MSG._serialized_start=1924
85
+ _VISION_STATISTIC_INFO_MSG._serialized_end=2033
86
+ _SYSTEMRAPIDSTATETUNNEL_MSG._serialized_start=2036
87
+ _SYSTEMRAPIDSTATETUNNEL_MSG._serialized_end=2247
88
+ _SYSTEMTARDSTATETUNNEL_MSG._serialized_start=2249
89
+ _SYSTEMTARDSTATETUNNEL_MSG._serialized_end=2301
90
+ _SYSTEMUPDATEBUF_MSG._serialized_start=2303
91
+ _SYSTEMUPDATEBUF_MSG._serialized_end=2349
92
+ _SYSOFFCHIPFLASH._serialized_start=2352
93
+ _SYSOFFCHIPFLASH._serialized_end=2510
94
+ _SYSTEMTMPCYCLETX_MSG._serialized_start=2512
95
+ _SYSTEMTMPCYCLETX_MSG._serialized_end=2557
96
+ _LORACFGREQ._serialized_start=2559
97
+ _LORACFGREQ._serialized_end=2596
98
+ _LORACFGRSP._serialized_start=2598
99
+ _LORACFGRSP._serialized_end=2668
100
+ _MOD_FW_INFO._serialized_start=2670
101
+ _MOD_FW_INFO._serialized_end=2732
102
+ _DEVICE_FW_INFO._serialized_start=2734
103
+ _DEVICE_FW_INFO._serialized_end=2810
104
+ _MOW_TO_APP_INFO_T._serialized_start=2812
105
+ _MOW_TO_APP_INFO_T._serialized_end=2876
106
+ _DEVICE_PRODUCT_TYPE_INFO_T._serialized_start=2878
107
+ _DEVICE_PRODUCT_TYPE_INFO_T._serialized_end=2975
108
+ _QCAPPTESTEXCEPT._serialized_start=2977
109
+ _QCAPPTESTEXCEPT._serialized_end=3057
110
+ _QCAPPTESTCONDITIONS._serialized_start=3059
111
+ _QCAPPTESTCONDITIONS._serialized_end=3175
112
+ _MOW_TO_APP_QCTOOLS_INFO_T._serialized_start=3178
113
+ _MOW_TO_APP_QCTOOLS_INFO_T._serialized_end=3331
114
+ _MCTRLSIMULATIONCMDDATA._serialized_start=3333
115
+ _MCTRLSIMULATIONCMDDATA._serialized_end=3412
116
+ _RPT_LORA._serialized_start=3415
117
+ _RPT_LORA._serialized_end=3558
118
+ _RPT_RTK._serialized_start=3561
119
+ _RPT_RTK._serialized_end=3802
120
+ _RPT_DEV_LOCATION._serialized_start=3805
121
+ _RPT_DEV_LOCATION._serialized_end=3939
122
+ _VIO_SURVIVAL_INFO_T._serialized_start=3941
123
+ _VIO_SURVIVAL_INFO_T._serialized_end=3993
124
+ _COLLECTOR_STATUS_T._serialized_start=3995
125
+ _COLLECTOR_STATUS_T._serialized_end=4054
126
+ _LOCK_STATE_T._serialized_start=4056
127
+ _LOCK_STATE_T._serialized_end=4090
128
+ _RPT_DEV_STATUS._serialized_start=4093
129
+ _RPT_DEV_STATUS._serialized_end=4423
130
+ _RPT_CONNECT_STATUS._serialized_start=4426
131
+ _RPT_CONNECT_STATUS._serialized_end=4596
132
+ _RPT_WORK._serialized_start=4599
133
+ _RPT_WORK._serialized_end=5015
134
+ _RPT_MAINTAIN._serialized_start=5017
135
+ _RPT_MAINTAIN._serialized_end=5087
136
+ _REPORT_INFO_CFG._serialized_start=5090
137
+ _REPORT_INFO_CFG._serialized_end=5233
138
+ _REPORT_INFO_DATA._serialized_start=5236
139
+ _REPORT_INFO_DATA._serialized_end=5632
140
+ _MCTLSYS._serialized_start=5635
141
+ _MCTLSYS._serialized_end=7199
142
142
  # @@protoc_insertion_point(module_scope)
@@ -274,18 +274,18 @@ class SysKnifeControl(_message.Message):
274
274
  def __init__(self, knife_status: _Optional[int] = ..., knife_height: _Optional[int] = ...) -> None: ...
275
275
 
276
276
  class SysMowInfo(_message.Message):
277
- __slots__ = ["RTKstars", "RTKstatus", "batVal", "deviceState", "knifeHeight"]
277
+ __slots__ = ["batVal", "deviceState", "knifeHeight", "rtk_stars", "rtk_status"]
278
278
  BATVAL_FIELD_NUMBER: _ClassVar[int]
279
279
  DEVICESTATE_FIELD_NUMBER: _ClassVar[int]
280
280
  KNIFEHEIGHT_FIELD_NUMBER: _ClassVar[int]
281
- RTKSTARS_FIELD_NUMBER: _ClassVar[int]
282
- RTKSTATUS_FIELD_NUMBER: _ClassVar[int]
283
- RTKstars: int
284
- RTKstatus: int
281
+ RTK_STARS_FIELD_NUMBER: _ClassVar[int]
282
+ RTK_STATUS_FIELD_NUMBER: _ClassVar[int]
285
283
  batVal: int
286
284
  deviceState: int
287
285
  knifeHeight: int
288
- def __init__(self, deviceState: _Optional[int] = ..., batVal: _Optional[int] = ..., knifeHeight: _Optional[int] = ..., RTKstatus: _Optional[int] = ..., RTKstars: _Optional[int] = ...) -> None: ...
286
+ rtk_stars: int
287
+ rtk_status: int
288
+ def __init__(self, deviceState: _Optional[int] = ..., batVal: _Optional[int] = ..., knifeHeight: _Optional[int] = ..., rtk_status: _Optional[int] = ..., rtk_stars: _Optional[int] = ...) -> None: ...
289
289
 
290
290
  class SysOffChipFlash(_message.Message):
291
291
  __slots__ = ["code", "data", "id", "length", "msg", "offset", "op", "start_addr"]
@@ -0,0 +1,70 @@
1
+ import math
2
+ import numpy as np
3
+
4
+ from pymammotion.data.model.location import Point
5
+
6
+
7
+ class CoordinateConverter:
8
+ def __init__(self, lat_degrees: float, lon_degrees: float):
9
+ # Initialize constants
10
+ self.WGS84A = 6378137.0
11
+ self.f_ = 3.3528106647474805E-21
12
+ self.b_ = (1.0 - self.f_) * self.WGS84A
13
+ self.e2_ = (2.0 - self.f_) * self.f_
14
+ self.e2m_ = (1.0 - self.f_) * (1.0 - self.f_)
15
+ self.ep2_ = ((self.WGS84A ** 2) - (self.b_ ** 2)) / (self.b_ ** 2)
16
+
17
+ # Initialize rotation matrix
18
+ self.R_ = np.zeros((3, 3))
19
+
20
+ # Variables to store initial LLA
21
+ self.x0_ = 0.0
22
+ self.y0_ = 0.0
23
+ self.z0_ = 0.0
24
+
25
+ # Call set_init_lla with provided lat/lon
26
+ latitude_rad = math.radians(lat_degrees)
27
+ longitude_rad = math.radians(lon_degrees)
28
+ self.set_init_lla(latitude_rad, longitude_rad)
29
+
30
+ def set_init_lla(self, lat_rad, lon_rad):
31
+ sin_lat = math.sin(lat_rad)
32
+ cos_lat = math.cos(lat_rad)
33
+ sin_lon = math.sin(lon_rad)
34
+ cos_lon = math.cos(lon_rad)
35
+
36
+ sqrt = self.WGS84A / math.sqrt(1.0 - (self.e2_ * (sin_lat ** 2)))
37
+ d3 = sqrt * cos_lat
38
+
39
+ self.x0_ = d3 * cos_lon
40
+ self.y0_ = d3 * sin_lon
41
+ self.z0_ = self.e2m_ * sqrt * sin_lat
42
+
43
+ self.R_[0][0] = -sin_lon
44
+ self.R_[0][1] = cos_lon
45
+ self.R_[0][2] = 0.0
46
+
47
+ self.R_[1][0] = -cos_lon * sin_lat
48
+ self.R_[1][1] = -sin_lon * sin_lat
49
+ self.R_[1][2] = cos_lat
50
+
51
+ self.R_[2][0] = cos_lon * cos_lat
52
+ self.R_[2][1] = sin_lon * cos_lat
53
+ self.R_[2][2] = sin_lat
54
+
55
+ def enu_to_lla(self, e, n) -> Point:
56
+ d3 = self.R_[0][0] * n + self.R_[1][0] * e + self.x0_
57
+ d4 = self.R_[0][1] * n + self.R_[1][1] * e + self.y0_
58
+ d5 = self.R_[0][2] * n + self.R_[1][2] * e + self.z0_
59
+
60
+ hypot = math.hypot(d3, d4)
61
+ atan2_lat = math.atan2(self.WGS84A * d5, self.b_ * hypot)
62
+
63
+ sin_lat = math.sin(atan2_lat)
64
+ cos_lat = math.cos(atan2_lat)
65
+
66
+ lon = math.atan2(d4, d3) * 180.0 / math.pi
67
+ lat = math.atan2(d5 + self.ep2_ * self.b_ * (sin_lat ** 3), hypot - self.e2_ * self.WGS84A * (cos_lat ** 3)) * 180.0 / math.pi
68
+
69
+ return Point(latitude=lat, longitude=lon)
70
+
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: pymammotion
3
- Version: 0.1.1
3
+ Version: 0.1.2
4
4
  Summary:
5
5
  License: GNU-3.0
6
6
  Author: Michael Arthur
@@ -23,6 +23,7 @@ Requires-Dist: bleak-retry-connector (>=3.5.0,<4.0.0)
23
23
  Requires-Dist: jsonic (>=1.0.0,<2.0.0)
24
24
  Requires-Dist: mashumaro (>=3.13,<4.0)
25
25
  Requires-Dist: nest-asyncio (>=1.6.0,<2.0.0)
26
+ Requires-Dist: numpy (>=2.0.1,<3.0.0)
26
27
  Requires-Dist: orjson (>=3.9.15,<4.0.0)
27
28
  Requires-Dist: paho-mqtt (>=1.6.1,<2.0.0)
28
29
  Requires-Dist: protobuf (>=4.23.1)
@@ -20,14 +20,14 @@ pymammotion/bluetooth/data/notifydata.py,sha256=N1bphpueWUWbsWUcpZmMGt2CyCgLcKAF
20
20
  pymammotion/const.py,sha256=3plR6t5sFVhx3LoUbW5PE2gqIANoD-fSm-T0q8uIwIU,336
21
21
  pymammotion/data/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
22
22
  pymammotion/data/model/__init__.py,sha256=d8FlIgCcWqoH3jJSpnm-IY-25RM-l2nbRwLtWjSHo74,222
23
- pymammotion/data/model/device.py,sha256=XPAtknw8t5a38OO4acr25gyfbnUpTs_BaD80--YP7LY,9318
23
+ pymammotion/data/model/device.py,sha256=iW7EK36A6ndAmfJlMNjxcB2PxjRXhg5slI4ITGzfi_k,9911
24
24
  pymammotion/data/model/device_config.py,sha256=6BcyVbMyw6vA1jANof8_mnG-jizGsF96pbKeHP4t8G4,179
25
25
  pymammotion/data/model/enums.py,sha256=tD_vYsxstOV_lUkYF9uWkrjVOgAJPNnGevy_xmiu3WE,1558
26
26
  pymammotion/data/model/excute_boarder_params.py,sha256=kadSth4y-VXlXIZ6R-Ng-kDvBbM-3YRr8bmR86qR0U0,1355
27
27
  pymammotion/data/model/execute_boarder.py,sha256=oDb2h5tFtOQIa8OCNYaDugqCgCZBLjQRzQTNVcJVAGQ,1072
28
28
  pymammotion/data/model/generate_route_information.py,sha256=5w1MM1-gXGXb_AoEap_I5xTxAFbNSzXuqQFEkw4NmDs,4301
29
29
  pymammotion/data/model/hash_list.py,sha256=z4y0mzbW8LQ5nsaHbMlt1y6uS4suB4D_VljAyIEjFR0,1171
30
- pymammotion/data/model/location.py,sha256=ST0SrKnutQ1VsesOiKAmEqpc3LomW5waKZbFdzUg9OQ,670
30
+ pymammotion/data/model/location.py,sha256=KEDVD5RgW7z5713EtWgdcseswK71u-7Kb__o58Dl_h8,783
31
31
  pymammotion/data/model/mowing_modes.py,sha256=121zhvouPKRbF7mynJIc7tJ0zO9bS-Nq4CFhFI7Nt0s,663
32
32
  pymammotion/data/model/plan.py,sha256=7JvqAo0a9Yg1Vtifd4J3Dx3StEppxrMOfmq2-877kYg,2891
33
33
  pymammotion/data/model/rapid_state.py,sha256=_e9M-65AbkvIqXyMYzLKBxbNvpso42qD8R-JSt66THY,986
@@ -36,7 +36,7 @@ pymammotion/data/mqtt/__init__.py,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdr
36
36
  pymammotion/data/mqtt/event.py,sha256=kEilMLmwZG2nbokLw7X28KF3b-te8G-MfNARYm4LG6I,2170
37
37
  pymammotion/data/mqtt/properties.py,sha256=HkBPghr26L9_b4QaOi1DtPgb0UoPIOGSe9wb3kgnM6Y,2815
38
38
  pymammotion/data/mqtt/status.py,sha256=zqnlo-MzejEQZszl0i0Wucoc3E76x6UtI9JLxoBnu54,1067
39
- pymammotion/data/state_manager.py,sha256=yjNbGYprOO7jfVfDO6EBK3MDt2Y8pmAijNOBEGfp6Xs,2766
39
+ pymammotion/data/state_manager.py,sha256=bi_ThLe65n-kjhVq8lfW1P1a4GUp4czs_86hbXj4URs,2798
40
40
  pymammotion/event/__init__.py,sha256=mgATR6vPHACNQ-0zH5fi7NdzeTCDV1CZyaWPmtUusi8,115
41
41
  pymammotion/event/event.py,sha256=Fy5-I1p92AO_D67VW4eHQqA4pOt7MZsrP--tVfIVUz8,1820
42
42
  pymammotion/http/_init_.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -56,22 +56,26 @@ pymammotion/mammotion/commands/messages/video.py,sha256=_8lJsU4sLm2CGnc7RDkueA0A
56
56
  pymammotion/mammotion/control/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
57
57
  pymammotion/mammotion/control/joystick.py,sha256=EWV20MMzQuhbLlNlXbsyZKSEpeM7x1CQL7saU4Pn0-g,6165
58
58
  pymammotion/mammotion/devices/__init__.py,sha256=T72jt0ejtMjo1rPmn_FeMF3pmp0LLeRRpc9WcDKEYYY,126
59
- pymammotion/mammotion/devices/mammotion.py,sha256=s-ubE2PSWV58LxMerXFrVO6ek3EL6kZkWn04Dacbzb4,31131
59
+ pymammotion/mammotion/devices/mammotion.py,sha256=Dhn7KJxqCiCGbLh5NXJjAjx8Usg3NlD4QykseXK9tpI,31135
60
60
  pymammotion/mqtt/__init__.py,sha256=Ocs5e-HLJvTuDpVXyECEsWIvwsUaxzj7lZ9mSYutNDY,105
61
61
  pymammotion/mqtt/mammotion_mqtt.py,sha256=EBnUwqah-mZNcAn5Hq2sV3NKXueIYWNhYPiaXwaXdHg,9084
62
62
  pymammotion/proto/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
63
+ pymammotion/proto/basestation.proto,sha256=_x5gAz3FkZXS1jtq4GgZgaDCuRU-UV-7HTFdsfQ3zbo,1034
64
+ pymammotion/proto/basestation.py,sha256=js64_N2xQYRxWPRdVNEapO0qe7vBlfYnjW5sE8hi7hw,2026
65
+ pymammotion/proto/basestation_pb2.py,sha256=PTVlHcDLQeRV6qv7ZPjGke9MF68mpqoUeJA0Sw_AoT0,2776
66
+ pymammotion/proto/basestation_pb2.pyi,sha256=eeYW9l_5OsokGzP9OE_lg6TdJwXGAFvPiojQ3tipcak,3970
63
67
  pymammotion/proto/common.proto,sha256=op8TCU1ppCMeP-izK2tXMoJXQyZXdgj1EgOKcd14A-A,81
64
68
  pymammotion/proto/common.py,sha256=stFYSHAjVKasFfPacxLcMfpGuUtGYkTb8RUAoJEtaRc,324
65
69
  pymammotion/proto/common_pb2.py,sha256=8OpJ04lLq8sAktY6CkP8TxVGar9x858sCf6FqLy7Rs4,1030
66
70
  pymammotion/proto/common_pb2.pyi,sha256=skF2ydSIQIvoobjiCUjXVD-pTfJiAILbaUl6nkdh2SY,460
67
- pymammotion/proto/dev_net.proto,sha256=4c1vcKvxYQroDCr87j1_dTzDrmzuRlwHMXyGjvp3bAQ,5502
68
- pymammotion/proto/dev_net.py,sha256=hQ2Do1qDPaSB6AoyTzILC4Xvr8hNWfqKuKGK3pUvShY,11256
69
- pymammotion/proto/dev_net_pb2.py,sha256=Kf7rTfwY921ye7ng29pxbSnsccNvxqN76QIVKYVhiNE,12868
70
- pymammotion/proto/dev_net_pb2.pyi,sha256=svmD_B5zCw3Yg7ikrXvqube6Hg0a7YmGqsG_MbS9hsw,21825
71
- pymammotion/proto/luba_msg.proto,sha256=Bo8LxUaaJ_bxu-WAnfA05wP0n_T6ozFdEibj7vFPrxs,1588
72
- pymammotion/proto/luba_msg.py,sha256=YMhgv5S_1PlWGjWf332_lMcnTAlenMSm7_PnPQZqnlY,2371
73
- pymammotion/proto/luba_msg_pb2.py,sha256=r9RXnPlbgFALKSeQJfosJ13dO7cwwC2YISf-HSgtbC8,4315
74
- pymammotion/proto/luba_msg_pb2.pyi,sha256=La00OdR9XBAGFcXjhJ2WmUSR3CuI-W9WlOQnuGBXWGk,4066
71
+ pymammotion/proto/dev_net.proto,sha256=sh10FFXCkcQHBt3OlvW-4Jvv_EATOLxkcIGWDKzivs8,5502
72
+ pymammotion/proto/dev_net.py,sha256=7RPkgEBa6z8jwQ3h15WZZfXSo2t_srxtGQtBoCEOJQM,11260
73
+ pymammotion/proto/dev_net_pb2.py,sha256=URvPWl3bDTpgcXsPR7GMOTcbrmDgBgm-PxWcd4ZGiCM,12868
74
+ pymammotion/proto/dev_net_pb2.pyi,sha256=0S1HyPT1WQUNQXsW9xEgKSAoEy-0LBfP9ZBJeQlhChc,21825
75
+ pymammotion/proto/luba_msg.proto,sha256=KfEKnPy4HyI2msoFyE5tY2tp913PGyWuki9G6tuju_A,1661
76
+ pymammotion/proto/luba_msg.py,sha256=Q9I8R7xmhLuenn5r0XOmYzH3UmWrPk6KJF0xzkjfvDM,2473
77
+ pymammotion/proto/luba_msg_pb2.py,sha256=tM_jjxnRcAL_PFbNSbY2i11YP27boXYxysB0VE1Rjdc,4514
78
+ pymammotion/proto/luba_msg_pb2.pyi,sha256=u1YgUrGoqfuizHt2ckQUL1Y_u9tLOievwrJ2e_ySOss,4288
75
79
  pymammotion/proto/luba_mul.proto,sha256=YhzrsoILd14pM_MjuZLQIK08AoKMn_mYyL7CxZLp0-Q,1114
76
80
  pymammotion/proto/luba_mul.py,sha256=M-26YJDIAQLYNAmXb3CRAjrxeOGezbJQwRcTEM-4TqI,2061
77
81
  pymammotion/proto/luba_mul_pb2.py,sha256=nJ25xWmuBldTQsAddTR5EImTEN-D2FSUCd_5vBUUTwA,3399
@@ -81,7 +85,7 @@ pymammotion/proto/mctrl_driver.py,sha256=sseY2MxUtaQZvg7fvbA_gNvtqx9MVDW_rvUcfA2
81
85
  pymammotion/proto/mctrl_driver_pb2.py,sha256=bfLwZb5Hehb6OIkgFrZMkQ0oTBXoOBxpruszKz-UM1U,3785
82
86
  pymammotion/proto/mctrl_driver_pb2.pyi,sha256=9_rcQELsSeOfeIQMTEFIpeXICpDe3arQeA4kAYWNSWw,5860
83
87
  pymammotion/proto/mctrl_nav.proto,sha256=3OQ8DDP5yaZpKBcqeflGLQ5v5YE5AdBOftkKLRne2Tg,12530
84
- pymammotion/proto/mctrl_nav.py,sha256=slxOoMybsBGr0w2_QU4IzArcPU3tgzVNyio-lYmLfi0,24993
88
+ pymammotion/proto/mctrl_nav.py,sha256=hRnCl2BkwbzDS167QOapwQnB15n0t3XY-H8NyZqT3DM,24993
85
89
  pymammotion/proto/mctrl_nav_pb2.py,sha256=LAHfEmGfNVZCN6vuLSZF6s2wd1Qk-siaWe4mdPWPdxc,24213
86
90
  pymammotion/proto/mctrl_nav_pb2.pyi,sha256=qmGYfKh2o63e5ppl9QIWnwDbmGVUVOf7EqhC9ApE5fg,51336
87
91
  pymammotion/proto/mctrl_ota.proto,sha256=4iHr-v1R0QiNndCnv3b6mhXiERLukB67ZzhTgt1iMc0,629
@@ -92,18 +96,19 @@ pymammotion/proto/mctrl_pept.proto,sha256=HBTRiP1XJB5w9hT1V38aePPREpePBk5jkjupu_
92
96
  pymammotion/proto/mctrl_pept.py,sha256=utMtbXsCwGS14YggTqUdVIbTZsR0w49B6gKU8jHzbJg,1332
93
97
  pymammotion/proto/mctrl_pept_pb2.py,sha256=QqQ1BXo_EBs7cLmQGtRbnNy0rRxvaqtrGfKxXS8R5A8,2134
94
98
  pymammotion/proto/mctrl_pept_pb2.pyi,sha256=gr0lxUPqhyEnDdni9vpIQnAIhqAGtHlv1rFeb5EJnMY,2840
95
- pymammotion/proto/mctrl_sys.proto,sha256=jx1NltF21skUn_x4vgE4Ksrw-5QvPTDtP2UOATVFEt4,10192
96
- pymammotion/proto/mctrl_sys.py,sha256=ygf7QCA0Sn0rjvkj5SJystllcFvgYwT5zvt2F0hn7kg,19074
97
- pymammotion/proto/mctrl_sys_pb2.py,sha256=fvVXdJtDCcmCGHjib53zkRV6WGqlD3bBs-YR_d8K5NY,21497
98
- pymammotion/proto/mctrl_sys_pb2.pyi,sha256=2aojT3Q9kqP4YT9aOW0lt4RxRXfOdcsztbArHBG6RzQ,38902
99
+ pymammotion/proto/mctrl_sys.proto,sha256=6SONb-xEqIlDUQFR_bi0AQEWAeAirFgz1Y-1Ormoko0,10194
100
+ pymammotion/proto/mctrl_sys.py,sha256=F1XQTqfGqvaWvgx6IQb4jJDxV7i4unzOs9Kmf9Bh8DU,19107
101
+ pymammotion/proto/mctrl_sys_pb2.py,sha256=DYemb514mlC7c27t-k1YqqBif0xxhLmnIWk8rXtSj1c,21497
102
+ pymammotion/proto/mctrl_sys_pb2.pyi,sha256=BrivyEP8s7nnuSQkezTbnse9A4J1ad5o6yFcufELLVU,38910
99
103
  pymammotion/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
100
104
  pymammotion/utility/constant/__init__.py,sha256=tZz7szqIhrzNjfcLU3ysfINfg5VEBUAisd9AhP4mvT0,38
101
105
  pymammotion/utility/constant/device_constant.py,sha256=Ebmf1S9Of4s_SNp8yC7Vsbh35IniAeY-DYV4lRY5Kmw,7109
102
106
  pymammotion/utility/datatype_converter.py,sha256=v6zym2Zu0upxQjR-xDqXwi3516zpntSlg7LP8tQF5K8,4216
103
107
  pymammotion/utility/device_type.py,sha256=KYawu2glZMVlPmxRbA4kVFujXz3miHp3rJiOWRVj-GI,8285
108
+ pymammotion/utility/map.py,sha256=CRW-CjkLBp8R9UcobH2cQ9x4qNxHSLlI2u0jAiKyB8A,2271
104
109
  pymammotion/utility/periodic.py,sha256=9wJMfwXPlx6Mbp3Fws7LLTI34ZDKphH1bva_Ggyk32g,3281
105
110
  pymammotion/utility/rocker_util.py,sha256=syPL0QN4zMzHiTIkUKS7RXBBptjdbkfNlPddwUD5V3A,7171
106
- pymammotion-0.1.1.dist-info/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
107
- pymammotion-0.1.1.dist-info/METADATA,sha256=J6VTUl5r2wsymElSV7pglwVsKZox8AzWuOu5pDefOsQ,3883
108
- pymammotion-0.1.1.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
109
- pymammotion-0.1.1.dist-info/RECORD,,
111
+ pymammotion-0.1.2.dist-info/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
112
+ pymammotion-0.1.2.dist-info/METADATA,sha256=sGPlxMHLYdo5F5dNcJOQiQVPCMBZGPX-7B15TN51K2A,3921
113
+ pymammotion-0.1.2.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
114
+ pymammotion-0.1.2.dist-info/RECORD,,