diff --git a/boneio-dimmer_8ch-v0_4.yaml b/boneio-dimmer_8ch-v0_4.yaml new file mode 100644 index 0000000..1dc3a42 --- /dev/null +++ b/boneio-dimmer_8ch-v0_4.yaml @@ -0,0 +1,387 @@ +substitutions: + name: boneio-dr-8ch-04 + friendly_name: 'BoneIO Dimmer LED' + serial_prefix: 'dim' #Don't change it. + +esphome: + name: '${name}' + friendly_name: '${friendly_name}' + name_add_mac_suffix: true + project: + name: boneio.dimmer-led + version: '0.4' + +esp32: + board: esp32-s3-devkitc-1 + +ethernet: + id: eth + type: W5500 + clk_pin: GPIO12 + mosi_pin: GPIO14 + miso_pin: GPIO13 + cs_pin: GPIO39 + interrupt_pin: GPIO21 + reset_pin: GPIO38 + +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] + +i2c: + sda: GPIO11 + scl: GPIO10 + scan: True + frequency: 400kHz + +uart: + id: uart_pin8_9 + rx_pin: GPIO8 + tx_pin: GPIO9 + baud_rate: 9600 + stop_bits: 1 + +output: + - platform: ledc + pin: GPIO4 + frequency: 1000Hz + inverted: false + id: chl01 + - platform: ledc + pin: GPIO5 + frequency: 1000Hz + inverted: false + id: chl02 + - platform: ledc + pin: GPIO6 + frequency: 1000Hz + inverted: false + id: chl03 + - platform: ledc + pin: GPIO7 + frequency: 1000Hz + inverted: false + id: chl04 + + - platform: ledc + pin: GPIO15 + frequency: 1000Hz + inverted: false + id: chr01 + - platform: ledc + pin: GPIO16 + frequency: 1000Hz + inverted: false + id: chr02 + - platform: ledc + pin: GPIO17 + frequency: 1000Hz + inverted: false + id: chr03 + - platform: ledc + pin: GPIO18 + frequency: 1000Hz + inverted: false + id: chr04 + + ##CAN gpio1 - tx, gpio2 rx + +modbus: + send_wait_time: 200ms + uart_id: uart_pin8_9 + id: boneio_modbus + +packages: + internals_packages: + url: https://github.com/boneIO-eu/esphome + ref: v1.5.0 + files: [ + 'devices/serial_no.yaml', + # 'devices/dimmer_i2c.yaml', + # 'devices/dimmer_ina219.yaml', + # 'boards/dimmer_output.yaml', + ] + +# dashboard_import: +# package_import_url: github://boneIO-eu/esphome/boneio-dimmer_8ch-v0_3.yaml@latest +# import_full_config: true + +pcf8574: + - id: 'pcf_inputs' + address: 0x38 + +logger: +api: + reboot_timeout: 0s +ota: + - platform: esphome + +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' + id: in_01 + pin: + pcf8574: pcf_inputs + number: 0 + mode: + input: true + inverted: true + + - platform: gpio + name: 'IN_02' + id: in_02 + pin: + pcf8574: pcf_inputs + number: 1 + mode: + input: true + inverted: true + + - platform: gpio + name: 'IN_03' + id: in_03 + pin: + pcf8574: pcf_inputs + number: 2 + mode: + input: true + inverted: true + + - platform: gpio + name: 'IN_04' + id: in_04 + pin: + pcf8574: pcf_inputs + number: 3 + mode: + input: true + inverted: true + + - platform: gpio + name: 'IN_05' + id: in_05 + pin: + pcf8574: pcf_inputs + number: 4 + mode: + input: true + inverted: true + + - platform: gpio + name: 'IN_06' + id: in_06 + pin: + pcf8574: pcf_inputs + number: 5 + mode: + input: true + inverted: true + + - platform: gpio + name: 'IN_07' + id: in_07 + pin: + pcf8574: pcf_inputs + number: 6 + mode: + input: true + inverted: true + + - platform: gpio + name: 'IN_08' + id: in_08 + pin: + pcf8574: pcf_inputs + number: 7 + mode: + input: true + inverted: true + - platform: template + name: CAN Bus Button + id: can_bus_button + +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 + - platform: max9611 + shunt_resistance: 0.005 ohm + gain: '1X' + voltage: + name: CHL Voltage + current: + name: CHLCurrent + power: + name: CHL Watts + temperature: + name: CHL Temperature + address: 0x70 + update_interval: 10s + + - platform: max9611 + shunt_resistance: 0.005 ohm + gain: '1X' + voltage: + name: CHR Voltage + current: + name: CHR Current + power: + name: CHR Watts + temperature: + name: CHR Temperature + address: 0x73 + update_interval: 10s + - platform: modbus_controller + modbus_controller_id: sht20 + name: 'Temperature' + register_type: read + address: 1 + unit_of_measurement: '°C' + device_class: 'temperature' + state_class: 'measurement' + value_type: S_WORD + accuracy_decimals: 2 + filters: + - multiply: 0.1 + - platform: modbus_controller + modbus_controller_id: sht20 + name: 'Humidity' + register_type: read + address: 2 + unit_of_measurement: '%' + device_class: 'humidity' + state_class: 'measurement' + value_type: S_WORD + accuracy_decimals: 2 + filters: + - multiply: 0.1 + +switch: + - platform: gpio + id: buzzer + name: 'Buzzer' + pin: + number: GPIO42 + mode: + output: true + inverted: true + +modbus_controller: + - id: sht20 + address: 62 + modbus_id: boneio_modbus + setup_priority: -10 + update_interval: 20s + +canbus: + - platform: esp32_can + tx_pin: GPIO01 + rx_pin: GPIO02 + can_id: 4 + bit_rate: 50kbps + on_frame: + - can_id: 5 + then: + - lambda: |- + if(x.size() > 0) { + switch(x[0]) { + case 0x12: // button release + id(can_bus_button).publish_state(false); + break; + case 0x11: // button press + id(can_bus_button).publish_state(true); + break; + } + } +button: + - platform: template + name: 'CAN Sensor ON' + on_press: + - logger.log: Button Pressed + - canbus.send: [0x11, 0x22, 0x33] + - platform: template + name: 'CAN Sensor OFF' + on_press: + - logger.log: Button Pressed + - canbus.send: [0x12, 0x22, 0x33] diff --git a/boneio-32x10_lights_v0_9.yaml b/dev-boneio-32x10_lights_v0_9.yaml similarity index 86% rename from boneio-32x10_lights_v0_9.yaml rename to dev-boneio-32x10_lights_v0_9.yaml index b37c9b8..7fd6623 100644 --- a/boneio-32x10_lights_v0_9.yaml +++ b/dev-boneio-32x10_lights_v0_9.yaml @@ -9,7 +9,7 @@ esphome: name_add_mac_suffix: true project: name: boneio.32x10-lights - version: '0.9' + version: 'dev0.9' esp32: board: nodemcu-32s @@ -63,6 +63,9 @@ api: reboot_timeout: 0s ota: - platform: esphome + - platform: http_request + name: Firmware Update + source: https://boneio.eu/esp/ web_server: port: 80 @@ -646,25 +649,85 @@ binary_sensor: mode: input: true inverted: true + - platform: template + name: CAN Bus Button + id: can_bus_button ###################### ### MODBUS SECTION ### ###################### # UNCOMMENT BELOW TO USE MODBUS -# uart: -# id: uart_pin14_15 -# rx_pin: GPIO14 -# tx_pin: GPIO15 -# baud_rate: 9600 -# stop_bits: 1 +uart: + id: uart_pin14_15 + rx_pin: GPIO14 + tx_pin: GPIO15 + baud_rate: 9600 + stop_bits: 1 -# modbus: -# send_wait_time: 200ms -# uart_id: uart_pin14_15 -# id: boneio_modbus +modbus: + send_wait_time: 200ms + uart_id: uart_pin14_15 + id: boneio_modbus -# modbus_controller: -# - id: YOURDEVICE ID -# address: 0x09 -# modbus_id: mod_bus -# setup_priority: -10 -# update_interval: 60s +modbus_controller: + - id: sht20 + address: 62 + modbus_id: boneio_modbus + setup_priority: -10 + update_interval: 20s +sensor: + - platform: modbus_controller + modbus_controller_id: sht20 + name: 'Temperature' + register_type: read + address: 1 + unit_of_measurement: '°C' + device_class: 'temperature' + state_class: 'measurement' + value_type: S_WORD + accuracy_decimals: 2 + filters: + - multiply: 0.1 + - platform: modbus_controller + modbus_controller_id: sht20 + name: 'Humidity' + register_type: read + address: 2 + unit_of_measurement: '%' + device_class: 'humidity' + state_class: 'measurement' + value_type: S_WORD + accuracy_decimals: 2 + filters: + - multiply: 0.1 + +canbus: + - platform: esp32_can + tx_pin: GPIO05 + rx_pin: GPIO04 + can_id: 5 + bit_rate: 50kbps + on_frame: + - can_id: 4 + then: + - lambda: |- + if(x.size() > 0) { + switch(x[0]) { + case 0x12: // button release + id(can_bus_button).publish_state(false); + break; + case 0x11: // button press + id(can_bus_button).publish_state(true); + break; + } + } +button: + - platform: template + name: 'CAN Sensor ON' + on_press: + - logger.log: Button Pressed + - canbus.send: [0x11, 0x22, 0x33] + - platform: template + name: 'CAN Sensor OFF' + on_press: + - logger.log: Button Pressed + - canbus.send: [0x12, 0x22, 0x33] diff --git a/dimmer-dev1.yaml b/dimmer-dev1.yaml new file mode 100644 index 0000000..2a6acfe --- /dev/null +++ b/dimmer-dev1.yaml @@ -0,0 +1,308 @@ +substitutions: + name: boneio-dev01 + friendly_name: 'BoneIO Dimmer dev0.1' + serial_prefix: 'dim' #Don't change it. + +esphome: + name: '${name}' + friendly_name: '${friendly_name}' + name_add_mac_suffix: false + project: + name: boneio.dimmer-led + version: 'dev0.1' + +esp32: + board: esp32-s3-devkitc-1 + + +ethernet: + id: eth + type: W5500 + clk_pin: GPIO14 + mosi_pin: GPIO12 + miso_pin: GPIO13 + cs_pin: GPIO21 + interrupt_pin: GPIO38 + reset_pin: GPIO39 + + # Enable fallback hotspot (captive portal) in case wifi connection fails + +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] + +i2c: + sda: GPIO10 + scl: GPIO11 + scan: True + frequency: 400kHz + +uart: + id: uart_pin + rx_pin: GPIO48 + tx_pin: GPIO47 + baud_rate: 9600 + stop_bits: 1 + +output: + - platform: ledc + pin: GPIO18 + frequency: 1000Hz + inverted: false + id: chl01 + - platform: ledc + pin: GPIO17 + frequency: 1000Hz + inverted: false + id: chl02 + - platform: ledc + pin: GPIO16 + frequency: 1000Hz + inverted: false + id: chl03 + - platform: ledc + pin: GPIO15 + frequency: 1000Hz + inverted: false + id: chl04 + + - platform: ledc + pin: GPIO7 + frequency: 1000Hz + inverted: false + id: chr01 + - platform: ledc + pin: GPIO6 + frequency: 1000Hz + inverted: false + id: chr02 + - platform: ledc + pin: GPIO5 + frequency: 1000Hz + inverted: false + id: chr03 + - platform: ledc + pin: GPIO4 + frequency: 1000Hz + inverted: false + id: chr04 + + ##CAN gpio1 - tx, gpio2 rx + +# modbus: +# send_wait_time: 200ms +# uart_id: uart_pin8_9 +# id: boneio_modbus + +packages: + internals_packages: + url: https://github.com/boneIO-eu/esphome + ref: v1.5.0 + files: [ + 'devices/serial_no.yaml', + # 'devices/dimmer_i2c.yaml', + #'devices/dimmer_ina219.yaml', + ] + +# dashboard_import: +# package_import_url: github://boneIO-eu/esphome/boneio-dimmer_8ch-v0_3.yaml@latest +# import_full_config: true + +pcf8574: + - id: 'pcf_inputs' + address: 0x38 + +logger: +api: + reboot_timeout: 0s +ota: + - platform: esphome + +web_server: + port: 80 + local: true + + +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 + + - platform: max9611 + shunt_resistance: 0.005 ohm + gain: '1X' + voltage: + name: CHL Voltage + current: + name: CHLCurrent + power: + name: CHL Watts + temperature: + name: CHL Temperature + address: 0x70 + update_interval: 10s + + - platform: max9611 + shunt_resistance: 0.005 ohm + gain: '1X' + voltage: + name: CHR Voltage + current: + name: CHR Current + power: + name: CHR Watts + temperature: + name: CHR Temperature + address: 0x73 + update_interval: 10s +switch: + - platform: gpio + id: buzzer + name: 'Buzzer' + pin: + number: GPIO42 + mode: + output: true + inverted: false + +binary_sensor: + - platform: gpio + name: 'IN_01' + id: in_01 + pin: + pcf8574: pcf_inputs + number: 0 + mode: + input: true + inverted: true + + - platform: gpio + name: 'IN_02' + id: in_02 + pin: + pcf8574: pcf_inputs + number: 1 + mode: + input: true + inverted: true + + - platform: gpio + name: 'IN_03' + id: in_03 + pin: + pcf8574: pcf_inputs + number: 2 + mode: + input: true + inverted: true + + - platform: gpio + name: 'IN_04' + id: in_04 + pin: + pcf8574: pcf_inputs + number: 3 + mode: + input: true + inverted: true + + - platform: gpio + name: 'IN_05' + id: in_05 + pin: + pcf8574: pcf_inputs + number: 4 + mode: + input: true + inverted: true + + - platform: gpio + name: 'IN_06' + id: in_06 + pin: + pcf8574: pcf_inputs + number: 5 + mode: + input: true + inverted: true + + - platform: gpio + name: 'IN_07' + id: in_07 + pin: + pcf8574: pcf_inputs + number: 6 + mode: + input: true + inverted: true + + - platform: gpio + name: 'IN_08' + id: in_08 + pin: + pcf8574: pcf_inputs + number: 7 + mode: + input: true + inverted: true + \ No newline at end of file diff --git a/dimmer-dev2.yaml b/dimmer-dev2.yaml new file mode 100644 index 0000000..d2de43b --- /dev/null +++ b/dimmer-dev2.yaml @@ -0,0 +1,289 @@ +substitutions: + name: boneio-dev02 + friendly_name: 'BoneIO Dimmer dev0.2' + serial_prefix: 'dim' #Don't change it. + +esphome: + name: '${name}' + friendly_name: '${friendly_name}' + name_add_mac_suffix: false + project: + name: boneio.dimmer-led + version: 'dev0.2' + +esp32: + board: esp32-s3-devkitc-1 + + +ethernet: + id: eth + type: W5500 + clk_pin: GPIO12 + mosi_pin: GPIO39 + miso_pin: GPIO38 + cs_pin: GPIO13 + interrupt_pin: GPIO2 + reset_pin: GPIO1 + # Enable fallback hotspot (captive portal) in case wifi connection fails + +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] + +i2c: + sda: GPIO10 + scl: GPIO11 + scan: True + frequency: 400kHz + +uart: + id: uart_pin + rx_pin: GPIO14 + tx_pin: GPIO21 + baud_rate: 9600 + stop_bits: 1 + +output: + - platform: ledc + pin: GPIO18 + frequency: 1000Hz + inverted: false + id: chl01 + - platform: ledc + pin: GPIO17 + frequency: 1000Hz + inverted: false + id: chl02 + - platform: ledc + pin: GPIO16 + frequency: 1000Hz + inverted: false + id: chl03 + - platform: ledc + pin: GPIO15 + frequency: 1000Hz + inverted: false + id: chl04 + + - platform: ledc + pin: GPIO7 + frequency: 1000Hz + inverted: false + id: chr01 + - platform: ledc + pin: GPIO6 + frequency: 1000Hz + inverted: false + id: chr02 + - platform: ledc + pin: GPIO5 + frequency: 1000Hz + inverted: false + id: chr03 + - platform: ledc + pin: GPIO4 + frequency: 1000Hz + inverted: false + id: chr04 + + ##CAN gpio1 - tx, gpio2 rx + +# modbus: +# send_wait_time: 200ms +# uart_id: uart_pin8_9 +# id: boneio_modbus + +packages: + internals_packages: + url: https://github.com/boneIO-eu/esphome + ref: v1.5.0 + files: [ + 'devices/serial_no.yaml', + # 'devices/dimmer_i2c.yaml', + ] + +# dashboard_import: +# package_import_url: github://boneIO-eu/esphome/boneio-dimmer_8ch-v0_3.yaml@latest +# import_full_config: true + +pcf8574: + - id: 'pcf_inputs' + address: 0x38 + +logger: +api: + reboot_timeout: 0s +ota: + - platform: esphome + +web_server: + port: 80 + local: true + + +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 + +debug: + update_interval: 15s + +sensor: + - platform: debug + free: + name: "Heap Free" + block: + name: "Heap Max Block" + loop_time: + name: "Loop Time" + - 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: + number: GPIO9 + mode: + output: true + inverted: false + +binary_sensor: + - platform: gpio + name: 'IN_01' + id: in_01 + pin: + pcf8574: pcf_inputs + number: 0 + mode: + input: true + inverted: true + + - platform: gpio + name: 'IN_02' + id: in_02 + pin: + pcf8574: pcf_inputs + number: 1 + mode: + input: true + inverted: true + + - platform: gpio + name: 'IN_03' + id: in_03 + pin: + pcf8574: pcf_inputs + number: 2 + mode: + input: true + inverted: true + + - platform: gpio + name: 'IN_04' + id: in_04 + pin: + pcf8574: pcf_inputs + number: 3 + mode: + input: true + inverted: true + + - platform: gpio + name: 'IN_05' + id: in_05 + pin: + pcf8574: pcf_inputs + number: 4 + mode: + input: true + inverted: true + + - platform: gpio + name: 'IN_06' + id: in_06 + pin: + pcf8574: pcf_inputs + number: 5 + mode: + input: true + inverted: true + + - platform: gpio + name: 'IN_07' + id: in_07 + pin: + pcf8574: pcf_inputs + number: 6 + mode: + input: true + inverted: true + + - platform: gpio + name: 'IN_08' + id: in_08 + pin: + pcf8574: pcf_inputs + number: 7 + mode: + input: true + inverted: true + \ No newline at end of file