Come possiamo aiutarti?

Print

Come installare Raspberry Pi OS (Raspbian)<br> Broker Mosquitto MQTT su un RaspBerry Pi

 

Questa esercitazione è utile per configurare un broker MQTT locale per testare il nostro

È anche possibile scegliere un broker MQTT su Internet o un’applicazione Android come MQTT Broker.

Installare Raspberry Pi OS Lite

Scaricare “Raspberry Pi OS Lite” dal sito raspberrypi.org
Scaricare, installare e lanciare “BalenaEtcher” su balena.io/etcher
Inserire la scheda Micro SD nel PC
Flashare “Raspberry Pi OS Lite” sulla scheda SD con Balena Etcher

Apertura dell’accesso SSH

Aprire il disco/directory “boot” della scheda SD (reinserire la scheda SD se si riesce a vedere “boot”)
Aggiungere in “boot” un file di testo vuoto e chiamarlo “ssh”

Impostazione di una connessione WiFi

Aggiungere in “boot” un file di testo e nominarlo “wpa_supplicant.conf”
Aprirlo e scrivere al suo interno
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
paese=FR
rete={
ssid="SSID"
psk="PASSWORD"
key_mgmt=WPA-PSK
}

Sostituire SSID e PASSWORD con i propri

Con RaspBerry

Espellere e inserire la scheda SD nel RaspBerry Zero
Accendere il RaspBerry Zero e attendere la connessione al WiFi
Cercate l’indirizzo IP del vostro RaspBerry sulla vostra rete (potete usare Angry IP Scanner)
Scaricare, installare e lanciare PuTTY per l’accesso SSH
Connessione SSH all’indirizzo IP del RaspBerry
Login=pi Password=raspberry
Inserire i comandi: passwd per cambiare la password del RaspBerry

Installare il broker Mosquitto

Inserire i comandi:
sudo apt update
sudo apt install -y mosquitto

Il servizio broker MQTT si avvierà automaticamente al termine dell’installazione.

Stato dell’installazione di Mosquitto Broker

Digitare i comandi: sudo systemctl status mosquitto per verificare l’installazione di Mosquitto MQTT: assicurarsi che il pacchetto sia“Caricato: …” e“Attivo: …”

Opzionale: Testare localmente il broker Mosquitto

Se lo si desidera, è possibile installare anche il client mosquitto. Questo può essere utile per testare il broker MQTT sul server stesso (Raspberry Pi).

  • Digitare i comandi: sudo apt-get install mosquitto-clients e confermare l’installazione
  • Aprire una seconda interfaccia a riga di comando (CLI) utilizzando PuTTY
    • sottoscrivere un argomento di prova chiamato “mymqtttesttopic” digitando: mosquitto_sub -h localhost -t mymqtttesttopic
    • Quindi, pubblicare un messaggio dall’altro terminale: mosquitto_pub -h localhost -t mymqtttesttopic -m "Inviato dal mio broker MQTT"

    • Se l’installazione funziona correttamente, il terminale di sottoscrizione riceverà il messaggio:

Arrestare, eseguire e riavviare Mosquitto

Il servizio broker MQTT si è avviato automaticamente al termine dell’installazione, ma è utile conoscere questi comandi:

Arrestare il servizio mosquitto: sudo systemctl stop mosquitto
Avviare il servizio mosquitto: sudo systemctl start mosquitto
Riavviare il servizio mosquitto: sudo systemctl restart mosquitto

Opzionale: Cambiare il nome dell’host

Se si desidera cambiare il nome host di RaspBerry:
Digitare i comandi: sudo nano /etc/hosts
Con la tastiera, sostituire il testo “raspberry” con un altro (senza caratteri speciali)
Ctrl X Y Invio per salvare il file
Inserire i comandi: sudo nano /etc/hostname
Con la tastiera, sostituire il testo “raspberrypi” con un altro (senza caratteri speciali)

Riavviare il sistema operativo Raspberry Pi

Immettere i comandi: “sudo reboot” per riavviare !

Proteggere il server Mosquitto

Mosquitto legge le informazioni di configurazione dal seguente percorso:

/etc/mosquitto/conf.d

Creare un file default.conf nella directory:

sudo nano /etc/mosquitto/conf.d/default.conf

Verrà forse richiesta la password per l’utente SSH

Incollate le informazioni qui sotto per disabilitare le connessioni anonime e permettere a Mosquitto di leggere credenziali valide dal file /etc/mosquitto/passwd:

allow_anonymous false
file_password /etc/mosquitto/passwd
ascoltatore 1883

Ctrl X Y Invio per salvare il file

Aggiungere una password al broker MQTT

Sostituire USER con il proprio nome utente in questo comando ed eseguirlo:

sudo mosquitto_passwd -c /etc/mosquitto/passwd USER

Verrà richiesta due volte la nuova password

Riavviare il servizio mosquitto per caricare le nuove modifiche:

sudo systemctl restart mosquitto

Collegare un client MQTT

È possibile utilizzare MQTT Explorer come client MQTT

Host = indirizzo IP del Raspberry (utilizzare AngryIP per trovare l’indirizzo IP del Raspberry)
Porta = 1883
Nome utente = USER che avete scelto nella sezione precedente
Password = PASSWORD, anch’essa scelta nella sezione precedente

Nota: Durata delle schede SD

La durata delle schede SD è limitata a un numero di scritture compreso tra 10.000 e 100.000! Il Raspberry Pi OS Lite e il server MQTT funzionano SOLO su questa scheda!

Non trascurate la qualità della scheda SD nel vostro Raspberry Pi!

Esempio di test di avvio:

  • Scheda Samsung EVO 16 GB Classe (10): 25 secondi
  • Classe 8 GB non di marca (4): 2 minuti e 35 secondi

Per questi motivi si sconsiglia l’uso di un Raspberry classico in un ambiente industriale o di produzione.

Nota:Clonazione della scheda SD

È importante avere un backup della scheda SD. In caso di guasto, sarete molto felici di averla?