Proscenic 790T Integration

Hello,
sorry for my English.
I tried on my 811 gb:

Work in my 811gb ( github oskarn97 )

visuel check ok

Stop.sh: AA55A55A0DFDE20906000100030000000000
#!/bin/bash

echo "<HEADER MsgType="MSG_TRANSIT_SHAS_REQ" MsgSeq="1" From="02000000000000000" To="01801930aea421f164" Keep="1"/><BODY>PFRSQU5TSVRfSU5GTz48Q09NTUFORD5ST0JPVF9DTUQ8L0NPTU1BTkQ+PFJUVT5BQTU1QTU1QTBERkRFMjA5MDYwMDAxMDAwMzAwMDAwMDAwMDA8L1JUVT48L1RSQU5TSVRfSU5GTz4=</BODY></MESSAGE>\r\n\r\n" >/dev/udp/192.168.1.99/10684

run.sh: AA55A55A0DFDE20906000100020000000100
#!/bin/bash

echo "<HEADER MsgType="MSG_TRANSIT_SHAS_REQ" MsgSeq="1" From="02000000000000000" To="01801930aea421f164" Keep="1"/><BODY>PFRSQU5TSVRfSU5GTz48Q09NTUFORD5ST0JPVF9DTUQ8L0NPTU1BTkQ+PFJUVT5BQTU1QTU1QTBERkRFMjA5MDYwMDAxMDAwMjAwMDAwMDAxMDA8L1JUVT48L1RSQU5TSVRfSU5GTz4=</BODY></MESSAGE>\r\n\r\n" >/dev/udp/192.168.1.99/10684

dock.sh: AA55A55A0FFDE20906000100010000000000
#!/bin/bash

echo "<HEADER MsgType="MSG_TRANSIT_SHAS_REQ" MsgSeq="1" From="02000000000000000" To="01801930aea421f164" Keep="1"/><BODY>PFRSQU5TSVRfSU5GTz48Q09NTUFORD5ST0JPVF9DTUQ8L0NPTU1BTkQ+PFJUVT5BQTU1QTU1QTBGRkRFMjA5MDYwMDAxMDAwMTAwMDAwMDAwMDA8L1JUVT48L1RSQU5TSVRfSU5GTz4=</BODY></MESSAGE>\r\n\r\n" >/dev/udp/192.168.1.99/10684

Check in smartphone:

mode_auto.sh: AA55A55A09FDE20906000100020500000000
#!/bin/bash

echo "<HEADER MsgType="MSG_TRANSIT_SHAS_REQ" MsgSeq="1" From="02000000000000000" To="01801930aea421f164" Keep="1"/><BODY>PFRSQU5TSVRfSU5GTz48Q09NTUFORD5ST0JPVF9DTUQ8L0NPTU1BTkQ+PFJUVT5BQTU1QTU1QTA5RkRFMjA5MDYwMDAxMDAwMjA1MDAwMDAwMDA8L1JUVT48L1RSQU5TSVRfSU5GTz4=</BODY></MESSAGE>\r\n\r\n" >/dev/udp/192.168.1.99/10684

mode_area.sh (Spot): AA55A55A0AFDE20906000100020400000000
#!/bin/bash

echo "<HEADER MsgType="MSG_TRANSIT_SHAS_REQ" MsgSeq="1" From="02000000000000000" To="01801930aea421f164" Keep="1"/><BODY>PFRSQU5TSVRfSU5GTz48Q09NTUFORD5ST0JPVF9DTUQ8L0NPTU1BTkQ+PFJUVT5BQTU1QTU1QTBBRkRFMjA5MDYwMDAxMDAwMjA0MDAwMDAwMDA8L1JUVT48L1RSQU5TSVRfSU5GTz4=</BODY></MESSAGE>\r\n\r\n" >/dev/udp/192.168.1.99/10684

mode_edge.sh: AA55A55A0BFDE20906000100020300000000
#!/bin/bash

echo "<HEADER MsgType="MSG_TRANSIT_SHAS_REQ" MsgSeq="1" From="02000000000000000" To="01801930aea421f164" Keep="1"/><BODY>PFRSQU5TSVRfSU5GTz48Q09NTUFORD5ST0JPVF9DTUQ8L0NPTU1BTkQ+PFJUVT5BQTU1QTU1QTBCRkRFMjA5MDYwMDAxMDAwMjAzMDAwMDAwMDA8L1JUVT48L1RSQU5TSVRfSU5GTz4=</BODY></MESSAGE>\r\n\r\n" >/dev/udp/192.168.1.99/10684

mode_zigzag.sh: AA55A55A0CFDE20906000100020200000000
#!/bin/bash

`echo "<HEADER MsgType="MSG_TRANSIT_SHAS_REQ" MsgSeq="1" From="02000000000000000" To="01801930aea421f164" Keep="1"/><BODY>PFRSQU5TSVRfSU5GTz48Q09NTUFORD5ST0JPVF9DTUQ8L0NPTU1BTkQ+PFJUVT5BQTU1QTU1QTBDRkRFMjA5MDYwMDAxMDAwMjAyMDAwMDAwMDA8L1JUVT48L1RSQU5TSVRfSU5GTz4=</BODY></MESSAGE>\r\n\r\n" >/dev/udp/192.168.1.99/10684`

Tried your work

the 7 order work in my 811GB

‘MOVE_BACKWARD’: “AA55A55A0BFDE20906000100030000020000”,
#!/bin/bash

echo "<HEADER MsgType="MSG_TRANSIT_SHAS_REQ" MsgSeq="1" From="02000000000000000" To="01801930aea421f164" Keep="1"/><BODY>PFRSQU5TSVRfSU5GTz48Q09NTUFORD5ST0JPVF9DTUQ8L0NPTU1BTkQ+PFJUVT5BQTU1QTU1QTBCRkRFMjA5MDYwMDAxMDAwMzAwMDAwMjAwMDA8L1JUVT48L1RSQU5TSVRfSU5GTz4=</BODY></MESSAGE>\r\n\r\n" >/dev/udp/192.168.1.69/10684

‘MOVE_FORWARD’: “AA55A55A0CFDE20906000100030000010000”,
#!/bin/bash

echo "<HEADER MsgType="MSG_TRANSIT_SHAS_REQ" MsgSeq="1" From="02000000000000000" To="01801930aea421f164" Keep="1"/><BODY>PFRSQU5TSVRfSU5GTz48Q09NTUFORD5ST0JPVF9DTUQ8L0NPTU1BTkQ+PFJUVT5BQTU1QTU1QTBDRkRFMjA5MDYwMDAxMDAwMzAwMDAwMTAwMDA8L1JUVT48L1RSQU5TSVRfSU5GTz4=</BODY></MESSAGE>\r\n\r\n" >/dev/udp/192.168.1.69/10684

‘MOVE_LEFT’: “AA55A55A0AFDE20906000100030000030000”,
#!/bin/bash

echo "<HEADER MsgType="MSG_TRANSIT_SHAS_REQ" MsgSeq="1" From="02000000000000000" To="01801930aea421f164" Keep="1"/><BODY>PFRSQU5TSVRfSU5GTz48Q09NTUFORD5ST0JPVF9DTUQ8L0NPTU1BTkQ+PFJUVT5BQTU1QTU1QTBBRkRFMjA5MDYwMDAxMDAwMzAwMDAwMzAwMDA8L1JUVT48L1RSQU5TSVRfSU5GTz4=</BODY></MESSAGE>\r\n\r\n" >/dev/udp/192.168.1.69/10684

‘MOVE_RIGHT’: “AA55A55A09FDE20906000100030000040000”,
#!/bin/bash

echo "<HEADER MsgType="MSG_TRANSIT_SHAS_REQ" MsgSeq="1" From="02000000000000000" To="01801930aea421f164" Keep="1"/><BODY>PFRSQU5TSVRfSU5GTz48Q09NTUFORD5ST0JPVF9DTUQ8L0NPTU1BTkQ+PFJUVT5BQTU1QTU1QTA5RkRFMjA5MDYwMDAxMDAwMzAwMDAwNDAwMDA8L1JUVT48L1RSQU5TSVRfSU5GTz4=</BODY></MESSAGE>\r\n\r\n" >/dev/udp/192.168.1.69/10684

‘MOVE_STOP’: “AA55A55A08FDE20906000100030000050000”,
#!/bin/bash

echo "<HEADER MsgType="MSG_TRANSIT_SHAS_REQ" MsgSeq="1" From="02000000000000000" To="01801930aea421f164" Keep="1"/><BODY>PFRSQU5TSVRfSU5GTz48Q09NTUFORD5ST0JPVF9DTUQ8L0NPTU1BTkQ+PFJUVT5BQTU1QTU1QTA4RkRFMjA5MDYwMDAxMDAwMzAwMDAwNTAwMDA8L1JUVT48L1RSQU5TSVRfSU5GTz4=</BODY></MESSAGE>\r\n\r\n" >/dev/udp/192.168.1.69/10684

‘VOICE_OFF’: “AA55A55A0BFDE20906000100040000000001”,
#!/bin/bash

echo "<HEADER MsgType="MSG_TRANSIT_SHAS_REQ" MsgSeq="1" From="02000000000000000" To="01801930aea421f164" Keep="1"/><BODY>PFRSQU5TSVRfSU5GTz48Q09NTUFORD5ST0JPVF9DTUQ8L0NPTU1BTkQ+PFJUVT5BQTU1QTU1QTBCRkRFMjA5MDYwMDAxMDAwNDAwMDAwMDAwMDE8L1JUVT48L1RSQU5TSVRfSU5GTz4=</BODY></MESSAGE>\r\n\r\n" >/dev/udp/192.168.1.69/10684

‘VOICE_ON’: “AA55A55A0AFDE20906000100040000000002”,
#!/bin/bash

echo "<HEADER MsgType="MSG_TRANSIT_SHAS_REQ" MsgSeq="1" From="02000000000000000" To="01801930aea421f164" Keep="1"/><BODY>PFRSQU5TSVRfSU5GTz48Q09NTUFORD5ST0JPVF9DTUQ8L0NPTU1BTkQ+PFJUVT5BQTU1QTU1QTBBRkRFMjA5MDYwMDAxMDAwNDAwMDAwMDAwMDI8L1JUVT48L1RSQU5TSVRfSU5GTz4=</BODY></MESSAGE>\r\n\r\n" >/dev/udp/192.168.1.69/10684

3 WIND does not work in my 811gb but work in infra red telecom (normal / speed):

‘WIND_HIGH’: “AA55A55A0AFDE20906000100030003000000”,
#!/bin/bash

echo "<HEADER MsgType="MSG_TRANSIT_SHAS_REQ" MsgSeq="1" From="02000000000000000" To="01801930aea421f164" Keep="1"/><BODY>PFRSQU5TSVRfSU5GTz48Q09NTUFORD5ST0JPVF9DTUQ8L0NPTU1BTkQ+PFJUVT5BQTU1QTU1QTBBRkRFMjA5MDYwMDAxMDAwMzAwMDMwMDAwMDA8L1JUVT48L1RSQU5TSVRfSU5GTz4=</BODY></MESSAGE>\r\n\r\n" >/dev/udp/192.168.1.69/10684

‘WIND_NORMAL’: “AA55A55A0BFDE20906000100030002000000”,
#!/bin/bash

echo "<HEADER MsgType="MSG_TRANSIT_SHAS_REQ" MsgSeq="1" From="02000000000000000" To="01801930aea421f164" Keep="1"/><BODY>PFRSQU5TSVRfSU5GTz48Q09NTUFORD5ST0JPVF9DTUQ8L0NPTU1BTkQ+PFJUVT5BQTU1QTU1QTBCRkRFMjA5MDYwMDAxMDAwMzAwMDIwMDAwMDA8L1JUVT48L1RSQU5TSVRfSU5GTz4=</BODY></MESSAGE>\r\n\r\n" >/dev/udp/192.168.1.69/10684

‘WIND_OFF’: “AA55A55A0CFDE20906000100030001000000”,
#!/bin/bash

echo "<HEADER MsgType="MSG_TRANSIT_SHAS_REQ" MsgSeq="1" From="02000000000000000" To="01801930aea421f164" Keep="1"/><BODY>PFRSQU5TSVRfSU5GTz48Q09NTUFORD5ST0JPVF9DTUQ8L0NPTU1BTkQ+PFJUVT5BQTU1QTU1QTBDRkRFMjA5MDYwMDAxMDAwMzAwMDEwMDAwMDA8L1JUVT48L1RSQU5TSVRfSU5GTz4=</BODY></MESSAGE>\r\n\r\n" >/dev/udp/192.168.1.69/10684

LES 2 QUERY ???

‘QUERY_ORDER’: “AA55A55A28FDD20700000100”,
#!/bin/bash

echo "<HEADER MsgType="MSG_TRANSIT_SHAS_REQ" MsgSeq="1" From="02000000000000000" To="01801930aea421f164" Keep="1"/><BODY>PFRSQU5TSVRfSU5GTz48Q09NTUFORD5ST0JPVF9DTUQ8L0NPTU1BTkQ+PFJUVT5BQTU1QTU1QTI4RkREMjA3MDAwMDAxMDA8L1JUVT48L1RSQU5TSVRfSU5GTz4=</BODY></MESSAGE>\r\n\r\n" >/dev/udp/192.168.1.69/10684

‘QUERY_STATE’: “AA55A55A17FDE10900000100”
#!/bin/bash

echo "<HEADER MsgType="MSG_TRANSIT_SHAS_REQ" MsgSeq="1" From="02000000000000000" To="01801930aea421f164" Keep="1"/><BODY>PFRSQU5TSVRfSU5GTz48Q09NTUFORD5ST0JPVF9DTUQ8L0NPTU1BTkQ+PFJUVT5BQTU1QTU1QTE3RkRFMTA5MDAwMDAxMDA8L1JUVT48L1RSQU5TSVRfSU5GTz4=</BODY></MESSAGE>\r\n\r\n" >/dev/udp/192.168.1.69/10684

Have you a water control code AA55A55A0BFDE20906???

hello English is not my native language. And i have a problem how can I change ‘vacuum.proscenic_*’ services instead of the default.
Integration proscenic not found when trying to verify its vacuum platform.

1 Like

I cannot fully understand your question, especially the part with changing the services.

In order to be found first you add its files to custom_components folder, then restart, and after that you add the vacuum in configuration.yaml . Then restart and it should work. :slight_smile:

file __init__.py from proscenic.zip is empty. should it be like that (I am newbie)?
I get error:

Platform error vacuum.proscenic - cannot import name 'VACUUM_SERVICE_SCHEMA' from 'homeassistant.components.vacuum' (/usr/src/homeassistant/homeassistant/components/vacuum/__init__.py)

It was written before about year … It was for older version of hassio …

today not work??

In the newest hassio probably it doesn’t … If you are using 0.8x or 0.9x it will probably still work … I’ll have to test it at home if it works … :slight_smile: Sorry that I left this integration in the past …

1 Like

I need to really use my robotic with the latest version of Hassio. Can someone please describe if it works??? Thank you advance so much.

Ditto, an update would be good

I’ll try to find some time to try to make it work. I’m just not sure if the new vacuum firmware still support direct commands. :slight_smile:

I’d be happy just to monitor it. Is there any way to display the mapping that the app has? Just a thought…

@Engineer Nope! They don’t provide a pic with the map. They provide a “map of dots” to represent the map. I don’t have such time to investigate how to recreate this map from dots. :slight_smile: Maybe if someone wants to contribute, we can achieve it, but for now - impossible. :slight_smile:

Just wondered:)

Hi, @gh0s7 I’m try to connect hass with my Proscenic 790T, but It’s not work.
I have try to only use your code, the domoticz plugin code, and this code https://github.com/markomannux/pyproscenic/blob/cb1033938118801197e376f38dcc849452808c2d/proscenic/proscenic.py (which is very similar to your code), nothing work.
I have see that the port use is 10684, but running I have see that the only opened port on my vacuum is 8888. Is that same for you?
If I can connect python script with my vacuum, I can help you to finish your integration.

I have try to decompile the Proscenic robotic app, but i think that the app is wrote in C, so i can’t read the code. Do you have another APP?

I have wrote a first version of an intergration for 790T vacuum cleaner.
You can find this here https://github.com/deblockt/hass-proscenic-790T-vacuum

it support stop/start/return_home and see battery level.

1 Like

@deblockt good job ! But I have LDS D550.
I grabbed an information from IOS app ProscenicHome. Can’t run Proscenic app. Only Proscenic Home.
The information from Wireshark is (I have X’ed personal info):
@@,À¨ë/þµïÅDêʧ<b¾
;$}ØÿØ{“data”:{“token”:“pXXXXXXXXXXXXXsn”,“sn”:“RXD550XXX000XXXX”},“infoType”:70003}# #

It seems D550 uses token only and sn. Doesn’t use deviceId and userId. Have checked ALL THE LOGS, I am 1000% sure there was no userId and deviceId.
Is that possible to adapt your script for D550 in my case?

BTW: Proscenic D550 looks almost same as Roborock S50… only D550 is square. The water tank and vacuum tank look same. Also same as Roborock, D550 gives only token in the app’s log. I tried xiaomi_miio platform, but… token is too short.
Please help if You can.

Thanks

1 Like

Same at home with M7 Pro vacuum cleaner.

Xiaomi needs 32 token length. When I sum D550 token + serial I have 32 digits. Will try
pXXXXXXXXXXXXXsn+RXD550XXX000XXXX == 32

Hi, @stefanscy I’m sorry but this integration is only test with the proscenic 790T. I doesn’t have other vacuum cleaner.
I have see that proscenic have two apps (Proscenic Robotic and Proscenic Home), I think that procotols are not same and maybe not compatible.
I understand that new proscenic vacuum use tuya protocol, but it seem that there are no tuya vacuum integration on home assistant.

Hi, does your custom component work for the Proscenic M7 PRO?
with your component can you tell the robot which area to clean? I would like to buy it but for me it is essential to be able to indicate which areas (among those defined in the app) to clean.