New platform for My Home bTicino

Ciao, ho da poco installato home assistant versione HASSIO e posseggo un Myhomeserver1, è possibile integrare gli elementi del mio impianto bticino con il programma che hai creato tu?

Ciao, sicuramente si su RASPBIAN, su HASSIO non ti assicuro perché non lo uso e da quello che mi hanno scritto altri utenti qualche problema mi pare lo dia.

Sono un neofita, potresti spiegarmi come faccio ad installarla?

Hi Caio, I’ve read that now you use another software. can i ask you how i do to install it in Hassio? I can’t install the open web because i’m unable to use pip install… I tried to download the zip from PyPi and I added it into custom_components but it doesn’t work.

Thank you

It is not free. Here is the link.

Ciao to everyone. I’ve a question about configuring lights. It’s possibile to dimmer a light? I have in my Bticino plant 2 dimmers. Thanks in advance

Hi djmirco, I am no longer developing this component, because I have found a way to integrate bTicino into home assistant through standard components, using Domoticz and MQTT.
It seems to be working very well.
I am testing it with home assistant installed on raspbian, not with Hassio, but being standard components, I expect it to work without problems too.
Domoticz can be installed on several supported devices.
I did the first tests by installing it on a Synology NAS and it didn’t give any problems, now I have placed it on the same Raspberry where Home Assistant runs and several other services.
After installing Domoticz, it must be configured to connect to the bTicino system, MQTT must also be activated on both Domoticz and Home Assistant. I recommend installing Mosquito.
Therefore lights, switches and MQTT sensors must be created in HA as automations to send and receive data from Domoticz.

1 Like

It’s a shame, because the project was valid. I am sorry that the only alternative is to pay!!!

For those who use node red I use a openwebnet to mqtt converter. Currently its only possible to use lights (on/off), covers(up/down) en cen commands. I’m thinking of buying a dimmer so I maybe try to add dimmer support in the future unless someone beats me to it. Node red is a lot easier than developing a home assistant plugin, at least for me.

[{"id":"add648bd.b23638","type":"tcp request","z":"3699bdf7.a4a582","server":"192.168.1.11","port":"20000","out":"sit","splitc":" ","name":"","x":650,"y":200,"wires":[["310c0132.ddc146","1e903399.68ad64"]]},{"id":"310c0132.ddc146","type":"function","z":"3699bdf7.a4a582","name":"Convert to string","func":"msg.payload = msg.payload.toString('utf8');\n//msg.payload = String(msg.payload);\nreturn msg;","outputs":1,"noerr":0,"x":910,"y":240,"wires":[["36aa90ad.d16e9","2516bf50.8a4058"]]},{"id":"1e903399.68ad64","type":"trigger","z":"3699bdf7.a4a582","op1":"","op2":"*99*1##","op1type":"nul","op2type":"str","duration":"135","extend":true,"units":"s","reset":"","bytopic":"all","name":"WatchDog","x":650,"y":140,"wires":[["add648bd.b23638"]]},{"id":"3fa34765.e3a668","type":"inject","z":"3699bdf7.a4a582","name":"Activate socked","topic":"","payload":"*99*1##","payloadType":"str","repeat":"135","crontab":"","once":true,"onceDelay":"","x":210,"y":200,"wires":[["add648bd.b23638"]]},{"id":"113dca8c.89db4d","type":"function","z":"3699bdf7.a4a582","name":"Parse MQTT","func":"//*WHO*WHAT*WHERE##\nvar WHO;\nvar WHAT;\nvar WHERE;\nvar array = msg.topic.split('/');\n\nif(array[1]=='l'){\n    WHO = '1';\n}else if (array[1]=='c'){\n    WHO = '2';\n}\n\nif(msg.payload=='ON' || msg.payload=='UP' ){\n    WHAT = '1';\n}else if (msg.payload=='OFF'|| msg.payload=='STOP'){\n    WHAT = '0';\n}else if (msg.payload=='DOWN'){\n    WHAT = '2';\n}\n\nif(array[2] == 'g'){\n    WHERE = array[3]; \n}else{\n    WHERE = array[2]+array[3];\n}\nmsg.payload = '*'+WHO+'*'+WHAT+'*'+WHERE+'##';\n\nreturn msg;","outputs":1,"noerr":0,"x":390,"y":240,"wires":[["add648bd.b23638","310c0132.ddc146"]]},{"id":"dde915a0.756368","type":"change","z":"3699bdf7.a4a582","name":"To OWN","rules":[{"t":"set","p":"payload","pt":"msg","to":"*#1*0##","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":380,"y":160,"wires":[["add648bd.b23638"]]},{"id":"36aa90ad.d16e9","type":"function","z":"3699bdf7.a4a582","name":"Parse OWN command","func":"//*WHO*WHAT*WHERE##\nvar WHO;\nvar WHAT;\nvar A;\nvar PL;\nvar array = msg.payload.split('*');\n\nif(array[1]=='1'){\n    WHO = 'l';\n}else if (array[1]=='2'){\n    WHO = 'c';\n}else if (array[1]=='25'){\n    WHO = 'cen';\n}\n\nif(WHO == 'l'){\n    if(array[2]=='1'){\n        WHAT = 'ON';\n    }else if (array[2]=='0'){\n        WHAT = 'OFF';\n    }\n    \n    A = array[3][0];\n    PL = array[3][1];\n    if(A == '#'){\n        A = 'g';\n    }\n    if(PL == '#'){\n        A = 'g';\n        PL = '0';\n    }\n    \n}\n\nif(WHO == 'c'){\n    if(array[2]=='1'){\n        WHAT = 'open';\n    }else if (array[2]=='2'){\n        WHAT = 'closed';\n    }else if (array[2]=='0'){\n        WHAT = 'stop';\n    }\n    \n    A = array[3][0];\n    PL = array[3][1];\n    if(A == '#'){\n        A = '0';\n        WHO = 'g';\n    }\n    \n}\n\n\nif(WHO == 'cen'){\n    A = array[3][1]+array[3][2];\n    PL = array[2][3];\n    if(array[2][1]== '1'){\n      WHAT = \"SHORT\";\n    }else  if(array[2][1]== '2'){\n      WHAT = \"PRESS\";\n    }else  if(array[2][1]== '3'){\n      WHAT = \"HOLD\";\n    }else  if(array[2][1]== '4'){\n      WHAT = \"RELEASE\";\n    }\n}\n\n\nmsg.topic = \"bticino/\"+WHO+\"/\"+A+\"/\"+PL+\"/state\";\n\nmsg.payload = WHAT;\nreturn msg;","outputs":1,"noerr":0,"x":1160,"y":220,"wires":[["1f99f44.2070a8c"]]},{"id":"2516bf50.8a4058","type":"switch","z":"3699bdf7.a4a582","name":"Alles uit?","property":"payload","propertyType":"msg","rules":[{"t":"eq","v":"*1*0*0##","vt":"str"}],"checkall":"true","repair":false,"outputs":1,"x":1120,"y":260,"wires":[["d9a7ac5a.7ed8b"]]},{"id":"2a1e94e5.967fac","type":"mqtt in","z":"3699bdf7.a4a582","name":"","topic":"bticino/+/+/+/power","qos":"2","datatype":"auto","broker":"ea7806fa.760d78","x":210,"y":240,"wires":[["113dca8c.89db4d"]]},{"id":"ccf0fb31.34f4b8","type":"inject","z":"3699bdf7.a4a582","name":"","topic":"","payload":"","payloadType":"date","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":200,"y":100,"wires":[["dde915a0.756368"]]},{"id":"1f99f44.2070a8c","type":"mqtt out","z":"3699bdf7.a4a582","name":"Send to mqt","topic":"","qos":"","retain":"","broker":"ea7806fa.760d78","x":1350,"y":220,"wires":[]},{"id":"d9a7ac5a.7ed8b","type":"link out","z":"3699bdf7.a4a582","name":"Alles Uit","links":["c98ef182.8fe57"],"x":1340,"y":260,"wires":[],"l":true},{"id":"ea7806fa.760d78","type":"mqtt-broker","z":"","name":"Mosquito Nuc","broker":"localhost","port":"1883","clientid":"","usetls":false,"compatmode":true,"keepalive":"60","cleansession":true,"birthTopic":"","birthQos":"0","birthRetain":"false","birthPayload":"","closeTopic":"","closeQos":"0","closeRetain":"false","closePayload":"","willTopic":"","willQos":"0","willRetain":"false","willPayload":""}]

Lights

 - platform: mqtt
    name: "GEN OFF"
    command_topic: "bticino/l/G/0/power"
    state_topic: "bticino/l/G/0/state"

  - platform: mqtt
    name: "light A:1 PL:0"
    command_topic: "bticino/l/1/0/power"
    state_topic: "bticino/l/1/0/state"

Cover

  - platform: mqtt
    name: "cover A:9 PL:2"
    command_topic: "bticino/c/9/2/power"
    payload_open: "UP"
    payload_close: "DOWN"
    payload_stop: "STOP"
    optimistic: true

Good news. Thanks. But how do you manage the Server Password ?

I just put the IP of my server in the trusted local connections in my F455 basic gateway. That way I don’t need to enter a password.

Thanks a lot it works. I can read the status. But I am not able to send Commands no lights and no covers are working from HA to the gateway. Node Red send me the feedback status but nothing happend in MyHome. Each time I send the command from HA, I am disconnected from the gateway for a few seconds.

Did you had the same problem and how do you solve it?

Thanks

Hello all,
just updated from HomeAssistant 0.88 to the latest version. I updated the MyHome plugin accordingly. Now, with the new version, I’m facing a general slow down of the plugin. If i switch on light, it takes time to refresh it on the GUI although the light is switched on instantaneously. In the log i have hundreds of the following log:

WARNING (MainThread) [homeassistant.components.light] Updating my_home light took longer than the scheduled update interval 0:00:00.500000

Please help me. I dont want to rollback to the 0.88 :slight_smile:

Hi Cosby86,
no more development nor use any integration to manage the my home system. I’m using node red and mqtt, something similar to what sent by hST

Not sure how the old code handled this, but the bTicino component always worked with a polling system. In other words to know the actual status of a light it would request all statuses around x seconds ( the amount of seconds can be configured I thought ).

Yes I know. in 0.88 I was working with 5sec polling time without issues. With the latest one, i tried from 0.5 up to 6secs with the same issue.

Hmm strange, I do see this also in my logs, but not constantly. So I guess sometimes the polling time and the timing Home Assistant is expecting a response is a bit out of sync?

Hey @clau67 I know you stopped with the development. But I did do a small Pull Request to fix the component in regards of the newer Home Assistant rules.

Could you maybe share you Node Red ? I was able to read the status but not to command my lights.

Thanks

For anyone wanting to get this up and running with a regular home assistant custom component can hop over to Legrand/Bticino MyHome
I have been testing it and works great!

Hi, if you want to try, I created a new repository on Github, with the two flow to import as txt and a tutorial for the set up of HA and also for node red.
https://github.com/pippocla/bTicino-MQTT-NodeRed-Home-Assistant