def to_code(config): var = cg.new_Pvariable(config[CONF_ID]) yield cg.register_component(var, config) yield i2c.register_i2c_device(var, config) cg.add(var.set_integration_time(config[CONF_INTEGRATION_TIME])) cg.add(var.set_gain(config[CONF_GAIN])) if CONF_RED_CHANNEL in config: sens = yield sensor.new_sensor(config[CONF_RED_CHANNEL]) cg.add(var.set_red_sensor(sens)) if CONF_GREEN_CHANNEL in config: sens = yield sensor.new_sensor(config[CONF_GREEN_CHANNEL]) cg.add(var.set_green_sensor(sens)) if CONF_BLUE_CHANNEL in config: sens = yield sensor.new_sensor(config[CONF_BLUE_CHANNEL]) cg.add(var.set_blue_sensor(sens)) if CONF_CLEAR_CHANNEL in config: sens = yield sensor.new_sensor(config[CONF_CLEAR_CHANNEL]) cg.add(var.set_clear_sensor(sens)) if CONF_ILLUMINANCE in config: sens = yield sensor.new_sensor(config[CONF_ILLUMINANCE]) cg.add(var.set_illuminance_sensor(sens)) if CONF_COLOR_TEMPERATURE in config: sens = yield sensor.new_sensor(config[CONF_COLOR_TEMPERATURE]) cg.add(var.set_color_temperature_sensor(sens))
def to_code(config): var = cg.new_Pvariable(config[CONF_ID]) yield cg.register_component(var, config) yield sensor.register_sensor(var, config) yield i2c.register_i2c_device(var, config) cg.add(var.set_resolution(config[CONF_RESOLUTION]))
def to_code(config): var = cg.new_Pvariable(config[CONF_ID]) yield cg.register_component(var, config) cg.add(var.set_signal_rate_limit(config[CONF_SIGNAL_RATE_LIMIT])) cg.add(var.set_long_range(config[CONF_LONG_RANGE])) yield sensor.register_sensor(var, config) yield i2c.register_i2c_device(var, config)
def to_code(config): var = cg.new_Pvariable(config[CONF_ID]) yield cg.register_component(var, config) yield i2c.register_i2c_device(var, config) if CONF_PM_1_0 in config: sens = yield sensor.new_sensor(config[CONF_PM_1_0]) cg.add(var.set_pm_1_0_sensor(sens)) if CONF_PM_2_5 in config: sens = yield sensor.new_sensor(config[CONF_PM_2_5]) cg.add(var.set_pm_2_5_sensor(sens)) if CONF_PM_10_0 in config: sens = yield sensor.new_sensor(config[CONF_PM_10_0]) cg.add(var.set_pm_10_0_sensor(sens)) if CONF_AQI in config: sens = yield sensor.new_sensor(config[CONF_AQI]) cg.add(var.set_aqi_sensor(sens)) cg.add( var.set_aqi_calculation_type( config[CONF_AQI][CONF_CALCULATION_TYPE])) # https://platformio.org/lib/show/6306/Grove%20-%20Laser%20PM2.5%20Sensor%20HM3301 cg.add_library('6306', '1.0.3')
def to_code(config): var = cg.new_Pvariable(config[CONF_ID]) yield cg.register_component(var, config) if CONF_IRQ_PIN in config: irq_pin = yield cg.gpio_pin_expression(config[CONF_IRQ_PIN]) cg.add(var.set_irq_pin(irq_pin)) yield i2c.register_i2c_device(var, config)
def to_code(config): var = cg.new_Pvariable(config[CONF_ID]) yield cg.register_component(var, config) yield i2c.register_i2c_device(var, config) cg.add(var.set_automatic_self_calibration(config[CONF_AUTOMATIC_SELF_CALIBRATION])) if CONF_ALTITUDE_COMPENSATION in config: cg.add(var.set_altitude_compensation(config[CONF_ALTITUDE_COMPENSATION])) if CONF_AMBIENT_PRESSURE_COMPENSATION in config: cg.add(var.set_ambient_pressure_compensation(config[CONF_AMBIENT_PRESSURE_COMPENSATION])) if CONF_TEMPERATURE_OFFSET in config: cg.add(var.set_temperature_offset(config[CONF_TEMPERATURE_OFFSET])) if CONF_CO2 in config: sens = yield sensor.new_sensor(config[CONF_CO2]) cg.add(var.set_co2_sensor(sens)) if CONF_HUMIDITY in config: sens = yield sensor.new_sensor(config[CONF_HUMIDITY]) cg.add(var.set_humidity_sensor(sens)) if CONF_TEMPERATURE in config: sens = yield sensor.new_sensor(config[CONF_TEMPERATURE]) cg.add(var.set_temperature_sensor(sens))
def to_code(config): var = cg.new_Pvariable(config[CONF_ID]) yield cg.register_component(var, config) yield i2c.register_i2c_device(var, config) if CONF_ECO2 in config: sens = yield sensor.new_sensor(config[CONF_ECO2]) cg.add(var.set_eco2_sensor(sens)) if CONF_TVOC in config: sens = yield sensor.new_sensor(config[CONF_TVOC]) cg.add(var.set_tvoc_sensor(sens)) if CONF_BASELINE in config: baseline_config = config[CONF_BASELINE] cg.add(var.set_eco2_baseline(baseline_config[CONF_ECO2_BASELINE])) cg.add(var.set_tvoc_baseline(baseline_config[CONF_TVOC_BASELINE])) if CONF_COMPENSATION in config: compensation_config = config[CONF_COMPENSATION] sens = yield cg.get_variable(compensation_config[CONF_HUMIDITY_SOURCE]) cg.add(var.set_humidity_sensor(sens)) sens = yield cg.get_variable( compensation_config[CONF_TEMPERATURE_SOURCE]) cg.add(var.set_temperature_sensor(sens))
def to_code(config): var = cg.new_Pvariable(config[CONF_ID]) yield cg.register_component(var, config) yield i2c.register_i2c_device(var, config) cg.add(var.set_pin(config[CONF_PIN])) cg.add(var.set_pin_pullup(config[CONF_PIN_PULLUP])) cg.add(var.set_filter(config[CONF_PULSE_WIDTH_FILTER])) if CONF_FREQUENCY in config: sens = yield sensor.new_sensor(config[CONF_FREQUENCY]) cg.add(var.set_frequency_sensor(sens)) if CONF_PWM in config: sens = yield sensor.new_sensor(config[CONF_PWM]) cg.add(var.set_pwm_sensor(sens)) if CONF_MAX_FREQUENCY in config: sens = yield sensor.new_sensor(config[CONF_MAX_FREQUENCY]) cg.add(var.set_max_frequency_sensor(sens)) if CONF_MAX_PWM in config: sens = yield sensor.new_sensor(config[CONF_MAX_PWM]) cg.add(var.set_max_pwm_sensor(sens)) if CONF_MIN_FREQUENCY in config: sens = yield sensor.new_sensor(config[CONF_MIN_FREQUENCY]) cg.add(var.set_min_frequency_sensor(sens)) if CONF_MIN_PWM in config: sens = yield sensor.new_sensor(config[CONF_MIN_PWM]) cg.add(var.set_min_pwm_sensor(sens))
def to_code(config): var = cg.new_Pvariable(config[CONF_ID]) yield cg.register_component(var, config) yield i2c.register_i2c_device(var, config) yield sensor.register_sensor(var, config) update_period = config[CONF_UPDATE_INTERVAL].total_seconds cg.add(var.set_config(determine_config_register(update_period)))
def to_code(config): var = cg.new_Pvariable(config[CONF_ID]) yield cg.register_component(var, config) yield i2c.register_i2c_device(var, config) cg.add(var.set_temperature_offset(config[CONF_TEMP_OFFSET])) cg.add(var.set_iaq_mode(config[CONF_IAQ_MODE])) cg.add(var.set_state_save_interval(config[CONF_STATE_SAVE_INTERVAL]))
def to_code(config): var = cg.new_Pvariable(config[CONF_ID]) cg.add(var.set_touch_debounce(config[CONF_TOUCH_DEBOUNCE])) cg.add(var.set_release_debounce(config[CONF_RELEASE_DEBOUNCE])) cg.add(var.set_touch_threshold(config[CONF_TOUCH_THRESHOLD])) cg.add(var.set_release_threshold(config[CONF_RELEASE_THRESHOLD])) yield cg.register_component(var, config) yield i2c.register_i2c_device(var, config)
def to_code(config): var = cg.new_Pvariable(config[CONF_ID]) yield cg.register_component(var, config) yield sensor.register_sensor(var, config) yield i2c.register_i2c_device(var, config) cg.add(var.set_resolution(config[CONF_RESOLUTION])) cg.add(var.set_measurement_duration(config[CONF_MEASUREMENT_DURATION]))
def to_code(config): var = cg.new_Pvariable(config[CONF_ID]) yield cg.register_component(var, config) yield i2c.register_i2c_device(var, config) if CONF_BATTERY_LEVEL in config: conf = config[CONF_BATTERY_LEVEL] sens = yield sensor.new_sensor(conf) cg.add(var.set_batterylevel_sensor(sens))
def to_code(config): var = cg.new_Pvariable(config[CONF_ID]) yield cg.register_component(var, config) yield i2c.register_i2c_device(var, config) yield sensor.register_sensor(var, config) cg.add(var.set_integration_time(config[CONF_INTEGRATION_TIME])) cg.add(var.set_gain(config[CONF_GAIN])) cg.add(var.set_is_cs_package(config[CONF_IS_CS_PACKAGE]))
def to_code(config): var = cg.new_Pvariable(config[CONF_ID]) yield lcd_base.setup_lcd_display(var, config) yield i2c.register_i2c_device(var, config) if CONF_LAMBDA in config: lambda_ = yield cg.process_lambda( config[CONF_LAMBDA], [(PCF8574LCDDisplay.operator('ref'), 'it')], return_type=cg.void) cg.add(var.set_writer(lambda_))
def to_code(config): var = cg.new_Pvariable(config[CONF_ID]) yield cg.register_component(var, config) yield i2c.register_i2c_device(var, config) if CONF_KEYPAD in config: keypad = config[CONF_KEYPAD] cg.add( var.set_rows_cols(keypad[CONF_KEY_ROWS], keypad[CONF_KEY_COLUMNS])) if CONF_SLEEP_TIME in keypad and CONF_SCAN_TIME in keypad and CONF_DEBOUNCE_TIME in keypad: cg.add(var.set_sleep_time(keypad[CONF_SLEEP_TIME])) cg.add(var.set_scan_time(keypad[CONF_SCAN_TIME])) cg.add(var.set_debounce_time(keypad[CONF_DEBOUNCE_TIME]))
def to_code(config): var = cg.new_Pvariable(config[CONF_ID]) yield cg.register_component(var, config) yield i2c.register_i2c_device(var, config) if CONF_TEMPERATURE in config: sens = yield sensor.new_sensor(config[CONF_TEMPERATURE]) cg.add(var.set_temperature_sensor(sens)) if CONF_HUMIDITY in config: sens = yield sensor.new_sensor(config[CONF_HUMIDITY]) cg.add(var.set_humidity_sensor(sens))
def to_code(config): var = cg.new_Pvariable(config[CONF_ID]) yield cg.register_component(var, config) yield i2c.register_i2c_device(var, config) cg.add(var.set_standard_units(config[CONF_STANDARD_UNITS])) for key, funcName in TYPES.items(): if key in config: sens = yield sensor.new_sensor(config[key]) cg.add(getattr(var, funcName)(sens))
def to_code(config): var = cg.new_Pvariable(config[CONF_ID]) yield cg.register_component(var, config) cg.add(var.set_signal_rate_limit(config[CONF_SIGNAL_RATE_LIMIT])) cg.add(var.set_long_range(config[CONF_LONG_RANGE])) cg.add(var.set_timeout_us(config[CONF_TIMEOUT])) if CONF_ENABLE_PIN in config: enable = yield cg.gpio_pin_expression(config[CONF_ENABLE_PIN]) cg.add(var.set_enable_pin(enable)) yield sensor.register_sensor(var, config) yield i2c.register_i2c_device(var, config)
def to_code(config): var = cg.new_Pvariable(config[CONF_ID]) yield cg.register_component(var, config) yield i2c.register_i2c_device(var, config) cg.add(var.set_temperature_offset(config[CONF_TEMPERATURE_OFFSET])) cg.add(var.set_iaq_mode(config[CONF_IAQ_MODE])) cg.add( var.set_state_save_interval( config[CONF_STATE_SAVE_INTERVAL].total_milliseconds)) cg.add_build_flag('-DUSING_BSEC') cg.add_library('BSEC Software Library', '1.6.1480')
def to_code(config): var = cg.new_Pvariable(config[CONF_ID]) yield cg.register_component(var, config) yield i2c.register_i2c_device(var, config) cg.add(var.set_temperature_offset(config[CONF_TEMPERATURE_OFFSET])) cg.add(var.set_iaq_mode(config[CONF_IAQ_MODE])) cg.add(var.set_sample_rate(config[CONF_SAMPLE_RATE])) cg.add( var.set_state_save_interval(config[CONF_STATE_SAVE_INTERVAL].total_milliseconds) ) cg.add_define("USE_BSEC") cg.add_library("BSEC Software Library", "1.6.1480")
def to_code(config): var = cg.new_Pvariable(config[CONF_ID]) yield cg.register_component(var, config) yield i2c.register_i2c_device(var, config) if CONF_TEMPERATURE in config: conf = config[CONF_TEMPERATURE] sens = yield sensor.new_sensor(conf) cg.add(var.set_temperature(sens)) if CONF_PRESSURE in config: conf = config[CONF_PRESSURE] sens = yield sensor.new_sensor(conf) cg.add(var.set_pressure(sens))
def to_code(config): var = cg.new_Pvariable(config[CONF_ID]) yield cg.register_component(var, config) yield i2c.register_i2c_device(var, config) cg.add(var.set_gain_value(config[CONF_GAIN])) cg.add(var.set_res_value(config[CONF_RESOLUTION])) cg.add(var.set_wfac_value(config[CONF_WFAC])) for key, funcName in TYPES.items(): if key in config: sens = yield sensor.new_sensor(config[key]) cg.add(getattr(var, funcName)(sens))
def to_code(config): var = cg.new_Pvariable(config[CONF_ID]) yield cg.register_component(var, config) yield i2c.register_i2c_device(var, config) for key in [ CONF_VOLTAGE, CONF_CURRENT_A, CONF_CURRENT_B, CONF_ACTIVE_POWER_A, CONF_ACTIVE_POWER_B ]: if key not in config: continue conf = config[key] sens = yield sensor.new_sensor(conf) cg.add(getattr(var, f'set_{key}_sensor')(sens))
def to_code(config): var = cg.new_Pvariable(config[CONF_ID]) yield cg.register_component(var, config) yield i2c.register_i2c_device(var, config) cg.add(var.set_precision_value(config[CONF_PRECISION])) cg.add(var.set_heater_power_value(config[CONF_HEATER_POWER])) cg.add(var.set_heater_time_value(config[CONF_HEATER_TIME])) cg.add(var.set_heater_duty_value(config[CONF_HEATER_MAX_DUTY])) for key, funcName in TYPES.items(): if key in config: sens = yield sensor.new_sensor(config[key]) cg.add(getattr(var, funcName)(sens))
def to_code(config): var = cg.new_Pvariable(config[CONF_ID]) yield cg.register_component(var, config) yield display.register_display(var, config) yield i2c.register_i2c_device(var, config) if CONF_LAMBDA in config: lambda_ = yield cg.process_lambda( config[CONF_LAMBDA], [(HT16K33AlphaDisplay.operator('ref'), 'it')], return_type=cg.void) cg.add(var.set_writer(lambda_)) if config[CONF_SCROLL]: cg.add(var.set_scroll(True)) cg.add(var.set_scroll_speed(config[CONF_SCROLL_SPEED])) cg.add(var.set_scroll_dwell(config[CONF_SCROLL_DWELL])) cg.add( var.set_scroll_delay( int(config[CONF_SCROLL_DELAY] * config[CONF_SCROLL_SPEED].total_milliseconds))) if CONF_SECONDARY_DISPLAYS in config: for conf in config[CONF_SECONDARY_DISPLAYS]: disp = cg.new_Pvariable(conf[CONF_ID]) yield i2c.register_i2c_device(disp, conf) cg.add(var.add_secondary_display(disp))
def to_code(config): var = cg.new_Pvariable(config[CONF_ID]) yield cg.register_component(var, config) yield i2c.register_i2c_device(var, config) if CONF_BATTERY_LEVEL in config: sens = yield sensor.new_sensor(config[CONF_BATTERY_LEVEL]) cg.add(var.set_cellRemPercent_sensor(sens)) if CONF_BATTERY_VOLTAGE in config: sens = yield sensor.new_sensor(config[CONF_BATTERY_VOLTAGE]) cg.add(var.set_cellVoltage_sensor(sens)) if "cell_charge" in config: sens = yield sensor.new_sensor(config["cell_charge"]) cg.add(var.set_cellCharge_sensor(sens))
def to_code(config): var = cg.new_Pvariable(config[CONF_ID]) yield cg.register_component(var, config) yield i2c.register_i2c_device(var, config) yield sensor.register_sensor(var, config) if CONF_COMPENSATION in config: compensation_config = config[CONF_COMPENSATION] sens = yield cg.get_variable(compensation_config[CONF_HUMIDITY_SOURCE]) cg.add(var.set_humidity_sensor(sens)) sens = yield cg.get_variable(compensation_config[CONF_TEMPERATURE_SOURCE]) cg.add(var.set_temperature_sensor(sens)) cg.add(var.set_store_baseline(config[CONF_STORE_BASELINE])) if CONF_VOC_BASELINE in config: cg.add(var.set_voc_baseline(CONF_VOC_BASELINE))
def to_code(config): var = cg.new_Pvariable(config[CONF_ID]) yield cg.register_component(var, config) yield i2c.register_i2c_device(var, config) for d in ["x", "y", "z"]: accel_key = f"accel_{d}" if accel_key in config: sens = yield sensor.new_sensor(config[accel_key]) cg.add(getattr(var, f"set_accel_{d}_sensor")(sens)) accel_key = f"gyro_{d}" if accel_key in config: sens = yield sensor.new_sensor(config[accel_key]) cg.add(getattr(var, f"set_gyro_{d}_sensor")(sens)) if CONF_TEMPERATURE in config: sens = yield sensor.new_sensor(config[CONF_TEMPERATURE]) cg.add(var.set_temperature_sensor(sens))
def to_code(config): var = cg.new_Pvariable(config[CONF_ID]) yield cg.register_component(var, config) yield i2c.register_i2c_device(var, config) for d in ['x', 'y', 'z']: accel_key = 'accel_{}'.format(d) if accel_key in config: sens = yield sensor.new_sensor(config[accel_key]) cg.add(getattr(var, 'set_accel_{}_sensor'.format(d))(sens)) accel_key = 'gyro_{}'.format(d) if accel_key in config: sens = yield sensor.new_sensor(config[accel_key]) cg.add(getattr(var, 'set_gyro_{}_sensor'.format(d))(sens)) if CONF_TEMPERATURE in config: sens = yield sensor.new_sensor(config[CONF_TEMPERATURE]) cg.add(var.set_temperature_sensor(sens))