Skip to content

Kogan SmarterHome Smart Plug With Energy Meter and 5V 2.4A USB Ports

Device Type:plug
Electrical Standard:au
Board:esp8266

alt text

https://www.kogan.com/au/buy/kogan-smarterhome-smart-plug-energy-meter-5v-24a-usb-ports/

GPIO Pinout

PinFunction
GPIO03Push Button
GPIO13Green LED (Inverted: true)
GPIO14Relay
GPIO12HLW8012 SEL Pin
GPIO04HLW8012 CF Pin
GPIO05HLW8012 CF1 Pin

Basic Config

substitutions:
device_name: kogan_plug_1
device_icon: mdi:power-socket-au
device_restore: ALWAYS_ON
# Higher value gives lower watt readout
current_res: "0.00225"
# Lower value gives lower voltage readout
voltage_div: "805"
esphome:
name: ${device_name}
esp8266:
board: esp8285
logger:
binary_sensor:
- platform: gpio
pin:
number: 03
mode: INPUT_PULLUP
inverted: true
name: "${device_name}_button"
on_press:
- switch.toggle: relay
- platform: status
name: "${device_name}_status"
switch:
- platform: gpio
id: led
pin:
number: GPIO13
inverted: true
- platform: gpio
name: "${device_name}_plug"
pin: GPIO14
id: relay
icon: ${device_icon}
restore_mode: ${device_restore}
on_turn_on:
- switch.turn_on: led
on_turn_off:
- switch.turn_off: led
sensor:
- platform: hlw8012
sel_pin:
number: GPIO12
inverted: true
cf_pin: GPIO04
cf1_pin: GPIO05
current:
name: "${device_name}_current"
unit_of_measurement: A
voltage:
name: "${device_name}_voltage"
unit_of_measurement: V
power:
id: ${device_name}_wattage
name: "${device_name}_wattage"
unit_of_measurement: W
energy:
id: ${device_name}_energy
name: "${device_name}_energy"
unit_of_measurement: Wh
current_resistor: ${current_res}
voltage_divider: ${voltage_div}
change_mode_every: 8
update_interval: 15s

Appendix

If you are seeing incorrect power/current readings at higher power draws (i.e. current of 5A@240V while power is showing ~2000W), your unit most likely has a BL0937 chip. You can verify this by looking at underside of the PCB, in the general area of the ESP chip. To get correct sensor results, make the following config changes:

substitutions:
current_res: "0.001" # visually verified the shunt resistor is 1m0
voltage_div: "1720" # rough value, tested against multimeter readout
sensor:
- platform: hlw8012
model: BL0937

The readings should be correct from now on.