Em: /config/binary_sensors.yaml
- platform: bayesian
prior: 0.50
name: 'Presença Nelson'
probability_threshold: 0.60
observations:
- entity_id: 'device_tracker.xiaomiwifi'
prob_given_true: 00.99
prob_given_false: 0.20
platform: 'state'
to_state: 'home'
- entity_id: 'device_tracker.nelson_xiaomiow'
prob_given_true: 0.99
prob_given_false: 0.40
platform: 'state'
to_state: 'home'
- entity_id: 'device_tracker.redmi'
prob_given_true: 00.99
prob_given_false: 0.10
platform: 'state'
to_state: 'home'
O truque aqui, muito honestamente , não vos posso ajudar mais porque a minha area de formação é de longe a matematica e ou programação, cheguei a estes valores depois de muita observação da mudança de estados dos tres trackers e de aumentar as probabiiidaes nos mais confiaveis e baixar nos menos confiaveis…
Também é importante ver com atençao a literatura que coloco no fim pois tanto avaliamos a probabilidade do estado de um sensor estar certo como de errado, o bayesian depois calcula as probabilidades…
pex o sensor ping e bt são confiaveis… são, mas nem sempre detecta a primeira, ou então só detectam ja depois de estar em casa a algum tempo…
o owtracks é fiavel… é , mas as vezes engana-se ou então demora muito a actualizar a localização…
Como os sensores binarios são isso mesmo binários isto vai criar um sensor “on/off” mas o que se pretende é um sensor de presença em casa e que tambem faz de tracker nas minhas diferentes zonas (baseado no owntracks_http para android) para isso criamos um template de forma a ter um bonito badge com o nosso nome e a zona onde nos encontramos.
O sensor de status “acusa” em casa baseado na probabilidade do bayesian e estando “fora” está fora de casa, se entrar numa zona a partida só posso estar na mesma (um gajo nao vai passear ai local de trabalho certo!)
Em: /config/sensors.yaml
- platform: template
sensors:
status_nelson:
friendly_name: ' '
unit_of_measurement: 'Nelson'
value_template: >-
{% if is_state('binary_sensor.presenca_nelson', 'on') %}
Casa
{% endif %}
{% if is_state('device_tracker.nelson_xiaomiow', 'Hospital') %}
Hospital
{% endif %}
{% if is_state('device_tracker.nelson_xiaomiow', 'UCCI') %}
UCCI
{% endif %}
{% if is_state('binary_sensor.presenca_nelson', 'off') %}
Fora
{% endif %}
literatura:
https://www.home-assistant.io/components/binary_sensor.bayesian/
https://philhawthorne.com/making-home-assistants-presence-detection-not-so-binary/
https://community.home-assistant.io/t/bayesian-sensor-as-device-tracker/29857