community italiana di domotica personale
 
Installare il broker MQTT “Mosquitto” su Windows

Installare il broker MQTT “Mosquitto” su Windows

Scopi della guida:
  • Installare e configurare il broker MQTT Mosquitto
  • Livello di difficoltà: medio
Concetti affrontati:
  • installazione e configurazione software
Componenti software utilizzate:
Prerequisiti:
  • Rete Wifi connessa ad Internet
  • Windows configurato e collegato alla rete Wifi
Dispositivi fisici utilizzati:
  • Un computer con sistema operativo WIndows.
GUIDA maggiormente indicatA per:
Windows-200x200
NOTE E DISCLAIMER
  • qualsiasi eventuale modifica agli impianti domestici dev'essere progettata e 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;
  • gli articoli di inDomus sono totalmente indipendenti e non sponsorizzati. Se mai questo cambiasse, verrà segnalato chiaramente sulle pagine oggetto di sponsorizzazione;
  • questa pagina è materialmente scritta e manutenuta da più individui: non ci si aspetti né si pretenda un supporto personale. In caso di difficoltà, chiedere supporto alla community sul nostro forum o sulla nostra chat;
  • se hai bisogno di orientarti, c'è la mappa.
Revisione guida: 1.1

Abstract

Eclipse MosquittoPer qualsiasi implementazione domotica che preveda l’utilizzo del protocollo MQTT, è necessario che sulla rete sia disponibile un broker MQTT, ovvero un “instradatore” dei messaggi generati tramite questo protocollo.
In questa guida affronteremo la procedura di installazione su Raspberry Pi di Eclipse Mosquitto, uno dei broker opensource più diffusi.

Procedimento

Installazione

L’installazione di Mosquitto su Windows non è particolarmente complessa(anzi), non fosse che per farlo funzionare è necessario effettuare la copia manuale di alcuni file presso la cartella di destinazione dell’installazione del software.

Mosquitto su Windows gira come “servizio”, è particolarmente leggero e non inficia in alcun modo le prestazione complessive della macchina, specialmente su macchine recenti.

Innanzitutto, cominciamo con il download relativo al pacchetto d’installazione per windows. Scaricare l’ultima “binary version – Cygwin” per Windows da questo indirizzo: https://mosquitto.org/download/

Al termine del download, eseguire l’installer lasciando tutte le impostazioni di default.
Appuntarsi la directory di installazione del software, solitamente “C:\Mosquitto“.

Al termine dell’installazione verrà visualizzato il seguente errore:

Installazione Mosquitto su WIndows - Errore

Non c’è da preoccuparsi, è (purtroppo) NORMALE.

OpenSSH

Ora è necessario installare OpehnSSH da quale andremo a “rubare” le DLL necessaria all’avvio di Mosquitto.
Scaricare OpenSSH da qui (usale la versione 64bit, se possibile).

Provvedere dunque all’installazione di OpenSSH. Una volta completato, recarsi presso la cartella di installazione di Open SSH e selezionare i seguenti file:

cygcrypto-1.1.0.dll
cyggcc_s-1.dll
cygssl-1.1.0.dll
cygwin1.dll
cygz.dll
libeay32.dll
libssl32.dll
msvcr100.dll
ssleay32.dll

dopodiché copiarli (non spostarli, copiarli) dentro la cartella d’installazione di Mosquitto.

Infine, effettuare il download del file

pthreadVC2.dll

da questo sito: ftp://sources.redhat.com/pub/pthreads-win32/dll-latest/dll/x86/
(tramite mouse/pulsante destro, salva)

e salvarlo direttamente presso il percorso di installazione di Mosquitto.

Installare nuovamente Mosquitto

A questo punto ripetere l’intallazione di Mosquitto, la quale stavolta non segnalerà alcun errore.

Infine, riavviare il computer. Al termine del riavvio, Mosquitto sarà in esecuzione e in ascolto sulla porta 1883.

Verifica dell’effettivo funzionamento

Per verificare se Mosquitto sia in esecuzione è possibile sia verificare presso la lista servizi di Windows sia, tramite prompt dei comandi, eseguire il seguente comando

netstat -na

per elencare quali siano le porte in ascolto.
Se nell’elenco appare la porta 1883, allora Mosquitto è effettivamente in funzione e in ascolto su tale porta:

netstat -na Mosquitto

Apertura firewall

Dopo essesi accertati che Mosquitto sia correttamente in esecuzione, per garantire ai device MQTT presenti sulla propria rete di raggiungere il broker MQTT appena installato è necessario garantire l’accesso a tutte le connessioni in ingresso (a Windows) sulla porta TCP/IP 1883.

Per far ciò è necessario è necessario garantire al file mosquitto.exe (presente nel path di installazione) la presenza sul firewall, con accesso garantito alla porta 1883.

Una guida per effettuare tale impostazione è disponibile qui.

Esecuzione manuale

Oltre all’avvio automatico – come servizio – Mosquitto può anche essere eseguito manualmente. Questo è molto utile per il debug e la verifica di funzionamento.

Per far ciò, è prima necessario fermare il servizio automatico tramite il seguente comando da prompt dei comandi:

net stop mosquitto

dopodiché, per l’esecuzione da prompt dei comandi è sufficiente eseguire il seguente comando:

mosquitto -v

Nb. il parametro “-v” esegue Mosquitto in “verbose mode”, ovvero in modo che ad ogni azione del software corrisponda una voce di log a terminale (utile quando si vuol verificare che i topic MQTT da e per il broker effettivamente arrivino/partano.

Configurazioni dispositivi e risoluzione problemi

Si consiglia la lettura attenta della guida dedicata alla configurazione dei componenti MQTT nella propria domotica.
Per risolvere problemi legati alle comunicazioni MQTT, si consiglia di leggere quest’altra guida.

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. Alcuni link sono taggati in qualità di affiliati Amazon e riceviamo un compenso dagli acquisti idonei, utile al sostenimento del sito, ma le nostre recensioni sono tutte indipendenti e non sponsorizzate. Se ti sei perso, a tua disposizione c'è la mappa.