『瀚思彼岸』» 智能家居技术论坛

 找回密码
 立即注册
查看: 1227|回复: 5

[求助] 打算弄个ESPHOME固件的插座给傻瓜充电器用,求配置文件写法

[复制链接]

1

主题

68

帖子

493

积分

中级会员

Rank: 3Rank: 3

积分
493
金钱
425
HASS币
0
发表于 2023-12-19 13:02:59 | 显示全部楼层 |阅读模式
因为是用来接傻瓜充电器用,要求:
1、按键单击是打开或关闭继电器,打开时LED灯常亮,关闭时灭。
2、无论继电器是什么状态,双击按键的话,立即打开继电器,LED灯快闪,2个小时自动关闭继电器。
3、无论继电器是什么状态,三击按键的话,立即打开继电器,LED灯慢闪,8个小时自动关闭继电器。
配置文件该怎么写?如果再加上能在WEB界面下拉选择多少个小时后关闭就更完美,先谢谢了!

回复

使用道具 举报

20

主题

484

帖子

3156

积分

论坛元老

Rank: 8Rank: 8

积分
3156
金钱
2672
HASS币
8
发表于 2023-12-20 09:55:29 | 显示全部楼层
还不如问chatGPT,几轮完善下来基本能帮你弄个配置代码出来
回复

使用道具 举报

18

主题

266

帖子

2160

积分

论坛DIY达人

积分
2160
金钱
1889
HASS币
20
发表于 2023-12-20 10:32:52 | 显示全部楼层
灌水,来自chatGPT,仅供参考。
esphome:
  name: 插座名称
  platform: ESP8266
  board: esp01_1m

wifi:
  ssid: "您的WiFi名称"
  password: "您的WiFi密码"

# 配置按键和LED
binary_sensor:
  - platform: gpio
    pin:
      number: GPIO0  # 按键引脚
      mode: INPUT_PULLUP
      inverted: True
    name: "插座按键"
    on_press:
      - switch.toggle: relay
    on_double_click:
      then:
        - switch.turn_on: relay
        - light.turn_on: led
        - delay: 2h
        - switch.turn_off: relay
        - light.turn_off: led
    on_triple_click:
      then:
        - switch.turn_on: relay
        - light.turn_on: led
        - delay: 8h
        - switch.turn_off: relay
        - light.turn_off: led

output:
  - platform: gpio
    pin: GPIO12  # 继电器引脚
    id: relay

light:
  - platform: binary
    name: "LED灯"
    output: led_output

output:
  - platform: gpio
    pin: GPIO14  # LED灯引脚
    id: led_output

# 配置Web界面的下拉选择关闭时间
select:
  - platform: template
    name: "关闭时间"
    id: close_time
    options:
      - "1小时"
      - "2小时"
      - "4小时"
      - "8小时"

# 自动关闭继电器的触发器
time:
  - platform: homeassistant
    id: close_timer
    on_time:
      - seconds: 0
        minutes: 0
        hours: !lambda 'return {"1小时": 1, "2小时": 2, "4小时": 4, "8小时": 8}[id(close_time)];'

  - platform: template
    id: close_trigger
    lambda: |-
      if (id(close_timer).is_running()) {
        return false;
      } else {
        return true;
      }

switch:
  - platform: template
    name: "自动关闭继电器"
    id: auto_close
    turn_on_action:
      - homeassistant.service:
          service: timer.start
          data:
            entity_id: timer.close_timer
    turn_off_action:
      - homeassistant.service:
          service: timer.cancel
          data:
            entity_id: timer.close_timer

# 配置Web界面的下拉选择关闭时间与自动关闭继电器的关联
web_server:
  port: 80

api:
  services:
    - service: select.select_option
      variables:
        option: int
      then:
        - if:
            condition:
              switch.is_on: auto_close
            then:
              - homeassistant.service:
                  service: timer.start
                  data:
                    entity_id: timer.close_timer
              - homeassistant.service:
                  service: timer.cancel
                  data:
                    entity_id: timer.close_timer
          else:
              - homeassistant.service:
                  service: timer.cancel
                  data:
                    entity_id: timer.close_timer

请注意,上述配置文件中的GPIO引脚号(如GPIO0、GPIO12、GPIO14)可能需要根据您的硬件连接进行调整。此外,如果您使用的是ESP32-C3,您需要将`board`字段更改为适合ESP32-C3的板型。

此配置文件包含一个按键和一个LED灯的配置。按键的单击操作用于打开或关闭继电器,并控制LED灯的亮灭。双击按键会立即打开继电器,LED灯闪烁2小时后自动关闭。三击按键会立即打开继电器,LED灯闪烁8小时后自动关闭。此外,还添加了一个Web界面的下拉选择框,用于选择关闭继电器的时间。选择关闭时间后,会自动触发相应的定时器来关闭继电器。

请根据您的具体需求和硬件配置进行适当的调整和测试。

评分

参与人数 1金钱 +5 收起 理由
pengguilian + 5 大神666!

查看全部评分

回复

使用道具 举报

1

主题

68

帖子

493

积分

中级会员

Rank: 3Rank: 3

积分
493
金钱
425
HASS币
0
 楼主| 发表于 2023-12-20 13:59:10 | 显示全部楼层
polisher 发表于 2023-12-20 10:32
灌水,来自chatGPT,仅供参考。

请注意,上述配置文件中的GPIO引脚号(如GPIO0、GPIO12、GPIO14)可能需要 ...

谢谢大佬!今晚回家试试,谢谢!
回复

使用道具 举报

1

主题

68

帖子

493

积分

中级会员

Rank: 3Rank: 3

积分
493
金钱
425
HASS币
0
 楼主| 发表于 2023-12-20 18:21:39 | 显示全部楼层
cjnt007 发表于 2023-12-20 09:55
还不如问chatGPT,几轮完善下来基本能帮你弄个配置代码出来

chatGPT这玩意连注册页面打不开
回复

使用道具 举报

1

主题

68

帖子

493

积分

中级会员

Rank: 3Rank: 3

积分
493
金钱
425
HASS币
0
 楼主| 发表于 2023-12-20 21:34:51 | 显示全部楼层
polisher 发表于 2023-12-20 10:32
灌水,来自chatGPT,仅供参考。

请注意,上述配置文件中的GPIO引脚号(如GPIO0、GPIO12、GPIO14)可能需要 ...

研究了到现在还是一头雾水,好像on_triple_click不让用,请教大佬!这里面哪段配置是控制灯快闪、慢闪呢?还有那个API是干啥用的?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-11-24 03:09 , Processed in 0.101884 second(s), 29 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表