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

 找回密码
 立即注册
查看: 16070|回复: 90

[经验分享] 某动X12空调伴侣esphome固件分享 2023.6.24 更新功率部分

  [复制链接]

14

主题

430

帖子

2713

积分

金牌会员

Rank: 6Rank: 6

积分
2713
金钱
2283
HASS币
0
发表于 2022-8-9 14:52:32 | 显示全部楼层 |阅读模式
本帖最后由 ylilike 于 2024-4-10 16:42 编辑

时隔久远,看有回帖编译失败的,于是编译了一个
x12_remote.zip (333.8 KB, 下载次数: 95)
放上来,需要自取
天热想起空调了,更新一波吧(yaml附件,请移步46楼)

某动X12空调伴侣,刷入esphome固件,再配置 ryanh7大佬 插件,可完美接入ha

Smartac+esphome 理论上兼容200多种品牌老空调


插件地址:
https://bbs.hassbian.com/thread-15867-1-1.html

使用方法:
https://bbs.hassbian.com/thread-15827-1-1.html

可惜我家的whirlpool还是不能用,自己不能用,就分享给朋友们吧。

核心代码如下了,太长贴不全,还有之前分享的在二楼,组合起来,应该可以完美使用了。
'''
substitutions:
  plug_name: x12_remote_1
  # Higher value gives lower watt readout
  current_res: "0.005"
  # Lower value gives lower voltage readout
  voltage_div: "369" # 369
  
esphome:
  name: ${plug_name}
  platform: ESP8266
  board: esp_wroom_02
  on_boot:
    priority: 600
    then:
      - lambda: |-
            id(Voltage).publish_state(id(y_voltage).state + 116.3);
            id(Amperage).publish_state(id(Wattage).state / (id(y_voltage).state + 116.3) );
            id(ctrl_text).publish_state("若然,一切若然~");
            

wifi:
  ssid: !secret wifi_2 # wifi_ssid
  password: !secret wifi_password

  manual_ip:
    static_ip: 192.168.3.207
    gateway: 192.168.3.254
    subnet: 255.255.255.0
    dns1: 192.168.3.254

  # Enable fallback hotspot (captive portal) in case wifi connection fails
  ap:
    ssid: "x12_remote_1_Hotspot"
    password: !secret fallwifi_pswd

captive_portal:

# Enable logging
logger:
  level: debug #makes uart stream available in esphome logstream
  # baud_rate: 0 #disable logging over uart
# Enable Home Assistant API

api:
  password: !secret api_password
  services:
    - service: send_raw_command
      variables:
        command: int[]
      then:
        - remote_transmitter.transmit_raw:
            code: !lambda 'return command;'
            carrier_frequency: 38k
    - service: ctrl_text
      variables:
        target: string
      then:
        - lambda: |-
            id(ctrl_text).publish_state(target);

ota:
  password: !secret ota_password

web_server:
  port: 80

time:
  - platform: sntp
    id: my_time
    
    
sensor:
  - platform: hlw8012
    sel_pin:
      number: 12
      inverted: True
    cf_pin: 4
    cf1_pin: 5
    
    #current_resistor: ${current_res}
    voltage_divider: ${voltage_div}
    # current:
    #   name: "${plug_name}_Amperage"
    #   unit_of_measurement: A
    voltage:
      id: y_voltage
      name: z_voltage
      unit_of_measurement: V
      
    power:
      name: "${plug_name}_Wattage"
      unit_of_measurement: W
      id: Wattage
      
    update_interval: 10s
    initial_mode: VOLTAGE    # VOLTAGE 或 CURRENT
    change_mode_every: 8  #默认8 # 4294967295
    
    
  - platform: template
    name: "${plug_name}_Voltage"
    id: Voltage
    icon: "mdi:sine-wave"
  - platform: template
    name: "${plug_name}_Amperage"
    id: Amperage   
    icon: "mdi:current-ac"
  - platform: total_daily_energy
    name: "${plug_name}_Total_Daily_Energy"
    power_id: "Wattage"
    filters:
        # Multiplication factor from W to kW is 0.001
        - multiply: 0.001
    unit_of_measurement: kWh
    
# Extra sensor to keep track of plug uptime
  - platform: uptime
    name: ${plug_name}_Uptime  
# Extra sensor to keep track of plug uptime
  - platform: uptime
    name: ${plug_name}_Uptime  

binary_sensor:
  - platform: template
    name: "${plug_name}_Power"
    id: Power
    device_class: power

interval:
  - interval: 3s #定时
    then:
      - lambda: |-
            id(Voltage).publish_state(id(y_voltage).state + 116.3);
            id(Amperage).publish_state(id(Wattage).state / (id(y_voltage).state + 116.3) );
            if( id(Wattage).state > 3){
              id(Power).publish_state(true);
              if(id(led_switch).state){
                id(led).turn_on();
              }
            }else{
              id(Power).publish_state(false);
              id(led).turn_off();
            }
        
    
remote_receiver:
  pin:
    number: 13 #接收
    inverted: True
  #dump: nec
  dump: all
  
remote_transmitter:
  pin: 
    number: 14 #发射
  carrier_duty_percent: 50%
  



'''

评分

参与人数 1金钱 +8 收起 理由
ruike007 + 8 论坛有你更精彩!

查看全部评分

若然,一切若然~
回复

使用道具 举报

14

主题

430

帖子

2713

积分

金牌会员

Rank: 6Rank: 6

积分
2713
金钱
2283
HASS币
0
 楼主| 发表于 2022-8-9 14:55:04 | 显示全部楼层
esphome:
  name: x12-test

esp8266:
  board: esp01_1m

# Enable Home Assistant API
api:
  password: "yiqieruoran"
  services:
    - service: send_raw_command
      variables:
        command: int[]
      then:
        - remote_transmitter.transmit_raw:
            carrier_frequency: 38kHz
            code: !lambda 'return command;'

ota:
  password: "yiqieruoran" # 一切若然

wifi:
  # ssid: "ssid"
  # password: "yiqieruoran" # 一切若然

  # Enable fallback hotspot (captive portal) in case wifi connection fails
  ap:
    ssid: "X12-Test_Hotspot"

captive_portal:

# Enable logging
logger:
  # level: VERBOSE #makes uart stream available in esphome logstream
  # baud_rate: 0 #disable logging over uart
# Enable Home Assistant API

# web_server:
#   port: 80
  
remote_receiver:
  pin:
    number: 13 #接收
    inverted: True
  #dump: nec
  dump: all
  
remote_transmitter:
  pin: 
    number: 14 #发射
  carrier_duty_percent: 50%



switch:
  - platform: gpio
    name: x12_led
    id: x12_led
    pin: 15
    inverted: false
若然,一切若然~
回复

使用道具 举报

2

主题

48

帖子

546

积分

高级会员

Rank: 4

积分
546
金钱
498
HASS币
0
发表于 2022-8-9 15:05:04 来自手机 | 显示全部楼层
谢谢分享,占位
回复

使用道具 举报

1

主题

13

帖子

173

积分

注册会员

Rank: 2

积分
173
金钱
160
HASS币
0
发表于 2022-8-9 15:15:44 | 显示全部楼层
支持一下,感谢分享
回复

使用道具 举报

5

主题

90

帖子

1546

积分

金牌会员

Rank: 6Rank: 6

积分
1546
金钱
1456
HASS币
0
发表于 2022-8-9 15:30:54 | 显示全部楼层
回复

使用道具 举报

40

主题

2178

帖子

8338

积分

元老级技术达人

积分
8338
金钱
6145
HASS币
110
发表于 2022-8-9 16:25:24 | 显示全部楼层
X12有个功率计
回复

使用道具 举报

0

主题

14

帖子

55

积分

注册会员

Rank: 2

积分
55
金钱
41
HASS币
0
发表于 2023-1-16 14:31:25 | 显示全部楼层
支持一下,感谢分享
回复

使用道具 举报

0

主题

23

帖子

85

积分

注册会员

Rank: 2

积分
85
金钱
62
HASS币
0
QQ
发表于 2023-6-23 15:46:11 | 显示全部楼层
刷这个固件 功率计是不是就没有用了额啊?

回复

使用道具 举报

0

主题

23

帖子

85

积分

注册会员

Rank: 2

积分
85
金钱
62
HASS币
0
QQ
发表于 2023-6-23 19:21:09 | 显示全部楼层
膜拜大神,补了半天得课,也没有想明白到底应该怎么弄  ,现在连python环境还没有搭建好,我是不是可以放弃了、、、、、
回复

使用道具 举报

14

主题

430

帖子

2713

积分

金牌会员

Rank: 6Rank: 6

积分
2713
金钱
2283
HASS币
0
 楼主| 发表于 2023-6-24 10:52:03 | 显示全部楼层
confessor 发表于 2023-6-23 15:46
刷这个固件 功率计是不是就没有用了额啊?

把功率部分也补上了,一楼已更新了
若然,一切若然~
回复

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-12-26 09:57 , Processed in 0.076973 second(s), 38 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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