예제 #1
0
def magnetometer_calibrate_to_north(target, timeout):
    return {
        'did': DevicesEnum.sensor,
        'cid': CommandsEnum.magnetometer_calibrate_to_north,
        'seq': SequenceNumberGenerator.get_sequence_number(),
        'target': target,
        'timeout': timeout,
    }
예제 #2
0
def stop_robot_to_robot_infrared_evading(target, timeout):
    return {
        'did': DevicesEnum.sensor,
        'cid': CommandsEnum.stop_robot_to_robot_infrared_evading,
        'seq': SequenceNumberGenerator.get_sequence_number(),
        'target': target,
        'timeout': timeout,
    }
예제 #3
0
def release_led_requests(target, timeout):
    return {
        'did': DevicesEnum.io,
        'cid': CommandsEnum.release_led_requests,
        'seq': SequenceNumberGenerator.get_sequence_number(),
        'target': target,
        'timeout': timeout,
    }
예제 #4
0
def reset_locator_x_and_y(target, timeout):
    return {
        'did': DevicesEnum.sensor,
        'cid': CommandsEnum.reset_locator_x_and_y,
        'seq': SequenceNumberGenerator.get_sequence_number(),
        'target': target,
        'timeout': timeout,
    }
예제 #5
0
def disable_notifications_and_active_commands(target, timeout):
    return {
        'did': DevicesEnum.sensor,
        'cid': CommandsEnum.disable_notifications_and_active_commands,
        'seq': SequenceNumberGenerator.get_sequence_number(),
        'target': target,
        'timeout': timeout,
    }
예제 #6
0
def reset_yaw(target, timeout):
    return {
        'did': DevicesEnum.drive,
        'cid': CommandsEnum.reset_yaw,
        'seq': SequenceNumberGenerator.get_sequence_number(),
        'target': target,
        'timeout': timeout,
    }
예제 #7
0
def sleep(target, timeout):
    return {
        'did': DevicesEnum.power,
        'cid': CommandsEnum.sleep,
        'seq': SequenceNumberGenerator.get_sequence_number(),
        'target': target,
        'timeout': timeout,
    }
예제 #8
0
def get_current_detected_color_reading(target, timeout):
    return {
        'did': DevicesEnum.sensor,
        'cid': CommandsEnum.get_current_detected_color_reading,
        'seq': SequenceNumberGenerator.get_sequence_number(),
        'target': target,
        'timeout': timeout,
    }
예제 #9
0
def clear_streaming_service(target, timeout):
    return {
        'did': DevicesEnum.sensor,
        'cid': CommandsEnum.clear_streaming_service,
        'seq': SequenceNumberGenerator.get_sequence_number(),
        'target': target,
        'timeout': timeout,
    }
예제 #10
0
def get_temperature(id0, id1, target, timeout):
    return {
        'did':
        DevicesEnum.sensor,
        'cid':
        CommandsEnum.get_temperature,
        'seq':
        SequenceNumberGenerator.get_sequence_number(),
        'target':
        target,
        'timeout':
        timeout,
        'inputs': [
            Parameter(name='id0',
                      data_type='uint8_t',
                      index=0,
                      value=id0,
                      size=1),
            Parameter(name='id1',
                      data_type='uint8_t',
                      index=1,
                      value=id1,
                      size=1),
        ],
        'outputs': [
            Parameter(
                name='id0',
                data_type='uint8_t',
                index=0,
                size=1,
            ),
            Parameter(
                name='temp0',
                data_type='float',
                index=1,
                size=1,
            ),
            Parameter(
                name='id1',
                data_type='uint8_t',
                index=2,
                size=1,
            ),
            Parameter(
                name='temp1',
                data_type='float',
                index=3,
                size=1,
            ),
        ]
    }
def get_mac_address(target, timeout): 
    return { 
        'did': DevicesEnum.system_info,
        'cid': CommandsEnum.get_mac_address,
        'seq': SequenceNumberGenerator.get_sequence_number(),
        'target': target,
        'timeout': timeout,
        'outputs': [ 
            Parameter( 
                name='mac_address',
                data_type='std::string',
                index=0,
                size=1,
            ),
        ]
    }
def get_board_revision(target, timeout): 
    return { 
        'did': DevicesEnum.system_info,
        'cid': CommandsEnum.get_board_revision,
        'seq': SequenceNumberGenerator.get_sequence_number(),
        'target': target,
        'timeout': timeout,
        'outputs': [ 
            Parameter( 
                name='revision',
                data_type='uint8_t',
                index=0,
                size=1,
            ),
        ]
    }
def get_core_up_time_in_milliseconds(target, timeout): 
    return { 
        'did': DevicesEnum.system_info,
        'cid': CommandsEnum.get_core_up_time_in_milliseconds,
        'seq': SequenceNumberGenerator.get_sequence_number(),
        'target': target,
        'timeout': timeout,
        'outputs': [ 
            Parameter( 
                name='up_time',
                data_type='uint64_t',
                index=0,
                size=1,
            ),
        ]
    }
예제 #14
0
def get_active_control_system_id(target, timeout): 
    return { 
        'did': DevicesEnum.drive,
        'cid': CommandsEnum.get_active_control_system_id,
        'seq': SequenceNumberGenerator.get_sequence_number(),
        'target': target,
        'timeout': timeout,
        'outputs': [ 
            Parameter( 
                name='controller_id',
                data_type='uint8_t',
                index=0,
                size=1,
            ),
        ]
    }
예제 #15
0
def get_bluetooth_advertising_name(target, timeout): 
    return { 
        'did': DevicesEnum.connection,
        'cid': CommandsEnum.get_bluetooth_advertising_name,
        'seq': SequenceNumberGenerator.get_sequence_number(),
        'target': target,
        'timeout': timeout,
        'outputs': [ 
            Parameter( 
                name='name',
                data_type='std::string',
                index=0,
                size=1,
            ),
        ]
    }
예제 #16
0
def get_stop_controller_state(target, timeout): 
    return { 
        'did': DevicesEnum.drive,
        'cid': CommandsEnum.get_stop_controller_state,
        'seq': SequenceNumberGenerator.get_sequence_number(),
        'target': target,
        'timeout': timeout,
        'outputs': [ 
            Parameter( 
                name='stopped',
                data_type='bool',
                index=0,
                size=1,
            ),
        ]
    }
def generate_api_error(error, target, timeout): 
    return { 
        'did': DevicesEnum.api_and_shell,
        'cid': CommandsEnum.generate_api_error,
        'seq': SequenceNumberGenerator.get_sequence_number(),
        'target': target,
        'timeout': timeout,
        'inputs': [ 
            Parameter( 
                name='error',
                data_type='uint8_t',
                index=0,
                value=error,
                size=1
            ),
        ],
    }
예제 #18
0
def drive_stop_custom_decel(deceleration_rate, target, timeout): 
    return { 
        'did': DevicesEnum.drive,
        'cid': CommandsEnum.drive_stop_custom_decel,
        'seq': SequenceNumberGenerator.get_sequence_number(),
        'target': target,
        'timeout': timeout,
        'inputs': [ 
            Parameter( 
                name='deceleration_rate',
                data_type='float',
                index=0,
                value=deceleration_rate,
                size=1
            ),
        ],
    }
예제 #19
0
def enable_motor_fault_notify(is_enabled, target, timeout): 
    return { 
        'did': DevicesEnum.drive,
        'cid': CommandsEnum.enable_motor_fault_notify,
        'seq': SequenceNumberGenerator.get_sequence_number(),
        'target': target,
        'timeout': timeout,
        'inputs': [ 
            Parameter( 
                name='is_enabled',
                data_type='bool',
                index=0,
                value=is_enabled,
                size=1
            ),
        ],
    }
예제 #20
0
def set_custom_control_system_timeout(command_timeout, target, timeout): 
    return { 
        'did': DevicesEnum.drive,
        'cid': CommandsEnum.set_custom_control_system_timeout,
        'seq': SequenceNumberGenerator.get_sequence_number(),
        'target': target,
        'timeout': timeout,
        'inputs': [ 
            Parameter( 
                name='command_timeout',
                data_type='uint16_t',
                index=0,
                value=command_timeout,
                size=1
            ),
        ],
    }
예제 #21
0
def set_drive_target_slew_parameters(a, b, c, linear_acceleration, linear_velocity_slew_method, target, timeout): 
    return { 
        'did': DevicesEnum.drive,
        'cid': CommandsEnum.set_drive_target_slew_parameters,
        'seq': SequenceNumberGenerator.get_sequence_number(),
        'target': target,
        'timeout': timeout,
        'inputs': [ 
            Parameter( 
                name='a',
                data_type='float',
                index=0,
                value=a,
                size=1
            ),
            Parameter( 
                name='b',
                data_type='float',
                index=1,
                value=b,
                size=1
            ),
            Parameter( 
                name='c',
                data_type='float',
                index=2,
                value=c,
                size=1
            ),
            Parameter( 
                name='linear_acceleration',
                data_type='float',
                index=3,
                value=linear_acceleration,
                size=1
            ),
            Parameter( 
                name='linear_velocity_slew_method',
                data_type='uint8_t',
                index=4,
                value=linear_velocity_slew_method,
                size=1
            ),
        ],
    }
예제 #22
0
def drive_to_position_normalized(yaw_angle, x, y, linear_speed, flags, target, timeout): 
    return { 
        'did': DevicesEnum.drive,
        'cid': CommandsEnum.drive_to_position_normalized,
        'seq': SequenceNumberGenerator.get_sequence_number(),
        'target': target,
        'timeout': timeout,
        'inputs': [ 
            Parameter( 
                name='yaw_angle',
                data_type='int16_t',
                index=0,
                value=yaw_angle,
                size=1
            ),
            Parameter( 
                name='x',
                data_type='float',
                index=1,
                value=x,
                size=1
            ),
            Parameter( 
                name='y',
                data_type='float',
                index=2,
                value=y,
                size=1
            ),
            Parameter( 
                name='linear_speed',
                data_type='int8_t',
                index=3,
                value=linear_speed,
                size=1
            ),
            Parameter( 
                name='flags',
                data_type='uint8_t',
                index=4,
                value=flags,
                size=1
            ),
        ],
    }
예제 #23
0
def get_color_identification_report(red, green, blue, confidence_threshold,
                                    target, timeout):
    return {
        'did':
        DevicesEnum.io,
        'cid':
        CommandsEnum.get_color_identification_report,
        'seq':
        SequenceNumberGenerator.get_sequence_number(),
        'target':
        target,
        'timeout':
        timeout,
        'inputs': [
            Parameter(name='red',
                      data_type='uint8_t',
                      index=0,
                      value=red,
                      size=1),
            Parameter(name='green',
                      data_type='uint8_t',
                      index=1,
                      value=green,
                      size=1),
            Parameter(name='blue',
                      data_type='uint8_t',
                      index=2,
                      value=blue,
                      size=1),
            Parameter(name='confidence_threshold',
                      data_type='uint8_t',
                      index=3,
                      value=confidence_threshold,
                      size=1),
        ],
        'outputs': [
            Parameter(
                name='index_confidence_byte',
                data_type='uint8_t',
                index=0,
                size=24,
            ),
        ]
    }
예제 #24
0
def enable_battery_voltage_state_change_notify(is_enabled, target, timeout):
    return {
        'did':
        DevicesEnum.power,
        'cid':
        CommandsEnum.enable_battery_voltage_state_change_notify,
        'seq':
        SequenceNumberGenerator.get_sequence_number(),
        'target':
        target,
        'timeout':
        timeout,
        'inputs': [
            Parameter(name='is_enabled',
                      data_type='bool',
                      index=0,
                      value=is_enabled,
                      size=1),
        ],
    }
예제 #25
0
def enable_color_detection(is_enabled, target, timeout):
    return {
        'did':
        DevicesEnum.sensor,
        'cid':
        CommandsEnum.enable_color_detection,
        'seq':
        SequenceNumberGenerator.get_sequence_number(),
        'target':
        target,
        'timeout':
        timeout,
        'inputs': [
            Parameter(name='is_enabled',
                      data_type='bool',
                      index=0,
                      value=is_enabled,
                      size=1),
        ],
    }
예제 #26
0
def save_color_palette(palette_index, target, timeout):
    return {
        'did':
        DevicesEnum.io,
        'cid':
        CommandsEnum.save_color_palette,
        'seq':
        SequenceNumberGenerator.get_sequence_number(),
        'target':
        target,
        'timeout':
        timeout,
        'inputs': [
            Parameter(name='palette_index',
                      data_type='uint8_t',
                      index=0,
                      value=palette_index,
                      size=1),
        ],
    }
예제 #27
0
def set_locator_flags(flags, target, timeout):
    return {
        'did':
        DevicesEnum.sensor,
        'cid':
        CommandsEnum.set_locator_flags,
        'seq':
        SequenceNumberGenerator.get_sequence_number(),
        'target':
        target,
        'timeout':
        timeout,
        'inputs': [
            Parameter(name='flags',
                      data_type='uint8_t',
                      index=0,
                      value=flags,
                      size=1),
        ],
    }
예제 #28
0
def set_active_color_palette(rgb_index_bytes, target, timeout):
    return {
        'did':
        DevicesEnum.io,
        'cid':
        CommandsEnum.set_active_color_palette,
        'seq':
        SequenceNumberGenerator.get_sequence_number(),
        'target':
        target,
        'timeout':
        timeout,
        'inputs': [
            Parameter(name='rgb_index_bytes',
                      data_type='uint8_t',
                      index=0,
                      value=rgb_index_bytes,
                      size=48),
        ],
    }
예제 #29
0
def enable_robot_infrared_message_notify(is_enabled, target, timeout):
    return {
        'did':
        DevicesEnum.sensor,
        'cid':
        CommandsEnum.enable_robot_infrared_message_notify,
        'seq':
        SequenceNumberGenerator.get_sequence_number(),
        'target':
        target,
        'timeout':
        timeout,
        'inputs': [
            Parameter(name='isEnabled',
                      data_type='bool',
                      index=0,
                      value=is_enabled,
                      size=1),
        ],
    }
예제 #30
0
def start_streaming_service(period, target, timeout):
    return {
        'did':
        DevicesEnum.sensor,
        'cid':
        CommandsEnum.start_streaming_service,
        'seq':
        SequenceNumberGenerator.get_sequence_number(),
        'target':
        target,
        'timeout':
        timeout,
        'inputs': [
            Parameter(name='period',
                      data_type='uint16_t',
                      index=0,
                      value=period,
                      size=1),
        ],
    }