--- disqus: ahb0222 GA : G-VF9ZT413CG --- > [color=#40f1ef][name=LHB阿好伯, 2021/07/16][:earth_africa:](https://www.facebook.com/LHB0222/) [TOC] Sonoff S31是一款智能插座,可以通過刷入ESPHome固件來連接到Home Assistant 刷入ESPHome固件後,Sonoff S31可以通過Wi-Fi連接到你的家庭網絡 可以通過Home Assistant來控制插座的開關,並且監測插座的用電情況    # ESPHome設定 ## 拆解Sonoff S31 :::danger 警示:在進行任何拆解操作之前,請確保你已經斷開了所有電源,並且具有相應的專業知識和技能。 拆解電子設備可能會導致電擊、火災或其他傷害。 如果你不確定如何安全地拆解設備,請尋求專業人士的幫助。 同時,請注意拆解設備可能會使其保修失效,並且可能違反當地法律或規定。 在進行任何拆解操作之前,請仔細考慮風險並遵守相關法律和規定。 本文章只作為紀錄請勿輕易模仿 ::: ### 拆除頂板   ### 解開螺絲  #### 內部構造   ### 燒錄 使用燒錄器或是焊接杜邦線進行燒錄  :::success 按住GPIO0後再插入電腦進入燒錄模式 :::  ## HA新增裝置 在HA中新增裝置開啟ESPHome網頁  連接S31通訊埠   進行燒錄    ### wifi無法設定 目前我個人遇到wifi設定問題  最後只好手動設定回到HA創建裝置  設定名稱  設定裝置類型 這邊可以看到Pi pico W選項有空再來試試看  這邊會生成一組API Key不用記之後都可以查  完成後就可以看到剛剛新增的裝置  這邊我們手動編輯其配置檔(yaml)  :::info 注意API key為自動填入勿修改 ::: ```yaml= substitutions: device_name: sonoff_s31f #測電流(備用) esphome: name: ${device_name} platform: ESP8266 board: esp01_1m api: encryption: key: "******************************" ##自動填入勿修改 ota: password: !secret wifi_pw web_server: port: 80 wifi: ssid: !secret wifi_ssid password: !secret wifi_pw ap: ssid: "${device_name}_Fallback" password: 12345678 #設定Wifi的密碼 captive_portal: logger: baud_rate: 0 # (UART logging interferes with cse7766) time: - platform: homeassistant id: homeassistant_time uart: rx_pin: RX baud_rate: 4800 binary_sensor: - platform: gpio pin: number: GPIO0 mode: INPUT_PULLUP inverted: True name: "${device_name} Button" on_press: - switch.toggle: relay - platform: status name: "${device_name} Status" sensor: - platform: wifi_signal name: "${device_name} WiFi Signal" update_interval: 60s - platform: uptime name: "${device_name} Uptime" filters: - lambda: return x / 3600; unit_of_measurement: "hours" accuracy_decimals: 1 - platform: cse7766 update_interval: 1s current: name: "${device_name} Current" accuracy_decimals: 2 unit_of_measurement: A filters: - sliding_window_moving_average: window_size: 3 send_every: 2 voltage: name: "${device_name} Voltage" unit_of_measurement: V accuracy_decimals: 1 power: name: "${device_name} Wattage" unit_of_measurement: W accuracy_decimals: 1 id: "wattage" - platform: total_daily_energy name: "${device_name} Total Daily Energy" power_id: "wattage" filters: # Multiplication factor from W to kW is 0.001 - multiply: 0.001 unit_of_measurement: kWh switch: - platform: gpio name: "${device_name} Relay" icon: mdi:power-socket-us pin: GPIO12 id: relay restore_mode: always_on - platform: restart name: "${device_name} Restart" output: - platform: esp8266_pwm id: blueLED pin: GPIO13 inverted: True light: - platform: monochromatic name: "${device_name}_blueLED" output: blueLED id: ${device_name}_blueLED interval: - interval: 60s then: if: condition: wifi.connected: then: - light.turn_on: id: ${device_name}_blueLED else: - light.turn_on: id: ${device_name}_blueLED flash_length : 1s ``` [yaml來源](https://forum.justplus.com.tw/forum.php?mod=viewthread&tid=113&_dsign=16441b6e) ## USB安裝   下載安裝檔     通電  第一次使用須設定wifi 等待數秒鐘後用手機連接S31的Wifi  進入1923.168.4.1設定Wifi  若是連接成功就可以看到HA上搜尋到S31 並可以查看S31相關訊息    # 討論 ## daily energy更新問題  全文分享至 🌟全文可以至下方連結觀看或是補充 https://www.facebook.com/LHB0222/ https://www.instagram.com/ahb0222/ 有疑問想討論的都歡迎於下方留言 喜歡的幫我分享給所有的朋友 \o/ 有所錯誤歡迎指教 # [:page_with_curl: 全部文章列表](https://hackmd.io/@LHB-0222/AllWritings) 
×
Sign in
Email
Password
Forgot password
or
Sign in via Google
Sign in via Facebook
Sign in via X(Twitter)
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
Continue with a different method
New to HackMD?
Sign up
By signing in, you agree to our
terms of service
.