devices.esphome.io

Geeni 6W8007 Smart Wi-Fi Outlet

Geeni 6W8007 Smart Wi-Fi Outlet

Device Type: plug
Electrical Standard: us
Board: bk72xx
Difficulty: Disassembly required, 3/5

Amazon Link

Product Image

image

General Notes

Model Reference: 6W8007

Manufacturer: Geeni

The Geeni Smart Wi-Fi Outlet is available at Amazon and is also available as a 2-pack.

This plug is not able to be converted with tuya-convert as of May 2024. You will need to disassemble and flash with a USB to Serial adapter. The pins are easily accessible once the device is disassembled.

GPIO Pinout

PinFunction
P6Relay 1
P7Relay 2
P24Button
P26Blue LED (inverted)

Disassembly Guide

1) Unscrew back cover with Qty. 4 - Phillips #1 screws - note: loosen the 2 terminal screws for hot/neutral but don't remove. They'll stay in place for reassembly. Don't take them all the way out like I did image 2) Separate outlet into 2 parts image image 3) Separate back half (black plastic) by prying the insert holding the chips image 4) Access CB2S for flashing. I placed it in a small vise to hold vertical and used needle probes to flash the chip, then reassembled in reverse order. image image

Configuration

substitutions:
device_description: Geeni 6W8007 Smart Wi-Fi Outlet
device_name: geeni-wifi-outlet-${device_location}
device_friendly_name: Geeni Smart Wifi Outlet ${device_friendly_location}
device_make: Geeni
device_model: 6W8007
device_chipset: Beken BK7231N
device_friendly_location: ADD LOCATION
device_location: ADD-LOCATION
esphome:
name: $device_name
friendly_name: $device_friendly_name
bk72xx:
board: cb2s
logger:
baud_rate: 0
web_server:
port: 80
captive_portal:
mdns:
# Add your own api encryption key if you use it or use a secrets file one, your choice
api:
encryption:
key: !secret api_key
ota:
password: ""
wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password
ap:
ssid: $device_name
password: !secret wifi_ap_password
text_sensor:
- platform: libretiny
version:
name: LibreTiny Version
sensor:
- platform: uptime
name: ${device_friendly_name} Uptime
unit_of_measurement: minutes
filters:
- lambda: return x / 60.0;
- platform: wifi_signal
name: ${device_friendly_name} Signal
update_interval: 60s
light:
- platform: status_led
name: "led"
internal: true
id: led
pin:
number: P26
inverted: true
switch:
- platform: gpio
id: switch_1
name: Relay 1
pin: P6
- platform: gpio
id: switch_2
name: Relay 2
pin: P7
binary_sensor:
- platform: gpio
id: binary_switch_all
pin:
number: P24
inverted: true
mode: INPUT_PULLUP
on_multi_click:
- timing:
- ON for at most 1s
- OFF for at least 0.5s
then:
- switch.toggle: switch_1
- timing:
- ON for at most 1s
- OFF for at most 1s
- ON for at most 1s
- OFF for at least 0.2s
then:
- switch.toggle: switch_2
Edit this page on GitHub