xref: /aosp_15_r20/external/uwb/src/rust/uwb_core/protos/uwb_service.proto (revision e0df40009cb5d71e642272d38ba1bb7ffccfce41)
1// Copyright 2022, The Android Open Source Project
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7//     http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15// This file defines the requests and responses of the UwbService's methods.
16// Most of the elements are referred to the FiRa Consortium UWB Command
17// Interface Generic Techinal Specification Version 1.1.0.
18//
19// Note: Due to the protobuf's restriction: the first field of enum must be
20// zero, the value of some enum fields are not the same as the UCI
21// specification. Also, the default value of some fields defined at UCI
22// specification is not zero. The client should set all the fields when creating
23// protobuf structure, instead of relying the default value of protobuf.
24
25syntax = "proto3";
26package uwb_core;
27
28// The status code of the method response, containing variants of error::Error
29// and OK.
30enum Status {
31  // The method is executed successfully.
32  OK = 0;
33
34  // The provided parameters are invalid, or the method is not allowed to be
35  // called in the current state.
36  BAD_PARAMETERS = 1;
37
38  // The maximum number of sessions has been reached.
39  MAX_SESSIONS_EXCEEDED = 2;
40
41  // Max ranging round retries reached.
42  MAX_RR_RETRY_REACHED = 3;
43
44  // Fails due to a protocol specific reason.
45  PROTOCOL_SPECIFIC = 4;
46
47  // The remote device has requested to change the session.
48  REMOTE_REQUEST = 5;
49
50  // The response or notification is not received in timeout.
51  TIMEOUT = 6;
52
53  // The command should be retried.
54  COMMAND_RETRY = 7;
55
56  // Duplicated SessionId.
57  DUPLICATED_SESSION_ID = 8;
58
59  //Regulation UWB off
60  REGULATION_UWB_OFF = 9;
61
62  // The unknown error.
63  UNKNOWN = 10;
64}
65
66// Represent uwb_uci_packets::StatusCode.
67enum StatusCode {
68  UCI_STATUS_OK = 0;
69  UCI_STATUS_REJECTED = 1;
70  UCI_STATUS_FAILED = 2;
71  UCI_STATUS_SYNTAX_ERROR = 3;
72  UCI_STATUS_INVALID_PARAM = 4;
73  UCI_STATUS_INVALID_RANGE = 5;
74  UCI_STATUS_INVALID_MSG_SIZE = 6;
75  UCI_STATUS_UNKNOWN_GID = 7;
76  UCI_STATUS_UNKNOWN_OID = 8;
77  UCI_STATUS_READ_ONLY = 9;
78  UCI_STATUS_COMMAND_RETRY = 10;
79  UCI_STATUS_UNKNOWN = 11;
80
81  UCI_STATUS_SESSION_NOT_EXIST = 17;
82  UCI_STATUS_SESSION_DUPLICATE = 18;
83  UCI_STATUS_SESSION_ACTIVE = 19;
84  UCI_STATUS_MAX_SESSIONS_EXCEEDED = 20;
85  UCI_STATUS_SESSION_NOT_CONFIGURED = 21;
86  UCI_STATUS_ACTIVE_SESSIONS_ONGOING = 22;
87  UCI_STATUS_MULTICAST_LIST_FULL = 23;
88  UCI_STATUS_ADDRESS_NOT_FOUND = 24;
89  UCI_STATUS_ADDRESS_ALREADY_PRESENT = 25;
90  UCI_STATUS_OK_NEGATIVE_DISTANCE_REPORT = 27;
91
92  UCI_STATUS_RANGING_TX_FAILED = 32;
93  UCI_STATUS_RANGING_RX_TIMEOUT = 33;
94  UCI_STATUS_RANGING_RX_PHY_DEC_FAILED = 34;
95  UCI_STATUS_RANGING_RX_PHY_TOA_FAILED = 35;
96  UCI_STATUS_RANGING_RX_PHY_STS_FAILED = 36;
97  UCI_STATUS_RANGING_RX_MAC_DEC_FAILED = 37;
98  UCI_STATUS_RANGING_RX_MAC_IE_DEC_FAILED = 38;
99  UCI_STATUS_RANGING_RX_MAC_IE_MISSING = 39;
100  UCI_STATUS_ERROR_ROUND_INDEX_NOT_ACTIVATED = 40;
101  UCI_STATUS_ERROR_NUMBER_OF_ACTIVE_RANGING_ROUNDS_EXCEEDED = 41;
102  UCI_STATUS_ERROR_DL_TDOA_DEVICE_ADDRESS_NOT_MATCHING_IN_REPLY_TIME_LIST = 42;
103
104  UCI_STATUS_DATA_MAX_TX_PSDU_SIZE_EXCEEDED = 48;
105  UCI_STATUS_DATA_RX_CRC_ERROR = 49;
106
107  UCI_STATUS_ERROR_CCC_SE_BUSY = 80;
108  UCI_STATUS_ERROR_CCC_LIFECYCLE = 81;
109  UCI_STATUS_ERROR_STOPPED_DUE_TO_OTHER_SESSION_CONFLICT = 82;
110  UCI_STATUS_REGULATION_UWB_OFF = 83;
111  // All vendor specific status code will be mapped to UCI_STATUS_VENDOR_SPECIFIC.
112  UCI_STATUS_RFU_OR_VENDOR_SPECIFIC = 255;
113}
114
115// Represent uwb_uci_packets::DeviceState.
116enum DeviceState {
117    DEVICE_STATE_READY = 0;
118    DEVICE_STATE_ACTIVE = 1;
119    DEVICE_STATE_ERROR = 2;
120}
121
122// Represent uwb_uci_packets::SessionState.
123enum SessionState {
124  INIT = 0;
125  DEINIT = 1;
126  ACTIVE = 2;
127  IDLE = 3;
128}
129
130// Represent uwb_uci_packets::ReasonCode.
131enum ReasonCode {
132  STATE_CHANGE_WITH_SESSION_MANAGEMENT_COMMANDS = 0;
133  MAX_RANGING_ROUND_RETRY_COUNT_REACHED = 1;
134  MAX_NUMBER_OF_MEASUREMENTS_REACHED = 2;
135  SESSION_SUSPENDED_DUE_TO_INBAND_SIGNAL = 3;
136  SESSION_RESUMED_DUE_TO_INBAND_SIGNAL = 4;
137  SESSION_STOPPED_DUE_TO_INBAND_SIGNAL = 5;
138  ERROR_INVALID_UL_TDOA_RANDOM_WINDOW = 29;
139  ERROR_MIN_RFRAMES_PER_RR_NOT_SUPPORTED = 30;
140  ERROR_INTER_FRAME_INTERVAL_NOT_SUPPORTED = 31;
141  ERROR_SLOT_LENGTH_NOT_SUPPORTED = 32;
142  ERROR_INSUFFICIENT_SLOTS_PER_RR = 33;
143  ERROR_MAC_ADDRESS_MODE_NOT_SUPPORTED = 34;
144  ERROR_INVALID_RANGING_DURATION = 35;
145  ERROR_INVALID_STS_CONFIG = 36;
146  ERROR_INVALID_RFRAME_CONFIG = 37;
147  ERROR_HUS_NOT_ENOUGH_SLOTS = 38;
148  ERROR_HUS_CFP_PHASE_TOO_SHORT = 39;
149  ERROR_HUS_CAP_PHASE_TOO_SHORT = 40;
150  ERROR_HUS_OTHERS = 41;
151  ERROR_STATUS_SESSION_KEY_NOT_FOUND = 42;
152  ERROR_STATUS_SUB_SESSION_KEY_NOT_FOUND = 43;
153  ERROR_INVALID_PREAMBLE_CODE_INDEX = 44;
154  ERROR_INVALID_SFD_ID = 45;
155  ERROR_INVALID_PSDU_DATA_RATE = 46;
156  ERROR_INVALID_PHR_DATA_RATE = 47;
157  ERROR_INVALID_PREAMBLE_DURATION = 48;
158  ERROR_INVALID_STS_LENGTH = 49;
159  ERROR_INVALID_NUM_OF_STS_SEGMENTS = 50;
160  ERROR_INVALID_NUM_OF_CONTROLEES = 51;
161  ERROR_MAX_RANGING_REPLY_TIME_EXCEEDED = 52;
162  ERROR_INVALID_DST_ADDRESS_LIST = 53;
163  ERROR_INVALID_OR_NOT_FOUND_SUB_SESSION_ID = 54;
164  ERROR_INVALID_RESULT_REPORT_CONFIG = 55;
165  ERROR_INVALID_RANGING_ROUND_CONTROL_CONFIG = 56;
166  ERROR_INVALID_RANGING_ROUND_USAGE = 57;
167  ERROR_INVALID_MULTI_NODE_MODE = 58;
168  ERROR_RDS_FETCH_FAILURE = 59;
169  ERROR_REF_UWB_SESSION_DOES_NOT_EXIST = 60;
170  ERROR_REF_UWB_SESSION_RANGING_DURATION_MISMATCH = 61;
171  ERROR_REF_UWB_SESSION_INVALID_OFFSET_TIME = 62;
172  ERROR_REF_UWB_SESSION_LOST = 63;
173  ERROR_INVALID_CHANNEL_WITH_AOA = 128;
174  ERROR_STOPPED_DUE_TO_OTHER_SESSION_CONFLICT = 129;
175  ERROR_DT_ANCHOR_RANGING_ROUNDS_NOT_CONFIGURED = 130;
176  ERROR_DT_TAG_RANGING_ROUNDS_NOT_CONFIGURED = 131;
177  SESSION_STOPPED_DUE_TO_MAX_STS_INDEX_VALUE = 162;
178  // All vendor reason code will be mapped to ERROR_VENDOR_SPECIFIC.
179  ERROR_RFU_OR_VENDOR_SPECIFIC = 255;
180}
181
182// Represent uwb_uci_packets::RangingMeasurementType.
183enum RangingMeasurementType {
184  ONE_WAY = 0;
185  TWO_WAY = 1;
186  DL_TDOA = 2;
187  OWR_AOA = 3;
188}
189
190// Represent uwb_uci_packets::SessionType.
191enum SessionType {
192  FIRA_RANGING_SESSION = 0x00;
193  FIRA_RANGING_AND_IN_BAND_DATA_SESSION = 0x01;
194  FIRA_DATA_TRANSFER = 0x02;
195  FIRA_RANGING_ONLY_PHASE = 0x03;
196  FIRA_IN_BAND_DATA_PHASE = 0x04;
197  FIRA_RANGING_WITH_DATA_PHASE = 0x05;
198  CCC = 0xA0;
199  RADAR_SESSION = 0xA1;
200  ALIRO = 0xA2;
201  DEVICE_TEST_MODE = 0xD0;
202}
203
204// Represent uwb_uci_packets::UpdateMulticastListAction.
205enum UpdateMulticastListAction {
206  ADD_CONTROLEE = 0;
207  REMOVE_CONTROLEE = 1;
208  ADD_CONTROLEE_WITH_SHORT_SUB_SESSION_KEY = 2;
209  ADD_CONTROLEE_WITH_LONG_SUB_SESSION_KEY = 3;
210}
211
212// Represent uwb_uci_packets::MacAddressIndicator.
213enum MacAddressIndicator {
214  SHORT_ADDRESS = 0x00;
215  EXTENDED_ADDRESS = 0x01;
216}
217
218// Represent uwb_core::params::fira_app_config_params::DeviceType.
219enum DeviceType {
220  CONTROLEE = 0;
221  CONTROLLER = 1;
222}
223
224// Represent uwb_core::params::fira_app_config_params::RangingRoundUsage.
225enum RangingRoundUsage {
226  SS_TWR = 0;
227  DS_TWR = 1;
228  SS_TWR_NON = 2;
229  DS_TWR_NON = 3;
230}
231
232// Represent uwb_core::params::fira_app_config_params::StsConfig.
233enum StsConfig {
234  STATIC = 0;
235  DYNAMIC = 1;
236  DYNAMIC_FOR_CONTROLEE_INDIVIDUAL_KEY = 2;
237}
238
239// Represent uwb_core::params::fira_app_config_params::MultiNodeMode.
240enum MultiNodeMode {
241  UNICAST = 0;
242  ONE_TO_MANY = 1;
243  MANY_TO_MANY = 2;
244}
245
246// Represent uwb_core::params::fira_app_config_params::UwbChannel.
247enum UwbChannel {
248  CHANNEL_5 = 0;
249  CHANNEL_6 = 1;
250  CHANNEL_8 = 2;
251  CHANNEL_9 = 3;
252  CHANNEL_10 = 4;
253  CHANNEL_12 = 5;
254  CHANNEL_13 = 6;
255  CHANNEL_14 = 7;
256}
257
258// Represent uwb_core::params::fira_app_config_params::MacFcsType.
259enum MacFcsType {
260  CRC_16 = 0;
261  CRC_32 = 1;
262}
263
264// Represent uwb_core::params::fira_app_config_params::AoaResultRequest.
265enum AoaResultRequest {
266  NO_AOA_REPORT = 0;
267  REQ_AOA_RESULTS = 1;
268  REQ_AOA_RESULTS_AZIMUTH_ONLY = 2;
269  REQ_AOA_RESULTS_ELEVATION_ONLY = 3;
270  REQ_AOA_RESULTS_INTERLEAVED = 4;
271}
272
273// Represent uwb_core::params::fira_app_config_params::RangeDataNtfConfig.
274enum RangeDataNtfConfig {
275  RANGE_DATA_NTF_CONFIG_DISABLE = 0;
276  RANGE_DATA_NTF_CONFIG_ENABLE = 1;
277  RANGE_DATA_NTF_CONFIG_ENABLE_PROXIMITY = 2;
278}
279
280// Represent uwb_core::params::fira_app_config_params::DeviceRole.
281enum DeviceRole {
282  RESPONDER = 0;
283  INITIATOR = 1;
284}
285
286// Represent uwb_core::params::fira_app_config_params::RframeConfig.
287enum RframeConfig {
288  SP0 = 0;
289  SP1 = 1;
290  SP3 = 3;
291}
292
293// Represent uwb_core::params::fira_app_config_params::PsduDataRate.
294enum PsduDataRate {
295  RATE_6M_81 = 0;
296  RATE_7M_80 = 1;
297  RATE_27M_2 = 2;
298  RATE_31M_2 = 3;
299  RATE_850K = 4;
300}
301
302// Represent uwb_core::params::fira_app_config_params::PreambleDuration.
303enum PreambleDuration {
304  T32_SYMBOLS = 0;
305  T64_SYMBOLS = 1;
306}
307
308// Represent uwb_core::params::fira_app_config_params::RangingTimeStruct.
309enum RangingTimeStruct {
310  INTERVAL_BASED_SCHEDULING = 0;
311  BLOCK_BASED_SCHEDULING = 1;
312}
313
314// Represent uwb_core::params::fira_app_config_params::TxAdaptivePayloadPower.
315enum TxAdaptivePayloadPower {
316  TX_ADAPTIVE_PAYLOAD_POWER_DISABLE = 0;
317  TX_ADAPTIVE_PAYLOAD_POWER_ENABLE = 1;
318}
319
320// Represent uwb_core::params::fira_app_config_params::PrfMode.
321enum PrfMode {
322  BPRF = 0;
323  HPRF_WITH_124_8_MHZ = 1;
324  HPRF_WITH_249_6_MHZ = 2;
325}
326
327// Represent uwb_core::params::fira_app_config_params::ScheduledMode.
328enum ScheduledMode {
329  TIME_SCHEDULED_RANGING = 0;
330}
331
332// Represent uwb_core::params::fira_app_config_params::KeyRotation.
333enum KeyRotation {
334  KEY_ROTATION_DISABLE = 0;
335  KEY_ROTATION_ENABLE = 1;
336}
337
338// Represent uwb_core::params::fira_app_config_params::MacAddressMode.
339enum MacAddressMode {
340  MAC_ADDRESS_2_BYTES = 0;
341  MAC_ADDRESS_8_BYTES_2_BYTES_HEADER = 1;
342  MAC_ADDRESS_8_BYTES = 2;
343}
344
345// Represent uwb_core::params::fira_app_config_params::HoppingMode.
346enum HoppingMode {
347  HOPPING_MODE_DISABLE = 0;
348  FIRA_HOPPING_ENABLE = 1;
349}
350
351// Represent uwb_core::params::fira_app_config_params::BprfPhrDataRate.
352enum BprfPhrDataRate {
353  BPRF_PHR_DATA_RATE_850K = 0;
354  BPRF_PHR_DATA_RATE_6M_81 = 1;
355}
356
357// Represent uwb_core::params::fira_app_config_params::StsLength.
358enum StsLength {
359  LENGTH_32 = 0;
360  LENGTH_64 = 1;
361  LENGTH_128 = 2;
362}
363
364// Represent uwb_core::uci::uci_logger::UciLoggerMode.
365enum UciLoggerMode {
366  UCI_LOGGER_MODE_DISABLED = 0;
367  UCI_LOGGER_MODE_UNFILTERED = 1;
368  UCI_LOGGER_MODE_FILTERED = 2;
369}
370
371// Represent uwb_core::params::fira_app_config_params::RangingRoundControl.
372message RangingRoundControl {
373  bool ranging_result_report_message = 1;
374  bool control_message = 2;
375  bool measurement_report_message = 3;
376}
377
378// Represent uwb_core::params::fira_app_config_params::ResultReportConfig.
379message ResultReportConfig {
380  bool tof = 1;
381  bool aoa_azimuth = 2;
382  bool aoa_elevation = 3;
383  bool aoa_fom = 4;
384}
385
386// Represent uwb_core::params::fira_app_config_params::FiraAppConfigParams.
387message FiraAppConfigParams {
388  DeviceType device_type = 1;
389  RangingRoundUsage ranging_round_usage = 2;
390  StsConfig sts_config = 3;
391  MultiNodeMode multi_node_mode = 4;
392  UwbChannel channel_number = 5;
393  bytes device_mac_address = 6;
394  repeated bytes dst_mac_address = 7;
395  uint32 slot_duration_rstu = 8;
396  uint32 ranging_duration_ms = 9;
397  MacFcsType mac_fcs_type = 10;
398  RangingRoundControl ranging_round_control = 11;
399  AoaResultRequest aoa_result_request = 12;
400  RangeDataNtfConfig range_data_ntf_config = 13;
401  uint32 range_data_ntf_proximity_near_cm = 14;
402  uint32 range_data_ntf_proximity_far_cm = 15;
403  DeviceRole device_role = 16;
404  RframeConfig rframe_config = 17;
405  uint32 preamble_code_index = 18;
406  uint32 sfd_id = 19;
407  PsduDataRate psdu_data_rate = 20;
408  PreambleDuration preamble_duration = 21;
409  RangingTimeStruct ranging_time_struct = 22;
410  uint32 slots_per_rr = 23;
411  TxAdaptivePayloadPower tx_adaptive_payload_power = 24;
412  uint32 responder_slot_index = 25;
413  PrfMode prf_mode = 26;
414  ScheduledMode scheduled_mode = 27;
415  KeyRotation key_rotation = 28;
416  uint32 key_rotation_rate = 29;
417  uint32 session_priority = 30;
418  MacAddressMode mac_address_mode = 31;
419  bytes vendor_id = 32;
420  bytes static_sts_iv = 33;
421  uint32 number_of_sts_segments = 34;
422  uint32 max_rr_retry = 35;
423  uint32 uwb_initiation_time_ms = 36;
424  HoppingMode hopping_mode = 37;
425  uint32 block_stride_length = 38;
426  ResultReportConfig result_report_config = 39;
427  uint32 in_band_termination_attempt_count = 40;
428  uint32 sub_session_id = 41;
429  BprfPhrDataRate bprf_phr_data_rate = 42;
430  uint32 max_number_of_measurements = 43;
431  StsLength sts_length = 44;
432  uint32 number_of_range_measurements = 45;
433  uint32 number_of_aoa_azimuth_measurements = 46;
434  uint32 number_of_aoa_elevation_measurements = 47;
435}
436
437// Represent uwb_uci_packets::Controlee.
438message Controlee {
439  uint32 short_address = 1;
440  uint32 subsession_id = 2;
441}
442
443// Represent uwb_uci_packets::ShortAddressTwoWayRangingMeasurement or
444// uwb_uci_packets::ExtendedAddressTwoWayRangingMeasurement.
445message TwoWayRangingMeasurement {
446  uint64 mac_address = 1;
447  StatusCode status = 2;
448  uint32 nlos = 3;
449  uint32 distance = 4;
450  uint32 aoa_azimuth = 5;
451  uint32 aoa_azimuth_fom = 6;
452  uint32 aoa_elevation = 7;
453  uint32 aoa_elevation_fom = 8;
454  uint32 aoa_destination_azimuth = 9;
455  uint32 aoa_destination_azimuth_fom = 10;
456  uint32 aoa_destination_elevation = 11;
457  uint32 aoa_destination_elevation_fom = 12;
458  uint32 slot_index = 13;
459  uint32 rssi = 14;
460}
461
462// Represent uwb_uci_packets::ShortAddressOwrAoaRangingMeasurement or
463// uwb_uci_packets::ExtendedAddressOwrAoaRangingMeasurement.
464message OwrAoaRangingMeasurement {
465  uint64 mac_address = 1;
466  StatusCode status = 2;
467  uint32 nlos = 3;
468  uint32 block_index = 4;
469  uint32 frame_sequence_number = 5;
470  uint32 aoa_azimuth = 6;
471  uint32 aoa_azimuth_fom = 7;
472  uint32 aoa_elevation = 8;
473  uint32 aoa_elevation_fom = 9;
474}
475
476// Represent uwb_uci_packets::ShortAddressDlTdoaRangingMeasurement or
477// uwb_uci_packets::ExtendedAddressDlTdoaRangingMeasurement.
478message DlTDoARangingMeasurement {
479  uint64 mac_address = 1;
480  StatusCode status = 2;
481  uint32 message_control = 3;
482  uint32 block_index = 4;
483  uint32 round_index = 5;
484  uint32 nlos = 6;
485  uint32 aoa_azimuth = 7;
486  uint32 aoa_azimuth_fom = 8;
487  uint32 aoa_elevation = 9;
488  uint32 aoa_elevation_fom = 10;
489  uint32 rssi = 11;
490  uint64 tx_timestamp = 12;
491  uint64 rx_timestamp = 13;
492  uint32 anchor_cfo = 14;
493  uint32 cfo = 15;
494  uint32 initiator_reply_time = 16;
495  uint32 responder_reply_time = 17;
496  uint32 initiator_responder_tof = 18;
497  repeated uint32 dt_anchor_location = 19;
498  repeated uint32 ranging_rounds = 20;
499}
500
501// Represent uwb_core::uci::notification::SessionRangeData;
502message SessionRangeData {
503  uint32 sequence_number = 1;
504  uint32 session_id = 2;
505  uint32 current_ranging_interval_ms = 3;
506  RangingMeasurementType ranging_measurement_type = 4;
507  repeated TwoWayRangingMeasurement twoway_ranging_measurements = 5;
508  repeated DlTDoARangingMeasurement dltdoa_ranging_measurements = 6;
509  OwrAoaRangingMeasurement owraoa_ranging_measurement = 7;
510}
511
512// Represent uwb_uci_packets::PowerStats;
513message PowerStats {
514  StatusCode status = 1;
515  uint32 idle_time_ms = 2;
516  uint32 tx_time_ms = 3;
517  uint32 rx_time_ms = 4;
518  uint32 total_wake_count = 5;
519}
520
521// Response of the UwbService::enable() method.
522message EnableResponse {
523  Status status = 1;
524}
525
526// Response of the UwbService::disable() method.
527message DisableResponse {
528  Status status = 1;
529}
530
531// Argument of the UwbService::SetLoggerMode() method.
532message SetLoggerModeRequest {
533  UciLoggerMode logger_mode = 1;
534}
535
536// Response of the UwbService::SetLoggerMode() method.
537message SetLoggerModeResponse {
538  Status status = 1;
539}
540
541// Argument of the UwbService::InitSession() method.
542message InitSessionRequest {
543  uint32 session_id = 1;
544  SessionType session_type = 2;
545  FiraAppConfigParams params = 3;
546}
547
548// Response of the UwbService::InitSession() method.
549message InitSessionResponse {
550  Status status = 1;
551}
552
553// Argument of the UwbService::DeinitSession() method.
554message DeinitSessionRequest {
555  uint32 session_id = 1;
556}
557
558// Response of the UwbService::DeinitSession() method.
559message DeinitSessionResponse {
560  Status status = 1;
561}
562
563// Argument of the UwbService::StartRanging() method.
564message StartRangingRequest {
565  uint32 session_id = 1;
566}
567
568// Response of the UwbService::StartRanging() method.
569message StartRangingResponse {
570  Status status = 1;
571}
572
573// Argument of the UwbService::StopRanging() method.
574message StopRangingRequest {
575  uint32 session_id = 1;
576}
577
578// Response of the UwbService::StopRanging() method.
579message StopRangingResponse {
580  Status status = 1;
581}
582
583// Argument of the UwbService::SessionParams() method.
584message SessionParamsRequest {
585  uint32 session_id = 1;
586}
587
588// Response of the UwbService::SessionParams() method.
589message SessionParamsResponse {
590  Status status = 1;
591  FiraAppConfigParams params = 2;
592}
593
594// Argument of the UwbService::Reconfigure() method.
595message ReconfigureRequest {
596  uint32 session_id = 1;
597  FiraAppConfigParams params = 2;
598}
599
600// Response of the UwbService::Reconfigure() method.
601message ReconfigureResponse {
602  Status status = 1;
603}
604
605// Argument of the UwbService::UpdateControllerMulticastList() method.
606message UpdateControllerMulticastListRequest {
607  uint32 session_id = 1;
608  UpdateMulticastListAction action = 2;
609  repeated Controlee controlees = 3;
610}
611
612// Response of the UwbService::UpdateControllerMulticastList() method.
613message UpdateControllerMulticastListResponse {
614  Status status = 1;
615}
616
617// Argument of the UwbService::AndroidSetCountryCode() method.
618message AndroidSetCountryCodeRequest {
619  string country_code = 1;
620}
621
622// Response of the UwbService::AndroidSetCountryCode() method.
623message AndroidSetCountryCodeResponse {
624  Status status = 1;
625}
626
627// Response of the UwbService::AndroidGetPowerStats() method.
628message AndroidGetPowerStatsResponse {
629  Status status = 1;
630  PowerStats power_stats = 2;
631}
632
633// Argument of the UwbService::SendVendorCmd() method.
634message SendVendorCmdRequest {
635  uint32 gid = 1;
636  uint32 oid = 2;
637  bytes payload = 3;
638  uint32 mt = 4;
639}
640
641// Response of the UwbService::SendVendorCmd() method.
642message SendVendorCmdResponse {
643  Status status = 1;
644  uint32 gid = 2;
645  uint32 oid = 3;
646  bytes payload = 4;
647}
648
649// Argument of the UwbServiceCallback::onServiceReset() method.
650message ServiceResetSignal {
651  bool success = 1;
652}
653
654// Argument of the UwbServiceCallback::onUciDeviceStatusChanged() method.
655message UciDeviceStatusChangedSignal {
656  DeviceState state = 1;
657}
658
659// Argument of the UwbServiceCallback::onSessionStateChanged() method.
660message SessionStateChangedSignal {
661  uint32 session_id = 1;
662  SessionState session_state = 2;
663  ReasonCode reason_code = 3;
664}
665
666// Argument of the UwbServiceCallback::onRangeDataReceived() method.
667message RangeDataReceivedSignal {
668  uint32 session_id = 1;
669  SessionRangeData range_data = 2;
670}
671
672// Argument of the UwbServiceCallback::onVendorNotificationReceived() method.
673message VendorNotificationReceivedSignal {
674  uint32 gid = 1;
675  uint32 oid = 2;
676  bytes payload = 3;
677}
678