Files
Fabula/esphome/fabula.yaml
2025-12-03 00:35:27 +01:00

155 lines
2.9 KiB
YAML

# ---------------------- Global config ----------------------
esphome:
name: fabula
esp8266:
board: d1_mini_lite
# Enable logging
logger:
ota:
- platform: esphome
password: ""
wifi:
ssid: "Pew"
password: "SediaChinita@Terrazzo2017"
# ---------------------- PN532 NFC Reader ----------------------
i2c:
# I2C config left to default. For ESP8266 is:
# GPIO5 (D1) -> I2C SCL
# GPIO4 (D2) -> I2C SDA
pn532_i2c:
update_interval: 1s
on_tag:
then:
- logger.log: "TROVATO TAG!!!!"
- dfplayer.play_folder:
folder: !lambda 'return 1;'
file: !lambda 'return 1;'
on_tag_removed:
then:
- logger.log: "RIMOSSO TAG!!!!"
- dfplayer.pause
binary_sensor:
- platform: pn532
uid: 74-10-37-94
name: "PN532 NFC Tag"
# ---------------------- DFPlayer MP3 Player ----------------------
uart:
tx_pin: D8
rx_pin: D7
baud_rate: 9600
dfplayer:
on_finished_playback:
then:
logger.log: 'Playback finished event'
api:
# Per eseguire queste actions, andare in Home Assistant dentro Developer Tools -> Actions -> Inserire:
# action: esphome.fabula_dfplayer_play_folder
# data: {
# "folder": 2,
# "file": 1
# }
actions:
- action: dfplayer_next
then:
- dfplayer.play_next:
- action: dfplayer_previous
then:
- dfplayer.play_previous:
- action: dfplayer_play
variables:
file: int
then:
- dfplayer.play: !lambda 'return file;'
- action: dfplayer_play_loop
variables:
file: int
loop_: bool
then:
- dfplayer.play:
file: !lambda 'return file;'
loop: !lambda 'return loop_;'
- action: dfplayer_play_folder
variables:
folder: int
file: int
then:
- dfplayer.play_folder:
folder: !lambda 'return folder;'
file: !lambda 'return file;'
- action: dfplayer_play_loop_folder
variables:
folder: int
then:
- dfplayer.play_folder:
folder: !lambda 'return folder;'
loop: true
- action: dfplayer_set_device_tf
then:
- dfplayer.set_device: TF_CARD
- action: dfplayer_set_device_usb
then:
- dfplayer.set_device: USB
- action: dfplayer_set_volume
variables:
volume: int
then:
- dfplayer.set_volume: !lambda 'return volume;'
- action: dfplayer_set_eq
variables:
preset: int
then:
- dfplayer.set_eq: !lambda 'return static_cast<dfplayer::EqPreset>(preset);'
- action: dfplayer_sleep
then:
- dfplayer.sleep
- action: dfplayer_reset
then:
- dfplayer.reset
- action: dfplayer_start
then:
- dfplayer.start
- action: dfplayer_pause
then:
- dfplayer.pause
- action: dfplayer_stop
then:
- dfplayer.stop
- action: dfplayer_random
then:
- dfplayer.random
- action: dfplayer_volume_up
then:
- dfplayer.volume_up
- action: dfplayer_volume_down
then:
- dfplayer.volume_down