Yo creo que es mejor opcion el DIY.
La mayoría de las cosas es un parto ponerlo en marcha por este medio, pero ganas que el control sea totalmente tuyo, y evitas el que tus aparatos de domotica necesiten internet para funcionar o que compartan informacion con proveedores "poco confiables".
Yo actualmente uso home assistant en una raspberry 3b+ y no funciona lo fluidamente que funcionaba cuando tenia el nas.
¿Porque lo moví a un raspberry si tengo un nas x86? Porque quiero que algunas cosas puedan funcionar incluso sin electricidad, y el control debe estar siempre arriba para lograr ese objetivo.
Para los interruptores uso sonoff (unos interruptores de luz, medidores de potencia, switchs inteligentes) con un software custom (tasmota) conectados a homeassistant via MQTT (mosquito broker).
En homeassitant tengo tasmo-admin para mantener actualizados estos dispositivos tasmotizados.
Ademas, tengo node-red para diagramar el control y uso alexa con un skill para home-assistant para usar los echo (show/dot) para controlar estos dispositivos.
Tengo algunas rutinas programadas tales como "suena la alarma de la habitación a x hora en días hábiles, luego enciende la luz del velador, luego enciende la luz del cielo de la habitación al 15% y aumenta la potencia 15% por cada minuto" o "mantén la temperatura a 20° durante 1 hora"; esto ultimo es todo un logro porque el AC que tengo en la habitación es de pedestal y no tiene control inteligente, ni siquiera tiene la opcion en el control de poner la temperatura a x grados"
también tengo sensores magnéticos en puertas y ventanas de tipo RF433, inicié con un kit sonoff RF433, pero no me gustó el software de sonoff (ewelink) y que los sensores magnéticos eran de 1 estado, esto quiere decir que te indica cuando se activa, pero no dice si se volvió a cerrar o quedó abierto. Deseché los sensores magnéticos sonoff y compré unos de doble estado en aliexpress (6usd c/u) y el bridge rf433 lo flashee con tasmota, y ahora puedo recibir los dos estados de los sensores. Con estos estados triggeo acciones como "si se abre la puerta de entrada o se detecta movimiento en el jardín interior, mándame por telegram una foto del momento de la apertura y un clip de vídeo con los últimos 30 segundos de la cámara" o incluso "si se ocultó el sol y la luz de la habitación está apagada, y abro la puerta, encender la luz del velador" y "si no hay movimiento durante 30 minutos en la habitación y es de noche, y la luz está encendida, apagar la luz"
Si, agregar camaras es bastante simple, siempre y cuando las camaras sean IP (wifi o ethernet) y soporten conexiones RTMP (para poder grabar desde homeassistant) o de cualquier tipo por ip (mjpeg o cosas asi)
Continuando, hace un tiempo hice una automatización en donde al cocinar en el horno eléctrico, al encenderlo, homeassistant comienza un contador de consumo, y al no tener consumo durante 3 minutos, home asistant reproducía un mensaje en el echo dot de la cocina diciendo "el consumo del horno fue de YYY kilowatts lo que equivale a YYY pesos" y reiniciaba ese contador de uso (hay otro contador para el consumo mensual y otro para el total)
Finalmente, aprender a hacer esto, incluyendo el dashboard en homeassistant requiere muchísimo tiempo, es toda una paja, pero la diferencia tanto en flexibilidad como en precio hace que valga la pena.