40#ifdef USE_BINARY_SENSOR
41 SUB_BINARY_SENSOR(dynamic_background_correction_status)
42 SUB_BINARY_SENSOR(moving_target)
43 SUB_BINARY_SENSOR(still_target)
44 SUB_BINARY_SENSOR(target)
47 SUB_SENSOR_WITH_DEDUP(light, uint8_t)
48 SUB_SENSOR_WITH_DEDUP(detection_distance,
int)
49 SUB_SENSOR_WITH_DEDUP(moving_target_distance,
int)
50 SUB_SENSOR_WITH_DEDUP(moving_target_energy, uint8_t)
51 SUB_SENSOR_WITH_DEDUP(still_target_distance,
int)
52 SUB_SENSOR_WITH_DEDUP(still_target_energy, uint8_t)
56 SUB_TEXT_SENSOR(version)
59 SUB_NUMBER(light_threshold)
60 SUB_NUMBER(max_distance_gate)
61 SUB_NUMBER(min_distance_gate)
66 SUB_SELECT(distance_resolution)
67 SUB_SELECT(light_function)
68 SUB_SELECT(out_pin_level)
72 SUB_SWITCH(engineering_mode)
75 SUB_BUTTON(factory_reset)
78 SUB_BUTTON(start_dynamic_background_correction)
82 void setup()
override;
83 void dump_config()
override;
85 void set_light_out_control();
86 void set_basic_config();
88 void set_gate_move_threshold_number(uint8_t gate,
number::Number *n);
89 void set_gate_still_threshold_number(uint8_t gate,
number::Number *n);
90 void set_gate_threshold();
91 void get_gate_threshold();
97 void set_engineering_mode(
bool enable);
99 void restart_and_read_all_info();
100 void set_bluetooth(
bool enable);
101 void set_distance_resolution(
const char *
state);
102 void set_baud_rate(
const char *
state);
103 void factory_reset();
104 void start_dynamic_background_correction();
107 void send_command_(uint8_t command_str,
const uint8_t *command_value, uint8_t command_value_len);