A proposito Alessandro

Ingegnere delle Telecomunicazioni con propensione al web2.0 ed il pallino della tecnologia; toscano & casentinese, vivo a Firenze

Difficoltà: Media | Tempo stimato: 2–3 ore | Requisiti: Home Assistant OS/Supervised, account Tuya IoT Platform, gateway Tuya BT/Wi-Fi


1. Introduzione: cos’è il Parkside PMRC 250 A1 e perché integrarlo in Home Assistant

Il Parkside PMRC 250 A1 (venduto da Lidl) è un robot tagliaerba compatto, economico e sorprendentemente capace. Nonostante il prezzo contenuto, nasconde sotto la scocca un’anima smart: il firmware è basato su Tuya, la stessa piattaforma IoT usata da migliaia di dispositivi connessi in tutto il mondo.

Caratteristiche tecniche principali

CaratteristicaValore
Superficie massima250 m²
Larghezza di taglio16 cm
Altezze di taglio25 / 35 / 45 mm
BatteriaLi-Ion 20 V – 2,0 Ah
ConnettivitàBluetooth (BLE) via app Parkside
Pendenza massima15° (27%)
Modalità di taglioBordo completo, Zone secondarie (fino a 5), Spot
ProtezioneSensore pioggia, PIN, sensore sollevamento/inclinazione
MotoreBrushless

Il robot è controllabile tramite l’app Parkside via Bluetooth, ma non supporta il Wi-Fi nativamente. Questo è il punto cruciale: per integrarlo in Home Assistant occorre un passaggio intermedio — un gateway Tuya Bluetooth/Wi-Fi che faccia da ponte tra il BLE del robot e la rete di casa.

Perché integrarlo in Home Assistant?

Una volta collegato, potrai:

  • Monitorare stato, livello batteria, errori e avvisi in tempo reale
  • Avviare e fermare il taglio da dashboard o da automazioni
  • Programmarlo in base a condizioni meteo, orari, o altri sensori della tua smart home
  • Ricevere notifiche push su smartphone quando il robot torna alla base o segnala un errore
  • Integrarlo in routine complesse (es. “non falciare se piove o se ci sono persone in giardino”)

2. Configurazione del gateway Tuya Bluetooth/Wi-Fi

Il Parkside PMRC 250 A1 comunica solo via Bluetooth BLE. Per esporlo sulla rete Wi-Fi locale (e quindi renderlo raggiungibile da Home Assistant via tuya-local), serve un gateway multi-protocollo Tuya che supporti BLE Mesh/BLE Sub-device.

2.1 Gateway consigliati

Cerca su Amazon o AliExpress gateway con queste caratteristiche:

  • Protocolli: Wi-Fi 2,4 GHz + Bluetooth (BLE/BLE Mesh)
  • Ecosistema: Tuya / Smart Life compatibile
  • Modelli noti funzionanti: gateway Tuya multi-mode (es. quelli venduti sotto brand Moes, Aubess, LSC Smart Connect)

⚠️ Attenzione: Non tutti i gateway Tuya BT supportano sub-device generici. Cerca modelli descritti come “BT Gateway” o “Multi-mode Gateway” che nella scheda tecnica citino “BLE Mesh sub-device support”.
Io ho preso questo modello di MOES su Aliexpress perchè mi piaceva la compattezza.

2.2 Installazione fisica del gateway

  1. Posiziona il gateway entro 5–10 metri dalla stazione di ricarica del robot — il Bluetooth ha portata limitata.
  2. Alimenta il gateway tramite USB o presa a muro secondo il modello scelto.
  3. Assicurati che il tuo router eroghi il segnale Wi-Fi 2,4 GHz in quella zona.

2.3 Configurazione tramite app Tuya Smart / Smart Life

  1. Scarica l’app Tuya Smart o Smart Life su Android/iOS.
  2. Crea un account (o accedi se ne hai già uno).
  3. Tap su “+” in alto a destra → “Aggiungi dispositivo”.
  4. Cerca il tuo gateway nell’elenco o scansiona il QR sul dispositivo.
  5. Segui la procedura guidata: inserisci le credenziali Wi-Fi di casa (solo 2,4 GHz), attendi il lampeggio di conferma.
  6. Una volta aggiunto il gateway, torna alla home dell’app.

2.4 Aggiunta del robot al gateway

  1. Nell’app Tuya Smart, apri il gateway appena aggiunto.
  2. Cerca l’opzione “Aggiungi sub-device” o “Cerca dispositivi Bluetooth”.
  3. Avvicina lo smartphone al robot, accendilo e attivalo in modalità pairing (consulta il manuale: di solito basta tenerlo acceso con il coperchio chiuso).
  4. Il robot dovrebbe comparire come “Parkside Robot Mower” o con Product ID 7yr5iwga.
  5. Conferma l’aggiunta: il robot è ora visibile nell’app Tuya come sub-device del gateway.

Verifica: Prova a mandare il robot al taglio e al rientro dalla base direttamente dall’app Tuya. Se funziona, il bridge BT→Wi-Fi è operativo.


3. Collegamento a Home Assistant con l’integrazione Tuya Local

Ora che il robot è su Wi-Fi tramite gateway, possiamo collegarlo a Home Assistant localmente, senza cloud, usando l’integrazione tuya-local (HACS).

3.1 Ottenere le credenziali Tuya IoT

Poiché il robot è collegato come sub-device del gateway, tuya-local richiede tre valori distinti:

ValoreA cosa si riferisce
IP addressIndirizzo IP locale del gateway
Device IDID del gateway (non del robot)
Local KeyChiave locale del gateway
node_idID univoco del robot all’interno del gateway

Il modo più semplice per recuperare tutti questi valori è lo strumento tinytuya:

  1. Vai su iot.tuya.com e accedi (o registrati).
  2. Crea un nuovo progetto: Cloud → Development → Create Cloud Project.
    • Nome: qualsiasi (es. “HomeAssistant”)
    • Tipo: Smart Home
    • Regione: Europe (West)
  3. Nella tab “API Products”, abilita almeno:
    • Smart Home Scene Linkage
    • IoT Core
    • Device Status Notification
  4. Vai su “Link Tuya App Account” e collega il tuo account Tuya Smart scansionando il QR con l’app.
  5. Installa tinytuya ed esegui il wizard:
pip install tinytuya
python -m tinytuya wizard
  1. Inserisci Client ID, Secret e Region (eu) dal tuo progetto IoT quando richiesto. Il wizard scarica automaticamente tutti i dispositivi associati all’account e li salva in devices.json.
  2. Apri devices.json e individua i due dispositivi che ti servono:
    • Il gateway — annotane id (device_id), key (local_key) e ip
    • Il robot (elencato come sub-device) — annotane il campo node_id

💡 Come riconoscerli: Il gateway compare come dispositivo Wi-Fi con un IP nella tua rete locale. Il robot compare come sub-device privo di IP proprio, con un node_id nel formato xxxxxxxxxxxx.

3.2 Installazione di tuya-local via HACS

  1. In Home Assistant, vai su HACS → Integrazioni → “+”.
  2. Cerca “Tuya Local” e installala.
  3. Riavvia Home Assistant.

3.3 Aggiunta del dispositivo

  1. Vai su Impostazioni → Dispositivi e Servizi → Aggiungi integrazione.
  2. Cerca “Tuya Local” e avvia la configurazione.
  3. Inserisci i valori recuperati con tinytuya nel passaggio precedente:
    • IP address → IP locale del gateway
    • Device ID → ID del gateway
    • Local Key → chiave locale del gateway
    • node_id → ID del robot (sub-device)
    • Protocol version: 3.3 o 3.4 (prova 3.3 prima)

ℹ️ Perché gateway e non robot? tuya-local si connette via Wi-Fi al gateway, che fa da proxy verso il robot BLE. Il device_id identifica il gateway sulla rete, mentre il node_id permette all’integrazione di indirizzare i comandi specificamente al robot registrato come sub-device.

3.4 Selezione del profilo dispositivo

A partire dalla versione 2026.5.0 di tuya-local, il Parkside PMRC 250 A1 è supportato ufficialmente — il profilo del robot viene riconosciuto e selezionato automaticamente durante la configurazione. Ho testato personalmente questa versione: il dispositivo viene identificato correttamente senza alcuna configurazione manuale dei data point (vedi issue #4859 su GitHub).

Assicurati di avere tuya-local ≥ 2026.5.0 prima di procedere. In HACS puoi controllare la versione installata in HACS → Integrazioni → Tuya Local.

4. Setup e ottimizzazioni in Home Assistant: dashboard e automazioni

Con il robot integrato, è il momento di costruire un’esperienza d’uso che valga davvero.

4.1 Dashboard Lovelace

Crea una card dedicata al robot nella tua dashboard. Ecco un esempio con la card Mushroom (da HACS):

type: vertical-stack
cards:
  - type: custom:mushroom-entity-card
    entity: lawn_mower.parkside_pmrc250
    name: Robot Tagliaerba
    icon: mdi:robot-mower
    tap_action:
      action: more-info

  - type: horizontal-stack
    cards:
      - type: custom:mushroom-template-card
        primary: "Batteria"
        secondary: "{{ states('sensor.parkside_battery') }}%"
        icon: mdi:battery
        icon_color: >
          {% if states('sensor.parkside_battery')|int > 50 %}green
          {% elif states('sensor.parkside_battery')|int > 20 %}orange
          {% else %}red{% endif %}

      - type: custom:mushroom-template-card
        primary: "Stato"
        secondary: "{{ states('sensor.parkside_status') }}"
        icon: mdi:information-outline

  - type: custom:mushroom-chips-card
    chips:
      - type: action
        icon: mdi:play
        tap_action:
          action: call-service
          service: lawn_mower.start_mowing
          target:
            entity_id: lawn_mower.parkside_pmrc250
      - type: action
        icon: mdi:pause
        tap_action:
          action: call-service
          service: lawn_mower.pause
          target:
            entity_id: lawn_mower.parkside_pmrc250
      - type: action
        icon: mdi:home
        tap_action:
          action: call-service
          service: lawn_mower.dock
          target:
            entity_id: lawn_mower.parkside_pmrc250

4.2 Automazione: taglio programmato con controllo meteo

Fai lavorare il robot solo quando il tempo lo permette, sfruttando l’integrazione meteo di HA:

alias: "Parkside: taglio mattutino (se sereno)"
description: "Avvia il robot ogni mattina in settimana se non piove"
trigger:
  - platform: time
    at: "08:30:00"
condition:
  - condition: time
    weekday:
      - mon
      - tue
      - wed
      - thu
      - fri
  - condition: state
    entity_id: weather.casa
    state: sunny
    # oppure 'partlycloudy', 'cloudy' — escludi 'rainy', 'pouring', 'lightning'
  - condition: numeric_state
    entity_id: sensor.parkside_battery
    above: 30
action:
  - service: lawn_mower.start_mowing
    target:
      entity_id: lawn_mower.parkside_pmrc250
  - service: notify.mobile_app_tuo_telefono
    data:
      message: "🌿 Robot tagliaerba avviato!"
      title: "Parkside PMRC 250"
mode: single

4.3 Automazione: notifica al completamento e rilevamento errori

alias: "Parkside: notifica stato"
trigger:
  - platform: state
    entity_id: sensor.parkside_machinestatus
    to: "CHARGING"
    from: "MOWING"
  - platform: state
    entity_id: sensor.parkside_machinestatus
    to: "ERROR"
action:
  - choose:
      - conditions:
          - condition: state
            entity_id: sensor.parkside_machinestatus
            state: "CHARGING"
        sequence:
          - service: notify.mobile_app_tuo_telefono
            data:
              message: "✅ Taglio completato! Il robot è tornato alla base."
              title: "Parkside PMRC 250"
      - conditions:
          - condition: state
            entity_id: sensor.parkside_machinestatus
            state: "ERROR"
        sequence:
          - service: notify.mobile_app_tuo_telefono
            data:
              message: "⚠️ Errore robot tagliaerba! Controlla il giardino."
              title: "Parkside PMRC 250"
mode: single

4.4 Il problema del tasto “Torna alla base” e come risolverlo

Se hai usato la card standard lawn_mower di Lovelace, avrai notato che il pulsante “Dock” (🏠) a volte non funziona come ci si aspetta: se il robot è in modalità di taglio attivo, inviare direttamente lawn_mower.dock non lo riporta alla base in modo affidabile. Questo perché il Parkside PMRC 250 A1 richiede una sequenza precisa di stati intermedi prima di poter eseguire il rientro:

  1. Prima deve essere messo in pausa (lawn_mower.pause)
  2. Poi deve ricevere il comando “Cancel mowing” (tramite l’entità button.parkside_robot_cancel_mowing esposta da tuya-local)
  3. Solo a quel punto lawn_mower.dock viene accettato correttamente

Per gestire questa sequenza in modo trasparente ho creato uno script che la esegue in automatico, e un’automazione che intercetta ogni chiamata a lawn_mower.dock sul robot e la reindirizza allo script — così il pulsante della card funziona correttamente senza dover cambiare nulla nella dashboard.

Script: parkside_torna_alla_base

Crea questo script in Impostazioni → Script → Aggiungi script (o in scripts.yaml):

alias: Parkside - Torna alla base
icon: mdi:home-import-outline
mode: single
sequence:
  # 1. Se sta falciando, metti in pausa e aspetta che lo stato sia "paused"
  - if:
      - condition: state
        entity_id: lawn_mower.parkside_robot
        state: mowing
    then:
      - action: lawn_mower.pause
        target:
          entity_id: lawn_mower.parkside_robot
      - wait_for_trigger:
          - trigger: state
            entity_id: lawn_mower.parkside_robot
            to: paused
        timeout: "00:00:15"
        continue_on_timeout: true
  # 2. Se è in pausa, premi "Cancel mowing" e aspetta che sia tornato in dock/standby
  - if:
      - condition: state
        entity_id: lawn_mower.parkside_robot
        state: paused
    then:
      - action: button.press
        target:
          entity_id: button.parkside_robot_cancel_mowing
      - wait_for_trigger:
          - trigger: state
            entity_id: lawn_mower.parkside_robot
            to: docked
        timeout: "00:00:15"
        continue_on_timeout: true
  # 3. Manda il comando definitivo di ritorno alla base
  - action: lawn_mower.dock
    target:
      entity_id: lawn_mower.parkside_robot

Automazione: intercetta il tasto Dock della card

Questa automazione fa sì che ogni volta che qualcuno (o un’altra automazione) chiama lawn_mower.dock sul robot, venga eseguito lo script sopra invece del comando diretto. La condizione sul script.parkside_torna_alla_base in stato 'off' è fondamentale: evita la ricorsione, ovvero fa sì che quando lo script stesso chiama lawn_mower.dock al passo 3, l’automazione non si rilanci su se stessa all’infinito.

alias: Parkside - tasto base usa script
description: >
  Intercetta lawn_mower.dock dal tasto "base" della card lawn_mower e lancia
  lo script che fa la sequenza pause+cancel+dock. La seconda condition evita
  la ricorsione: quando lo script stesso chiama lawn_mower.dock, la sua
  entità è in stato 'on', quindi l'automation skippa.
mode: single
trigger:
  - platform: event
    event_type: call_service
    event_data:
      domain: lawn_mower
      service: dock
condition:
  - condition: template
    value_template: >-
      {%- set eid = trigger.event.data.service_data.entity_id -%}
      {%- if eid is string -%}
        {{ eid == 'lawn_mower.parkside_robot' }}
      {%- else -%}
        {{ 'lawn_mower.parkside_robot' in (eid or []) }}
      {%- endif -%}
  - condition: state
    entity_id: script.parkside_torna_alla_base
    state: "off"
action:
  - action: script.parkside_torna_alla_base

💡 Nota: I wait_for_trigger con continue_on_timeout: true garantiscono che la sequenza non si blocchi se il robot impiega più del previsto a cambiare stato. In condizioni normali il timeout di 15 secondi è abbondante.


Conclusioni

Integrare il Parkside PMRC 250 A1 in Home Assistant richiede un po’ di lavoro iniziale — soprattutto il setup del gateway BT/Wi-Fi e il recupero delle credenziali Tuya — ma il risultato è una gestione completamente locale, veloce e personalizzabile del tuo robot tagliaerba. Niente cloud, niente latenza, pieno controllo.

A partire da tuya-local 2026.5.0 il supporto per questo robot è ufficiale e funzionante out of the box: basta inserire i dati giusti e il profilo viene riconosciuto automaticamente.

I’m back after years on this blog to write a mini how-to, mainly a note for myself.

I’m an enthusiast Home Assistant user, the most used open platform for home automation.
I aimed to use my own custom subdomain for Home Assistant. I wanted an SSL certificate issued by Let’s Encrypt in cPanel.

My recipe

  • cPanel Dynamic DNS to setup a dedicated subdomain for my Home Assistant installation (the dynamic IP is automatically updated by HA when IP change)
  • SSL certificate auto-generated by cPanel. The certificated is issued by Let’s Encrypt and expire every 3 months
  • SSL cert (and private key) configured in HA with addon “NGINX Home Assistant SSL proxy

The problem

On my first try, I just copied the SSL cert from cPanel to HA folder /ssl/fullchain.pem file and private key to /ssl/privkey.pem (the are just text files with .pem extension) and restarted NGINX plugin.
This exposed the SSL cert to the https domain. However, I had problems with the Samsung SmartThings Integration. The SmartThings cloud could not connect to my Home Assistant webhook URL.

SmartThings could not validate the webhook URL. Please ensure the webhook URL is reachable from the internet and try again

After some attempts and searches I figured out that the SSL cert, even if valid, was not completely trusted. SSL Checker website (like this) reported me a yellow warn icon under the certificate chains of trust.

This pointed me to the right direction…

The solution

This Let’s Encrypt page had the solution I needed. Basically, I needed to add both intermediate and root certificates inside the “/ssl/fullchain.pem” file in home assistant.

First figured out which kind of certs did I need: in my case the where Intermediate R10 and Root X1. I downloaded both “pem” certificates from Let’s Encrypt page.

Then I composed my fullchain.pem like this:

-----BEGIN CERTIFICATE-----
MAIN SSL Certificate
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
Let's Encrypt Intermediate Certificate (R10)
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
Let's Encrypt Root X1 Certificate
-----END CERTIFICATE-----

I saved the file and rebooted NGNIX.
After another SSL check, my domain looked like this:

This solved all my issues with SmartThings integration.

E’ una notizia passata un po’ in sordina durante il keynote di Apple alla WWDC 2017, ma tra le novità di iOS 11 (in arrivo a settembre insieme al nuovo iPhone) ci sarà la possibilità per per gli sviluppatori di leggere i tag NFC con gli iPhone (dal 7 in poi).

Il chip NFC era infatti già presente negli iPhone degli ultimi anni, ma veniva utilizzato solamente per i pagamenti via ApplePay.

Da settembre invece (ma anche già da adesso se si installa la versione beta di iOS 11) potremo leggere comuni tag NFC, anche se con alcune limitazioni.

La tecnologia NFC non è certo nuova ed è integrata già da molti anni in quasi tutti gli Android di fascia medio-alta. Ma la chiusura di Apple fino ad ora aveva azzoppato la sua diffusione, anche perché la quota di utilizzatori iPhone è ancora molto alta (soprattutto in certi settori di mercato).

La notizia ovviamente ha mandato in fermento la comunità degli sviluppatori, che hanno già tirato fuori applicazioni funzionanti utilizzando il nuovo framework Core NFC messo a disposizione nell’SDK di iOS 1.

Anche noi a Temera (azienda fiorentina che da anni si occupa di RFID, soprattutto nel settore fashion & luxury), ci siamo già messi all’opera per integrare la nuova possibilità nei nostri prodotti… con ottimi risultati 😉

Poche settimane fa (16 Maggio 2016) è stata annunciata la nuova revisione del Raspberry Pi Zero, la 1.3 che aggiunge al Raspberry più piccolo e meno costoso della famiglia anche un connettore per il modulo camera !

RaspberryPiZero

Già dalla prima versione desideravo prenderne uno, ma non c’ero mai riuscito visto che era perennemente “out of stock” in qualsiasi rivenditore.

Certo il prezzo di partenza del modello base (circa 5€) fa gola a molti…

Stavolta ho invece avuto la prontezza di ordinarlo subito dopo l’annuncio su ThePiHut visto che avevano ancora disponibilità (che è già rapidamente terminata, nel momento in cui scrivo.. ma immagino tornerà a breve).

Nello specifico mi sono preso il kit che comprende anche adattatori micro-usb, micro-hdmi, alcuni GPIO e una SD da 8GB. Ho preso inoltre un cavo piatto per il connettore alla Camera (visto che è leggermente più piccolo).

E’ arrivato tutto in pochi giorni e devo dire che toccandolo con mano è risultato davvero più piccolo di come me lo aspettassi. Davvero perfetto per alcuni progetti che non necessitano della potenza di un Raspberry Pi 3, ma per i quali invece le dimensioni ridotte sono fondamentali…

Come caso pratico ho provato subito a testarlo con l’ultima versione di SWPI, per vedere se riceveva subito i dati della stazione meteo con il ricevitore radio RTL-SDR acquistato di recente… e devo dire che in 10 minuti seguendo le istruzioni avevo già tutto configurato e funzionante…

IMG_2927

 

Ora devo farmi venire in mente qualche progettino minimale su cui impiegarlo seriamente…. ho già un paio di idee in mente! Tempo libero permettendo, ovviamente… 😉

Grazie a Seven che a ha scritto questo interessante post nel forum di vololiberomontecucco (la casa di SWPI, ndr), sono venuto a conoscenza di un’altra modalità per ricevere e decodificare i segnali radio dei sensori esterni della mia stazione meteo PCE-FWS 20 alias Fine Offset WH1080 con il Raspberry Pi.

Come ho scritto in un recente post, dopo aver giocato con provato diverse soluzioni, tra cui su tutti SWPI e RFM01, sono da mesi tornato alla soluzione USB con PYWWS. Devo dire che come stabilità è perfetto adesso, ma come comodità lascia a desiderare.

Purtroppo la soluzione di ricezione con RFM01 era difficoltosa e dopo averci perso tanto tempo dietro non ho intenzione di ritornarci…

E’ qui che interviene l’idea di Seven: utilizzare una chiavetta usb DVB-T (in pratica venduta per ricevere la TV Digitale Terrestre) basata sul tuner R820T / R820T2 per ricevere e decodificare il segnale radio dei sensori.

Non conoscevo questa chiavetta, ma dopo un po’ di ricerche ho capito essere il “coltellino svizzero” per questo genere di cose.
Costa circa 10€ e si trova facilmente (io l’ho presa su Ebay). E’ supportata da una miriade di software liberi e progetti opensource, tra cui HDSDR, con cui è possibile “giocare” con il sintonizzatore e visualizzare/ricevere tutti i segnali, comprese le radio AM/FM !

Il progetto però che serve a noi si chiama rtl_433, e la sua personalizzazione per WH1080 & Raspberry raspberry_rtl_wh1080. A quest’ultima link trovate una dettagliatissima spiegazione sull’argomento e tutte le istruzioni passo passo per installarlo su Raspberry/BananaPi.

10 minuti dopo l’inserimento della chiavetta USB sul Raspberry e seguendo passo passo la guida, ero riuscito a ricevere il mio primo segnale dai sensori:

[code language=”bash”]
pi@raspberrypi ~ $ rtl_433 -f 868300000 -F json -l 0
Registering protocol "Fine Offset WH1080 Weather Station"
Found 1 device(s):
0: Realtek, RTL2838UHIDIR, SN: 00000001

Using device 0: Generic RTL2832U OEM
Detached kernel driver
Found Rafael Micro R820T tuner
Exact sample rate is: 250000.000414 Hz
[R82XX] PLL not locked!
Sample rate set to 250000.
Bit detection level set to 0.
Tuner gain set to Auto.
Reading samples in async mode…
Tuned to 868300000 Hz.
{"time" : "2016-03-12 20:34:07", "model" : "Fine Offset WH1080 weather station", "msg_type" : 0, "id" : 46, "temperature_C" : 9.700000, "humidity" : 58, "pressure" : 984.581665, "direction_str" : "NNE", "direction_deg" : "23", "speed" : 3.672000, "gust" : 6.120000, "rain" : 831.900024, "int_temp" : 26.000000}
[/code]

Veramente più semplice a farsi che a dirsi! 😉

Per ora l’output è un semplice oggetto JSON delle letture, ma integrarlo nei software esistenti non dovrebbe essere un’impresa ardua e lunga….

A breve nuovi aggiornamenti sull’argomento.

Avete la necessità di accendere un led o in generale leggere/impostare un qualsiasi pin del GPIO del Raspberry Pi via web? La soluzione più semplice e comoda è probabilmente utilizzare un server REST in Javascript con Node.js.

Esistono sicuramente anche altre valide alternative, io ho scelto questa perché negli ultimi mesi mi sono trovato diverse volte a lavorare con Node.Js e l’ho apprezzato veramente tanto per la sua semplicità e al contempo grossa potenza modulare, con un’infinità di pacchetti ed estensioni NPM.

Lo scopo di questa guida è quindi quello di accendere un led attaccato al gpio (con una resistenza e un mosfet, che non sono oggetto di questo post ma di cui potete trovare già tantissima documentazione) attraverso una semplice chiamata web http://indirizzo.ip/led/on.

Due led incastonati nel case del Raspberry, comandati da NodeJs
Due led incastonati nel case del Raspberry, comandati da NodeJs

Leggi tutto →

Uno degli articoli più letti di questo blog è sicuramente  Stazione meteo PCE-FWS 20 online grazie ad un Raspberry Pi. Da allora son passati 3 anni, tempo in cui ho avuto modo (benché poco tempo) di “giocare” ogni tanto con i software disponibili per Raspberry Pi per mettere online i dati della mia PCE-FWS 20 / WH1080, che sono presenti sul mio sito dedicato.

Da più di un anno non utilizzo più il sistema con Sint Wind Pi + ricevitore wireless RFM01 a causa di problemi vari di ricezione del segnale dovuti principalmente a interferenze e distanza dalla stazione. Sono invece tornato nei miei passi e utilizzo pywws con il Raspberry attaccato via USB alla consolle. Devo dire che dopo il setup iniziale non ho più avuto alcun problema e va come una meraviglia da tantissimi mesi senza alcun intervento da parte mia. Non si è mai verificato nemmeno un blocco della comunicazione USB, cosa che era avvenuta spesso nei miei primi test con pywws. Probabilmente erano dovuti ad una consolle un po’ difettosa.

Pywws è dunque consigliato e stabile, almeno dalla mia esperienza. Si trova una guida molto facile per l’installazione qui. (basta installare 3 pacchetti di dipendenze, non c’è nemmeno più bisogno di compilare le librerie USB come prima!). Mentre la completissima documentazione ufficiale di pywws contiene tutte le istruzioni per configurazione e setup, anche in italiano.

Se cercate alternative a pywws, vi consiglio di leggere queste ottime guide scritte dall’amico Simone di Meteo Bibbiena:

Dopo aver provato il distanziometro laser PCE-LDM 50, grazie a PCE Italia ho avuto modo anche di provare un altro strumento, il PCE-EM882.

Si tratta di un misuratore multifunzionale 4 in 1 che racchiude un termoigrometro (temperatura e umidità), un luxmetro (intensità luminosa) e un fonometro (potenza sonora).

Confezione e Aspetto

 


Lo strumento si presenta in una comoda valigetta morbida che contiene tutti gli accessori: una sonda termica, il sensore luminoso, un filtro per il microfono, una batteria supplementare ed il manuale.
Il corpo è in plastica con tasti in gomma, mentre il display è semplice a 3 cifre, non retroilluminato. Leggi tutto →

Grazie a PCE Italia, azienda italiana produttrice e rivenditrice di strumenti di misura, ho avuto la possibilità di testare il distanziometro laser PCE-LDM 50.

Confezione e aspetto

La scatola di dimensioni contenute contiene lo strumento, un laccio da polso, la custodia da cintura, le batterie, un cacciavite per l’apertura del vano batterie ed un manualetto in italiano.

Lo strumento, di dimensioni circa di 110 X 45 x 30 mm, si presenta molto compatto e solido, adatto ad essere maneggiato senza difficoltà. Ha un ampio display retroilluminato in cui vengono visualizzate le ultime 3 misure, con risoluzione fino al mm.

Presenta 10 tasti per il controllo delle funzionalità.

Funzioni

Oltre a misurare la distanza (c’è un puntatore laser che aiuta il puntamento), il PCE-LDM 50 presenta altre utili funzioni:

Addizione (per sommare alla misurazione precedente)
Sottrazione (per sottrarre alla misurazione precedente)
Misura max. e min. (utile in caso di misurazioni difficili)
Misura continua (misurazione automatica senza premere il tasto)
Calcolo delle superfici (calcolo automatico dell’area)
Calcolo del volume
Funzione Pitagora (misurazione indiretta) (per calcolare automaticamente l’altezza attraverso due misure di distanza)
Memoria degli ultimi 20 valori
– Misura dal piede o dalla testa dello strumento
(per aggiungere alla misura l’altezza dello strumento stesso)

Tutte le funzioni si utilizzano in modo molto intuitivo ed in caso di dubbi nel manuale è riportato tutto in modo molto chiaro. Leggi tutto →

Dopo aver realizzato le webcam da esterno con Raspberry Pi di cui ho parlato nel precedente articolo, avevo la necessità di visualizzare in una pagina web le foto inviate nelle ultime 24.

Ho quindi realizzato una semplice gallery PHP che legge le foto inviate dal Raspberry nelle ultime 24 e ne crea delle miniature, ordinate per data inversa (le più recenti in alto). Cliccando sulla miniatura si apre un lightbox con la foto originale.
Lo script provvede inoltre a cancellare le miniature create se queste sono più vecchie di 24 ore.

E’ una gallery semplice e rudimentale, sicuramente migliorabile ed espandibile. Ma funziona ormai da un anno con due webcam installate in montagna, ed ha sempre fatto egregiamente il suo dovere! 😉

Eccola all’opera: Webcam Rifugio CampignaWebcam Snowpark Campigna

Potete trovare il codice della gallery qua su Sourceforge