Compare commits

...

22 Commits

Author SHA1 Message Date
pszafer
6b44f23693 fix serial no 2024-05-22 10:25:02 +02:00
pszafer
ac9c9d6ac5 dimmer serial no 2024-05-22 10:00:46 +02:00
pszafer
8733d0f625 add serial number 2024-05-22 09:59:52 +02:00
pszafer
9a5c78334d fix INA to 10A 2024-05-22 09:59:44 +02:00
pszafer
28c60689c6 Dimmer output 2024-05-20 13:10:50 +02:00
pszafer
3ac8e38f75 move dimmer and buzzer to main dimmer file 2024-05-20 09:07:31 +02:00
pszafer
ea52b3d40e fix channel naming 2024-05-19 22:35:02 +02:00
pszafer
f03b078855 fix tag ref 2024-05-19 22:32:51 +02:00
pszafer
f152ce0508 rename ina to ina219 2024-05-19 22:31:33 +02:00
pszafer
dce79eadf6 add dimmer config split into multiple files 2024-05-19 20:41:18 +02:00
pszafer
a36cac224a Remove OTA password 2024-04-24 10:43:27 +02:00
pszafer
75b7cf5a0c change versioning in project config 2024-04-11 13:05:53 +02:00
pszafer
10332236a9 replace lm75 with tp102 2024-04-11 12:57:27 +02:00
pszafer
22e8852a60 fix esp32 board 2024-04-10 22:05:22 +02:00
pszafer
ab51965605 fix naming 1.0.3 2024-04-10 09:15:09 +02:00
pszafer
ddc26dd2b1 fix v0.7 light and cover 2024-04-09 22:21:28 +02:00
pszafer
b444a1655a ref v1.0.1 2024-04-09 22:10:38 +02:00
pszafer
242493a957 add version to name 2024-04-09 22:08:28 +02:00
pszafer
a61a38d6c4 fix too many out_16 2024-04-09 21:12:00 +02:00
pszafer
e5d0d3cb0d fix 24x16 MCP 2024-04-09 21:11:04 +02:00
pszafer
888552ace1 remoe lines from display 2024-04-09 18:46:54 +02:00
pszafer
cebd3d9e45 rm typo 2024-04-09 17:44:28 +02:00
23 changed files with 1028 additions and 124 deletions

View File

@@ -184,15 +184,6 @@ switch:
restore_mode: always off
output:
- platform: gpio
id: out_16
pin:
pcf8574: pcf_right
number: 8
mode:
output: true
inverted: true
- platform: gpio
id: out_17
pin:

View File

@@ -1,16 +1,17 @@
substitutions:
name: boneio-esp24x16-switches
name: boneio-24-sw-06
friendly_name: 'BoneIO ESP 24x16 Switches'
esphome:
name: '${name}'
friendly_name: '${friendly_name}'
platform: ESP32
board: nodemcu-32s
name_add_mac_suffix: true
project:
name: boneio.24x16-switches_v0_5-v0_6
version: '1.0'
name: boneio.24x16-switches-v0_5-v0_6
version: '0.6'
esp32:
board: nodemcu-32s
ethernet:
id: eth
@@ -22,13 +23,13 @@ ethernet:
power_pin: GPIO16
dashboard_import:
package_import_url: github://boneIO-eu/esphome/boneio-24x16_switches_v0_5-v0_6.yaml@v1.0.0
package_import_url: github://boneIO-eu/esphome/boneio-24x16_switches_v0_5-v0_6.yaml@v1.0.5
import_full_config: true
packages:
internals_packages:
url: https://github.com/boneIO-eu/esphome
ref: v1.0.0
ref: v1.0.5
files: [
'devices/buzzer.yaml',
'devices_v0_5-v0_6/display.yaml',
@@ -36,7 +37,7 @@ packages:
'devices_v0_5-v0_6/i2c.yaml',
'devices_v0_5-v0_6/ina219.yaml',
'devices_v0_5-v0_6/lm75b.yaml',
'devices_v0_5-v0_6/pcf.yaml',
'devices_v0_5-v0_6/pcf_with_mcp.yaml',
'boards/24x16_output.yaml',
# 'devices_v0_5-v0_6/one_wire.yaml',
# 'devices_v0_5-v0_6/uart.yaml',
@@ -45,7 +46,6 @@ packages:
logger:
api:
ota:
password: boneio
web_server:
port: 80

View File

@@ -1,16 +1,17 @@
substitutions:
name: boneio-esp24x16-switches
name: boneio-24-sw-07
friendly_name: 'BoneIO ESP 24x16 Switches'
esphome:
name: '${name}'
friendly_name: '${friendly_name}'
platform: ESP32
board: nodemcu-32s
name_add_mac_suffix: true
project:
name: boneio.24x16-switches
version: '1.0'
version: '0.7'
esp32:
board: nodemcu-32s
ethernet:
id: eth
@@ -22,20 +23,20 @@ ethernet:
power_pin: GPIO16
dashboard_import:
package_import_url: github://boneIO-eu/esphome/boneio-24x16_switches_v0_7.yaml@v1.0.0
package_import_url: github://boneIO-eu/esphome/boneio-24x16_switches_v0_7.yaml@v1.0.5
import_full_config: true
packages:
internals_packages:
url: https://github.com/boneIO-eu/esphome
ref: v1.0.0
ref: v1.0.5
files: [
'devices/buzzer.yaml',
'devices_v0_7/display.yaml',
'devices_v0_7/i2c.yaml',
'devices_v0_7/ina219.yaml',
'devices_v0_7/lm75b.yaml',
'devices_v0_7/pcf.yaml',
'devices_v0_7/pcf_with_mcp.yaml',
'boards/24x16_output.yaml',
# 'devices_v0_7/one_wire.yaml',
# 'devices_v0_7/uart.yaml',
@@ -44,7 +45,6 @@ packages:
logger:
api:
ota:
password: boneio
web_server:
port: 80

View File

@@ -1,16 +1,17 @@
substitutions:
name: boneio-esp32x10-lights
name: boneio-32-l-06
friendly_name: 'BoneIO ESP 32x10 Lights'
esphome:
name: '${name}'
friendly_name: '${friendly_name}'
platform: ESP32
board: nodemcu-32s
name_add_mac_suffix: true
project:
name: boneio.32x10-lights_v0_5-v0_6
version: '1.0'
version: '0.6'
esp32:
board: nodemcu-32s
ethernet:
id: eth
@@ -22,13 +23,13 @@ ethernet:
power_pin: GPIO16
dashboard_import:
package_import_url: github://boneIO-eu/esphome/boneio-32x10_lights_v0_5-v0_6.yaml@v1.0.0
package_import_url: github://boneIO-eu/esphome/boneio-32x10_lights_v0_5-v0_6.yaml@v1.0.5
import_full_config: true
packages:
internals_packages:
url: https://github.com/boneIO-eu/esphome
ref: v1.0.0
ref: v1.0.5
files: [
'devices/buzzer.yaml',
'devices_v0_5-v0_6/display.yaml',
@@ -46,7 +47,6 @@ logger:
baud_rate: 0 #IMPORTANT FOR V0.5-V0.6 TO GET MODBUS WORKING
api:
ota:
password: boneio
web_server:
port: 80

View File

@@ -1,16 +1,17 @@
substitutions:
name: boneio-esp32x10-lights
name: boneio-32-l-07
friendly_name: 'BoneIO ESP 32x10 Lights'
esphome:
name: '${name}'
friendly_name: '${friendly_name}'
platform: ESP32
board: nodemcu-32s
name_add_mac_suffix: true
project:
name: boneio.32x10-lights
version: '1.0'
version: '0.7'
esp32:
board: nodemcu-32s
ethernet:
id: eth
@@ -22,13 +23,31 @@ ethernet:
power_pin: GPIO16
dashboard_import:
package_import_url: github://boneIO-eu/esphome/boneio-32x10_lights_v0_7.yaml@v1.0.0
package_import_url: github://boneIO-eu/esphome/boneio-32x10_lights_v0_7.yaml@v1.0.5
import_full_config: true
modbus:
send_wait_time: 200ms
uart_id: uart_pin14_15
id: mod_bus
modbus_controller:
- id: sofarsolar
address: 0x09
modbus_id: mod_bus
setup_priority: -10
update_interval: 15s
packages:
# extra_boneio_package:
# url: github://boneIO-eu/esphome-packages
# file: sofar-inverter-ktl.yaml
# vars:
# sofar_modbus_id: sofarsolar
internals_packages:
url: https://github.com/boneIO-eu/esphome
ref: v1.0.0
ref: v1.0.5
files: [
'devices/buzzer.yaml',
'devices_v0_7/display.yaml',
@@ -38,13 +57,13 @@ packages:
'devices_v0_7/pcf.yaml',
'boards/32x10_output.yaml',
# 'devices_v0_7/one_wire.yaml',
# 'devices_v0_7/uart.yaml',
'devices_v0_7/uart.yaml',
]
logger:
api:
reboot_timeout: 0s
ota:
password: boneio
web_server:
port: 80

View File

@@ -1,16 +1,17 @@
substitutions:
name: boneio-esp32x10-switches
name: boneio-32-sw-06
friendly_name: 'BoneIO ESP 32x10 Switches'
esphome:
name: '${name}'
friendly_name: '${friendly_name}'
platform: ESP32
board: nodemcu-32s
name_add_mac_suffix: true
project:
name: boneio.32x10-lights_v0_5-v0_6
version: '1.0'
version: '0.6'
esp32:
board: nodemcu-32s
ethernet:
id: eth
@@ -22,13 +23,13 @@ ethernet:
power_pin: GPIO16
dashboard_import:
package_import_url: github://boneIO-eu/esphome/boneio-32x10_switches_v0_5-v0_6.yaml@v1.0.0
package_import_url: github://boneIO-eu/esphome/boneio-32x10_switches_v0_5-v0_6.yaml@v1.0.5
import_full_config: true
packages:
internals_packages:
url: https://github.com/boneIO-eu/esphome
ref: v1.0.0
ref: v1.0.5
files: [
'devices/buzzer.yaml',
'devices_v0_5-v0_6/display.yaml',
@@ -45,7 +46,6 @@ packages:
logger:
api:
ota:
password: boneio
web_server:
port: 80

View File

@@ -1,16 +1,17 @@
substitutions:
name: boneio-esp32x10-switches
name: boneio-32-sw-07
friendly_name: 'BoneIO ESP 32x10 Switches'
esphome:
name: '${name}'
friendly_name: '${friendly_name}'
platform: ESP32
board: nodemcu-32s
name_add_mac_suffix: true
project:
name: boneio.32x10-lights
version: '1.0'
version: '0.7'
esp32:
board: nodemcu-32s
ethernet:
id: eth
@@ -22,13 +23,13 @@ ethernet:
power_pin: GPIO16
dashboard_import:
package_import_url: github://boneIO-eu/esphome/boneio-32x10_switches_v0_7.yaml@v1.0.0
package_import_url: github://boneIO-eu/esphome/boneio-32x10_switches_v0_7.yaml@v1.0.5
import_full_config: true
packages:
internals_packages:
url: https://github.com/boneIO-eu/esphome
ref: v1.0.0
ref: v1.0.5
files: [
'devices/buzzer.yaml',
'devices_v0_7/display.yaml',
@@ -44,7 +45,6 @@ packages:
logger:
api:
ota:
password: boneio
web_server:
port: 80

View File

@@ -1,16 +1,17 @@
substitutions:
name: boneio-esp-cover-mix
name: boneio-cm-l-06
friendly_name: 'BoneIO ESP Cover Mix Lights'
esphome:
name: '${name}'
friendly_name: '${friendly_name}'
platform: ESP32
board: nodemcu-32s
name_add_mac_suffix: true
project:
name: boneio.32x10-cover-mix-lights_v0_5-v0_6
version: '1.0'
version: '0.6'
esp32:
board: nodemcu-32s
ethernet:
id: eth
@@ -22,13 +23,13 @@ ethernet:
power_pin: GPIO16
dashboard_import:
package_import_url: github://boneIO-eu/esphome/boneio-cover_mix_lights_v0_5-v0_6.yaml@v1.0.0
package_import_url: github://boneIO-eu/esphome/boneio-cover_mix_lights_v0_5-v0_6.yaml@v1.0.5
import_full_config: true
packages:
internals_packages:
url: https://github.com/boneIO-eu/esphome
ref: v1.0.0
ref: v1.0.5
files: [
'devices/buzzer.yaml',
'devices_v0_5-v0_6/display.yaml',
@@ -45,7 +46,6 @@ packages:
logger:
api:
ota:
password: boneio
web_server:
port: 80
@@ -181,10 +181,6 @@ cover:
- switch.turn_off: cover_close_08_out16
light:
- platform: binary
name: 'Light 16'
output: out_16
id: light_16
- platform: binary
name: 'Light 17'
output: out_17
@@ -249,6 +245,7 @@ light:
name: 'Light 32'
output: out_32
id: light_32
binary_sensor:
- platform: gpio
name: 'IN_01'
@@ -485,7 +482,10 @@ binary_sensor:
inverted: true
on_press:
then:
- light.toggle: light_15
- cover.open: cover_08
on_release:
then:
- cover.stop: cover_08
- platform: gpio
name: 'IN_16'
@@ -498,7 +498,10 @@ binary_sensor:
inverted: true
on_press:
then:
- light.toggle: light_16
- cover.close: cover_08
on_release:
then:
- cover.stop: cover_08
- platform: gpio
name: 'IN_17'

View File

@@ -1,16 +1,17 @@
substitutions:
name: boneio-esp-cover-mix
name: boneio-cm-l-07
friendly_name: 'BoneIO ESP Cover Mix Lights'
esphome:
name: '${name}'
friendly_name: '${friendly_name}'
platform: ESP32
board: nodemcu-32s
name_add_mac_suffix: true
project:
name: boneio.32x10-cover-mix-lights
version: '1.0'
version: '0.7'
esp32:
board: nodemcu-32s
ethernet:
id: eth
@@ -22,13 +23,13 @@ ethernet:
power_pin: GPIO16
dashboard_import:
package_import_url: github://boneIO-eu/esphome/boneio-cover_mix_lights_v0_7.yaml@v1.0.0
package_import_url: github://boneIO-eu/esphome/boneio-cover_mix_lights_v0_7.yaml@v1.0.5
import_full_config: true
packages:
internals_packages:
url: https://github.com/boneIO-eu/esphome
ref: v1.0.0
ref: v1.0.5
files: [
'devices/buzzer.yaml',
'devices_v0_7/display.yaml',
@@ -44,7 +45,6 @@ packages:
logger:
api:
ota:
password: boneio
web_server:
port: 80
@@ -177,10 +177,6 @@ cover:
- switch.turn_off: cover_close_08_out16
light:
- platform: binary
name: 'Light 16'
output: out_16
id: light_16
- platform: binary
name: 'Light 17'
output: out_17
@@ -245,6 +241,7 @@ light:
name: 'Light 32'
output: out_32
id: light_32
binary_sensor:
- platform: gpio
name: 'IN_01'
@@ -481,7 +478,10 @@ binary_sensor:
inverted: true
on_press:
then:
- light.toggle: light_15
- cover.open: cover_08
on_release:
then:
- cover.stop: cover_08
- platform: gpio
name: 'IN_16'
@@ -494,7 +494,10 @@ binary_sensor:
inverted: true
on_press:
then:
- light.toggle: light_16
- cover.close: cover_08
on_release:
then:
- cover.stop: cover_08
- platform: gpio
name: 'IN_17'

View File

@@ -1,16 +1,17 @@
substitutions:
name: boneio-esp-cover-mix
name: boneio-cm-sw-06
friendly_name: 'BoneIO ESP Cover Mix Switches'
esphome:
name: '${name}'
friendly_name: '${friendly_name}'
platform: ESP32
board: nodemcu-32s
name_add_mac_suffix: true
project:
name: boneio.32x10-cover-mix-switches_v0_5-v0_6
version: '1.0'
version: '0.6'
esp32:
board: nodemcu-32s
ethernet:
id: eth
@@ -22,13 +23,13 @@ ethernet:
power_pin: GPIO16
dashboard_import:
package_import_url: github://boneIO-eu/esphome/boneio-cover_mix_switches_v0_5-v0_6.yaml@v1.0.0
package_import_url: github://boneIO-eu/esphome/boneio-cover_mix_switches_v0_5-v0_6.yaml@v1.0.5
import_full_config: true
packages:
internals_packages:
url: https://github.com/boneIO-eu/esphome
ref: v1.0.0
ref: v1.0.5
files: [
'devices/buzzer.yaml',
'devices_v0_5-v0_6/display.yaml',
@@ -45,7 +46,6 @@ packages:
logger:
api:
ota:
password: boneio
web_server:
port: 80
@@ -181,10 +181,6 @@ cover:
- switch.turn_off: cover_close_08_out16
switch:
- platform: output
name: 'Switch 16'
output: out_16
id: switch_16
- platform: output
name: 'Switch 17'
output: out_17
@@ -485,7 +481,10 @@ binary_sensor:
inverted: true
on_press:
then:
- switch.toggle: switch_15
- cover.open: cover_08
on_release:
then:
- cover.stop: cover_08
- platform: gpio
name: 'IN_16'
@@ -498,7 +497,10 @@ binary_sensor:
inverted: true
on_press:
then:
- switch.toggle: switch_16
- cover.close: cover_08
on_release:
then:
- cover.stop: cover_08
- platform: gpio
name: 'IN_17'

View File

@@ -1,16 +1,17 @@
substitutions:
name: boneio-esp-cover-mix
name: boneio-cm-sw-07
friendly_name: 'BoneIO ESP Cover Mix Switches'
esphome:
name: '${name}'
friendly_name: '${friendly_name}'
platform: ESP32
board: nodemcu-32s
name_add_mac_suffix: true
project:
name: boneio.32x10-cover-mix-switches
version: '1.0'
version: '0.7'
esp32:
board: nodemcu-32s
ethernet:
id: eth
@@ -22,13 +23,13 @@ ethernet:
power_pin: GPIO16
dashboard_import:
package_import_url: github://boneIO-eu/esphome/boneio-cover_mix_switches_v0_7.yaml@v1.0.0
package_import_url: github://boneIO-eu/esphome/boneio-cover_mix_switches_v0_7.yaml@v1.0.5
import_full_config: true
packages:
internals_packages:
url: https://github.com/boneIO-eu/esphome
ref: v1.0.0
ref: v1.0.5
files: [
'devices/buzzer.yaml',
'devices_v0_7/display.yaml',
@@ -44,7 +45,6 @@ packages:
logger:
api:
ota:
password: boneio
web_server:
port: 80
@@ -177,10 +177,6 @@ cover:
- switch.turn_off: cover_close_08_out16
switch:
- platform: output
name: 'Switch 16'
output: out_16
id: switch_16
- platform: output
name: 'Switch 17'
output: out_17
@@ -245,6 +241,7 @@ switch:
name: 'Switch 32'
output: out_32
id: switch_32
binary_sensor:
- platform: gpio
name: 'IN_01'
@@ -481,7 +478,10 @@ binary_sensor:
inverted: true
on_press:
then:
- switch.toggle: switch_15
- cover.open: cover_08
on_release:
then:
- cover.stop: cover_08
- platform: gpio
name: 'IN_16'
@@ -494,7 +494,10 @@ binary_sensor:
inverted: true
on_press:
then:
- switch.toggle: switch_16
- cover.close: cover_08
on_release:
then:
- cover.stop: cover_08
- platform: gpio
name: 'IN_17'

View File

@@ -1,16 +1,17 @@
substitutions:
name: boneio-esp-covers
name: boneio-c-06
friendly_name: 'BoneIO ESP Cover'
esphome:
name: '${name}'
friendly_name: '${friendly_name}'
platform: ESP32
board: nodemcu-32s
name_add_mac_suffix: true
project:
name: boneio.32x10-cover_v0_5-v0_6
version: '1.0'
version: '0.6'
esp32:
board: nodemcu-32s
ethernet:
id: eth
@@ -22,13 +23,13 @@ ethernet:
power_pin: GPIO16
dashboard_import:
package_import_url: github://boneIO-eu/esphome/boneio-cover_v0_5-v0_6.yaml@v1.0.0
package_import_url: github://boneIO-eu/esphome/boneio-cover_v0_5-v0_6.yaml@v1.0.5
import_full_config: true
packages:
internals_packages:
url: https://github.com/boneIO-eu/esphome
ref: v1.0.0
ref: v1.0.5
files: [
'devices/buzzer.yaml',
'devices_v0_5-v0_6/display.yaml',
@@ -45,7 +46,6 @@ packages:
logger:
api:
ota:
password: boneio
web_server:
port: 80

View File

@@ -1,16 +1,17 @@
substitutions:
name: boneio-esp-covers
name: boneio-c-07
friendly_name: 'BoneIO ESP Cover'
esphome:
name: '${name}'
friendly_name: '${friendly_name}'
platform: ESP32
board: nodemcu-32s
name_add_mac_suffix: true
project:
name: boneio.32x10-cover
version: '1.0'
version: '0.7'
esp32:
board: nodemcu-32s
ethernet:
id: eth
@@ -22,13 +23,13 @@ ethernet:
power_pin: GPIO16
dashboard_import:
package_import_url: github://boneIO-eu/esphome/boneio-cover_v0_7.yaml@v1.0.0
package_import_url: github://boneIO-eu/esphome/boneio-cover_v0_7.yaml@v1.0.5
import_full_config: true
packages:
internals_packages:
url: https://github.com/boneIO-eu/esphome
ref: v1.0.0
ref: v1.0.5
files: [
'devices/buzzer.yaml',
'devices_v0_7/display.yaml',
@@ -44,7 +45,6 @@ packages:
logger:
api:
ota:
password: boneio
web_server:
port: 80

View File

@@ -0,0 +1,219 @@
substitutions:
name: boneio-dr-rgbw-03
friendly_name: 'BoneIO Dimmer LED'
esphome:
name: '${name}'
friendly_name: '${friendly_name}'
name_add_mac_suffix: true
project:
name: boneio.dimmer-led
version: '0.3'
esp32:
board: esp32dev
external_components:
- source: github://boneIO-eu/esphome-LM75@main #Original source and thank you note for BTomala https://github.com/boneIO-eu/esphome-lm75
components: [lm75]
packages:
internals_packages:
url: https://github.com/boneIO-eu/esphome
ref: v1.0.11
files:
[
'devices/dimmer_serial_no.yaml',
'devices/dimmer_i2c.yaml',
'devices/dimmer_ina219.yaml',
]
ethernet:
id: eth
type: LAN8720
mdc_pin: GPIO23
mdio_pin: GPIO18
clk_mode: GPIO0_IN
phy_addr: 1
power_pin: GPIO16
dashboard_import:
package_import_url: github://boneIO-eu/esphome/boneio-dimmer_2rgbw-v0_3.yaml@v1.0.11
import_full_config: true
pcf8574:
- id: 'pcf_inputs'
address: 0x38
logger:
api:
ota:
web_server:
port: 80
local: true
text_sensor:
- platform: version
name: 'boneio-dimmer- Version'
icon: mdi:cube-outline
entity_category: diagnostic
- platform: ethernet_info
ip_address:
entity_category: diagnostic
name: boneio-dimmer IP
- platform: template
name: 'Hostname'
id: hostname
entity_category: diagnostic
lambda: |-
return id(eth).get_use_address();
update_interval: 5min
binary_sensor:
- platform: gpio
name: 'IN_01'
pin:
pcf8574: pcf_inputs
number: 1
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_02'
pin:
pcf8574: pcf_inputs
number: 2
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_03'
pin:
pcf8574: pcf_inputs
number: 3
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_04'
pin:
pcf8574: pcf_inputs
number: 4
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_05'
pin:
number: 36
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_06'
pin:
number: 39
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_07'
pin:
number: 34
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_08'
pin:
number: 35
mode:
input: true
inverted: true
output:
- platform: ledc
pin: 33
frequency: 1000Hz
inverted: false
id: chl01
- platform: ledc
pin: 32
frequency: 1000Hz
inverted: false
id: chl02
- platform: ledc
pin: 12
frequency: 1000Hz
inverted: false
id: chl03
- platform: ledc
pin: 14
frequency: 1000Hz
inverted: false
id: chl04
- platform: ledc
pin: 13
frequency: 1000Hz
inverted: false
id: chr01
- platform: ledc
pin: 15
frequency: 1000Hz
inverted: false
id: chr02
- platform: ledc
pin: 2
frequency: 1000Hz
inverted: false
id: chr03
- platform: ledc
pin: 17
frequency: 1000Hz
inverted: false
id: chr04
light:
- platform: rgbw
name: 'RGBW L'
red: chl01
green: chl02
blue: chl03
white: chl04
default_transition_length: 2s
gamma_correct: 0
- platform: rgbw
name: 'RGBW R'
red: chr01
green: chr02
blue: chr03
white: chr04
default_transition_length: 2s
gamma_correct: 0
sensor:
- platform: lm75
id: boneIO_temp
name: 'Temperature'
update_interval: 30s
entity_category: diagnostic
on_value_range:
- above: 70.0
then:
- switch.turn_on: buzzer
- below: 70.0
then:
- switch.turn_off: buzzer
switch:
- platform: gpio
id: buzzer
name: 'Buzzer'
pin:
pcf8574: pcf_inputs
number: 0
mode:
output: true
inverted: true

View File

@@ -0,0 +1,229 @@
substitutions:
name: boneio-dr-4cct-03
friendly_name: 'BoneIO Dimmer LED'
esphome:
name: '${name}'
friendly_name: '${friendly_name}'
name_add_mac_suffix: true
project:
name: boneio.dimmer-led
version: '0.3'
esp32:
board: esp32dev
external_components:
- source: github://boneIO-eu/esphome-LM75@main #Original source and thank you note for BTomala https://github.com/boneIO-eu/esphome-lm75
components: [lm75]
packages:
internals_packages:
url: https://github.com/boneIO-eu/esphome
ref: v1.0.11
files:
[
'devices/dimmer_serial_no.yaml',
'devices/dimmer_i2c.yaml',
'devices/dimmer_ina219.yaml',
]
ethernet:
id: eth
type: LAN8720
mdc_pin: GPIO23
mdio_pin: GPIO18
clk_mode: GPIO0_IN
phy_addr: 1
power_pin: GPIO16
dashboard_import:
package_import_url: github://boneIO-eu/esphome/boneio-dimmer_4cct-v0_3.yaml@v1.0.11
import_full_config: true
pcf8574:
- id: 'pcf_inputs'
address: 0x38
logger:
api:
ota:
web_server:
port: 80
local: true
text_sensor:
- platform: version
name: 'boneio-dimmer- Version'
icon: mdi:cube-outline
entity_category: diagnostic
- platform: ethernet_info
ip_address:
entity_category: diagnostic
name: boneio-dimmer IP
- platform: template
name: 'Hostname'
id: hostname
entity_category: diagnostic
lambda: |-
return id(eth).get_use_address();
update_interval: 5min
binary_sensor:
- platform: gpio
name: 'IN_01'
pin:
pcf8574: pcf_inputs
number: 1
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_02'
pin:
pcf8574: pcf_inputs
number: 2
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_03'
pin:
pcf8574: pcf_inputs
number: 3
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_04'
pin:
pcf8574: pcf_inputs
number: 4
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_05'
pin:
number: 36
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_06'
pin:
number: 39
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_07'
pin:
number: 34
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_08'
pin:
number: 35
mode:
input: true
inverted: true
output:
- platform: ledc
pin: 33
frequency: 1000Hz
inverted: false
id: chl01
- platform: ledc
pin: 32
frequency: 1000Hz
inverted: false
id: chl02
- platform: ledc
pin: 12
frequency: 1000Hz
inverted: false
id: chl03
- platform: ledc
pin: 14
frequency: 1000Hz
inverted: false
id: chl04
- platform: ledc
pin: 13
frequency: 1000Hz
inverted: false
id: chr01
- platform: ledc
pin: 15
frequency: 1000Hz
inverted: false
id: chr02
- platform: ledc
pin: 2
frequency: 1000Hz
inverted: false
id: chr03
- platform: ledc
pin: 17
frequency: 1000Hz
inverted: false
id: chr04
light:
- platform: cwww
name: 'CHL_01_02'
cold_white: chl01
warm_white: chl02
cold_white_color_temperature: 6536 K
warm_white_color_temperature: 2000 K
- platform: cwww
name: 'CHL_03_04'
cold_white: chl03
warm_white: chl04
cold_white_color_temperature: 6536 K
warm_white_color_temperature: 2000 K
- platform: cwww
name: 'CHR_01_02'
cold_white: chl01
warm_white: chl02
cold_white_color_temperature: 6536 K
warm_white_color_temperature: 2000 K
- platform: cwww
name: 'CHR_03_04'
cold_white: chl03
warm_white: chl04
cold_white_color_temperature: 6536 K
warm_white_color_temperature: 2000 K
sensor:
- platform: lm75
id: boneIO_temp
name: 'Temperature'
update_interval: 30s
entity_category: diagnostic
on_value_range:
- above: 70.0
then:
- switch.turn_on: buzzer
- below: 70.0
then:
- switch.turn_off: buzzer
switch:
- platform: gpio
id: buzzer
name: 'Buzzer'
pin:
pcf8574: pcf_inputs
number: 0
mode:
output: true
inverted: true

252
boneio-dimmer_8ch-v0_3.yaml Normal file
View File

@@ -0,0 +1,252 @@
substitutions:
name: boneio-dr-8ch-03
friendly_name: 'BoneIO Dimmer LED'
esphome:
name: '${name}'
friendly_name: '${friendly_name}'
name_add_mac_suffix: true
project:
name: boneio.dimmer-led
version: '0.3'
esp32:
board: esp32dev
external_components:
- source: github://boneIO-eu/esphome-LM75@main #Original source and thank you note for BTomala https://github.com/boneIO-eu/esphome-lm75
components: [lm75]
packages:
internals_packages:
url: https://github.com/boneIO-eu/esphome
ref: v1.0.11
files:
[
'devices/dimmer_serial_no.yaml',
'devices/dimmer_i2c.yaml',
'devices/dimmer_ina219.yaml',
]
ethernet:
id: eth
type: LAN8720
mdc_pin: GPIO23
mdio_pin: GPIO18
clk_mode: GPIO0_IN
phy_addr: 1
power_pin: GPIO16
dashboard_import:
package_import_url: github://boneIO-eu/esphome/boneio-dimmer_8ch-v0_3.yaml@v1.0.11
import_full_config: true
pcf8574:
- id: 'pcf_inputs'
address: 0x38
logger:
api:
ota:
web_server:
port: 80
local: true
text_sensor:
- platform: version
name: 'boneio-dimmer- Version'
icon: mdi:cube-outline
entity_category: diagnostic
- platform: ethernet_info
ip_address:
entity_category: diagnostic
name: boneio-dimmer IP
- platform: template
name: 'Hostname'
id: hostname
entity_category: diagnostic
lambda: |-
return id(eth).get_use_address();
update_interval: 5min
binary_sensor:
- platform: gpio
name: 'IN_01'
pin:
pcf8574: pcf_inputs
number: 1
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_02'
pin:
pcf8574: pcf_inputs
number: 2
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_03'
pin:
pcf8574: pcf_inputs
number: 3
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_04'
pin:
pcf8574: pcf_inputs
number: 4
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_05'
pin:
number: 36
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_06'
pin:
number: 39
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_07'
pin:
number: 34
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_08'
pin:
number: 35
mode:
input: true
inverted: true
output:
- platform: ledc
pin: 33
frequency: 1000Hz
inverted: false
id: chl01
- platform: ledc
pin: 32
frequency: 1000Hz
inverted: false
id: chl02
- platform: ledc
pin: 12
frequency: 1000Hz
inverted: false
id: chl03
- platform: ledc
pin: 14
frequency: 1000Hz
inverted: false
id: chl04
- platform: ledc
pin: 13
frequency: 1000Hz
inverted: false
id: chr01
- platform: ledc
pin: 15
frequency: 1000Hz
inverted: false
id: chr02
- platform: ledc
pin: 2
frequency: 1000Hz
inverted: false
id: chr03
- platform: ledc
pin: 17
frequency: 1000Hz
inverted: false
id: chr04
light:
- platform: monochromatic
output: chl01
name: 'CHL 01'
id: chl_01
default_transition_length: 2s
gamma_correct: 0
- platform: monochromatic
output: chl02
name: 'CHL 02'
id: chl_02
default_transition_length: 2s
gamma_correct: 0
- platform: monochromatic
output: chl03
name: 'CHL 03'
id: chl_03
default_transition_length: 2s
gamma_correct: 0
- platform: monochromatic
output: chl04
name: 'CHL 04'
id: chl_04
default_transition_length: 2s
gamma_correct: 0
- platform: monochromatic
output: chr01
name: 'CHR 01'
id: chr_01
default_transition_length: 2s
gamma_correct: 0
- platform: monochromatic
output: chr02
name: 'CHR 02'
id: chr_02
default_transition_length: 2s
gamma_correct: 0
- platform: monochromatic
output: chr03
name: 'CHR 03'
id: chr_03
default_transition_length: 2s
gamma_correct: 0
- platform: monochromatic
output: chr04
name: 'CHR 04'
id: chr_04
default_transition_length: 2s
gamma_correct: 0
sensor:
- platform: lm75
id: boneIO_temp
name: 'Temperature'
update_interval: 30s
entity_category: diagnostic
on_value_range:
- above: 70.0
then:
- switch.turn_on: buzzer
- below: 70.0
then:
- switch.turn_off: buzzer
switch:
- platform: gpio
id: buzzer
name: 'Buzzer'
pin:
pcf8574: pcf_inputs
number: 0
mode:
output: true
inverted: true

74
create_firmware.py Normal file
View File

@@ -0,0 +1,74 @@
#!/usr/bin/python
import subprocess
import glob
import os
import re
import json
import shutil
from pathlib import Path
home = str(Path.home())
cwd = os.getcwd()
pattern = r"name:\s*(\S+)"
json_destination = "../website/public/esp"
firmware_destination = "../website/public/esp/firmware"
def json_pattern(firmware_name):
return {
"name": "ESPHome",
"version": "2024.5.0",
"home_assistant_domain": "esphome",
"funding_url": "https://esphome.io/guides/supporters.html",
"new_install_prompt_erase": False,
"builds": [
{
"chipFamily": "ESP32",
"parts": [
{
"path": f"/esp/firmware/{firmware_name}.bin",
"offset": 0,
}
],
}
],
}
def get_boneio_name(file):
with open(file) as f:
next(f)
name = next(f)
match = re.search(pattern, name)
if match:
extracted_text = match.group(1)
return extracted_text
return None
for file in glob.glob("*.yaml"):
filename = get_boneio_name(file)
if not filename:
print("No file found.")
break
firmware_path = f"{cwd}/.esphome/build/{filename}/.pioenvs/{filename}/firmware-factory.bin"
print("CWD", cwd)
subprocess.run(
f'docker run --rm -p 6052:6052 -v "{cwd}":/config -it ghcr.io/esphome/esphome compile {file}',
shell=True,
)
shutil.copyfile(firmware_path, f"{firmware_destination}/{filename}.bin")
with open(
f"{json_destination}/{filename}.json", "w", encoding="utf-8"
) as f:
json.dump(
json_pattern(firmware_name=filename),
f,
ensure_ascii=False,
indent=4,
)

5
devices/dimmer_i2c.yaml Normal file
View File

@@ -0,0 +1,5 @@
i2c:
sda: GPIO4
scl: GPIO5
scan: True
frequency: 400kHz

View File

@@ -0,0 +1,35 @@
sensor:
- platform: ina219
address: 0x40
shunt_resistance: 0.005 ohm
bus_voltage:
name: 'VDDL Supply'
unit_of_measurement: 'V'
entity_category: diagnostic
current:
name: 'VDDL Current'
unit_of_measurement: 'A'
entity_category: diagnostic
shunt_voltage:
name: 'VDDL Shunt Voltage'
entity_category: diagnostic
max_voltage: 32V
max_current: 10A
update_interval: 5s
- platform: ina219
address: 0x41
shunt_resistance: 0.005 ohm
bus_voltage:
name: 'VDDR Supply'
unit_of_measurement: 'V'
entity_category: diagnostic
current:
name: 'VDDR Current'
unit_of_measurement: 'A'
entity_category: diagnostic
shunt_voltage:
name: 'VDDR Shunt Voltage'
entity_category: diagnostic
max_voltage: 32V
max_current: 10A
update_interval: 5s

View File

@@ -0,0 +1,42 @@
output:
- platform: ledc
pin: 33
frequency: 1000Hz
inverted: false
id: chl01
- platform: ledc
pin: 32
frequency: 1000Hz
inverted: false
id: chl02
- platform: ledc
pin: 12
frequency: 1000Hz
inverted: false
id: chl03
- platform: ledc
pin: 14
frequency: 1000Hz
inverted: false
id: chl04
- platform: ledc
pin: 13
frequency: 1000Hz
inverted: false
id: chr01
- platform: ledc
pin: 15
frequency: 1000Hz
inverted: false
id: chr02
- platform: ledc
pin: 2
frequency: 1000Hz
inverted: false
id: chr03
- platform: ledc
pin: 17
frequency: 1000Hz
inverted: false
id: chr04

View File

@@ -0,0 +1,9 @@
text_sensor:
- platform: template
name: 'Serial No.'
lambda: |-
std::string mac = get_mac_address();
return "dim" + mac.erase(0, mac.length()/2);
icon: mdi:expansion-card-variant
entity_category: diagnostic
update_interval: 10min

View File

@@ -0,0 +1,20 @@
pcf8574:
- id: 'pcf_inputs_1to14'
i2c_id: bus_a
address: 0x20
pcf8575: true
- id: 'pcf_inputs_15to28'
i2c_id: bus_a
address: 0x21
pcf8575: true
- id: 'pcf_inputs_28to35_menu'
i2c_id: bus_a
address: 0x22
pcf8575: false
mcp23017:
- id: 'mcp_left'
address: 0x21
i2c_id: bus_b
- id: 'mcp_right'
address: 0x20
i2c_id: bus_b

View File

@@ -7,7 +7,7 @@ sensor:
on_raw_value:
then:
- text_sensor.template.publish:
7 id: wt32_uptime
id: wt32_uptime
state: !lambda |-
int seconds = round(id(wt32_uptime_seconds).raw_state);
int days = seconds / (24 * 3600);
@@ -101,8 +101,6 @@ display:
lambda: |-
it.rectangle(0, 0, 126, 15);
it.printf(64,11, id(size_10), TextAlign::BASELINE_CENTER, "bone IO");
it.printf(4, 25, id(dejaVuSmall), TextAlign::BASELINE_LEFT ,"Current:");
it.printf(124, 25, id(dejaVuSmall), TextAlign::BASELINE_RIGHT ,"%.3fA", id(ina_current).state);
it.printf(4, 37, id(size_10), TextAlign::BASELINE_LEFT ,"IP addr:");
it.printf(124, 37, id(size_10), TextAlign::BASELINE_RIGHT ,"%s", id(ip_address).state.c_str());
it.printf(4, 49, id(size_10), TextAlign::BASELINE_LEFT ,"Uptime:");