Il vostro armadio utensili "intelligente" – senza magazzino verticale: a ogni consegna si accende il LED del cassetto dell'attrezzo e una serratura elettrica sblocca lo scomparto; alla restituzione il LED mostra dove va riposto l'attrezzo. Per questo nell'armadio c'è un piccolo controller (ESP32, componenti per circa 40–120 € per armadio). Tulz e l'armadio comunicano tramite un broker MQTT – un piccolo servizio di messaggistica su internet.

Un armadio che si illumina in 8 passi
- Creare le ubicazioni per l'armadio e i cassetti
- Scegliere un broker MQTT – con il broker Tulz non c'è nulla da configurare
- Inserire il broker in Tulz
- Creare l'armadio
- Assegnare gli scomparti ai cassetti
- Procurare i componenti e cablarli
- Scaricare il firmware e caricarlo sull'ESP32
- Testare la connessione
La parte in Tulz richiede circa 10 minuti, il firmware la prima volta circa 30 minuti (un broker proprio ancora altrettanto), il cablaggio da una a due ore a seconda dell'armadio.
Passo 1: ubicazioni per armadio e cassetti
In Amministrazione → Ubicazioni create l'armadio come ubicazione (es. "Armadio 1 Capannone 2") e, sotto, una sotto-ubicazione per ogni cassetto ("Cassetto 1" … "Cassetto 8"). Ogni attrezzo riceve come ubicazione il suo cassetto – oppure un posto al di sotto, come "Cassetto 3 › sinistra", che conta automaticamente. Se le ubicazioni sono già organizzate così, questo passo è fatto.
Passo 2: scegliere il broker
Con il broker Tulz qui non c'è nulla da fare. Il broker lo mette a disposizione Tulz: salvando il controllo armadio, Tulz crea un accesso per la vostra azienda e, creando ogni armadio, un accesso separato per quell'armadio – la sua password è già contenuta nel firmware che scaricherete. Ogni azienda e ogni armadio vede solo i propri messaggi. Proseguite con il passo 3.
Broker proprio – solo se volete gestirne uno di proposito (o se da voi manca il campo Broker in Impostazioni → Controllo armadio): Tulz gira su internet, l'armadio nella vostra officina – entrambi si collegano al broker di propria iniziativa. Perciò il broker deve essere raggiungibile da internet (nessun indirizzo della rete interna come 192.168.…), mentre nel router dell'officina non va aperto nulla. Va bene qualsiasi broker MQTT con TLS sulla porta 8883 e un utente autorizzato a leggere e scrivere il prefisso dei topic tulz/<numero azienda> – ad esempio un servizio cloud come EMQX Cloud (piano Serverless con quota gratuita; lasciare lo spend limit a 0) oppure un Mosquitto proprio su un server (listener 8883, certificato Let's Encrypt come certfile/keyfile, allow_anonymous false, password_file; aprire la porta 8883 nel firewall). Per il passo 3 vi serviranno indirizzo, porta, nome utente e password del broker.
Passo 3: inserire il broker in Tulz
Con il broker Tulz:
- Aprire Impostazioni e, nella sezione Interfacce & dispositivi, cliccare su Controllo armadio.
- Spuntare Attivare il controllo armadio, in Broker scegliere "Broker Tulz" e impostare Sblocco scomparto (secondi) (0 = nessuna serratura, solo luce).
- Salva – Tulz crea l'accesso e lo mostra con indirizzo e prefisso dei topic. Fatto, proseguire con il passo 4.

Con un broker proprio:
- Aprire Impostazioni e, nella sezione Interfacce & dispositivi, cliccare su Controllo armadio.
- Spuntare Attivare il controllo armadio (se c'è il campo Broker, scegliere lì "Broker proprio") e inserire: Indirizzo del broker (solo il nome, senza
mqtt://e senza porta), Porta 8883, Cifratura "TLS (consigliato)", Nome utente e Password del broker. - Lasciare vuoto il Prefisso dei topic – vale allora
tulz/<numero azienda>. Sblocco scomparto (secondi): per quanto resta aperta una serratura dopo la consegna; 0 = nessuna serratura, solo luce. - Salva. Tulz chiede una volta la vostra password, perché vengono salvati dati di accesso. La password del broker viene poi conservata cifrata in Tulz; il campo resta vuoto ("salvata, lasciare vuoto = mantenere").



Passo 4: creare l'armadio
A destra, in Creare armadio:
- Nome – a piacere, es. "Armadio 1 Capannone 2"
- ID dispositivo – es.
schrank-1(minuscole, cifre, - e _). Finisce poi nel firmware; dopo il caricamento non modificarlo, altrimenti Tulz non trova più l'armadio. - Ubicazione dell'armadio – l'ubicazione del passo 1
- Scomparti – numero di cassetti o LED (fino a 64; serrature e contatti fino a 8 per ESP32)
Con Crea si apre la pagina dell'armadio. Con il broker Tulz, l'armadio riceve automaticamente il proprio accesso.

Passo 5: assegnare gli scomparti ai cassetti
Nella pagina dell'armadio scegliere per ogni scomparto il cassetto corrispondente e cliccare Salvare gli scomparti. Lo scomparto 1 è il primo LED della striscia, lo scomparto 2 il secondo e così via. Gli attrezzi nel cassetto o in un posto al di sotto attivano lo scomparto – sugli attrezzi non va cambiato nulla. L'Etichetta è facoltativa (altrimenti vale il nome del cassetto).

Passo 6: componenti e cablaggio


- Alimentazione: alimentatore 5 V all'ESP32 (5V o VIN e GND) e alla striscia LED (+5V, GND). Montare il condensatore da 1000 µF direttamente sulla striscia tra +5V e GND (lato negativo a GND).
- LED: GPIO 13 attraverso la resistenza da 330 Ω a DIN della striscia. Rispettare la direzione della freccia sulla striscia. Il primo LED appartiene allo scomparto 1 – posare la striscia nell'ordine degli scomparti.
- Contatti dei cassetti (facoltativi): un contatto reed per cassetto tra il pin della tabella e GND, il magnete sul cassetto – a cassetto chiuso il contatto è chiuso.
- Serrature (facoltative): un modulo MOSFET per serratura: SIG al pin della tabella, GND a GND, V+ a +12 V. La serratura va tra +12 V e OUT, con un diodo 1N4007 in parallelo alla serratura (anello verso +12 V). Scegliere serrature fail-secure: senza corrente restano chiuse.
- Massa: collegare tutte le GND – alimentatore 5 V, alimentatore 12 V ed ESP32.
Da non usare: GPIO 0, 2 e 12 (pin di avvio), 6–11 (flash); 34–39 sono solo ingressi senza pull-up. L'ESP32 supporta solo il Wi-Fi a 2,4 GHz.
Passo 7: caricare il firmware
- Nella pagina dell'armadio cliccare Scaricare firmware e guida (ZIP). Lo ZIP contiene il programma
tulz-schrank.ino, la guidaLIESMICH.txte l'assegnazione dei pinVerdrahtung.txt(in tedesco). - Installare il software Arduino (Arduino IDE 2) da arduino.cc. In File → Preferenze → URL aggiuntive per il gestore schede inserire
https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json, poi in Strumenti → Scheda → Gestore schede installare "esp32" (Espressif Systems). - In Strumenti → Gestisci librerie installare: PubSubClient (Nick O'Leary), ArduinoJson (Benoît Blanchon, versione 7) e Adafruit NeoPixel.
- Aprire
tulz-schrank.ino. Le righe evidenziate in arancione sono già compilate da Tulz – non modificarle. Quelle verdi le inserite voi: nome Wi-Fi, password Wi-Fi e password del broker – con il broker Tulz la password è già presente, basta il Wi-Fi. - Collegare l'ESP32 via USB, in Strumenti → Scheda scegliere "ESP32 Dev Module" e la porta, cliccare Carica (freccia). Se il caricamento si ferma su "Connecting…", tenere premuto brevemente il tasto BOOT dell'ESP32.
- Aprire Strumenti → Monitor seriale (115200 baud): compare "MQTT verbunden" (MQTT connesso). All'avvio una breve luce scorrevole passa su tutti gli scomparti.


Senza certificato radice (MQTT_CA_CERT) l'armadio si collega in modo cifrato, ma non verifica il certificato del broker. Per la massima sicurezza inserire il certificato radice – per i certificati Let's Encrypt "ISRG Root X1" (letsencrypt.org/certificates), per EMQX Cloud il certificato CA dalle informazioni di connessione.
Con il broker Tulz, il firmware contiene la password dell'armadio. Per questo Tulz chiede una volta la vostra password prima del download – non condividere il file. Se un armadio è andato perso o il file è finito in mani sbagliate: nella pagina dell'armadio, in Stato, cliccare Genera nuova password, poi scaricare e caricare di nuovo il firmware. La vecchia password non vale più da subito.
Passo 8: testare la connessione
Di nuovo in Tulz: Impostazioni → Controllo armadio → Testare la connessione e inviare la luce di prova. Tulz si collega al broker, tutti gli scomparti si accendono uno dopo l'altro e ogni armadio risponde. Nella pagina dell'armadio, Stato mostra quando si è segnalato l'ultima volta, con firmware, potenza Wi-Fi e indirizzo IP; la tabella indica per ogni scomparto se il cassetto è aperto o chiuso. Mostra accende un singolo scomparto per 15 secondi – così verificate che ogni LED sia sul cassetto giusto.


Nell'uso quotidiano
- Consegna – dal modulo di consegna, con la lista di prelievo, al chiosco o dal telefono: lo scomparto si accende di blu ed è sbloccato per il tempo impostato. Il messaggio in Tulz indica armadio e scomparto.
- Restituzione – anche tramite scansione o al chiosco: lo scomparto si accende di verde – riporre lì l'attrezzo. In più compare "Riporre in".
- Pagina dell'attrezzo → Mostra nell'armadio – lo scomparto si accende di giallo per 15 secondi. Il pulsante compare solo per gli attrezzi la cui ubicazione è assegnata a uno scomparto.
- Cassetti aperti – con i contatti, la pagina dell'armadio mostra quali cassetti sono aperti.



I comandi partono in background dopo la registrazione – la consegna non aspetta mai l'armadio. Se il broker non è raggiungibile, la registrazione resta valida; l'errore compare nell'elenco degli armadi e in alto in Ultimo errore. Sono possibili più armadi per sede, ognuno con il proprio ID dispositivo.
Se qualcosa non funziona
| Messaggio o osservazione | Cosa fare |
|---|---|
| "Broker-Adresse nicht auflösbar" (indirizzo non risolvibile) | Controllare l'indirizzo – solo il nome, es. mqtt.autohaus-muster.de, senza mqtt:// e porta. |
| "Keine Verbindung zum Broker …" (nessuna connessione) | Porta e cifratura corrispondono? (8883 con TLS, 1883 senza). La porta 8883 è aperta sul broker – e consentita in uscita sul server web? |
| "Benutzername oder Passwort falsch" / "Nicht autorisiert …" | Controllare l'accesso sul broker; l'utente ha bisogno dei diritti sul prefisso dei topic. |
| "Ziele im internen Netz sind nicht erlaubt" | Il broker deve essere raggiungibile da internet (indirizzo pubblico). |
| "ancora nessuna segnalazione di stato da un armadio" | Controllare il monitor seriale: "MQTT-Fehler -2" = nessuna connessione (Wi-Fi, indirizzo, porta), "MQTT-Fehler 4" o "5" = utente o password. ID dispositivo e prefisso dei topic sono uguali nel firmware e in Tulz? Dopo aver cambiato il prefisso scaricare di nuovo il firmware. |
| Nessun Wi-Fi | Solo 2,4 GHz; nome e password Wi-Fi esattamente come nel router. |
| Si accende il cassetto sbagliato | Controllare ogni scomparto con Mostra; adattare l'ordine dei LED o l'assegnazione. Più LED per cassetto: LEDS_PER_SLOT nel firmware. |
| Alla consegna non si accende nulla | L'attrezzo ha un'ubicazione in un cassetto assegnato? L'armadio è attivo e il controllo armadio è attivato? |
| "Impossibile creare l'accesso sul broker Tulz" | Il broker non è raggiungibile in questo momento – salvare di nuovo più tardi. Se il messaggio rimane, contattare l'assistenza. |
| Dopo un nuovo ID dispositivo l'armadio non si annuncia | Con il broker Tulz l'accesso è legato all'ID dispositivo: scaricare e caricare di nuovo il firmware. |
| La serratura non si apre | Controllare alimentatore 12 V, massa comune e modulo MOSFET; Sblocco scomparto (secondi) diverso da 0. |
Sicurezza
L'armadio accetta comandi solo sul proprio topic; il broker richiede nome utente, password e TLS. Una serratura si apre al massimo per 300 secondi e si blocca senza corrente (fail-secure) – con la chiave l'armadio si apre sempre. Chi ha prelevato qualcosa risulta come di consueto in Tulz, non sull'armadio: la consegna la registra il dipendente al chiosco o sul proprio dispositivo. Con il broker Tulz ogni armadio ha un accesso proprio che può leggere e scrivere solo i propri topic; nessuna officina vede i messaggi di un'altra. Nell'azienda demo il controllo armadio è bloccato.