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.7.1 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 - platform: web_server 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: 'MTemperature' 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: 'MHumidity' 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]