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

Integrare il robot Proscenic M7 Pro a Home Assistant

Amazon - Promozioni del giorno  
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 indicata per utenti con installazione:
Ambiente Home Assistant HassOS-Supervised-Core
NOTE E DISCLAIMER
  • qualsiasi eventuale modifica agli impianti domestici dev'essere progettata ed realizzata SOLO da personale qualificato;
  • qualsiasi modifica non prevista attuata in proprio è a propria responsabilità personale nonché a proprio rischio e pericolo (i contenuti della presenta pagina hanno infatti puro scopo didattico) e fa decadere garanzia, omologazioni e certificazioni di qualità; dei dispositivi interessati;
  • tutte le tecniche descritte si intendono applicate a software e firmware aggiornati alle ultime versioni disponibili;
  • questa pagina è materialmente scritta e manutenuta da più individui: non ci si aspetti né si pretenda un supporto personale. In presenza di difficoltà, chiedere supporto alla community sul nostro forum o sulla nostra chat.
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 Raspberry Pi OS, 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. Presso l’interfaccia dell’HUB l’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

⚠️ Se di Home Assistant ne sai poco ma sei interessato a capirne di più, ti suggeriamo di partire da qui.

Questa pagina è redatta, manutenuta e aggiornata dallo staff di inDomus, un gruppo di persone molto diverse tra loro che trovi, per domande e supporto, sul forum e sulla chat del sito. Se ti sei perso, a tua disposizione c'è la mappa.
Telegram News Channel