Skip to content

Commit

Permalink
Adjust for PokyPow
Browse files Browse the repository at this point in the history
  • Loading branch information
ajfriesen committed Nov 13, 2024
1 parent c99630c commit 985e23b
Show file tree
Hide file tree
Showing 12 changed files with 179 additions and 124 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/esphome.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -12,4 +12,4 @@ jobs:
- uses: actions/checkout@v4
- uses: esphome/[email protected]
with:
yaml_file: pc-switch.yaml
yaml_file: pokypow.yaml
14 changes: 7 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
# pc-switch
# PokyPow

Remote shutdown and start you PC/server with Home Assistant.

Powered by ESPHome.
Powered by ESPHome.

![Home Assisant Panel](images/pc-switch-home-assistant-gui.png)
![Home Assistant Panel](images/pokypow-home-assistant-gui.png)

Just connect your power, reset and power led front panel connector to appropriate pin pairs, power the ESP8266 and you can turn on and off your PC via Home Assistant.

Expand All @@ -16,14 +16,14 @@ Just connect your power, reset and power led front panel connector to appropriat
- No addons with admin access (password) to your Windows PC
- Add voice commands via Home Assistant to Google Assistant

![Version 1.0 assembled](images/v1.0-assembled.jpg)
![Full Kit](images/pokypow-kit-01.jpeg)

![PCB Version 1.0](images/v1.0.jpg)
![Front and Back](images/pokypow-pcb-front-back-01.jpeg)

![Prototype](images/prototype.jpg)
![In Hand](images/pokypow-pcb-scale-02.jpeg)

# Project Documentation

You can find all product documentation, related blog post on my dedicated [pc-switch website](https://www.ajfriesen.com/pc-switch/).
You can find all product documentation, related blog post on my dedicated [PokyPow website](https://www.ajfriesen.com/pc-switch/).


Binary file removed images/pc-switch-home-assistant-gui.png
Binary file not shown.
Binary file added images/pokypow-home-assistant-gui.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/pokypow-kit-01.jpeg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/pokypow-pcb-front-back-01.jpeg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/pokypow-pcb-scale-02.jpeg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file removed images/prototype.jpg
Binary file not shown.
Binary file removed images/v1.0-assembled.jpg
Binary file not shown.
Binary file removed images/v1.0.jpg
Binary file not shown.
116 changes: 0 additions & 116 deletions pc-switch.yaml

This file was deleted.

171 changes: 171 additions & 0 deletions pokypow.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,171 @@
esphome:
name: gaming-pokypow
friendly_name: gaming-pokypow
on_boot:
priority: -100 # Lower priority to ensure it runs after boot is complete
then:
- light.turn_on:
id: led_strip
red: 0
green: 100%
blue: 0
brightness: 50%

esp32:
board: esp32-c3-devkitm-1
framework:
type: arduino
flash_size: 4MB


# Enable logging
logger:
# level: DEBUG

# Enable Home Assistant API
api:
encryption:
key: "JF2lAtubt9VdSATyOL66WJsqe+Sh1hB8HxZx4ck1V5s="
on_client_connected:
then:
- light.turn_on:
id: led_strip
red: 0
green: 0
blue: 100%
brightness: 50%
on_client_disconnected:
then:
- light.turn_on:
id: led_strip
red: 100%
green: 100%
blue: 0
brightness: 50%
ota:
- platform: esphome
password: "9a276257164827a77c20a46ee176b36e"

wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password
use_address: 192.168.178.144

# Enable fallback hotspot (captive portal) in case wifi connection fails
ap:
ssid: "Server Fallback Hotspot"
password: "8xAFIJNdv8xb"

captive_portal:

web_server:
port: 80

light:
- platform: neopixelbus
type: GRBW
variant: SK6812
pin: GPIO5
id: led_strip
num_leds: 1
name: "LED Strip"
effects:
- addressable_rainbow:

sensor:
- platform: wifi_signal
name: "WiFi Signal"
update_interval: 2s


switch:
- platform: gpio
pin:
number: GPIO7
inverted: true
mode:
output: true
pulldown: true
id: power_pin
internal: true

- platform: gpio
pin:
number: GPIO6
inverted: true
mode:
output: true
pulldown: true
id: reset_pin
internal: true

- platform: template
name: "Power Switch"
id: power_switch
internal: true
turn_on_action:
- switch.turn_on: power_pin
- delay: 2000ms
- switch.turn_off: power_pin

- platform: template
name: "Power Switch Force"
id: power_switch_force
internal: true
turn_on_action:
- switch.turn_on: power_pin
- delay: 10000ms
- switch.turn_off: power_pin

- platform: template
name: "Reset Switch"
id: reset_switch
internal: true
turn_on_action:
- switch.turn_on: reset_pin
- delay: 1000ms
- switch.turn_off: reset_pin


binary_sensor:
- platform: gpio
pin:
number: GPIO04
mode:
input: true
pullup: true
inverted: false
id: pc_power_sensor
name: "Power State"
device_class: running
icon: "mdi:desktop-classic"

button:
- platform: template
name: "Power Button"
id: power_button
icon: "mdi:power-standby"
on_press:
then:
- switch.toggle: power_switch

- platform: template
name: "Force Power Off"
id: force_power_off
icon: "mdi:power-plug-off"
on_press:
then:
- switch.toggle: power_switch_force
- delay: 1000ms
- switch.turn_off: power_switch_force

- platform: template
name: "Reset Button"
id: reset_button
icon: "mdi:restart"
on_press:
then:
- switch.toggle: reset_pin



0 comments on commit 985e23b

Please sign in to comment.