community italiana di domotica personale
 
Integrare il robot Proscenic M7 Pro a Home Assistant

Integrare il robot Proscenic M7 Pro a Home Assistant

3 minuti di lettura
Scopi della guida:
  • Integrare il robot aspirapolvere/lavapavimenti Proscenic M7 Pro a Home Assistant
  • Livello di difficoltà: bassa
  • Categoria d’integrazione: Cloud Polling
Concetti affrontati:
  • Configurazione software
Componenti software utilizzate:
Prerequisiti:
  • Home Assistant configurato e funzionante
  • Uno o più robot Proscenic da integrare già configurato/i in Wi-Fi tramite la propria app mobile per Android e iOS
Dispositivi fisici utilizzati:
GUIDA maggiormente indicatA per:

Tutti gli ambienti

Note e disclaimer
  • qualsiasi eventuale modifica agli impianti domestici dev'essere progettata ed realizzata SOLO da personale qualificato;
  • qualsiasi modifica attuata in proprio è a propria responsabilità personale nonché a proprio rischio e pericolo (i contenuti della presenta pagina hanno puro scopo didattico);
  • qualsiasi modifica attuata in proprio a un dispositivo ne fa decadere garanzia, omologazioni e certificazioni di qualità.
Revisione guida: 1.0

Proscenic - Home Assistant

Abstract

I robot aspirapolvere (e lavapavimenti) sono tra le appliance domotiche ultimamente tra le più apprezzate, e capire il perché è semplice: in una vita sempre più frenetica e mai come oggi bisognosa di igiene e pulizia, sono validissimi alleati di tutti i giorni per garantire una pulizia il più possibile costante e certa.

Tra le tante soluzioni possibili, il robot Proscenic M7 Pro, top di gamma della tedesca Proscenic, è uno dei tanti adottati a livello mondiale.

Va da sé che la possibilità/volontà di integrarlo al proprio HUB personale Home Assistant sia un must: non solo per la possibilità di gestirne gli stati, ma anche e sopratutto per pilotarlo tramite automazioni, per esempio come nel caso di voler attivare le pulizie quando si esce di casa, o molto altro – il limite, come sempre, è la fantasia.

Per far ciò è possibile sia utilizzare i raggi infrarossi copiando i codici del telecomando originale usando Broadlink o componenti analoghi, come spiegato in questa guida, oppure utilizzando una tecnica che prevede l’evocazione di indirizzi del cloud Proscenic per consentire di comandare il robot. Nella presente guida documentiamo questo secondo caso, utilizzando per l’occasione il package realizzato dal nostro membro AndKer.

Assunti

Si assume che Home Assistant ovviamente sia già operativo. Si assume inoltre che il robot in questione sia già stato configurato fornendogli accesso alla propria rete Wi-Fi, cosa che può essere fatta tramite l’app Proscenic Home (disponibile sia per iOS che per Android). Ci serviranno username e password in uso presso tale app assieme ad altre due informazioni, ovvero il seriale del robot da integrare e il token d’accesso al cloud.

Proscenic M7 Pro

Si parte

Seriale robot

Prima di passare alla configurazione è necessario ottenere il seriale del robot o dei robot da integrare. Per farlo è necessario è necessario utilizzare cURL, il quale può essere evocato da riga di comando da qualsiasi terminale Linux-like (per esempio Raspberry installato con Raspbian, oppure da macOS, Ubuntu e così via) o da Windows.

Il comando da eseguire è. il seguente:

curl -v -k -X POST -H "os: i" -H "Content-Type: application/json" -H "c: 338" -H "lan: en" -H "Host: mobile.proscenic.com.de:443" -H "User-Agent: ProscenicHome/1.7.8 (iPhone; iOS 14.2.1; Scale/3.00)" -H "v: 1.7.8" -d "{\"state\":\"欧洲\",\"countryCode\":\"49\",\"appVer\":\"1.7.8\",\"type\":\"2\",\"os\":\"IOS\",\"password\":\"$(echo -n $PASSWORD | md5sum)\",\"registrationId\":\"13165ffa4eb156ac484\",\"language\":\"EN\",\"username\":\"$LOGINUSER\",\"pwd\":\"$PASSWORD\"}" "https://mobile.proscenic.com.de/user/login"

Ovviamente le variabili $LOGINUSER e $PASSWORD andranno personalizzate rispettivamente col proprio nome utente e password.
La risposta sarà qualcosa del genere:

{
  "code": 0,
  "msg": "success",
  "data": {
    "token": "XXXXXXXXXXXXXXX",
    "uid": "XXXXXXXXXXXXXXX",
    "equipcount": 0,
    "nickname": null,
    "recieveMsg": false,
    "countryCode": "49",
    "homeId": null
  }
}

Segnarsi da parte la stringa indicata presso il campo “token“.
Ora eseguire, sempre personalizzandolo, il seguente comando:

curl "https://mobile.proscenic.com.de/user/getEquips/$LOGINUSER" -d "username=$LOGINUSER"

si otterrà una risposta analoga alla seguente:

"content": [
      {
        "name": "M7 Pro",
        "code": "M7_PRO",
        "typeName": "CleanRobot",
        "model": "811_LDS",
        "sn": "XXXXXXXXXXXXXXX",
        "deviceId": null,
        "status": true,
        "imgUrl": "http://mobile.proscenic.com.de/images/M7_PRO.png",
        "homeId": null,
        "shared": false,
        "jump": "M7_PRO",
        "ctrlversion": null,
        "enabled": true,
        "scMac": null,
        "scSV": null,
        "faqUrl": "https://www.proscenic.com/support/faq-f0460-l9999.html",
        "cloud": 0,
        "type": "CleanRoobot"
      }
]

Segnarsi da parte la stringa indicata presso il campo “sn“, il quale rappresenta il seriale del robot.

Configurazione

Giunti a questo punto provvediamo a scaricare il package di AndKer e installarlo presso il nostro HUB come spiegato anche in questa scheda.

Una volta installato, provvediamo a modificare il file secrets.yaml in esso contenuto, andando a correggere i campi:

proscenic_username: XXXXXXXXXXXXXXX     # add here your username
proscenic_token: XXXXXXXXXXXXXXX     # add here your token
proscenic_serial: XXXXXXXXXXXXXXX     # add here your serial 

andando ad indicare al posto delle XXXXXXXXXXXXXXX i tre rispettivi valori raccolti in precedenza.
Infine, riavviare infine Home Assistant.

Entità

Completato il riavvio, l’HUB creerà una serie di entità.

Di base, il package crea tanti “Script” quante sono le funzioni sinora ottenute tramite questo tipo di integrazione (vi consigliamo di mettere il watch sul progetto GitHub per essere aggiornati su eventuali evoluzioni).

L’entità più importante, ovviamente, è di tipo Vacuum, il che consente di controllare il robot direttamente da Home Assistant in tutte le sue funzioni (per lo meno quelle sin qui ottenute).

Comandare il robot

Ora chiaramente è il momento di iniziare utilizzare il robot tramite Home Assistant. L’interfaccia presso Lovelace dell’entità di tipo “Vacuum” è abbastanza parlante:

Home Assistant - Proscenic M7 Pro

basterà quindi operare sui comandi per far partire l’aspirapolvere nelle varie modalità.
Inoltre, sono disponibili i sopracitati script:

Home Assistant - Proscenic M7 Pro - Servizi

Ciò che è però veramente interessante è la possibilità di comandare il robot tramite servizi, nello specifico usando il servizio vacuum.send_command, come da documentazione ufficiale.


Pulire automaticamente casa quando si esce tramite la domotica di Home Assistant


Home Assistant Official Logo ATTENZIONE: ricorda che sul nostro community FORUM c'è una sezione ad hoc dedica a Home Assistant, per qualsiasi dubbio, domanda, informazione nel merito specifico di queste componenti.

   
Telegram News Channel