Los timbres inalámbricos son una excelente manera de agregar timbres en hogares u oficinas sin usar cables. Sin embargo, estas campanas inalámbricas vienen con sonidos MIDI preconfigurados limitados que se reproducen cuando alguien presiona el botón en la unidad transmisora.

Aunque puede alternar entre los sonidos MIDI y aumentar o disminuir el volumen, eso es todo lo que puede hacer con estos timbres inalámbricos. Sin embargo, hoy construiremos un timbre inalámbrico inteligente de bricolaje donde puede agregar sonidos MP3 personalizados o archivos de música que se reproducirán cuando alguien presione el interruptor del timbre. También puede personalizar la configuración y usar el timbre como un altavoz inteligente.

Cosas que necesitará

Necesitará lo siguiente para construir y configurar un timbre inteligente de bricolaje personalizado.

  • Servidor Home Assistant ejecutándose en una Raspberry Pi o cualquier otro dispositivo compatible.
  • 2 placas Wemos D1 mini o NodeMCU.
  • altavoz de 50 mm.
  • Una placa amplificadora digital mini 5V PAM8403.
  • instagram viewer
  • DuPont o cables de puente. Es posible que también necesite un soldador y estaño para soldar las uniones si desea una conexión permanente.
  • Maletín para montar todas las piezas. Puedes imprimir este caso 3D.

Paso 1: construye un altavoz inteligente

Primero, construiremos un altavoz inteligente que funcione con Home Assistant y luego lo usaremos como un timbre inteligente para este proyecto. También puede usar esta campana inteligente para reproducir alertas de voz. Los pasos son los siguientes:

  1. Abra Home Assistant e instale el complemento ESPHome.
  2. Después de la instalación, abra ESPHome y haga clic en +Nuevo dispositivo.
  3. Hacer clic Continuar y escriba un nombre, como altavoz inteligente.
  4. Hacer clic Próximo > Elige un tablero específico y elige Wemos D1 y Wemos D1 mini. Hacer clic Próximo.
  5. Busque un altavoz inteligente en la lista y haga clic en el Editar botón.
  6. En la ventana del editor de YAML, actualice el SSID y la contraseña de Wi-Fi.
  7. Luego pegue el siguiente código justo debajo portal_cautivo:
    tuart:
    pin_tx: GPIO3
    pin_rx: GPIO1
    Velocidad de transmisión: 9600
    reproductor de df:
    en_reproducción_terminada:
    entonces:
    registrador.log: 'Evento de finalización de reproducción'
    API:
    cifrado:
    llave: "Su clave de cifrado"
    servicios:
    - servicio: dfplayer_next
    entonces:
    -reproductor de df.jugar_siguiente:
    - servicio: dfplayer_previous
    entonces:
    -reproductor de df.reproducir_anterior:
    - servicio: dfplayer_play
    variables:
    archivo: En t
    entonces:
    - dfplayer.play: !lambda 'devolver archivo;'
    - servicio: dfplayer_play_loop
    variables:
    archivo: En t
    bucle_: booleano
    entonces:
    -reproductor de df.jugar:
    archivo: !lambda 'devolver archivo;'
    bucle: !lambda 'devolver bucle_;'
    - servicio: dfplayer_play_folder
    variables:
    carpeta: En t
    archivo: En t
    entonces:
    -reproductor de df.play_folder:
    carpeta: !lambda 'devolver carpeta;'
    archivo: !lambda 'devolver archivo;'
    - servicio: dfplayer_play_loop_folder
    variables:
    carpeta: En t
    entonces:
    -reproductor de df.play_folder:
    carpeta: !lambda 'devolver carpeta;'
    bucle: verdadero
    - servicio: dfplayer_set_device_tf
    entonces:
    -reproductor de df.set_dispositivo: TF_TARJETA
    - servicio: dfplayer_set_device_usb
    entonces:
    -reproductor de df.set_dispositivo: USB
    - servicio: dfplayer_set_volume
    variables:
    volumen: En t
    entonces:
    - dfplayer.set_volume: !lambda 'devolver volumen;'
    - servicio: dfplayer_set_eq
    variables:
    Preestablecido: En t
    entonces:
    - dfplayer.set_eq: !lambda 'devolver static_cast<dfplayer:: EqPreset>(Preestablecido);'
    - servicio: dfplayer_sleep
    entonces:
    -reproductor de df.dormir
    - servicio: dfplayer_reset
    entonces:
    -reproductor de df.reiniciar
    - servicio: dfplayer_start
    entonces:
    -reproductor de df.comenzar
    - servicio: dfplayer_pause
    entonces:
    -reproductor de df.pausa
    - servicio: dfplayer_stop
    entonces:
    -reproductor de df.detener
    - servicio: dfplayer_random
    entonces:
    -reproductor de df.aleatorio
    - servicio: dfplayer_volume_up
    entonces:
    -reproductor de df.sube el volumen
    - servicio: dfplayer_volume_down
    entonces:
    -reproductor de df.bajar volumen
  8. Reemplazar Su clave de cifrado en el código anterior con su clave de cifrado existente. También elimine el siguiente código si está encima del portal_cautivo: texto: solo debe haber uno API: sección in el código completo, de lo contrario recibirá errores de compilación.
    API:
    cifrado:
    llave: "Su clave de cifrado"
  9. Hacer clic Ahorrar y luego haga clic Instalar.
  10. Elegir el Conéctese a esta computadora y espere a que se compile el firmware.
  11. Una vez compilado el firmware, haga clic en el Descargar proyecto enlace para descargar el firmware.
  12. Hacer clic Abrir ESPHome Web y conecte su D1 mini a la PC usando un cable micro-USB.
  13. Hacer clic Conectar y seleccione el puerto COM donde está conectado D1 mini.
  14. Hacer clic Instalar y luego haga clic Elija el archivo para seleccionar el firmware que descargó.
  15. Hacer clic Instalar.
  16. Una vez instalado el firmware, consulte el siguiente diagrama para conectar el DFPlayer o el módulo de su reproductor de MP3 con la mini placa D1.

De forma predeterminada, el módulo DFPlayer puede ejecutar dos altavoces de 3 W que puede conectar a los pines SPK_1 y SPK_2, como se muestra en el diagrama. El otro terminal de ambos altavoces se conectará al terminal GND entre los dos terminales de altavoz en el módulo DFPlayer.

Consejo: Para obtener un sonido más alto y completo de su altavoz de 3 W de 50 mm o más grande, asegúrese de instalar un módulo amplificador como un PAM8403 entre el altavoz y DFPlayer.

Paso 2: construya un interruptor inteligente

Tome otra mini placa D1 y siga estos pasos para construir un interruptor inteligente.

  1. Ir a Asistente de hogar > ESPInicio, haga clic Nuevo dispositivo, y luego crear un nuevo proyecto llamado interruptor de timbre. Asegúrate de elegir Wemos D1 y Wemos D1 mini junta.
  2. Clickea en el Editar debajo del proyecto bell-switch y pegue el siguiente código justo debajo portal_cautivo:
    cambiar:
    - plataforma: gpio
    pasador: D2
    identificación: relé
    nombre: "Campana"
    icono: "mdi: campana"
    en_encender_en:
    - retraso: 200ms
    - cambiar.turn_off: relé
  3. Además, actualice el SSID y la contraseña de Wi-FI.
  4. Hacer clic Ahorrar y luego haga clic Instalar.
  5. Hacer clic Conéctese a esta computadora y luego descargar el firmware.
  6. Hacer clic Abrir ESPHome Web y use el instalador web para actualizar el firmware en esta mini placa D1.
  7. Una vez que el firmware esté instalado, puede soldar dos cables a esta mini placa D1 como se muestra en el diagrama a continuación, y luego conectar esos dos cables a cualquier interruptor de timbre mecánico.
  8. Conecte la alimentación y pruebe el interruptor. Verá la salida en el interruptor de timbre registros

Paso 3: Agregar archivos MP3

Puede conectar una tarjeta microSD a su PC y copiar sonidos de campana a la tarjeta. También puede agregar cualquier canción o diálogo de una película que desee reproducir cuando alguien presione el interruptor del timbre.

Asegúrese de que todos sean archivos MP3 y renombrados con números, como 1, 2, 3, etc. Por ejemplo, 1.mp3 o 2.mp3. También puede usar cualquier sitio gratuito de conversión de MP3 de texto a voz para crear sus propios sonidos personalizados para este timbre inteligente. Una vez que se copian los sonidos MP3, conecte la tarjeta microSD al DFPlayer.

En esta etapa, puede encender el altavoz inteligente y el interruptor de timbre inteligente. Puede usar cualquier adaptador de 5V y cable micro-USB para alimentar ambos dispositivos. Puede probar el módulo tocando cualquier IO o ADKey pin del DFPlayer al TIERRA. Escuchará la reproducción de los archivos MP3.

Paso 4: Crear automatización

La automatización le permitirá activar o reproducir el archivo MP3 deseado cuando alguien presione el botón del interruptor de timbre inteligente. Sigue estos pasos:

  1. En Home Assistant, ve a Ajustes > Automatizaciones y Escenas.
  2. Hacer clic Crear automatización y haga clic Comience con una automatización vacía.
  3. Hacer clic Agregar disparador > Dispositivo y luego buscar campana.
  4. Elegir Campana en Dispositivo y seleccione el Encendido de timbre opción de la Desencadenar desplegable.
  5. Bajo Comportamiento, haga clic Agregar acción.
  6. Elegir Servicio de llamada.
  7. Buscar ESPInicio: smart_speaker_dfplayer_play y selecciónelo.
  8. En el archivo campo, escriba el número de archivo MP3 que desea reproducir. Puede cambiar este número en cualquier momento para cambiar el sonido de la campana.
  9. Su automatización debería tener el siguiente aspecto:
  10. Haga clic en el Ahorrar y luego asigne a esta automatización cualquier nombre con una descripción (opcional).
  11. Hacer clic Ahorrar.

Ahora, si presiona el interruptor de campana inteligente, activará la automatización y reproducirá el sonido en la campana inteligente que hicimos.

Además, puede crear sonidos de notificación, como "El tanque está lleno". Apague el motor" o "Se detecta un alto uso de energía" usando TTS a MP3, y cree una automatización para reproducir estos sonidos cada vez que ocurran tales eventos o según los valores del sensor. También puede seguir nuestras guías detalladas para construir un sensor de nivel de agua inteligente y dispositivo inteligente de monitoreo de energía para Asistente de Hogar.

Timbre inteligente para hogar inteligente

La campana inteligente que hemos creado también se puede usar como un altavoz inteligente con su Home Assistant Server para reproducir alertas. También puede agregar controles DFPlayer en su panel de Home Assistant para reproducir, pausar, aumentar/disminuir el volumen, etc. Simplemente agregue una tarjeta de entidad en el panel de Home Assistant y busque las entidades de control de DFPlayer para agregarlas.