ESPHome on the Etekcity NightLight plug and 2 & 6 Channel Power Monitoring
Finishing up the last bit of sensors and config on the Etekcity power monitoring plug. No soldering required to flash the plug as they left us an open header to attach to. Snuck in a little bit of the cool 3 way Martin Jerry switch.
Etekcity Plug
Martin Jerry 3 way Switch
2 & 6 Channel Monitoring Boards with ESPHome - https://circuitsetup.us/
Audio issues on the first piece, but we reset OBS to fix the issue! Sorry guys/gals!
Tasmota Template for the Etekcity
(had issues with voltage readings dropping at random times)
{"NAME":"ETekNightLight","GPIO":[0,0,0,0,37,21,0,0,132,133,17,130,52],"FLAG":1,"BASE":45}
Work in progress Etekcity Plug Config
substitutions:
plug_name: etekpower
# Higher value gives lower watt readout
current_res: "0.00095"
# Lower value gives lower voltage readout
voltage_div: "2040"
esphome:
name: ${plug_name}
platform: ESP8266
board: esp8285
wifi:
ssid: !secret wifi_ssid
password: !secret wifi_pass
manual_ip:
static_ip: !secret ip_etekpower
gateway: !secret ip_gateway
subnet: !secret ip_subnet
dns1: !secret ip_dns1
logger:
# level: NONE
mqtt:
broker: !secret mqtt_broker
username: !secret mqtt_user
password: !secret mqtt_pass
ota:
web_server:
binary_sensor:
- platform: gpio
pin:
number: GPIO14
inverted: True
name: "${plug_name}_button"
on_press:
then:
- switch.toggle: "${plug_name}_Relay"
- switch.toggle: "${plug_name}_LED_Blue"
switch:
- platform: gpio
name: "${plug_name}_Relay"
id: "${plug_name}_Relay"
pin: GPIO05
restore_mode: ALWAYS_ON
- platform: gpio
name: "${plug_name}_LED_Blue"
id: "${plug_name}_LED_Blue"
pin: GPIO16
inverted: False
restore_mode: ALWAYS_ON
sensor:
- platform: hlw8012
sel_pin:
number: GPIO15
inverted: False
cf_pin: GPIO13
cf1_pin: GPIO12
current_resistor: ${current_res}
voltage_divider: ${voltage_div}
change_mode_every: 3
update_interval: 3s
current:
name: "${plug_name}_Amperage"
unit_of_measurement: A
accuracy_decimals: 3
filters:
- calibrate_linear:
- 0.000 -> 0.0
- 5.069 -> 6.69
# Make everything below 0.01A appear as just 0A.
# Furthermore it corrects 0.013A for the power usage of the plug.
- lambda: if (x < (0.01 - 0.013)) return 0; else return (x - 0.013);
voltage:
name: "${plug_name}_Voltage"
unit_of_measurement: V
accuracy_decimals: 1
power:
name: "${plug_name}_Wattage"
unit_of_measurement: W
id: "${plug_name}_Wattage"
accuracy_decimals: 0
- platform: uptime
name: ${plug_name}_Uptime Sensor
- platform: adc
pin: A0
name: "${plug_name}_LightSensor"
update_interval: 5s
light:
- platform: monochromatic
name: "${plug_name}_NightLight"
output: pwm_nite
output:
- platform: esp8266_pwm
id: pwm_nite
pin: 4
Thats perfect, but in your video other wired we can see. Please let us know with NodeMCU Lolin v3 ESP8266 GPIO numbers what cable where connect with v1.4 ch2...?
ReplyDeleteAm I missing something when trying to flash this? I can flash tasmota just fine when powering the chip directly with 3.3v. It even persist. However, when I plug it in the wall outlet it still has the stock firmware. It seems like I am missing something with different partitions on the device.
ReplyDeleteSomething holding the button down for 40 seconds at boot? Watch the log if you are still connected via serial to it.
DeleteFor some reason when I flashed my etekcity plug with esphome and this template, I get erratic voltage values, jumping anywhere from 50V to 115V.
ReplyDeleteDid you ever get the voltage issue you were experiencing figured out ?